הוספה אוטומטית של כרטיסי עלייה למטוס

רקע

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

הפעולה הזו מתבצעת באופן אוטומטי, ללא קשר לערוץ הצ'ק-אין (למשל, אתר, אפליקציה או עמדת צ'ק-אין בשדה התעופה). חברת התעופה משתמשת במספר מועדון הלקוחות של המשתמש כדי ליצור קורלציה בין הכרטיס לבין החשבון ולשלוח את הכרטיס.

Flow

הערה: התכונה הזו היא הטמעה ספציפית של היכולת 'כרטיסים שמקושרים אוטומטית'. בהמשך המסמך נעשה שימוש במינוח הרחב יותר 'כרטיסים מקושרים אוטומטית', וגם במונחים 'כרטיס ראשי' ו'כרטיס מקושר' לתיאור הפונקציונליות הזו.

איך התכונה הזו פועלת

שלב 1: מאפשרים לנוסע המתמיד להוסיף את כרטיס המועדון שלו ל-Wallet.

שלב 2: מוסיפים אוטומטית כרטיסי עלייה למטוס חדשים לנוסע המתמיד על ידי קישור שלהם לכרטיס המועדון שלו ב-Wallet.

שיקולים לשימוש בכרטיסים שמקושרים אוטומטית

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

שלבי ההטמעה

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

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

יש מטען ייעודי (payload) מינימלי שנדרש כדי להגדיר את המאפיין linkedObjectIds בכרטיס מעבר ראשי. שלושת הפרמטרים הנדרשים כוללים:

  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 כרטיסים מקושרים לכרטיס הראשי.