ChannelData返回null

时间:2019-07-09 12:13:40

标签: c# direct-line-botframework web-chat

我已经使用botframework v4创建了一个网络应用程序bot,并将其与使用iframe的网络应用程序集成在一起。 我想访问机器人所在页面的当前URL。

我尝试了反向通道机制,但是未能从ChannelData的服务器端获取任何值。 我在头标签中包含脚本标签 src =“ https://cdn.botframework.com/botframework-webchat/latest/botchat.js” >和iframe iframe id =“ chatBot” src ='https://webchat.botframework.com/embed/EdgewellSampleBot?s=xxx'style ='min-width:400px;宽度:100%;最低高度:500像素;'> 在body标签中,并在页面加载时调用 getUrl()

<script>
    function getURL()
    {
var dl = new BotChat.DirectLine({
    secret: 'xxx',           
    webSocket: false,
    pollingInterval: 1000,
});

var urlref = window.location.href;

BotChat.App({
    botConnection: {
        ...dl,
        postActivity: activity => dl.postActivity({
            ...activity,
            channelData: { pageurl: urlref }
        })
    },
    user: { id: 'userid' },
    bot: { id: 'xxx' },
    resize: 'detect'
}, document.getElementById("chatBot"));
}

0 个答案:

没有答案