繁体   English   中英

无法访问其他功能上的会话状态数据

[英]Cannot access session state data on another function

我正在为我的机器人创建一个不活动检查,如果该机器人自上次发送消息以来已过去X分钟,它将向用户发送一条消息。

bot.dialog('SomeDialog',
    function(session, args){
        let text = "The text sent to the user";
        session.send(text, session.message.text);
        check(session); //The function where I send the session to do the checking
        session.endDialog();
    }
);

检查功能是发生问题的地方:

check(session){
    if(!session.conversationData.talked){
        session.conversationData.talked = 1;
    }
}

当我运行它时,我总是得到

Cannot read property 'conversationData' of undefined

如果我在bot.dialog使用session.conversationData.talked ,它可以工作,但不能用于check功能。

我在这里做错了什么?

您的代码段对我而言效果很好,也许您可​​以提供整个项目的图片以进行进一步分析。

但是,根据需要,您可以考虑使用节点包botbuilder-timeout

这可能是“异步”计时问题。 您的浏览器/服务器上的会话需要同步。

这是JS服务器端还是浏览器端? 这打算用于什么框架?

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM