No hay actualizaciones en ACS al recopilar información PII

Descripción

Segundo plano: es posible que haya implementado notificaciones push mediante el sdk nativo de reacción, que es común para Ios y Android. También puede crear y recibir correctamente una notificación push de Adobe Campaign Standard

https://aep-sdks.gitbook.io/docs/using-mobile-extensions/mobile-core/mobile-core-api-reference#collect-pii

Problema : la tabla de suscriptores de la aplicación no se actualiza con la información se ha configurado en la regla de postback PII.

Para esto hemos implementado el código "ACPCore.collectPii({"myPii"): "data"})"

  • En Launch, se ha configurado la regla "Mobile Core - Collect PII" como postback

  • La dirección URL está configurada como 'https://{%%camp-server%%}/rest/head/mobileAppV5/{%%pkey%%}/subscriptions/{%%mcid%%}'

  • el cuerpo del anuncio es

{

    "marketingCloudId": "{%%mcid%%}",

    "cusCustomerNumber": "{%contextdata.customerNumber%}"

}
  • en el registro suscrito de la aplicación se denomina "cusCustomerNumber".

  • el código que se está ejecutando es 'ACPCore.collectPii({"cusCustomerNumber": "data"})'

Resolución

Se observaron dos problemas que se resolvieron.

1 - El mapa que se envía son datos contextuales que hemos configurado para que el SDK intente encontrar un campo de datos llamado customerNumber pero no hay ninguna causa de que se haya establecido en cusCustomerNumber, así que cambie ACPCore.collectPii({"cus.CustomerNumber": "data"}) a ACPCore.collectPii({"customerNumber": "data"})

Además, asegúrese de que la parte de este código, así como el texto resaltado arriba, también deben coincidir con este código. A continuación se muestra lo que teníamos para este cliente.

setTimeout(() = {
                ACPCore.collectPii({"customerNumber": "data"});
                console.log('collectPii');
            }, 2000);

2 - Al cambiar esto, todavía no se podían ver los datos almacenados en la tabla de suscripción de la aplicación, por lo que se realizó la captura de datos a través de la herramienta Charles y es posible que notara el siguiente problema

{
    "marketingCloudId": "0000000000000000",
    "cus.CustomerNumber": "data"
}

RST-360011 Se ha producido un error. Póngase en contacto con su administrador.
La propiedad 'cusCustomerNumber' no es válida para 'nms:appSubscriptionRcp:recurso appSubscriptionRcpDetail'.

Al consultar la base de datos de esta tabla, vemos las columnas siguientes.

Tabla "public.nmsappsubscriptionrcp"

Columna            | Tipo | Intercalación | Relleno | Predeterminado

—+—+—+—+—

iappsubscriptionrcpid | integer                  | | no es nulo | 0

icreatedbyid                | integer                  | | no es nulo | 0

indisabled | smallint | | no nulo | 0

imobileappid                | integer                  | | no es nulo | 0

imodifiedbyid | integer                  | | no es nulo | 0

ipushplatform | smallint | | no nulo | 0

sdevicebrand                | variación de caracteres (128) | |          |

sdeviceid | variación de caracteres(128) | |          |

sdevicemanuManufacturing | variación de caracteres(128) | |          |

sdevicemodel                | variación de caracteres (128) | |          |

sdevicename | variación de caracteres(128) | |          |

smarketingcloudid | variación de caracteres (256) | |          |

lenguaje del sistema | variación de caracteres(128) | |          |

nombre del sistema | variación de caracteres(128) | |          |

ssystemversion              | variación de caracteres (128) | |          |

suserkey                    | variación de caracteres (128) | |          |

tscreated | timestamp with time zone |          |

tsdisabled                  | marca de tiempo con zona horaria |          |

tslastmodified              | marca de tiempo con zona horaria |          |

registro de servidor              | marca de tiempo con zona horaria |          |

 suscustomernumber | variación de caracteres(127) | |          | 

nombredesubsfirstname | caracteres variables(127) | |          |

slastname                | variación de caracteres(127) | |          |

Ahora se ve una discordancia de campo. Cambie el código del cuerpo del anuncio en launch como se muestra a continuación y publique los cambios y solicite probarlos, por lo que el problema debería resolverse.

{

    "marketingCloudId": "{%%mcid%%}",

    "cusCus.CustomerNumber": "{%contextdata.customerNumber%}"

}

En esta página