เรียกใช้ข้อความ Push

ประเภทการแจ้งเตือน

เพิ่มข้อความและแจ้งเตือน

ที่มา

หลังจากที่ผู้ใช้เพิ่มบัตรแล้ว คุณอาจต้องการส่งข้อความถึงผู้ใช้เกี่ยวกับบัตรเพื่อให้แน่ใจว่าผู้ใช้ได้รับการแจ้งเตือนเกี่ยวกับบัตรดังกล่าว การใช้คำขอ Add Message API ซึ่งมี message_type เท่ากับ TEXT_AND_NOTIFY จะเกิดเหตุการณ์ต่อไปนี้

  1. ระบบจะเพิ่มรายการ "ข้อความ" ลงใน "ด้านหลังบัตร" (หรือที่เรียกว่าเทมเพลตรายละเอียด) และระบบจะส่งข้อความ Push ไปยังผู้ใช้พร้อมบัตรที่บันทึกไว้
  2. เมื่อผู้ใช้แตะการแจ้งเตือน ระบบจะเปิด Google Wallet ที่ด้านหน้าของบัตร (หรือที่เรียกว่ามุมมองบัตร) และผู้ใช้จะเห็นไฮไลต์ที่ด้านบนของหน้าจอพร้อมปุ่ม "ดูข้อความ"
  3. การคลิกข้อความไฮไลต์จะนำผู้ใช้ไปยังด้านหลังของบัตรที่ไฮไลต์ข้อความใหม่ที่ยังไม่อ่าน

ข้อควรพิจารณาเมื่อส่งข้อความที่มีการแจ้งเตือนไปยังผู้ใช้

  • ผู้ใช้ต้องเปิดใช้การแจ้งเตือนสำหรับบัตรเพื่อรับข้อความ Push ที่เกี่ยวข้องกับข้อความ
  • ข้อความอาจมี URI ไปยังเว็บไซต์หรือแอป โดยไฮเปอร์ลิงก์ต้องเป็นเว็บไซต์หรือแอปที่เกี่ยวข้องกับบัตร การส่งผู้ใช้ไปยังลิงก์ที่ไม่เกี่ยวข้องกับบัตรถือเป็นการละเมิดนโยบายการใช้งานที่ยอมรับได้
  • คุณจะส่งข้อความที่ทริกเกอร์ข้อความ Push ได้สูงสุด 3 ข้อความในช่วงเวลา 24 ชั่วโมง Google อาจควบคุมโควต้าการส่งข้อความ Push ของคุณหากเห็นว่าคุณส่งสแปมให้ผู้ใช้
  • ข้อความ Push ที่ผู้ใช้เห็นในหน้าจอล็อกจะควบคุมโดย Google Wallet
  • คุณสามารถใช้วิธีการอัปเดตหรือPATCHเพื่อแก้ไขหรือนำข้อมูลข้อความออกโดยใช้ปลายทางของคลาสหรือออบเจ็กต์ปกติได้

ขั้นตอนการผสานรวม

เมื่อต้องการแจ้งให้ผู้ใช้ทราบเกี่ยวกับข้อความของผู้ออกใหม่ที่เพิ่มโดยใช้ AddMessage API คุณจะต้องอัปเดต AddMessageRequest เพื่อให้ Message ซึ่งมีข้อความใหม่ของคุณมี MessageType TEXT_AND_NOTIFY แทน TEXT

ตัวอย่างคำขอ JSON เพื่อเพิ่มข้อความและแจ้งเตือนในคลาส Passes

  …
  "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" ตามที่ได้อธิบายไว้ในขั้นตอนการผสานรวม