Campaign: appSubscriptionRcp中缺少registerDevice其他参数

在Adobe Campaign Classic v8 FFDA中,常见的自定义设置是添加额外的订阅属性,并通过移动设备registerDevice API填充这些属性。 如果nms:appSubscriptionRcp的扩展依赖于已具有现成的暂存架构的架构系列中的autoStg=“true”,则此操作可能会失败。 在这种情况下,可能无法正确存储附加参数,并且在某些情况下,可以将暂存模式重新生成到非工作状态。

描述 description

自定义实现向nms:appSubscriptionRcp添加新字段,并使用additionalParameters通过mobile registerDevice调用传递值。

症状可能包括:

  • registerDevice请求包含其他参数,但不会保留这些值。
  • 对暂存表进行插入或更新时不包括预期的自定义列。
  • 在appSubscriptionRcp扩展中启用autoStg="true"并更新数据库结构后,设备注册开始失败。
  • 可能会出现与以下内容类似的错误:

XSV-350023无法保存“nms:appSubscriptionRcpStg”类型的文档
QUE-370007找不到元素“订阅者应用程序(暂存)”的键值
元素“mobileApp”未知

解决方法 resolution

原因

autoStg="true"不是扩展已使用现有暂存模式的现成模式的通用机制。

它适用于从头开始创作自定义架构及其暂存模型的受支持用例。 这不是扩展nms:appSubscriptionRcp的正确方法,因为该架构已经依赖于现成的暂存架构nms:appSubscriptionRcpStg。 在此情况下启用autoStg="true"会触发自动重新生成暂存模式,并且不会保留预期的现成结构、链接和键。

分辨率

请使用以下方法:

使用ACC v8 FFDA中的现成订阅架构时,请勿在appSubscriptionRcp扩展上启用autoStg=“true”。
显式扩展两个架构:

  • 主订阅模式
  • 用于设备注册持久性的暂存模式

将订阅参数映射到registerDevice使用的暂存路径中存在的字段。
通过确认以下内容来验证端到端流程:

  • 请求有效负载包含additionalParameters
  • 暂存架构包括预期的自定义字段
  • 这些值在设备注册后保留

如果已应用autoStg=“true”:

从appSubscriptionRcp扩展中删除autoStg=“true”。
将nms:appSubscriptionRcpStg还原为其开箱即用的定义。
通过显式扩展暂存模式来重新应用所需的自定义字段,而不是使用自动生成。
如果需要,重新加载缓存并重新启动相关服务,以便始终获取更正后的架构定义。
重新测试registerDevice。

recommendation-more-help
experience-cloud-kcs-help-kbarticles