收集PII信息时ACS中没有更新

本文介绍了在使用react本机SDK实施推送通知后,如何解决Adobe Campaign Standard问题:应用程序订阅者表没有使用PII回发规则中配置的信息进行更新。

描述 description

环境

Adobe Campaign Standard

问题/症状

您可能已使用iOS和Android通用的react本机SDK实施了推送通知。 您还可以成功创建并接收来自Adobe Campaign Standard的推送通知

https://developer.adobe.com/client-sdks/documentation/mobile-core/api-reference/

但是,应用程序订阅者表不会使用PII回发规则中配置的信息进行更新。

为此,我们实施了代码ACPCore.collectPii({"myPii": "data"})

  • 在Launch中,我们已设置规则“Mobile Core — 收集PII”作为回发
  • URL配置为“https://{%%camp-server%%}/rest/head/mobileAppV5/{%%pkey%%}/subscriptions/{%%mcid%%}
  • 帖子正文为:
{
    "marketingCloudId": "{%%mcid%%}",

    "cusCustomerNumber": "{%contextdata.customerNumber%}"
}
  • 应用程序订阅记录上的字段名为cusCustomerNumber
  • 正在执行的代码为ACPCore.collectPii({"cusCustomerNumber": "data"})

解决方法 resolution

观察到两个问题已得到解决。

1 — 发送的映射是我们配置的contextdata,因此SDK尝试查找名为customerNumber的数据字段,但没有数据字段,因为它已设置为cusCustomerNumber.请将ACPCore.collectPii({"cus.CustomerNumber": "data"})更改为ACPCore.collectPii({"customerNumber": "data"})

此外,请确保您在此代码中的部分以及上面高亮显示的文本也应该与此代码匹配。 下面是我们对这位客户的评价。

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

2 — 更改此选项后,我们仍看不到应用程序内订阅表中存储的数据。 因此,数据捕获是通过Charles工具完成的。 您可能会注意到以下问题:

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

RST-360011发生错误 — 请与您的管理员联系。
cusCustomerNumber”属性对于“nms:appSubscriptionRcp:appSubscriptionRcpDetail”资源无效。

在查看此表的数据库时,我们看到以下各列。

表“public.nmsappsubscriptionrcp”

列            |           类型           | 归类 | 可为空 | 默认

-----------------------------±-------------------------±----------±---------±--------

iappsubscriptionrcpid       | 整数                  |           | 不为空 | 0

icreatedbyid                | 整数                  |           | 不为空 | 0

禁用                   | smallint                 |           | 不为空 | 0

imobileappid                | 整数                  |           | 不为空 | 0

immodifiedbyid               | 整数                  |           | 不为空 | 0

ipushplatform               | smallint                 |           | 不为空 | 0

sdevicebrand                | 字符变化(128)   |           |          |

sdeviceid                   | 字符变化(128)   |           |          |

sdevicemanufacturer         | 字符变化(128)   |           |          |

sdevicemodel                | 字符变化(128)   |           |          |

sdevicename                 | 字符变化(128)   |           |          |

smarketingcloudid           | 字符变化(256)   |           |          |

系统语言             | 字符变化(128)   |           |          |

系统名称                 | 字符变化(128)   |           |          |

ssemversion              | 字符变化(128)   |           |          |

Suserkey                    | 字符变化(128)   |           |          |

已创建                   | 带时区的时间戳 |           |          |

已禁用                  | 带时区的时间戳 |           |          |

tslastmodified              | 带时区的时间戳 |           |          |

注册              | 带时区的时间戳 |           |          |

scustomernumber | 字符变化(127)   |           |          |

scustfirstname               | 字符变化(127)   |           |          |

scustname                | 字符变化(127)   |           |          |

现在看起来是字段不匹配。 如下所示更改Launch中的帖子正文代码,并将更改和请求发布到测试环境,这应该可以解决此问题。

 {

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

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

}

recommendation-more-help
3d58f420-19b5-47a0-a122-5c9dab55ec7f