การแจ้งเตือนที่พาร์ทเนอร์ทริกเกอร์
เพิ่มข้อความและแจ้งเตือน
ฉากหลัง
หลังจากที่ผู้ใช้เพิ่มบัตรแล้ว คุณอาจต้องการส่งข้อความที่เกี่ยวข้องกับบัตรให้ผู้ใช้และตรวจสอบว่าผู้ใช้ได้รับการแจ้งเตือนเกี่ยวกับบัตร เมื่อใช้คำขอ Add Message API
ที่มี message_type
เท่ากับ
TEXT_AND_NOTIFY
จะเกิดสิ่งต่อไปนี้
- ระบบจะเพิ่มรายการ "ข้อความ" ลงใน "ด้านหลังของบัตร" (หรือที่เรียกว่าเทมเพลตรายละเอียด) และจะส่งการแจ้งเตือนแบบพุชไปยังผู้ใช้ที่บันทึกบัตรไว้
- เมื่อผู้ใช้แตะการแจ้งเตือน ระบบจะเปิด Google Wallet ไปที่ด้านหน้าของบัตร (หรือที่เรียกว่ามุมมองบัตร) และผู้ใช้จะเห็นข้อความไฮไลต์ที่ด้านบนของหน้าจอพร้อมปุ่ม "ดูข้อความ"
- การคลิกข้อความไฮไลต์จะนำผู้ใช้ไปยังด้านหลังของบัตร ซึ่งจะมีการไฮไลต์ข้อความใหม่ที่ยังไม่อ่าน
ข้อควรพิจารณาบางประการเมื่อส่งข้อความพร้อมการแจ้งเตือนถึงผู้ใช้
- ผู้ใช้ต้องเปิดใช้การแจ้งเตือนสำหรับบัตรเพื่อรับ การแจ้งเตือนแบบพุชที่เกี่ยวข้องกับข้อความ
- ข้อความอาจมี URI ไปยังเว็บไซต์หรือแอปของคุณ ไฮเปอร์ลิงก์ต้องเป็นเว็บไซต์หรือแอปที่เกี่ยวข้องกับบัตร การนำผู้ใช้ไปยังลิงก์ที่ไม่เกี่ยวข้องกับบัตรถือเป็นการละเมิดนโยบายการใช้งานที่ยอมรับได้
- คุณส่งข้อความที่ทริกเกอร์ข้อความ Push ได้สูงสุด 3 ข้อความในระยะเวลา 24 ชั่วโมง Google อาจจำกัดโควต้าการนำส่งการแจ้งเตือนแบบพุชหากเห็นว่าคุณส่งสแปมให้ผู้ใช้
- Google Wallet เป็นผู้ควบคุมการแจ้งเตือนแบบพุชที่ผู้ใช้เห็นในหน้าจอล็อก
- คุณสามารถใช้วิธี 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 เพื่อเพิ่มข้อความและแจ้งเตือนในออบเจ็กต์บัตร
… "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" ตามที่อธิบายไว้ในขั้นตอนการผสานรวม
การแจ้งเตือน Nearby
ฟีเจอร์นี้จะแสดงการแจ้งเตือนแบบพุชแก่ผู้ใช้ที่เปิดใช้การแจ้งเตือนและให้สิทธิ์เข้าถึงตำแหน่งที่แน่นอนตลอดเวลาแก่แอป Google Wallet เพื่อเตือนว่าผู้ใช้ได้บันทึกบัตรที่เกี่ยวข้องกับตำแหน่งปัจจุบันไว้แล้วขั้นตอนการผสานรวม
วิธีใช้
หากต้องการใช้ฟีเจอร์นี้ คุณต้องเพิ่มสถานที่ตั้งลงในชั้นเรียนและออบเจ็กต์ คุณเพิ่มสถานที่ได้สูงสุด 10 แห่งต่อชั้นเรียนและ 10 แห่งต่อออบเจ็กต์ ใช้ MerchantLocations
ในคลาสหรือออบเจ็กต์
คำจำกัดความ คุณเพิ่มสถานที่เหล่านี้ได้เมื่อใช้วิธี insert
, patch
หรือ update
หลังจากเพิ่มสถานที่ตั้งลงในชั้นเรียนหรือออบเจ็กต์แล้ว Google จะส่งการแจ้งเตือนให้ผู้ใช้เมื่อผู้ใช้ อยู่ใกล้สถานที่ตั้ง Google จะเป็นผู้กำหนดว่าผู้ใช้ต้องอยู่ใกล้กับพื้นที่ดังกล่าวมากน้อยเพียงใดและต้องอยู่ในพื้นที่นานเท่าใด ก่อนที่จะส่งการแจ้งเตือน นอกจากนี้ Google ยังควบคุมข้อความของการแจ้งเตือนด้วย
ตัวอย่าง LoyaltyClass ที่ตั้งค่า MerchantLocations{ "kind": "walletobjects#loyaltyClass", "programLogo": { "kind": "walletobjects#image", "sourceUri": { "uri": ... } }, "localizedProgramName": { "kind": "walletobjects#localizedString", "defaultValue": { "kind": "walletobjects#translatedString", "language": "en", "value": "Program Name", } }, "id": Id1234, "version": "1", "allowMultipleUsersPerObject": true, "reviewStatus": "underReview", "enableSmartTap": false, "localizedIssuerName": { "kind": "walletobjects#localizedString", "defaultValue": { "kind": "walletobjects#translatedString", "language": "en", "value": "Issuer Name" } }, "multipleDevicesAndHoldersAllowedStatus": "multipleHolders", "merchantLocations": [ { "latitude": 37.79020867928078, "longitude": -122.39004 }, { "latitude": 37.42587, "longitude": -122.08620 }, ] }
ลักษณะการทำงานที่คาดไว้
ผู้ใช้ควรได้รับการแจ้งเตือนแบบติดหนึบเกี่ยวกับบัตรเมื่ออยู่ที่ MerchantLocation ที่ระบุ หากคลิกการแจ้งเตือน ระบบจะเปิดบัตรใน Google Wallet ผู้ใช้สามารถปิดการแจ้งเตือนด้วยท่าทางสัมผัสการปัด เมื่อผู้ใช้ออกจากสถานที่ การแจ้งเตือนจะหายไป