ภาพรวม

Google Wallet Passes API ช่วยให้พาร์ทเนอร์บันทึกบาร์โค้ดแบบหมุนลงใน Google Wallet ได้ บาร์โค้ดเหล่านี้ใช้งานได้เพียงระยะเวลาสั้นๆ เท่านั้น ซึ่งช่วยเพิ่มความปลอดภัยเพื่อลดความเสี่ยงในการจับภาพหน้าจอบาร์โค้ด ระบบจะสร้างบาร์โค้ดในอุปกรณ์ตาม RFC 6238 โดยพาร์ทเนอร์เป็นผู้ระบุคีย์ลับ อย่างไรก็ตาม หากพาร์ทเนอร์ต้องการสร้างบาร์โค้ดเอง Google มี API ที่ให้อัปโหลดบาร์โค้ดหลายรายการไปยัง Google ได้ จากนั้นระบบจะส่งบาร์โค้ดเหล่านี้ไปยังโทรศัพท์ของผู้ใช้ ซึ่งจะทํางานเหมือนกับบาร์โค้ดแบบหมุน โดยจะแสดงเป็นระยะเวลาสั้นๆ เราเรียกโซลูชันนี้ว่าบาร์โค้ดแบบหมุนที่สร้างขึ้นโดยพาร์ทเนอร์

Rotating Barcode API ที่เกิดจากพาร์ทเนอร์

ระบบจะสร้างบาร์โค้ดแบบหมุนที่เกิดจากพาร์ทเนอร์โดยใช้ออบเจ็กต์ RotatingBarcode เดียวกัน คุณจำเป็นต้องระบุเฉพาะประเภทเท่านั้น แต่เราขอแนะนำให้สร้างชุดบาร์โค้ดเริ่มต้นขนาดเล็ก (ประมาณ 10 นาที) และส่งมาทาง initialRotatingBarcodeValues พาร์ทเนอร์มีหน้าที่ตรวจสอบว่ามีบาร์โค้ดที่ถูกต้องพร้อมใช้งานสำหรับผู้ใช้เสมอ และinitialRotatingBarcodeValuesอนุญาตให้การเรียกใช้การอัปโหลดหลายรายการพร้อมกันครั้งต่อๆ ไปเป็นแบบไม่พร้อมกัน

  rotatingBarcode {
    initialRotatingBarcodeValues: object (RotatingBarcodeValues),
    type: enum (BarcodeType),
  }
ช่อง คำอธิบาย
initialRotatingBarcodeValues

object (RotatingBarcodeValues)

ค่าที่จะเข้ารหัสในบาร์โค้ด ต้องระบุอย่างน้อย 1 ค่า บาร์โค้ดเริ่มต้นเหล่านี้มีไว้เพื่อเติมเต็มช่องว่างระหว่างเวลาที่ผู้ใช้ได้รับบัตรเป็นครั้งแรกและเวลาที่เรียกใช้การอัปโหลดหลายรายการพร้อมกันในภายหลัง

type

enum (BarcodeType)

ต้องระบุ ประเภทของบาร์โค้ดนี้

ค่าที่ยอมรับมีดังนี้

  • QR_CODE
  • PDF_417

RotatingBarcodeValues
ช่อง คำอธิบาย
startDateTime

string

วันที่/เวลาที่บาร์โค้ดแรกใช้งานได้ ระบบจะหมุนบาร์โค้ดโดยใช้ periodMillis

นี่คือวันที่/เวลารูปแบบขยาย ISO 8601 พร้อมออฟเซ็ต

values[]

string

ค่าที่จะเข้ารหัสในบาร์โค้ด ต้องระบุอย่างน้อย 1 ค่า

ไม่มีจำนวนค่าสูงสุด แต่โปรดทราบว่าขนาดของเนื้อหาคำขอต้องไม่เกิน 5 MB

periodMillis

number

ระยะเวลาที่บาร์โค้ดแต่ละรายการใช้งานได้

อัปเดตค่าบาร์โค้ดทีละหลายรายการ

หลังจากสร้างออบเจ็กต์ RotatingBarcode แล้ว เราขอแนะนำให้อัปโหลดบาร์โค้ดสำหรับ 1 วันทุกวันจนกว่าบัตรของผู้ใช้จะหมดอายุ ซึ่งทำได้ด้วยปลายทาง REST API ต่อไปนี้

วิธีการ: transitobject.uploadrotatingbarcodevalues

อัปโหลดค่าบาร์โค้ดแบบหมุนไปยังออบเจ็กต์ขนส่งสาธารณะที่อ้างอิงโดยรหัสออบเจ็กต์ที่ระบุ

คำขอ HTTP

POST https://walletobjects.googleapis.com/upload/walletobjects/v1/transitObject/{resourc eId}/uploadRotatingBarcodeValues

พารามิเตอร์เส้นทาง

พารามิเตอร์ คำอธิบาย
resourceId

string

ตัวระบุที่ไม่ซ้ำกันสำหรับออบเจ็กต์

เนื้อหาของคำขอ

เนื้อหาของคำขอ (ซึ่งต้องไม่เกิน 5 MB) มีอินสแตนซ์ของ RotatingBarcodeValues

วิธีการ: transitobject.downloadrotatingbarcodevalues

ดาวน์โหลดค่าบาร์โค้ดแบบหมุนสำหรับวัตถุขนส่งสาธารณะที่อ้างอิงโดยรหัสวัตถุที่ระบุ ซึ่งจะมีประโยชน์หากพาร์ทเนอร์ต้องการยืนยันกลุ่มล่าสุด

คำขอ HTTP

GET https://walletobjects.googleapis.com/walletobjects/v1/transitObject/{resourceId}/do wnloadRotatingBarcodeValues?alt=media

พารามิเตอร์เส้นทาง

พารามิเตอร์ คำอธิบาย
resourceId

string

ตัวระบุที่ไม่ซ้ำกันสำหรับออบเจ็กต์

กลไกสำรอง

โปรดทราบว่าหาก RotatingBarcode ที่ถูกต้องไม่มีบาร์โค้ดที่ถูกต้องที่จะแสดง (ยังไม่ได้อัปโหลดหรือมีการใช้บาร์โค้ดปัจจุบันทั้งหมดแล้ว) ระบบจะแสดงข้อความแสดงข้อผิดพลาดต่อผู้ใช้