1

我正在我自己的主机上测试没有 azure 的 MS Bot 框架应用程序的部署

这个概念是:

  1. 该机器人是一个 mvc webapp,可以部署在任何地方
  2. 我们的主机有一个 SSL 证书和一个有效的端点(https://example.com/api/messages

我的问题是活动连接器,因为它不接受来自电报的 api 调用,如下所示:

   public async Task<HttpResponseMessage> Post([FromBody]Activity activity)<---
    {
        if (activity.GetActivityType() == ActivityTypes.Message)
        {
            await Conversation.SendAsync(activity, () => new Dialogs.RootDialog());
        }
        else
        {
            HandleSystemMessage(activity);
        }
        var response = Request.CreateResponse(HttpStatusCode.OK);
        return response;
    }
4

1 回答 1

0

那是因为电报没有发送与机器人框架预期相同类型的活动。您可以尝试使用activity.Properties来自电报的 json 数据的发送位置。然后将其反序列化为自定义模型。(见这个答案

但这对我来说不是一个好的解决方案。

于 2019-01-21T17:00:49.787 回答