salesforce变更数据捕获未发送变更事件
我正在使用firebase函数使用指定的cometD订阅opportunity的更改事件。我的握手一切正常,但零钱根本没有收到。我已确保在设置中选择了Opportunity object。关于检查或调试什么以及为什么什么都没有发生,有什么建议吗salesforce变更数据捕获未发送变更事件,salesforce,cometd,change-data-capture,Salesforce,Cometd,Change Data Capture,我正在使用firebase函数使用指定的cometD订阅opportunity的更改事件。我的握手一切正常,但零钱根本没有收到。我已确保在设置中选择了Opportunity object。关于检查或调试什么以及为什么什么都没有发生,有什么建议吗 export const helloWorld = functions.https.onRequest(async(request, response) => { functions.logger.info("Hello logs
export const helloWorld = functions.https.onRequest(async(request, response) => {
functions.logger.info("Hello logs!", {structuredData: true});
const data = {
"url": "https://XX.salesforce.com",
"accessToken": "XXX"
}
await cometd_setup(data)
functions.logger.log("cometd_setup_done")
await cometd.handshake(function (handshake:any) {
if (handshake.successful) {
functions.logger.log("successful opty sending data")
cometd.subscribe('/data/OpportunityChangeEvents', cometd_processdata)
} else {
logger.info('Handshake failed', handshake);
}
})
response.send("Hello from Firebase!");
});
处理数据的方法目前只是执行控制台日志,如下所示
var cometd_processdata = function (server_data:any) {
// Do something more useful with the data
functions.logger.info("got new data:", server_data);
};
标准对象上的更改数据捕获(CDC)事件的默认值为
/Data/changevent
。对于Opportunity
标准对象,CDC通道是/data/OpportunityChangeEvent
(最后没有s
)这肯定是一个问题,现在我看到日志中打印了“成功的opty发送数据”。作为下一步,我更新了其中一个opportunity,但没有看到Comed“\u正在调用任何数据。我错过了什么?@Moblize IT我们建议开始一个新问题。对外部客户机的Comed/Salesforce问题进行故障排除的第一步是隔离问题。这样做的一个好方法是在Salesforce中实现侦听器/订阅,首先通过带触发器的平台内客户端,然后通过带Salesforce客户端(如EMP Connector)的平台外客户端。这两个都包括在内。你会有一个更好的主意在那之后下一步去哪里看。