Notifiche push push-notifications
Essere in grado di avvisare immediatamente gli utenti della tua app mobile Adobe Experience Manager (AEM) con notifiche importanti è fondamentale per il valore di un’app mobile e delle relative campagne di marketing. Qui sono descritti i passaggi da seguire per consentire all’app di ricevere notifiche push. Scopri anche come configurare e inviare push da AEM Mobile all’app installata sul telefono. In questa sezione viene inoltre descritto come configurare la funzionalità Collegamenti diretti per le notifiche push.
L’utilizzo di notifiche push con AEM richiede alcune tecnologie diverse. Innanzitutto, è necessario utilizzare un provider di servizi di notifica push per gestire notifiche e dispositivi (finora non è stato l’AEM). Due provider sono configurati con AEM: Amazon Simple Notification Service (o SNS) e Pushwoosh. In secondo luogo, la tecnologia push per il sistema operativo mobile deve passare attraverso il servizio appropriato: Apple Push Notification Service (o APNS) per i dispositivi iOS e Google Cloud Messaging (o GCM) per i dispositivi Android™. Sebbene l’AEM non comunichi direttamente con questi servizi specifici della piattaforma, alcune informazioni di configurazione correlate devono essere fornite dall’AEM insieme alle notifiche necessarie per l’esecuzione del push di tali servizi.
Una volta installato e configurato (come spiegato di seguito) funziona così:
- Viene creata una notifica push in AEM e inviata al provider di servizi (Amazon SNS o Pushwoosh).
- Il provider di servizi lo riceve e lo invia al provider di base (APNS o GCM).
- Il provider di base invia la notifica a tutti i dispositivi registrati per tale push. Per ogni dispositivo, utilizza la rete dati cellulare o WiFi, a seconda di quale sia disponibile sul dispositivo.
- La notifica viene visualizzata sul dispositivo se l’app per la quale è registrata non è in esecuzione. Un utente che tocca la notifica avvia l’app e la visualizza all’interno dell’app. Se l’applicazione è già in esecuzione, viene visualizzata solo la notifica in-app.
Questa versione dell’AEM supporta i dispositivi mobili iOS e Android™.
Panoramica e procedura overview-and-procedure
Per utilizzare le notifiche push in un’app AEM Mobile, è necessario eseguire i seguenti passaggi di alto livello.
In genere, uno sviluppatore Experience Manager esegue le seguenti operazioni:
- Registrati ad Apple e ai servizi di messaggistica Google
- Registrati a un servizio di messaggistica push e configuralo
- Aggiungere supporto push all’app
- Prepara un telefono per il test
Mentre un amministratore di Experience Manager esegue le seguenti operazioni:
- Configurare il push sulle app AEM
- Creare e distribuire l’app
- Inviare una notifica push
- Configura collegamenti diretti (facoltativo)
Passaggio 1: registrati ad Apple e ai servizi di messaggistica Google step-register-with-apple-and-google-messaging-services
Utilizzo del servizio APNS (Apple Push Notification Service) using-the-apple-push-notification-service-apns
Vai alla pagina di Apple qui per acquisire familiarità con il servizio Apple Push Notification.
Per utilizzare APNs, è necessario un file Certificate (un file .cer), una Private Key (un file .p12) e una Private Key Password di Apple. Le istruzioni per eseguire questa operazione sono disponibili qui.
Utilizzo del servizio Google Cloud Messaging (GCM) using-the-google-cloud-messaging-gcm-service
Vai alla pagina Google qui per acquisire familiarità con Google Cloud Messaging per Android™.
Segui questi passaggi per Creare un progetto API Google, Abilitare il servizio GCM e Ottenere una chiave API. È necessario Chiave API per inviare notifiche push ai dispositivi Android™. Registra inoltre il numero progetto, talvolta denominato anche ID mittente GCM.
I passaggi seguenti mostrano un metodo diverso di creazione delle chiavi API GCM:
- Accedi a Google e vai alla pagina per sviluppatori di Google.
- Scegli l’app dall’elenco (o creane una).
- In Nome pacchetto Android™, immetti l'ID app, ovvero
com.adobe.cq.mobile.weretail.outdoorsapp
. Se non funziona, riprova con "test.test". - Fai clic su Continua a scegliere e configurare i servizi
- Selezionare Messaggistica cloud, quindi fare clic su Abilita messaggistica Google Cloud.
- Vengono quindi visualizzati la nuova chiave API server e l’ID mittente (nuovo o esistente).
Passaggio 2: registrare e configurare un servizio di messaggistica push step-register-and-configure-a-push-messaging-service
AEM è configurato per utilizzare uno dei tre servizi per le notifiche push:
- Amazon SNS
- Pushwoosh
- Adobe Mobile Services
Le configurazioni Amazon SNS e Pushwoosh ti consentono di inviare messaggi push dall'interno di schermi AEM.
La configurazione di Adobe Mobile Services consente di configurare e inviare notifiche push da Adobe Mobile Services utilizzando un account Adobe Analytics (ma l'app deve essere generata con questa configurazione impostata per abilitare le notifiche push AMS).
Utilizzo del servizio di messaggistica Amazon SNS using-the-amazon-sns-messaging-service
Se non desideri utilizzare Amazon SNS, puoi saltare questi passaggi.
Segui questi passaggi per configurare Amazon SNS per le notifiche push:
-
Registrati ad Amazon SNS
- Registra l'ID account. Il formato deve essere di 12 cifre senza spazi o trattini, ovvero "123456789012".
- Assicurati di trovarti nell’area "us-east" o "eu", in quanto un passaggio successivo (creazione del pool di identità) richiede una di queste.
- Dopo la registrazione, accedi alla console di gestione e seleziona SNS (servizio di notifica push). Fare clic su "Inizia" se viene visualizzato.
-
Crea chiave di accesso e ID
- Fai clic sul nome di accesso in alto a destra dello schermo e scegli Credenziali di sicurezza dal menu.
- Fare clic su Chiavi di accesso e nello spazio sottostante fare clic su Crea nuova chiave di accesso.
- Fai clic su Mostra chiave di accesso, quindi copia e salva l'ID chiave di accesso e la chiave di accesso segreta visualizzati. Se scegli l’opzione per scaricare le chiavi, ottieni un file csv che contiene gli stessi valori.
- In questa pagina è possibile gestire altri certificati relativi alla sicurezza e altri certificati.
note note NOTE Una chiave di accesso può essere utilizzata per più app. Per le organizzazioni che utilizzano un account "AWS Sandbox", i passaggi sono simili e descritti qui:
- Fai clic sul nome di accesso in alto a destra dello schermo e scegli Credenziali di sicurezza personali dal menu.
- Fai clic su Utenti nell’elenco di azioni a sinistra e scegli il nome utente.
- Fare clic sulla scheda Credenziali di protezione.
- Da qui, puoi visualizzare le tue chiavi e crearne di nuove. Salva le chiavi per un uso successivo.
-
Crea un argomento
- Fare clic su Crea argomento e scegliere un nome di argomento. Registra tutti i campi come Argomento ARN, Proprietario argomento, Area geografica, Nome visualizzato.
- Fai clic su Altre azioni argomento > Modifica criterio argomento. In Consenti a questi utenti di iscriversi a questo argomento, seleziona Tutti.
- Fare clic su Aggiorna criterio.
note note NOTE Puoi creare più argomenti per diversi scenari, ad esempio sviluppo, test e demo. Il resto della configurazione SNS può rimanere lo stesso. Crea l’app con un argomento diverso; le notifiche push inviate a tale argomento verranno ricevute solo dall’app creata con tale argomento. -
Crea applicazioni Platform
-
Fai clic su Applicazioni, quindi su Crea applicazione Platform. Scegli un nome e seleziona una piattaforma (APNS per iOS, GCM per Android™). A seconda della piattaforma. gli altri campi devono essere compilati:
- Per APNS, è necessario immettere un file P12, una password, un certificato e una chiave privata. Questi risultati avrebbero dovuto essere ottenuti nel passaggio Utilizzo del servizio APNS (Apple Push Notification Service) di cui sopra.
- Per GCM, è necessario immettere una chiave API. Questo risultato avrebbe dovuto essere ottenuto nel passaggio Utilizzo del servizio Google Cloud Messaging (GCM) sopra.
-
Ripetere il passaggio precedente una volta per ogni piattaforma supportata. Per poter inviare messaggi push ad iOS e Android™, è necessario creare due applicazioni Platform.
-
-
Creare un pool di identità
- Utilizza Cognito per creare un pool di identità, che memorizzerà i dati di base degli utenti non autenticati. Nota: attualmente, Amazon Cognito supporta solo le aree "us-east" e "eu".
- Assegna un nome e seleziona la casella "Abilita l’accesso alle identità non autenticate".
- Nella pagina successiva ("Le identità di Cognito richiedono l'accesso alle risorse") fare clic su Consenti.
- Nell'angolo superiore destro della pagina fare clic sul collegamento "Modifica pool di identità". Viene visualizzato l’ID del pool di identità. Salva questo testo per dopo.
- Sulla stessa pagina, scegli il menu a discesa accanto a "Ruolo non autenticato" e accertati che sia selezionato il ruolo Cognito_<nome pool>UnauthRole. Salva le modifiche.
-
Configura accesso
- Accedi a Gestione identità e accessi (IAM).
- Selezionare Ruoli.
- Fare clic sul ruolo creato nel passaggio precedente, denominato Cognito_<nomePoolIdentità>Unauth_Role. Registrare l'ARN del ruolo visualizzato.
- Apri "Criteri in linea" se non è già aperto. Dovresti trovare un criterio con un nome come oneClick_Cognito_<nomePoolIdentità>Unauth_Role_1234567890123.
- Fare clic su Modifica criterio. Sostituisci il contenuto del documento dei criteri con questo frammento di JSON:
table 0-row-1 html-authored no-header {
"Version": "2012-10-17",
"Dichiarazione": [
{
"Azione": [
"mobileanalytics:PutEvents",
"cognito-sync:*",
"SNS:CreatePlatformEndpoint",
"SNS:Sottoscrivi"
],
"Effetto": "Consenti",
"Risorsa": [
"*"
]
}
]
}
- Fare clic su Applica criterio.
Utilizzo del servizio di messaggistica Pushwoosh using-the-pushwoosh-messaging-service
Se non desideri usare Pushwoosh, puoi saltare questo passaggio.
Per utilizzare Pushwoosh:
-
Registrati con Pushwoosh
- Vai a pushwoosh.com e crea un account.
-
Creare un token di accesso API
- Nel sito Pushwoosh, vai alla voce di menu Accesso API per generare un token di accesso API. Registra il token in modo sicuro.
-
Crea un'app
- Per il supporto di Android™, devi fornire la tua chiave API GCM.
- Durante la configurazione dell’app, scegli Cordova come framework.
- Per il supporto di iOS è necessario fornire il file del certificato (.cer), il certificato push (.p12) e la password della chiave privata; questi devono essere stati ottenuti dal sito APNS di Apple. Per Framework, scegliere Cordova.
- Pushwoosh genera un ID app per tale app, nel formato "XXXXX-XXXXX", dove ogni X è un valore esadecimale (da 0 a F).
Passaggio 3: aggiungere il supporto push all’app step-add-push-support-to-the-app
Aggiungi configurazione ContentSync add-contentsync-configuration
Crea due nodi di contenuto (uno in app-config e uno in app-config-dev) denominati notificationsConfig:
- /content/
<your app>
/shell/jcr:content/pge-app/app-config-dev/notificationsConfig - /content/
<your app>
/shell/jcr:content/pge-app/app-config/notificationsConfig
Con queste proprietà (file .content.xml):
<jcr:root xmlns:jcr=" https://developer.adobe.com/experience-manager/reference-materials/spec/jcr/1.0/index.html" xmlns:nt=" https://developer.adobe.com/experience-manager/reference-materials/spec/jcr/1.0/index.html"
jcr:primaryType="nt:unstructured"
excludeProperties="[appAPIAccessToken]"
path="…/…/…/…"
targetRootDirectory="www"
type="notificationsconfig"/>
Aggiungere librerie client add-client-libraries
Le librerie client delle notifiche push devono essere aggiunte all’app seguendo questi passaggi:
In CRXDE Lite:
- Passa a /etc/designs/phonegap/<nome app>/clientlibsall.
- Fare doppio clic sulla sezione di incorporamento nel riquadro delle proprietà.
- Nella finestra di dialogo visualizzata, aggiungi una libreria client facendo clic sul pulsante +.
- Nel nuovo campo di testo, aggiungi "cq.mobile.push" e fai clic su OK.
- Aggiungi un altro chiamato cq.mobile.push.amazon e fai clic su OK.
- Salva le modifiche.
Passaggio 4: preparare un telefono per il test step-prepare-a-phone-for-testing
IOS ios
Per iOS, utilizza un computer macOS e partecipa al programma per sviluppatori iOS. Alcune società dispongono di licenze aziendali che possono essere disponibili per tutti gli sviluppatori.
Con Xcode 8.1, prima di utilizzare le notifiche push devi passare alla scheda Capacità nel tuo progetto e attivare l’opzione Notifiche push.
Android™ android
Per installare l'app su un telefono Android™ utilizzando CLI (vedi di seguito: Passaggio 6 - Creare e distribuire l'app), devi innanzitutto mettere il telefono in "modalità sviluppatore". Per ulteriori informazioni, vedere Abilitazione delle opzioni per sviluppatori su dispositivo.
Passaggio 5: configurare le app push su AEM step-configure-push-on-aem-apps
Prima di creare e distribuire sul dispositivo mobile configurato, devi configurare le impostazioni di notifica per il servizio di messaggistica che hai deciso di utilizzare.
- Crea i gruppi di autorizzazione appropriati per le notifiche push.
- Accedi all’AEM come utente appropriato, quindi fai clic sulla scheda App.
- Fai clic sull’app.
- Trova il riquadro Gestisci Cloud Service e fai clic sulla matita per modificare le configurazioni cloud.
- Seleziona Amazon SNS Connection, Pushwoosh Connection o Adobe Mobile Services come configurazione della notifica.
- Immettere le proprietà del provider e fare clic su Invia per salvarle, quindi su Fine. In questa fase non vengono verificati in remoto, tranne nel caso in cui sia presente AMS.
- Ora dovresti vedere la configurazione appena immessa nella sezione Gestisci Cloud Service.
Passaggio 6: creare e distribuire l’app step-build-and-deploy-the-app
Nota: consulta le istruzioni qui sulla creazione delle applicazioni PhoneGap.
Ci sono due modi per generare e distribuire la tua app utilizzando PhoneGap.
Nota: per il test delle notifiche push, gli emulatori non saranno sufficienti perché le notifiche push utilizzano un protocollo distinto tra il provider push (Apple o Google) e il dispositivo. L'hardware e gli emulatori Mac/PC correnti non supportano questa funzionalità.
-
PhoneGap Build è un servizio offerto da PhoneGap che consente di creare l'app sui server e di scaricarla direttamente sul dispositivo. Consulta la documentazione sulle PhoneGap Build in
https://build.phonegap.com/
per scoprire come impostare e utilizzare le PhoneGap Build. -
L'interfaccia della riga di comando PhoneGap (CLI) consente di utilizzare un set completo di comandi PhoneGap sulla riga di comando per generare, eseguire il debug e distribuire l'app. Per informazioni su come impostare e utilizzare PhoneGap CLI, consultare la documentazione per gli sviluppatori di PhoneGap (
https://docs.phonegap.com/en/edge/guide_cli_index.md.html#The%20Command-Line%20Interface
).
Passaggio 7: inviare una notifica push step-send-a-push-notification
Per creare una notifica e inviarla, segui la procedura riportata di seguito.
-
Creare una notifica
- Nel dashboard dell’app AEM Mobile, individua il riquadro Notifiche push.
- Nel menu in alto a destra, scegli "Crea". Questo pulsante non è disponibile finché la configurazione cloud non viene impostata per la prima volta.
- Nella Creazione guidata notifica, inserisci un titolo e un messaggio, quindi fai clic sul pulsante "Crea". La notifica è ora pronta per l’invio immediato o successivo. Può essere modificato, il messaggio e/o il titolo possono essere modificati e salvati.
-
Inviare la notifica
- Nel dashboard App, individua il riquadro Notifiche push.
- Seleziona la notifica o fai clic sul pulsante dei dettagli in basso a destra (. . .), per visualizzare l'elenco delle notifiche. Questo elenco indica anche se una notifica è pronta per essere inviata, se è già stata inviata o se si è verificato un errore durante l’invio.
- Selezionare la casella di controllo per una notifica (solo) e fare clic sul pulsante "Send Notification" sopra l'elenco. Puoi annullare o inviare la notifica nella finestra di dialogo visualizzata.
-
Gestione dei risultati
-
Se il servizio di notifica push (Amazon SNS o Pushwoosh) riceve la richiesta di invio, la conferma come valida e la invia correttamente ai provider nativi (APNS e GCM), la finestra di dialogo di invio si chiude senza alcun messaggio. Nell’elenco delle notifiche, lo stato di tale notifica è indicato come Inviato.
-
Se l’invio push non riesce, nella finestra di dialogo viene visualizzato un messaggio che indica il problema. Nell’elenco delle notifiche, lo stato di tale notifica è indicato come Errore, ma se il problema viene risolto, la notifica può essere inviata nuovamente. In caso di errore, nel registro degli errori del server vengono visualizzate ulteriori informazioni.
-
Tieni presente che esistono alcune differenze di piattaforma tra le notifiche push di iOS e Android™. Tra questi:
- La generazione con CLI avvierà l’app dopo che sarà stata distribuita su Android™. Su iOS, devi avviarlo manualmente. Poiché il passaggio di registrazione push si verifica all’avvio, le app Android™ possono ricevere immediatamente le notifiche push (perché sono già state avviate e registrate), mentre le app iOS non possono.
- In Android™, il testo del pulsante OK è in maiuscolo (e in tutti gli altri pulsanti aggiunti alla notifica in-app), mentre in iOS non lo è.
-
Per le notifiche push AMS, le notifiche devono essere composte e inviate dal server AMS. AMS fornisce funzionalità di notifica push aggiuntive rispetto a quelle fornite dalle notifiche AEM con AWS e Pushwoosh.
Configurazione dei collegamenti profondi con le notifiche push configuring-deep-linking-with-push-notifications
Cos'è il collegamento profondo? Nel contesto di una notifica push, si tratta di un mezzo per consentire a un’app di essere aperta o indirizzata (se aperta) a una posizione specificata all’interno dell’app.
Come funziona? L’autore di una notifica push aggiunge facoltativamente un’etichetta di pulsante (ovvero, "Show me!") alla notifica e seleziona la pagina che desidera collegare nella notifica, tramite un browser del percorso visivo. Quando viene inviato, il push è normale, tranne per il fatto che nel messaggio in-app il pulsante OK è sostituito da un pulsante "Ignora" e il nuovo pulsante specificato ("Mostra") viene visualizzato. Facendo clic sul nuovo pulsante, l’app passa alla pagina specificata all’interno dell’app. Se fai clic su Ignora, il messaggio viene espulso.
Se l’app non è aperta, l’ombreggiatura viene visualizzata come di consueto. Intervenire sulla notifica nell’ombra apre l’app e quindi presenta all’utente i pulsanti di collegamento profondo in base a quanto configurato nella notifica push.
Crea la notifica, aggiungi il testo di un pulsante e il percorso del collegamento per il collegamento profondo facoltativo:
-
Fai clic sul pulsante Modifica nell'angolo in alto a destra del riquadro Gestione Cloud Service.
-
Selezionare la connessione Pushwoosh. Fai clic su Avanti.
-
Immettere i dettagli delle proprietà e fare clic su Invia.
Dopo aver inviato la configurazione, nel dashboard viene visualizzata la sezione Notifiche push.
Creazione guidata notifica create-notification-wizard
Una volta visualizzata la sezione Notifiche push nel dashboard, utilizza la procedura guidata Crea notifica per aggiungere il contenuto:
-
Fai clic sul simbolo di aggiunta nell'angolo superiore destro del riquadro Notifiche push per aprire la Creazione guidata notifica.
-
Facendo clic sull’icona Sfoglia nel percorso del collegamento, si presenta all’utente la struttura del contenuto dell’app.
Dopo aver selezionato il percorso, fai clic sull’icona di controllo.
note note NOTE Il testo del pulsante di collegamento può contenere un massimo di 20 caratteri. Se l’utente finale non dispone della versione più recente dell’applicazione e il percorso collegato non è disponibile, la conferma dell’azione del collegamento profondo porterà l’utente alla pagina principale dell’app. -
Immetti i Dettagli testo nella Creazione guidata notifica e fai clic su Crea.
Apri i dettagli facendo clic sulla notifica push creata dal riquadro Notifiche push.
Puoi modificare le proprietà, inviare notifiche o eliminare la notifica.
Passaggi successivi the-next-steps
Una volta compresi i dettagli sulle notifiche push per l'app, vedi AEM Mobile Content Personalization.