Background - È possibile che siano state implementate notifiche push utilizzando sdk nativo, comune per Ios e Android. Puoi anche creare e ricevere correttamente una notifica push da Adobe Campaign Standard
Problema: la tabella degli abbonati all'applicazione non viene aggiornata con le informazioni configurate nella regola di postback PII.
Per questo abbiamo implementato il codice "ACPCore.collectPii({"myPii": "data"})"
In launch abbiamo impostato la regola "Mobile Core - Raccogli PII" come postback
L'URL è configurato come 'https://{%%camp-server%}/rest/head/mobileAppV5/{%%key%%}/subscriptions/{%%mcid%%}'
corpo del post
{
"marketingCloudId": "{%%mcid%%}",
"cusCustomerNumber": "{%contextdata.customerNumber%}"
}
Il campo nel record con sottoscrizione dell’app è denominato 'cusCustomerNumber'
il codice in esecuzione è 'ACPCore.collectPii({"cusCustomerNumber": "data"})"
Sono stati osservati due problemi che sono stati risolti.
1 - La mappa inviata è contextdata che abbiamo configurato, quindi l'SDK sta cercando di trovare un campo dati chiamato customerNumber ma non c'è motivo che sia stato impostato su cusCustomerNumber quindi cambia ACPCore.collectPii({"cus.CustomerNumber": "data"}) ad ACPCore.collectPii({"customerNumber": "data"})
Inoltre, assicurati che la parte nel suo codice, così come il testo evidenziato sopra, debba corrispondere anche al suo codice. Di seguito è riportato quello che avevamo per questo cliente.
setTimeout(() = {
ACPCore.collectPii({"customerNumber": "data"});
console.log('collectPii');
}, 2000);
2 - Dopo aver cambiato questo, non siamo ancora riusciti a vedere i dati memorizzati nella tabella di abbonamento in-app, quindi l'acquisizione dei dati tramite lo strumento Charles è stato fatto, e si può notare il seguente problema
{
"marketingCloudId": "0000000000000000",
"cus.CustomerNumber": "data"
}
RST-360011 Si è verificato un errore. Contatta l'amministratore.
La proprietà 'cusCustomerNumber' non è valida per 'nms:appSubscriptionRcp:risorsa appSubscriptionRcpDetail'.
Quando si guarda il database per questa tabella, vengono visualizzate le colonne seguenti.
Tabella "public.nmzsubscriptionrcp"
Colonna | Tipo | Collazione | Nullable | Predefinito
—++—+—+—+—+—
iappsubscriptionrcpid | integer | | non nullo | 0
icreatedbyid | numero intero | | non nullo | 0
idisabled | Smint | not null | 0
imobileappid | numero intero | | non nullo | 0
imodifiedbyid | integer | | non nullo | 0
ipushplatform | Smint | non nullo | 0
sdevicebrand | carattere variabile(128) | |
sdeviceid | carattere variabile(128) | | |
sdevicemanufacturer | carattere variabile(128) | | |
sdevicemodel | carattere variabile(128) | |
nomedevicename | carattere variabile(128) | | |
smarketingcloudid | carattere variabile(256) | | |
linguaggio del sistema | carattere variabile(128) | | |
nomesistema | carattere variabile(128) | | |
system stemversion | carattere variabile(128) | |
suserkey | carattere variabile(128) | |
tscreato | timestamp con fuso orario | |
disabile | timestamp con fuso orario | |
salsiccia | timestamp con fuso orario | |
registrazione | timestamp con fuso orario | |
scuscuscustomernumber | carattere variabile(127) | |
Nome scus | carattere variabile(127) | | |
Nome scus | carattere variabile(127) | |
Ciò a cui assomiglia ora è un campo non corrispondente. Modifica il codice del corpo del post in launch come segue e pubblica le modifiche e richiesto per testare e come risultato il problema dovrebbe essere risolto.
{
"marketingCloudId": "{%%mcid%%}",
"cusCus.CustomerNumber": "{%contextdata.customerNumber%}"
}