Twilio Flex 中的 CRMContainer 问题
Issue with CRMContainer in Twilio Flex
我构建了一个简单的插件,它在 CRMContainer 中显示我的 CRM 的 url 给定一些属性参数(如果它们被传递),在入站任务期间这工作正常,但问题是在出站期间调用行为不是预期的行为,这是一段代码:
flex.CRMContainer.defaultProps.uriCallback = (task) => {
return task
? `https://mycrm.zzz/${task.attributes.clicar}/${task.attributes.contacth}/`
: 'https://mycrm.zzz/contacts/';
}
}
我需要一个附加条件来告诉代码,如果这是一个始终显示默认值的出站语音呼叫 url。
我尝试添加一个 if/else 来检查 task.attributes.direction 是否出站,但 Flex 说这是未定义的。
任何提示?
谢谢
最大
问题是您没有检查 task
是否存在。您的原始代码是这样的:
flex.CRMContainer.defaultProps.uriCallback = (task) => {
return task
? `https://mycrm.zzz/${task.attributes.clicar}/${task.attributes.contacth}/`
: 'https://mycrm.zzz/contacts/';
}
}
只有 task
存在,其中 returns 带有任务属性的 URL,因为三元条件。
因此,当您尝试使用属性时,您需要确保 task
存在。所以从最后一条评论中获取你的代码,它应该是这样的:
flex.CRMContainer.defaultProps.uriCallback = (task) => {
if (task) {
if (task.attributes.direction === 'outbound'){
return `https://mycrm.zzz/${task.attributes.clicar}/${task.attributes.contacth}/`;
} else {
return `https://mycrm.zzz/contacts/`
}
} else {
return 'https://mycrm.zzz/contacts/';
}
}
我构建了一个简单的插件,它在 CRMContainer 中显示我的 CRM 的 url 给定一些属性参数(如果它们被传递),在入站任务期间这工作正常,但问题是在出站期间调用行为不是预期的行为,这是一段代码:
flex.CRMContainer.defaultProps.uriCallback = (task) => {
return task
? `https://mycrm.zzz/${task.attributes.clicar}/${task.attributes.contacth}/`
: 'https://mycrm.zzz/contacts/';
}
}
我需要一个附加条件来告诉代码,如果这是一个始终显示默认值的出站语音呼叫 url。 我尝试添加一个 if/else 来检查 task.attributes.direction 是否出站,但 Flex 说这是未定义的。 任何提示? 谢谢
最大
问题是您没有检查 task
是否存在。您的原始代码是这样的:
flex.CRMContainer.defaultProps.uriCallback = (task) => {
return task
? `https://mycrm.zzz/${task.attributes.clicar}/${task.attributes.contacth}/`
: 'https://mycrm.zzz/contacts/';
}
}
只有 task
存在,其中 returns 带有任务属性的 URL,因为三元条件。
因此,当您尝试使用属性时,您需要确保 task
存在。所以从最后一条评论中获取你的代码,它应该是这样的:
flex.CRMContainer.defaultProps.uriCallback = (task) => {
if (task) {
if (task.attributes.direction === 'outbound'){
return `https://mycrm.zzz/${task.attributes.clicar}/${task.attributes.contacth}/`;
} else {
return `https://mycrm.zzz/contacts/`
}
} else {
return 'https://mycrm.zzz/contacts/';
}
}