2013-10-30 10 views
5

Attualmente stiamo implementando notifiche push (solo per IOS per ora) e stiamo pianificando l'utilizzo di Urban Airship. Vogliamo inviare un messaggio push a un dispositivo se ha la nostra app installata e abilitata, e invia un messaggio SMS in caso contrario. I nostri utenti pagano per le notifiche, quindi vogliamo essere sicuri che ricevano sempre un messaggio push o un messaggio SMS. L'invio dei messaggi push funziona correttamente, ma sono confuso su come tenere traccia di chi possiamo effettivamente inviare messaggi push.Monitoraggio degli utenti attivi per le notifiche push con Urban Airship

Per quanto ne so, l'unico modo per accertarsi veramente che un utente possa ricevere messaggi push è, prima di inviare un messaggio push, effettuare una chiamata aggiuntiva verso l'ape di dirigibile urbano per verificare se il dispositivo esiste ed è attivo. Preferirei non effettuare 2 chiamate api per ogni messaggio push, quindi un'alternativa potrebbe essere quella di tenere traccia di tutti i dispositivi registrati nel dirigibile urbano localmente e aggiornare l'elenco una volta all'ora. Tuttavia, ciò significherebbe che la "lista dei dispositivi attivi" non è sempre completamente accurata e che dobbiamo tenere traccia di tutti i dispositivi registrati da noi stessi, il che sembra reimplementare una parte del dirigibile urbano.

C'è qualche altro (migliore) modo per farlo? Per quanto posso vedere, quando invio un messaggio push al dirigibile urbano, l'API restituisce sempre che è stata inviata correttamente, indipendentemente dal fatto che un dispositivo sia attivo o meno.

Non riesco a immaginare di essere l'unico con questo problema. Qualcuno ha un modo migliore di risolverlo, o sono bloccato con le 2 opzioni che ho capito da solo?

risposta

5

azioni urbano Airship il seguente: two options

In ogni caso, le applicazioni devono aspettarsi e gestire dispositivo inattivo gettoni correttamente. Si raccomanda che gli sviluppatori sia:

  1. registrare il dispositivo Token ogni volta che l'applicazione è aperta, come la nostra applicazione di esempio esegue
  2. Usa la nostra API di feedback regolarmente, negozio inattivato gettoni di periferica nel proprio database, e inviare le registrazioni quando il token dispositivo diventa nuovamente attivo.

Se si effettua una chiamata supplementare al Airship Urbano per verificare se il dispositivo esiste ed è attiva, anche allora la 'lista dei dispositivi attivi' potrebbe non essere sempre del tutto preciso, perché Urbano Dirigibile si basa su aggiornamenti periodici da Apple Feedback Service:

Apple ci informa che l'applicazione è stata disinstallata tramite il servizio di feedback , che controlliamo regolarmente.

Inoltre, ricordare ciò che Apple ha dichiarato circa il delivery of Push Notifications:

Importante: consegna delle notifiche è un “best effort”, non garantiti. Non è destinato a fornire dati alla tua app, solo per informare l'utente che ci sono nuovi dati disponibili.

+0

Quindi, in pratica, non esiste un modo reale per rendere questo lavoro piacevole. È troppo male. – Dennisch

+0

@Dennisch sì, credo che la consegna delle notifiche non sia garantita. –