我对Bot Framework还是很陌生,正在探索解决方案。
我正在尝试在 android应用(以及之后的python flask应用)中使用Microsoft bot框架作为API调用。为此,我想弄清楚如何向我的机器人发送消息并通过邮递员接收
现在,我的机器人已在团队和网络聊天中启动并运行。我正在使用Bot服务来利用Microsoft Bot框架。我的应用程序在Heroku上运行,而该漫游器在Azure上托管。
我已经检查了bot服务上的直线通道,但是这将返回一个iframe进行网络聊天,而我想改为通过python,java等程序化方式将我的消息作为api调用
我还检查了有关v3机器人框架的stackoverflow问题,并尝试了以下方法: How to connect my python bot to microsoft bot connector
Send message from Postman to Microsoft Bot
https://pypi.org/project/botframework-connector/
1°,我在第二个stackoverflow网址之后访问了承载令牌:
{
"token_type": "Bearer",
"expires_in": 3600,
"ext_expires_in": 3600,
"access_token": "eyJ0eXAiOiJKV1QiL***********************************ObNWg"
}
2°然后向邮递员提供带有该URL https://directline.botframework.com/v3/directline/conversations/的不记名令牌
和这个json原始主体:
{
"type": "message",
"from": {
"id": "user1"
},
"text": "hello"
}
这正在返回:
{
"error": {
"code": "BadArgument",
"message": "Missing token or secret"
}
}
如前所述,我是新手,因此,对以上内容的任何见解将不胜感激!
答案 0 :(得分:4)
好吧,这个教程提供了我正在寻找的答案: https://thewebspark.com/2018/04/15/directlineapi-testing-with-custom-client-and-postman-microsoft-bot-framework/。
它在我这边工作得很好。
1)您在https://directline.botframework.com/v3/directline/conversations上使用POST请求,并在Bearer <token>
中使用了直接令牌。
您将获得一个新令牌和一个session_ID
2)然后您在https://directline.botframework.com/v3/directline/conversations/conversation_ID/activities
上使用GET请求,您的新令牌为Bearer <token>
和您的json正文为:
{
"type": "message",
"from": {
"id": "user1"
},
"text": "hello"
}
仅此而已!