代码之家  ›  专栏  ›  技术社区  ›  Jeremy Coenen

如何在bot框架中调试通道数据?

  •  0
  • Jeremy Coenen  · 技术社区  · 7 年前

    有没有办法让Bot框架仿真器发送通道数据,或者在这种情况下有更好的调试方法吗?

    0 回复  |  直到 7 年前
        1
  •  2
  •   mdrichardson    7 年前

    Emulator没有一种简单的内置方式来发送自定义 channelData . 不过,有几种不同的方法可以(有点)做到这一点:

    本地调试

    正如@EricDahlvang提到的(我忘了这个),你可以 debug any channel locally

    线聊天

    模拟器内置 WebChat

    1. 克隆a WebChat Sample
    2. 编辑 index.html http://localhost:3978/api/messages 你的呢 信道数据
    3. 跑 npx serve
    4. 引导到 http://localhost:5000

    修改OnTurnAsync()中的消息

    OnTurnAsync() 信道数据 .

    比如:

    public async Task OnTurnAsync(ITurnContext turnContext, CancellationToken cancellationToken = default(CancellationToken))
    {
        var activity = turnContext.Activity;
    
        activity.ChannelData = new
        {
            testProperty = "testValue",
        };
    

    你甚至可以通过一些特定的信息来实现,比如:

    if (turnContext.Activity.Text == "change channel data")
    {
        activity.ChannelData = new
        {
            testProperty = "testValue",
        };
    }