Notifiche attivate dai partner
Aggiungi messaggio e notifica
Sfondo
Dopo che un utente ha aggiunto una tessera, potresti voler inviargli un messaggio relativo alla
tessera e assicurarti che riceva una notifica. Se utilizzi la richiesta dell' API Add Message con un message_type
uguale a
TEXT_AND_NOTIFY
, si verifica quanto segue:
- Un elemento "Messaggio" viene aggiunto al "retro della tessera" (ovvero al modello Dettagli) e viene inviata una notifica push agli utenti che hanno salvato la tessera.
- Quando l'utente tocca la notifica, si apre Google Wallet nella parte anteriore della tessera (ovvero la visualizzazione della carta) e l'utente vedrà un callout nella parte superiore dello schermo con un pulsante "Visualizza messaggio".
- Se fai clic sul callout, gli utenti vengono indirizzati al retro della tessera, dove vengono evidenziati i nuovi messaggi non letti.
Alcune considerazioni sull'invio di messaggi con notifiche agli utenti
- Gli utenti devono aver attivato le notifiche per le proprie tessere per ricevere le notifiche push relative ai messaggi.
- I messaggi possono contenere URI al tuo sito web o alla tua app. Gli hyperlink devono essere un sito web o un'app correlati alla tessera. È una violazione delle Norme di utilizzo accettabile inviare gli utenti a link non correlati alla tessera.
- Puoi inviare un massimo di tre messaggi che attivano una notifica push in un periodo di 24 ore. Google potrebbe limitare la quota di invio delle notifiche push se ritiene che tu stia inviando spam ai tuoi utenti.
- La notifica push che gli utenti vedono nella schermata di blocco è controllata da Google Wallet.
- Puoi utilizzare i metodi UPDATE o PATCH per modificare o rimuovere i dati dei messaggi utilizzando l'endpoint della classe o dell'oggetto normale.
Passaggi per l'integrazione
Quando vuoi inviare una notifica agli utenti in merito a un nuovo messaggio dell'emittente aggiunto utilizzando l'API AddMessage, devi aggiornare AddMessageRequest in modo che Message, che contiene il nuovo testo, abbia MessageType TEXT_AND_NOTIFY anziché TEXT.
Esempio di richiesta JSON per aggiungere un messaggio e inviare una notifica in una classe di tessere
… "id": ISSUER_ID.CLASS_ID", "message": { "header":"My Class message header", "body": "My Class message body with a <a href="https://wallet.google">Hyperlink<\a>", "id": "message_id", "message_type": "TEXT_AND_NOTIFY" }, …
Richiesta JSON di esempio per aggiungere un messaggio e inviare una notifica in un oggetto Pass
… "id": OBJECT_ID", "classId": "ISSUER_ID.CLASS_ID", "message": { "header":"My Object message header", "body": "My Object message body with a <a href="http://play.google.com/store/apps/details?id=com.google.android.apps.maps">Hyperlink<\a>", "id": "message_id", "message_type": "TEXT_AND_NOTIFY" }, …
Esempio di Risposta per aggiungere un messaggio e inviare una notifica per un abbonamento a un corso
// The updated resource … { "kind": "walletobjects#walletObjectMessage", "header": "My Object message header", "body": "My Object message body with a <a href="http://play.google.com/store/apps/details?id=com.google.android.apps.maps">Hyperlink<\a>", "id": "message_id", "messageType": "textAndNotify" }, …
Gestione delle eccezioni
Qualsiasi tentativo di notifica più di tre volte genererà una risposta QuotaExceededException . Eventuali aggiornamenti successivi della tessera possono essere impostati utilizzando "TEXT" anziché "TEXT_AND_NOTIFY" come descritto nei passaggi di integrazione.
Aggiorna campo e invia notifica
Sfondo
Dopo che un utente ha aggiunto una tessera, potresti voler attivare una notifica push quando aggiorni determinati campi. La notifica verrà visualizzata nella schermata di blocco dell'utente e lo informerà che è disponibile un aggiornamento della sua tessera. Questa notifica verrà attivata solo per un sottoinsieme specifico di campi definiti di seguito utilizzando i metodi API UPDATE e PATCH. Una volta effettuata una chiamata API per aggiornare la tessera, si verifica quanto segue:
- Viene attivata e visualizzata una notifica push nella schermata di blocco dell'utente, che lo informa di un aggiornamento della tessera.
- Quando l'utente tocca la notifica, Google Wallet si apre in primo piano della tessera (ovvero la visualizzazione della carta) e l'utente vedrà una callout nella parte superiore dello schermo con un pulsante "Rivedi aggiornamento".
- Se l'utente fa clic sul pulsante, viene visualizzata una schermata in cui può vedere i campi modificati dall'aggiornamento.
Alcune considerazioni sull'invio di notifiche di aggiornamento dei campi
- Gli utenti devono aver attivato le notifiche per le proprie tessere per ricevere le notifiche push relative agli aggiornamenti.
- Puoi inviare un massimo di tre aggiornamenti che attivano una notifica push in un periodo di 24 ore. Google potrebbe limitare la quota di invio delle notifiche push se ritiene che tu stia inviando spam ai tuoi utenti.
- La notifica push che gli utenti vedono nella schermata di blocco è controllata da Google Wallet.
- Il campo
notifyPreference
è un campo temporaneo che esiste solo in questa richiesta. Per le richieste future in cui vuoi attivare una notifica, devi reimpostare questo campo nella richiesta di classe o oggetto.
Passaggi per l'integrazione
Per attivare queste notifiche, devi utilizzare le chiamate UPDATE o PATCH esistenti e specificare notifyPreference. Quando aggiorni un campo in una classe o in un oggetto, puoi
aggiungere un nuovo campo, notifyPreference
, alla richiesta di classe o oggetto per attivare la
notifica.
Esempio di richiesta JSON per aggiornare e inviare una notifica in un corso
… "dateTime": { "kind": "walletobjects#eventDateTime", "doorsOpen": "2024-09-23T19:20:50.00" }, "multipleDevicesAndHoldersAllowedStatus": "multipleHolders", "notifyPreference": "notifyOnUpdate", …
L'impostazione di notifyPreference
su notifyOnUpdate
attiverà una notifica, a condizione che il campo aggiornato sia attualmente supportato.
Campi supportati
FlightObject
- boardingAndSeatingInfo.seatNumber
- boardingAndSeatingInfo.seatAssignment
Notifiche Qui vicino
Questa funzionalità mostrerà agli utenti che hanno attivato le notifiche e concesso l'accesso alla posizione esatta e sempre attiva all'app Google Wallet una notifica push che ricorda loro di aver salvato una tessera pertinente alla loro posizione attuale.Passaggi per l'integrazione
Modalità di utilizzo
Per utilizzare questa funzionalità, devi aggiungere posizioni alle tue classi e ai tuoi oggetti. Puoi aggiungere fino a 10
posizioni per classe e 10 per oggetto. Utilizza MerchantLocations
nella definizione della classe o dell'oggetto. Puoi aggiungere queste località quando utilizzi i metodi insert
, patch
o update
.
Dopo aver aggiunto posizioni a una classe o a un oggetto, Google invierà notifiche agli utenti quando si trovano nelle vicinanze. Google decide quanto vicino deve trovarsi un utente e per quanto tempo deve rimanere nella zona prima che venga inviata la notifica. Google controlla anche il testo della notifica.
Esempio di LoyaltyClass con MerchantLocations impostato:{ "kind": "walletobjects#loyaltyClass", "programLogo": { "kind": "walletobjects#image", "sourceUri": { "uri": ... } }, "localizedProgramName": { "kind": "walletobjects#localizedString", "defaultValue": { "kind": "walletobjects#translatedString", "language": "en", "value": "Program Name", } }, "id": Id1234, "version": "1", "allowMultipleUsersPerObject": true, "reviewStatus": "underReview", "enableSmartTap": false, "localizedIssuerName": { "kind": "walletobjects#localizedString", "defaultValue": { "kind": "walletobjects#translatedString", "language": "en", "value": "Issuer Name" } }, "multipleDevicesAndHoldersAllowedStatus": "multipleHolders", "merchantLocations": [ { "latitude": 37.79020867928078, "longitude": -122.39004 }, { "latitude": 37.42587, "longitude": -122.08620 }, ] }
Comportamento previsto
Gli utenti dovrebbero ricevere notifiche permanenti sulle loro tessere quando si trovano in una delle MerchantLocation specificate. Se fa clic sulla notifica, la tessera si aprirà in Google Wallet. Gli utenti possono chiudere la notifica con il gesto di scorrimento. Quando un utente lascia la posizione, la notifica scompare.
Notifiche automatiche attivate da Google Wallet
Notifica in arrivo
Google Wallet invia una notifica all'utente tre ore prima del
volo. La durata del volo è definita da
class.localScheduledDepartureDateTime
.
Per ricevere questa notifica, l'utente deve aver attivato le notifiche. Per controllare, può andare su Impostazioni > Notifiche e verificare se l'opzione Aggiornamenti sulle tue tessere è attivata.
La notifica viene visualizzata nell'area delle notifiche e nella schermata di blocco, se l'utente ha attivato le notifiche per la schermata di blocco.
La notifica ha il seguente formato non modificabile:
Boarding pass for your flight to class.destination.airportIataCode
Se tocca la notifica e sblocca il dispositivo, la tessera viene visualizzata nell'app Google Wallet.
Se l'utente ha più abbonamenti, viene mostrato solo quello utilizzabile più a breve. Se ha aggiunto tessere raggruppate come descritto in Raggruppare più carte d'imbarco, la notifica mostra solo una delle tessere del gruppo. Tuttavia, quando lo tocca, l'utente può scorrere verso sinistra e destra per vedere le altre tessere del gruppo.
La notifica viene bloccata e non viene chiusa automaticamente dopo che un utente l'ha aperta. La chiusura automatica avviene 60
minuti dopo class.localScheduledDepartureDateTime
.
Notifica aggiornamento volo
Quando vengono modificati determinati campi di un volo, gli utenti con una o più carte d'imbarco aggiunte ricevono una notifica push sui loro dispositivi. Ciò si verifica solo se sono soddisfatte determinate condizioni.
Terminal e gate di partenza
Se modifichi class.origin.terminal
o class.origin.gate
,
e viene soddisfatta la seguente condizione, viene inviata una notifica che indica che il campo è stato modificato.
- Mancano meno di tre ore
prima delle ore
class.localScheduledDepartureDateTime
.
La notifica ha il seguente formato: "Sample Airlines ha aggiornato il tuo gate ad A1". Il formato non può essere modificato.
Orario di imbarco e orario di partenza
Se modifichi class.localBoardingDateTime
o class.localEstimatedOrActualDepartureDateTime
e le condizioni riportate di seguito sono soddisfatte, viene inviata una
notifica che indica che il campo è stato modificato.
- Mancano meno di 24 ore
prima delle ore
class.localScheduledDepartureDateTime
. - L'ora corrispondente cambia di almeno 10 minuti o più.
La notifica è nel seguente formato: "_Sample Airlines ha aggiornato l'orario di imbarco alle 18:00._" Il formato o la lingua non possono essere personalizzati.