כרטיסים שמקושרים באופן אוטומטי

רקע

התכונה 'כרטיסים שמקושרים אוטומטית' מאפשרת לשלוח כרטיסים נוספים למשתמשים שכבר שמרו את הכרטיס שלכם ב-Google Wallet. אפשר גם לקשר מראש כרטיסים לכרטיס ראשי כשמשתמש שומר את הכרטיס הראשי (הראשי). הכרטיס שמקושר אוטומטית מקובץ עם הכרטיס הראשי, עם סימון מעל הכרטיס הראשי המודיע למשתמש על קישור כרטיס חדש. סוגי הכרטיסים הבאים נתמכים ככרטיסים ראשיים או מקושרים:

  • כרטיס לאירוע
  • כרטיס עלייה למטוס
  • כרטיס לתחבורה ציבורית
  • ההצעה
  • כרטיס מתנה
  • כרטיס מועדון לקוחות
  • כרטיס גנרי

תרחישים לדוגמה

יכול להיות שיהיו לכם תרחישים שונים לקישור כרטיסים לכרטיס קיים. דוגמאות:

  • קישור מבצע לכרטיס מועדון לקוחות קיים.
  • אפשר לקשר שובר ארוחה לכרטיס עלייה למטוס או לכרטיס לאירוע.
  • לקשר כרטיס חניה לכרטיס לאירוע.

דברים שחשוב להביא בחשבון כשמשתמשים בכרטיסים שמקושרים באופן אוטומטי

  • האובייקט הראשי והאובייקט המקושר חייבים להשתמש באותו מזהה מנפיק.
  • יש מגבלה של 50 אובייקטים מקושרים לכל אובייקט ראשי.
  • דחיפת כרטיסים מקושרים באופן אוטומטי לא מובטחת ונחשבת כהזדמנות הטובה ביותר. המשתמשים יכולים לבטל את ההסכמה לקבלת כרטיסים שמקושרים באופן אוטומטי. אם התרחיש לדוגמה קריטי והמשתמש חייב לקבל את הכרטיס המקושר, מומלץ לתקשר דרך ערוץ אחר כדי לוודא שהמשתמש מוסיף את הכרטיס.
  • העדכונים של מדיניות השימוש המקובל של Google Wallet כוללים הנחיות לשימוש בכרטיסים המקושרים באופן אוטומטי, שחובה לציית להם.

שלבי השילוב

אם כבר יצרתם אובייקט ראשי, אפשר לדלג על שלב 1.

  1. יוצרים אובייקט מכל סוג כרטיס שרשום עם הפרמטרים הנדרשים. זהו האובייקט הראשי.
  2. יוצרים אובייקט נוסף מכל סוג כרטיס שצוין. זה יהיה האובייקט המקושר.
  3. לפני או אחרי שמירת האובייקט הראשי, מעדכנים את האובייקט הראשי במזהה של האובייקט המקושר בפרמטר linkedObjectIds.

יש צורך במטען ייעודי (payload) מינימלי כדי להגדיר את ה-LinkedObjectIds במעבר ראשי. 3 הפרמטרים הנדרשים הם:

  1. ISSUERID.PRIMARY_OBJECT_ID
  2. ISSUERID.PRIMARY_CLASS_ID
  3. 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 שגוי, כולל:

Message הסיבה
לאובייקט הראשי ולאובייקט המקושר אין מזהה מנפיק זהה. לא ניתן לצרף אובייקט מקושר לאובייקט של מנפיק אחר.
האובייקט הראשי והאובייקט המקושר מתייחסים לאותו אובייקט. לא ניתן לצרף את אותו אובייקט כמו ה-LinkedObject.
האובייקט המקושר לא קיים. האובייקט המקושר כבר אמור להיות מוכנס ל-Wallet API.
לאובייקט המקושר כבר יש אובייקט מקושר אחר. אי אפשר להוסיף אובייקטים מקושרים בתצוגת עץ. לאובייקטים מקושרים לא יכול להיות אובייקט מקושר נוסף.
האובייקט כבר מקושר לאובייקט אחר. אי אפשר להוסיף אובייקטים מקושרים מקוננים. אובייקט ראשי לא יכול להיות אובייקט מקושר בפני עצמו.
לא ניתן להוסיף אובייקטים מקושרים נוספים, חרגת מהמגבלה. הגעת למגבלה של 50 כרטיסים מקושרים של הכרטיס הראשי.