ประเภทการแจ้งเตือน
เพิ่มข้อความและการแจ้งเตือน
ข้อมูลเบื้องต้น
หลังจากผู้ใช้เพิ่มบัตรแล้ว คุณอาจต้องการส่งข้อความเกี่ยวกับบัตรให้ผู้ใช้และตรวจสอบว่าผู้ใช้ได้รับการแจ้งเตือนเกี่ยวกับบัตรดังกล่าว เมื่อใช้คําขอ Add Message API ที่มี message_type
เท่ากับ
TEXT_AND_NOTIFY
ระบบจะทําสิ่งต่อไปนี้
- ระบบจะเพิ่มรายการ "ข้อความ" ลงใน "ด้านหลังบัตร" (หรือที่เรียกว่าเทมเพลตรายละเอียด) และข้อความ Push จะส่งไปยังผู้ใช้ที่มีบันทึกบัตร
- เมื่อผู้ใช้แตะการแจ้งเตือน ระบบจะเปิด Google Wallet ไปที่หน้าบัตร (หรือที่เรียกว่ามุมมองการ์ด) และผู้ใช้จะเห็นข้อความไฮไลต์ที่ด้านบนของหน้าจอพร้อมปุ่ม "ดูข้อความ"
- การคลิกข้อความไฮไลต์จะนำผู้ใช้ไปยังด้านหลังบัตร ซึ่งจะมีข้อความใหม่ที่ไม่อ่านไฮไลต์อยู่
สิ่งที่ควรพิจารณาเมื่อส่งข้อความที่มีการแจ้งเตือนถึงผู้ใช้
- ผู้ใช้ต้องเปิดใช้การแจ้งเตือนสำหรับบัตรของตนจึงจะได้รับข้อความ Push ที่เกี่ยวข้องกับข้อความ
- ข้อความอาจมี URI ที่ไปยังเว็บไซต์หรือแอปของคุณ ไฮเปอร์ลิงก์ต้องเป็นเว็บไซต์หรือแอปที่เกี่ยวข้องกับบัตรดังกล่าว การส่งผู้ใช้ไปยังลิงก์ที่ไม่เกี่ยวข้องกับบัตรถือเป็นการละเมิดนโยบายการใช้งานที่ยอมรับได้
- คุณส่งข้อความที่ทริกเกอร์ข้อความ Push ได้สูงสุด 3 ข้อความในช่วงเวลา 24 ชั่วโมง Google อาจจำกัดโควต้าการส่งข้อความ Push หากพิจารณาว่าคุณกำลังสแปมผู้ใช้
- Google Wallet จะควบคุมข้อความ Push ที่ผู้ใช้เห็นบนหน้าจอล็อก
- คุณสามารถใช้วิธีการอัปเดตหรือแพตช์เพื่อแก้ไขหรือนำข้อมูลข้อความออกโดยใช้ปลายทางคลาสหรือออบเจ็กต์ปกติ
ขั้นตอนการผสานรวม
เมื่อต้องการแจ้งผู้ใช้เกี่ยวกับข้อความของผู้ออกบัตรใหม่ซึ่งเพิ่มโดยใช้ 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" }, …
ตัวอย่างการตอบกลับสำหรับเพิ่มข้อความและแจ้งเตือนสำหรับ Pass Class
// 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
จะทริกเกอร์การแจ้งเตือน หากระบบรองรับช่องที่อัปเดตแล้ว
ฟิลด์ที่รองรับ
FlightObject
- boardingAndSeatingInfo.seatNumber
- boardingAndSeatingInfo.seatAssignment