首页 文章

Service Cloud Toolkit API不能与您的浏览器一起使用 - salesforce

提问于
浏览
0

重定向到CTI控制台软电话中的其他URL后,未执行Salesforce交互/控制台方法 .
我已经在呼叫中心的软电话布局中映射了CTI适配器URL(例如:http://domain1:port1/xyz/test.jsp),交互/控制台方法在该特定页面上执行 .
方法如:sforce.interaction.runApex(...);

在单击事件上,我重定向到此页面上的某个其他URL(例如:http://domain1:port2/abc/test1.jsp),未执行交互/控制台方法 .
方法如:sforce.console.setCustomConsoleComponentPopoutable(...);
sforce.interaction.runApex(...);

在控制台上 - 页面重定向后出现 "Service Cloud Toolkit API cannot be used with your browser" .
请帮助解决这个问题

1 回答

  • 0

    此错误是由于在将窗口消息发送到顶部窗口时验证sfdcOriginIframe和nounce属性引起的 .

    实际上,一旦加载了软电话,这两个属性就会从window.location.search字段填充 . 这个搜索字段如下:

    ?sfdcIFrameOrigin=https%3A%2F%2Fap5.salesforce.com&nonce=3c1d1c360732e6754323247e711324b86d027c3c2809abb163754069d02365c5&isAdapterUrl=true&
    

    我认为它们来自iframe标签的src

    <iframe
        id="SoftphoneIframe"
        name="SoftphoneIframe"
        allow="camera *; geolocation *; microphone *"
        src="/loadSoftphone.html?sfdcIFrameOrigin=https%3A%2F%2Fap5.salesforce.com&amp;nonce=3c1d1c360732e6754323247e711324b86d027c3c2809abb163754069d02365c5&amp;isAdapterUrl=true"
        style="display: block;"
        width="100%"
        height="650"
        frameborder="0"
    ></iframe>
    

    如果你重定向你的软电话帧的位置,搜索字段就消失了,你不能再使用interaction.js中的任何方法 .

    所以也许有两种方法可以解决这个问题:

    • 将您的搜索字段保留在隐藏字段中,并将其作为searchQuery字符串显示在您的下一页中;

    • 在重定向软电话之前刷新顶部窗口

    sforce.interaction.refreshPage();

    最后我使用第二个解决方案来解决我的问题 .

    Code sample

相关问题