רקע
התכונה 'כרטיסים מקושרים אוטומטית' מאפשרת לכם לשלוח כרטיסים נוספים למשתמש שכבר יש לו כרטיס קיים שלכם ב-Google Wallet. אפשר גם לקשר מראש כרטיסים לכרטיס ראשי כשמשתמש שומר את הכרטיס הראשי (המרכזי). הכרטיס המקושר אוטומטית מקובץ עם הכרטיס הראשי, ומוצגת מעליו הערה שמיידעת את המשתמש על כך שכרטיס חדש קושר. סוגי הכרטיסים הבאים נתמכים ככרטיסים ראשיים או ככרטיסים מקושרים:
- כרטיס לאירוע
- כרטיס עלייה למטוס
- כרטיס לתחבורה ציבורית
- מבצע
- כרטיס מתנה
- כרטיס מועדון לקוחות
- כרטיס גנרי
|
|
| כרטיס ראשי עם הכיתוב שמציין שנוסף כרטיס חדש | כרטיס חדש מקושר לכרטיס הראשי |
תרחישים לדוגמה
יכול להיות שיהיו לכם תרחישי שימוש שונים לקישור כרטיסים לכרטיס קיים. דוגמאות:
- קישור מבצע לכרטיס מועדון לקוחות קיים.
- לקשר שובר לארוחה לכרטיס עלייה למטוס או לכרטיס לאירוע.
- לקשר כרטיס חנייה לכרטיס לאירוע.
שיקולים לשימוש בכרטיסים שמקושרים אוטומטית
- האובייקט הראשי והאובייקט המקושר חייבים להשתמש באותו issuerId.
- יש מגבלה של 50 אובייקטים מקושרים לכל אובייקט ראשי.
- אין ערובה לכך שהכרטיסים המקושרים יועברו אוטומטית, וההעברה הזו נחשבת כמאמץ הכי טוב שאפשר לעשות. המשתמשים יכולים לבטל את ההסכמה לקבלת כרטיסים שמקושרים אוטומטית. אם התרחיש לדוגמה הוא קריטי והמשתמש חייב לקבל את הכרטיס המקושר, מומלץ לתקשר איתו בערוץ אחר כדי לוודא שהוא יוסיף את הכרטיס.
- העדכונים למדיניות השימוש המקובל ב-Google Wallet כוללים הנחיות לשימוש בכרטיסים שמקושרים אוטומטית, וחובה לפעול בהתאם להנחיות האלה.
שלבי ההטמעה
אם כבר יצרתם אובייקט ראשי, אתם יכולים לדלג על שלב 1.
- יוצרים אובייקט מכל סוג כרטיס שמופיע ברשימה עם הפרמטרים הנדרשים. זהו אובייקט primary.
- יוצרים אובייקט נוסף מכל סוג כרטיס שמופיע ברשימה. זה יהיה האובייקט המקושר.
- לפני ששומרים את האובייקט הראשי או אחרי ששומרים אותו, מעדכנים את האובייקט הראשי עם המזהה של האובייקט המקושר בפרמטר linkedObjectIds.
יש מטען ייעודי (payload) מינימלי שנדרש כדי להגדיר את המאפיין linkedObjectIds בכרטיס מעבר ראשי. שלושת הפרמטרים הנדרשים כוללים:
- 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, כולל:
| Message | סיבה |
|---|---|
| לאובייקט הראשי ולאובייקט המקושר אין אותו מזהה מנפיק. | אי אפשר לצרף אובייקט מקושר לאובייקט של מנפיק אחר. |
| האובייקט הראשי והאובייקט המקושר מתייחסים לאותו אובייקט. | אי אפשר לצרף את אותו אובייקט בתור linkedObject. |
| האובייקט המקושר לא קיים. | האובייקט המקושר צריך כבר להיות מוכנס ל-Wallet API. |
| לאובייקט המקושר כבר יש אובייקט מקושר אחר. אי אפשר להוסיף אובייקטים מקושרים מוטמעים. | אי אפשר לקשר אובייקט מקושר לאובייקט מקושר אחר. |
| האובייקט כבר מקושר לאובייקט אחר. אי אפשר להוסיף אובייקטים מקושרים מוטמעים. | האובייקט הראשי לא יכול להיות אובייקט מקושר בפני עצמו. |
| אי אפשר להוסיף עוד אובייקטים מקושרים, חרגת מהמגבלה. | הגעתם למגבלה של 50 כרטיסים מקושרים לכרטיס הראשי. |