การแจ้งเตือนที่ทริกเกอร์โดยพาร์ทเนอร์
เพิ่มข้อความและการแจ้งเตือน
ฉากหลัง
หลังจากผู้ใช้เพิ่มบัตรแล้ว คุณอาจต้องการส่งข้อความเกี่ยวกับบัตรให้ผู้ใช้และตรวจสอบว่าผู้ใช้ได้รับการแจ้งเตือนเกี่ยวกับบัตรดังกล่าว เมื่อใช้คำขอ Add Message API ที่มี message_type
เท่ากับ TEXT_AND_NOTIFY
ระบบจะดำเนินการต่อไปนี้
- ระบบจะเพิ่มรายการ "ข้อความ" ลงในส่วน "ด้านหลังบัตร" (หรือที่เรียกว่าเทมเพลตรายละเอียด) และส่งการแจ้งเตือนแบบพุชไปยังผู้ใช้ที่บันทึกบัตรไว้
- เมื่อผู้ใช้แตะการแจ้งเตือน ระบบจะเปิด Google Wallet ไปที่หน้าบัตร (หรือที่เรียกว่ามุมมองการ์ด) และผู้ใช้จะเห็นข้อความไฮไลต์ที่ด้านบนของหน้าจอพร้อมปุ่ม "ดูข้อความ"
- การคลิกข้อความไฮไลต์จะนำผู้ใช้ไปยังด้านหลังบัตร ซึ่งจะมีข้อความใหม่ที่ไม่อ่านไฮไลต์อยู่
สิ่งที่ควรพิจารณาเมื่อส่งข้อความที่มีการแจ้งเตือนถึงผู้ใช้
- ผู้ใช้ต้องเปิดใช้การแจ้งเตือนสำหรับบัตรของตนจึงจะได้รับข้อความ Push ที่เกี่ยวข้องกับข้อความ
- ข้อความอาจมี URI ไปยังเว็บไซต์หรือแอปของคุณ โดยไฮเปอร์ลิงก์ต้องเป็นเว็บไซต์หรือแอปที่เกี่ยวข้องกับบัตร การส่งผู้ใช้ไปยังลิงก์ที่ไม่เกี่ยวข้องกับบัตรเป็นการละเมิดนโยบายการใช้งานที่ยอมรับได้
- คุณส่งข้อความที่ทริกเกอร์ข้อความ Push ได้สูงสุด 3 ข้อความในช่วงเวลา 24 ชั่วโมง Google อาจจำกัดโควต้าการส่งข้อความ Push หากพิจารณาว่าคุณกำลังสแปมผู้ใช้
- Google Wallet จะควบคุมข้อความ Push ที่ผู้ใช้เห็นบนหน้าจอล็อก
- คุณสามารถใช้เมธอด UPDATE หรือ PATCH เพื่อแก้ไขหรือนำข้อมูลข้อความออกโดยใช้ปลายทางคลาสหรือออบเจ็กต์ปกติ
ขั้นตอนการผสานรวม
เมื่อต้องการแจ้งผู้ใช้เกี่ยวกับข้อความของผู้ออกบัตรใหม่ซึ่งเพิ่มโดยใช้ AddMessage API คุณจะต้องอัปเดต AddMessageRequest เพื่อให้ Message ซึ่งมีข้อความใหม่มี MessageType TEXT_AND_NOTIFY แทน TEXT
ตัวอย่างคําขอ JSON เพื่อเพิ่มข้อความและแจ้งเตือนในคลาสบัตร
… "id": ISSUER_ID.CLASS_ID", "message": { "header":"My Class message header", "body": "My Class message body with a <a href="https://wallet.google">Hyperlink<\a>", "id": "message_id", "message_type": "TEXT_AND_NOTIFY" }, …
ตัวอย่างคําขอ JSON เพื่อเพิ่มข้อความและแจ้งเตือนในแออบเจ็กต์ Passes
… "id": OBJECT_ID", "classId": "ISSUER_ID.CLASS_ID", "message": { "header":"My Object message header", "body": "My Object message body with a <a href="http://play.google.com/store/apps/details?id=com.google.android.apps.maps">Hyperlink<\a>", "id": "message_id", "message_type": "TEXT_AND_NOTIFY" }, …
ตัวอย่างการตอบกลับเพื่อเพิ่มข้อความและแจ้งเตือนสำหรับชั้นเรียนที่ผ่าน
// The updated resource … { "kind": "walletobjects#walletObjectMessage", "header": "My Object message header", "body": "My Object message body with a <a href="http://play.google.com/store/apps/details?id=com.google.android.apps.maps">Hyperlink<\a>", "id": "message_id", "messageType": "textAndNotify" }, …
การจัดการข้อยกเว้น
การพยายามแจ้งเตือนมากกว่า 3 ครั้งจะส่งผลให้ระบบแสดงการตอบกลับQuotaExceededException คุณสามารถตั้งค่าการอัปเดตเพิ่มเติมในพาสโดยใช้ "TEXT" แทน "TEXT_AND_NOTIFY" ตามที่อธิบายไว้ในขั้นตอนการผสานรวม
อัปเดตช่องและแจ้งเตือน
ฉากหลัง
หลังจากผู้ใช้เพิ่มบัตรแล้ว คุณอาจต้องการเรียกให้แสดงข้อความ Push เมื่ออัปเดตบางช่อง การแจ้งเตือนจะปรากฏบนหน้าจอล็อกของผู้ใช้และแจ้งให้ทราบว่ามีการอัปเดตบัตร การแจ้งเตือนนี้จะทริกเกอร์สําหรับช่องชุดย่อยที่เฉพาะเจาะจงซึ่งระบุไว้ด้านล่างโดยใช้เมธอด UPDATE และ PATCH ของ API เท่านั้น เมื่อมีการเรียก API เพื่ออัปเดตบัตร ระบบจะดำเนินการต่อไปนี้
- ระบบจะทริกเกอร์ข้อความ Push และแสดงบนหน้าจอล็อกของผู้ใช้เพื่อแจ้งให้ทราบถึงการอัปเดตบัตร
- เมื่อผู้ใช้แตะการแจ้งเตือน ระบบจะเปิด Google Wallet ไปที่หน้าบัตร (หรือที่เรียกว่ามุมมองการ์ด) และผู้ใช้จะเห็นข้อความไฮไลต์ที่ด้านบนของหน้าจอพร้อมปุ่ม "ตรวจสอบการอัปเดต"
- การคลิกปุ่มจะนำผู้ใช้ไปยังหน้าจอที่ผู้ใช้จะเห็นช่องที่อัปเดตแล้ว
สิ่งที่ควรพิจารณาเมื่อส่งการแจ้งเตือนการอัปเดตในสนาม
- ผู้ใช้ต้องเปิดใช้การแจ้งเตือนสำหรับบัตรของตนจึงจะได้รับข้อความ Push เกี่ยวกับการอัปเดต
- คุณส่งการอัปเดตที่ทริกเกอร์ข้อความ Push ได้สูงสุด 3 รายการในช่วงเวลา 24 ชั่วโมง Google อาจจำกัดโควต้าการส่งข้อความ Push หากพิจารณาว่าคุณกำลังสแปมผู้ใช้
- Google Wallet จะควบคุมข้อความ Push ที่ผู้ใช้เห็นบนหน้าจอล็อก
- ฟิลด์
notifyPreference
เป็นฟิลด์ชั่วคราวที่มีอยู่ในคำขอนี้เท่านั้น สำหรับคำขอในอนาคตเมื่อคุณต้องการทริกเกอร์การแจ้งเตือน คุณจะต้องรีเซ็ตช่องนี้ในคำขอคลาสหรือออบเจ็กต์
ขั้นตอนการผสานรวม
หากต้องการเรียกให้แสดงการแจ้งเตือนเหล่านี้ คุณจะต้องเรียกใช้ UPDATE หรือ PATCH ที่มีอยู่ และระบุ notifyPreference เมื่ออัปเดตช่องในคลาสหรือออบเจ็กต์ คุณสามารถเพิ่มช่องใหม่ notifyPreference
ลงในคำขอคลาสหรือออบเจ็กต์เพื่อเรียกให้ระบบส่งการแจ้งเตือน
ตัวอย่างคำขอ JSON เพื่ออัปเดตและแจ้งเตือนในชั้นเรียน
… "dateTime": { "kind": "walletobjects#eventDateTime", "doorsOpen": "2024-09-23T19:20:50.00" }, "multipleDevicesAndHoldersAllowedStatus": "multipleHolders", "notifyPreference": "notifyOnUpdate", …
การตั้งค่า notifyPreference
เป็น notifyOnUpdate
จะทริกเกอร์การแจ้งเตือน หากระบบรองรับช่องที่อัปเดตแล้ว
ฟิลด์ที่รองรับ
EventTicketClass
- eventName
- eventVenue.name
- eventvenue.address
- eventDateTime.doorsOpen
- eventDateTime.start
EventTicketObject
- eventSeat.seat
- eventSeat.row
- eventSeat.section
- eventSeat.gate
การแจ้งเตือนอัตโนมัติที่ Google Wallet ทริกเกอร์
การแจ้งเตือนที่กําลังจะเกิดขึ้น
Google Wallet จะส่งการแจ้งเตือนไปยังผู้ใช้ 3 ชั่วโมงก่อนถึงเวลาของกิจกรรม เวลาของเหตุการณ์จะกำหนดโดย
class.dateTime.start
ผู้ใช้ต้องเปิดใช้การแจ้งเตือนจึงจะได้รับการแจ้งเตือนนี้ หากต้องการตรวจสอบ ให้ไปที่การตั้งค่า > การแจ้งเตือน แล้วดูว่าข้อมูลอัปเดตเกี่ยวกับบัตรเปิดอยู่หรือไม่
การแจ้งเตือนจะปรากฏขึ้นในพื้นที่การแจ้งเตือนและในหน้าจอล็อก หากผู้ใช้ เปิดใช้การแจ้งเตือนสำหรับหน้าจอล็อก
การแจ้งเตือนมีรูปแบบที่แก้ไขไม่ได้ดังต่อไปนี้
class.eventName
หากแตะการแจ้งเตือนและปลดล็อกอุปกรณ์ บัตรของบุตรหลานจะปรากฏในแอป Google Wallet
หากผู้ใช้มีบัตรหลายใบ ระบบจะแสดงเฉพาะบัตรที่ใช้งานได้เร็วที่สุด หากเพิ่มบัตรที่จัดกลุ่มไว้ตามจัดกลุ่มตั๋วเข้างานหลายใบ การแจ้งเตือนจะแสดงบัตรเพียงใบเดียวในกลุ่ม แต่เมื่อแตะบัตร ผู้ใช้จะปัดไปทางซ้ายและขวาเพื่อดูบัตรอื่นๆ ในกลุ่มนั้นได้
การแจ้งเตือนจะปักหมุดไว้และจะไม่ปิดโดยอัตโนมัติหลังจากที่ผู้ใช้เปิด ระบบจะปิดโดยอัตโนมัติหลังจากผ่านไป 60 นาทีหลังจาก class.dateTime.start