ฉากหลัง
ฟีเจอร์นี้ช่วยให้สายการบินส่งบัตรขึ้นเครื่องไปยัง Google Wallet ของผู้ใช้โดยอัตโนมัติได้ ซึ่งจะเป็นประโยชน์อย่างยิ่งสำหรับผู้ที่เดินทางบ่อย เนื่องจากจะได้รับ วิธีที่ง่ายขึ้นและมีอุปสรรคน้อยลงในการเพิ่มบัตรขึ้นเครื่องลงใน Wallet เนื่องจากมีความถี่ในการเดินทางสูงกว่า
ซึ่งจะเกิดขึ้นโดยอัตโนมัติไม่ว่าช่องทางการเช็คอินจะเป็นช่องทางใด (เช่น เว็บ แอป หรือคีออสก์ที่สนามบิน) สายการบินใช้หมายเลขบัญชีสะสมคะแนนของผู้ใช้เพื่อเชื่อมโยงและส่งบัตร
หมายเหตุ: ฟีเจอร์นี้เป็นการติดตั้งใช้งานความสามารถ "บัตรที่ลิงก์อัตโนมัติ" โดยเฉพาะ ส่วนที่เหลือของเอกสารจะใช้คำศัพท์ที่กว้างขึ้นคือ "บัตรที่ลิงก์อัตโนมัติ" รวมถึง "บัตรหลัก" และ "บัตรที่ลิงก์" เพื่ออธิบายฟังก์ชันนี้
วิธีการทำงานของฟีเจอร์นี้
ขั้นตอนที่ 1: เปิดใช้การตั้งค่าสำหรับผู้เดินทางบ่อยเพื่อให้เพิ่มบัตรสะสมคะแนนลงใน Wallet ได้
ขั้นตอนที่ 2: เพิ่มบอร์ดดิ้งพาสใหม่สำหรับผู้ที่เดินทางบ่อยโดยอัตโนมัติด้วยการลิงก์บอร์ดดิ้งพาสกับ บัตรสะสมคะแนนใน Wallet
ข้อควรพิจารณาบางประการเมื่อใช้บัตรที่ลิงก์อัตโนมัติ
- ออบเจ็กต์หลักและออบเจ็กต์ที่ลิงก์ต้องใช้ issuerId เดียวกัน
- ออบเจ็กต์หลัก 1 รายการมีออบเจ็กต์ที่ลิงก์ได้ไม่เกิน 50 รายการ
- เราไม่รับประกันว่าจะส่งบัตรที่ลิงก์โดยอัตโนมัติได้ และถือว่าเป็นการดำเนินการอย่างเต็มความสามารถ ผู้ใช้สามารถเลือกไม่รับบัตรที่ลิงก์อัตโนมัติได้ หากกรณีการใช้งานมีความสำคัญและผู้ใช้ต้องได้รับบัตรที่ลิงก์ไว้ เราขอแนะนำให้สื่อสารผ่านช่องทางอื่นเพื่อให้แน่ใจว่าผู้ใช้ได้เพิ่มบัตรแล้ว
- การอัปเดต AUP ของ Google Wallet รวมถึงคำแนะนำเกี่ยวกับการใช้บัตรที่ลิงก์อัตโนมัติซึ่งต้องปฏิบัติตาม
ขั้นตอนการผสานรวม
หากสร้างออบเจ็กต์หลักแล้ว คุณสามารถข้ามขั้นตอนที่ 1 ได้
- สร้างออบเจ็กต์ของบัตรประเภทใดก็ได้ที่แสดง พร้อมพารามิเตอร์ที่จำเป็น นี่คือออบเจ็กต์หลัก
- สร้างออบเจ็กต์อื่นของบัตรประเภทใดก็ได้ที่ระบุไว้ นี่คือออบเจ็กต์ที่ลิงก์
- ไม่ว่าจะก่อนหรือหลังบันทึกออบเจ็กต์หลัก ให้อัปเดต ออบเจ็กต์หลักด้วยรหัสของออบเจ็กต์ที่ลิงก์ในพารามิเตอร์ linkedObjectIds
ต้องมีเพย์โหลดขั้นต่ำเพื่อตั้งค่า linkedObjectIds ในบัตรหลัก พารามิเตอร์ที่จำเป็น 3 รายการมีดังนี้
- ISSUERID.PRIMARY_OBJECT_ID
- ISSUERID.PRIMARY_CLASS_ID
- ISSUERID.LINKED_OBJECT_ID
ตัวอย่างคำขอ JSON เพื่อเพิ่มออบเจ็กต์ที่ลิงก์ไปยังออบเจ็กต์บัตร
… { "id": "ISSUERID.PASS_OBJECTID", "classId": "ISSUERID.PASS_CLASSID", "barcode": { "type": "qrCode", "value": "QR code" }, "linkedObjectIds": ["ISSUERID.LINKED_PASS_OBJECTID"] } …
ตัวอย่างการตอบกลับ JSON หลังจากลิงก์ออบเจ็กต์กับออบเจ็กต์บัตร
…
"state": "active",
"linkedObjectIds": {
"ISSUERID.LINKED_PASS_OBJECTID"
}
…ลักษณะการทำงานที่ควรจะเป็น
หลังจากได้รับคำตอบที่สำเร็จแล้ว อุปกรณ์ที่มีบัตรที่คุณอัปเดต ควรได้รับบัตรที่ลิงก์ ระบบจะจัดกลุ่มบัตรที่ลิงก์นี้ไว้กับ บัตรหลัก ผู้ใช้จะดูบัตรที่ลิงก์ไว้ได้โดยปัดไปทางขวา
การจัดการข้อยกเว้น
ข้อผิดพลาดที่อาจเกิดขึ้นจากการใช้ API อย่างไม่ถูกต้องอาจรวมถึง
| ข้อความ | เหตุผล |
|---|---|
| ออบเจ็กต์หลักและออบเจ็กต์ที่ลิงก์ไม่มีรหัสผู้ออกเดียวกัน | คุณแนบออบเจ็กต์ที่ลิงก์กับออบเจ็กต์ของผู้ให้บริการรายอื่นไม่ได้ |
| ออบเจ็กต์หลักและออบเจ็กต์ที่ลิงก์อ้างอิงถึงออบเจ็กต์เดียวกัน | คุณแนบออบเจ็กต์เดียวกันเป็น linkedObject ไม่ได้ |
| ไม่มีออบเจ็กต์ที่ลิงก์ | ควรอัปโหลดออบเจ็กต์ที่ลิงก์ไปยัง Wallet API แล้ว |
| ออบเจ็กต์ที่ลิงก์มีออบเจ็กต์อื่นที่ลิงก์อยู่แล้ว เพิ่มออบเจ็กต์ที่ลิงก์ ซ้อนกันไม่ได้ | ออบเจ็กต์ที่ลิงก์แล้วจะมีออบเจ็กต์อื่นที่ลิงก์ไม่ได้ |
| ออบเจ็กต์ลิงก์กับออบเจ็กต์อื่นอยู่แล้ว เพิ่มออบเจ็กต์ที่ลิงก์ซ้อนกันไม่ได้ | ออบเจ็กต์หลักไม่สามารถเป็นออบเจ็กต์ที่ลิงก์ด้วยตัวเองได้ |
| เพิ่มออบเจ็กต์ที่ลิงก์ไม่ได้อีกแล้ว เนื่องจากเกินขีดจำกัด | บัตรหลักมีบัตรที่ลิงก์ครบตามจำนวนสูงสุด 50 ใบแล้ว |