การดำเนินการของคุณอาจส่งข้อความ Push ไปยังผู้ใช้เมื่อใดก็ตามที่มีความเกี่ยวข้อง เช่น การส่งการช่วยเตือนเมื่อใกล้ถึงวันที่ครบกำหนดของงาน
คำแนะนำนี้จะอธิบายวิธีตั้งค่าข้อความ Push สำหรับการดำเนินการของคุณ
แพลตฟอร์มที่รองรับ
ข้อความ Push พร้อมใช้งานบนอุปกรณ์ Android และ iOS (อุปกรณ์ iOS ต้องติดตั้งแอป Assistant ไว้เพื่อรับข้อความ Push) ปัจจุบันยังไม่รองรับในลำโพง จออัจฉริยะ หรือแพลตฟอร์มอื่นๆ ที่สั่งงานด้วยเสียง
ข้อกำหนดเบื้องต้น
โปรเจ็กต์ของคุณต้องมีIntent ส่วนกลางอย่างน้อย 1 รายการ ซึ่งจะเรียกใช้เมื่อผู้ใช้แตะข้อความ Push ที่ได้รับจาก Assistant
เริ่มต้นใช้งาน
ส่วนต่อไปนี้จะอธิบายวิธีตั้งค่าข้อความ Push ในการดําเนินการของคุณ
สร้าง Intent สำหรับการทริกเกอร์
ความตั้งใจที่คุณสร้างในส่วนนี้จะเรียกใช้โฟลว์การแจ้งเตือน วิธีสร้าง ความตั้งใจนี้ ให้ทำตามขั้นตอนต่อไปนี้
- ไปที่คอนโซลการดำเนินการ แล้วคลิกพัฒนาในเมนูด้านบน
- คลิก Intent ในเมนูด้านซ้ายเพื่อขยายส่วนนั้น
- คลิก ที่ด้านล่างของรายการ และป้อนชื่อสำหรับ Intent ใหม่
- กด
Enter/Return
เพื่อสร้าง Intent ใหม่ เพิ่มวลีการฝึกอบรมเพื่อเรียกการทำงานของการแจ้งเตือน ตัวอย่างเช่น
Notify me
Send notifications
Subscribe to notifications
คลิกบันทึก
การเปลี่ยนไปใช้ Intent ของระบบ
หากต้องการตั้งค่าการเปลี่ยนไปใช้โหมดของระบบ Notifications
ให้ทำตามขั้นตอนต่อไปนี้
- ในส่วนฉากในเมนูด้านซ้าย ให้คลิกฉากที่ต้องการเพิ่มขั้นตอนการสมัครรับข้อมูลการแจ้งเตือน
- ในส่วนการจัดการความตั้งใจของผู้ใช้ของโหมด ให้คลิก + เพื่อเพิ่มเครื่องจัดการ Intent ใหม่
- ในส่วนความตั้งใจ ให้เลือกความตั้งใจที่คุณสร้างไว้ในส่วนก่อนหน้า
ในส่วนการเปลี่ยน ให้เลือกฉากของระบบการแจ้งเตือน
คลิกบันทึก
กำหนดค่าโหมดของระบบ
หากต้องการกำหนดค่าโหมดของระบบ Notifications
ให้ทำตามขั้นตอนต่อไปนี้
- ในส่วนฉากในเมนูด้านซ้าย ให้เลือกฉากใหม่ของระบบการแจ้งเตือน
- ในส่วนกำหนดค่าความตั้งใจ ให้คลิกเลือกความตั้งใจ
ในส่วนเลือกความตั้งใจ ให้เลือกความตั้งใจที่คุณต้องการจับคู่เมื่อผู้ใช้แตะข้อความ Push
สำหรับปรับแต่งข้อความแจ้งให้เลือกใช้ ให้ป้อนข้อความแจ้งที่แสดงต่อผู้ใช้เมื่อระบบขอให้สมัครรับข้อความ Push ข้อความแจ้งอยู่ในรูปแบบ "จะเป็นอะไรไหมถ้าฉันส่งข้อความ Push สำหรับ $prompt"
คลิกบันทึก
กำหนดค่าการเลือกใช้
หากต้องการกำหนดค่าการเลือกใช้ข้อความ Push ให้ทำตามขั้นตอนต่อไปนี้
- ในส่วนฉาก ให้เลือกโหมดของระบบการแจ้งเตือน
- เลือกหากผู้ใช้ตอบว่า "ใช่" ในส่วนเงื่อนไข
- เปิดใช้เรียกเว็บฮุคและระบุชื่อเครื่องจัดการเหตุการณ์ เช่น
subscribe_to_notifications
เปิดใช้ส่งข้อความแจ้งและแสดงข้อความแจ้งง่ายๆ เพื่อแจ้งให้ผู้ใช้ทราบว่าจะได้รับการแจ้งเตือน
candidates: - first simple: variants: - speech: 'Great, I'll send you notifications.'
ในส่วนการเปลี่ยน ให้เลือกสิ้นสุดการสนทนาเพื่อสิ้นสุดการสนทนาหลังจากที่ผู้ใช้สมัครรับการแจ้งเตือน
กำหนดค่าการเลือกไม่ใช้
หากต้องการกำหนดค่าการเลือกไม่รับข้อความ Push ให้ทำตามขั้นตอนต่อไปนี้
- เลือกหากผู้ใช้ตอบว่า "ไม่" ในส่วนเงื่อนไข
เปิดใช้ส่งข้อความแจ้งและแสดงข้อความแจ้งง่ายๆ เพื่อแจ้งให้ผู้ใช้ทราบว่าระบบจะไม่ส่งการแจ้งเตือน
candidates: - first simple: variants: - speech: Okay, I won't send you notifications.
ในส่วนการเปลี่ยน ให้เลือกสิ้นสุดการสนทนาเพื่อสิ้นสุดการสนทนาหลังจากผู้ใช้เลือกไม่รับการแจ้งเตือน
กำหนดค่าเว็บฮุค
หากต้องการกำหนดค่าเว็บฮุค ให้ทำตามขั้นตอนต่อไปนี้
ในเว็บฮุค ให้เพิ่มเครื่องจัดการ Intent เพื่อจัดเก็บ
updatesUserId
ดังนี้app.handle('subscribe_to_notifications', conv => { const intentName = '<name_of_intent_to_trigger>'; const notificationsSlot = conv.session.params['NotificationSlot_${intentName}']; if(notificationsSlot.permissionStatus == 'PERMISSION_GRANTED') { const updateUserId = notificationsSlot.additionalUserData.updateUserId; // Store the user ID and the notification's target intent for later use. // (Use a database, like Firestore, for best practice.) } });
ส่งการแจ้งเตือน
ระบบจะส่งข้อความ Push ไปยังผู้ใช้โดยใช้ Actions API หากต้องการใช้ API นี้ คุณต้องเปิดใช้ API ในโปรเจ็กต์ Google Cloud แล้วตั้งค่าและดาวน์โหลดคีย์บัญชีบริการ JSON
จากนั้นคุณจะใช้ไลบรารีของไคลเอ็นต์ OAuth2 ของ Google เพื่อแลกเปลี่ยนคีย์บัญชีบริการสำหรับโทเค็นเพื่อการเข้าถึงและใช้โทเค็นเพื่อตรวจสอบสิทธิ์คำขอที่ส่งไปยัง Actions API ได้
รับคีย์บัญชีบริการ
- ไปที่คอนโซล Google API แล้วเลือกโปรเจ็กต์จากเมนูแบบเลื่อนลงของเลือกโปรเจ็กต์
- คลิกเปิดใช้เพื่อเปิดใช้ Actions API สำหรับโปรเจ็กต์
- ไปที่หน้าข้อมูลเข้าสู่ระบบ Google Cloud Console แล้วเลือกโปรเจ็กต์จากเมนูแบบเลื่อนลงเลือกโปรเจ็กต์
- คลิกสร้างข้อมูลเข้าสู่ระบบ > บัญชีบริการ
- ป้อนชื่อบัญชีบริการและคลิกสร้าง
- จากเมนูเลือกบทบาทแบบเลื่อนลง ให้เลือกโปรเจ็กต์ > เจ้าของ
- คลิกต่อไป
- คลิกสร้างคีย์เพื่อดาวน์โหลดไฟล์ JSON ของบัญชีบริการ
แลกเปลี่ยนคีย์สำหรับโทเค็นเพื่อการเข้าถึงและส่งการแจ้งเตือน
หากต้องการส่งข้อความ Push ผ่าน Actions API คุณต้องแลกเปลี่ยนคีย์บัญชีบริการเป็นโทเค็นเพื่อการเข้าถึง เราขอแนะนําให้ใช้ไลบรารีของไคลเอ็นต์ Google API ในการดำเนินการ ในชุดข้อมูลโค้ดที่ตามมา เราใช้ไลบรารีของไคลเอ็นต์ Google API Node.js
ติดตั้งไลบรารีไคลเอ็นต์ Google API และส่งคำขอดังนี้
npm install googleapis request --save
ใช้รหัสต่อไปนี้เพื่อรับโทเค็นเพื่อการเข้าถึงจากคีย์บัญชีบริการและส่งข้อความ Push
// Use the Actions API to send a Google Assistant push notification. let client = auth.fromJSON(require('./service-account.json')); client.scopes = ['https://www.googleapis.com/auth/actions.fulfillment.conversation']; let notification = { userNotification: { title: 'Example notification title', }, target: { userId: '<UPDATES_USER_ID>', intent: 'Notifications Intent', }, }; client.authorize((err, tokens) => { if (err) { throw new Error('Auth error: ${err}'); } request.post('https://actions.googleapis.com/v2/conversations:send', { 'auth': { 'bearer': tokens.access_token, }, 'json': true, 'body': {'customPushMessage': notification, 'isInSandbox': true}, }, (err, httpResponse, body) => { if (err) { throw new Error('API request error: ${err}'); } console.log('${httpResponse.statusCode}: ' + '${httpResponse.statusMessage}'); console.log(JSON.stringify(body)); }); });