在我的Python webapp的Microsoft Botframework内,我想要reply to a message和REST API call到/bot/v1.0/messages
。通过BotFramework的REST API回复邮件的最小示例?
当我的本地机器上的仿真实验,我意识到,对于REST调用的最小有效载荷是一样的东西:
{
"text": "Hello, Hello!",
"from": {
"address": "MyBot"
},
"channelConversationId": "ConvId"
}
其中"ConvId"
是原始消息通过我的本地模拟器给出的ID(请注意,我必须发送channelConversationId
而不是conversationId
)。
显然,这对于活动的bot连接器站点来说是不够的。但是,如何用REST API调用/bot/v1.0/messages
来回复消息的(最小)示例是什么?
我测试不同的有效载荷数据,例如具有如在该文档中指示的属性from
,to
,channelConversationId
,text
和language
。但通常我得到一个500
错误:
{
"error": {
"message": "Expression evaluation failed. Object reference not set to an instance of an object.",
"code": "ServiceError"
}
}
当我试图发送回原来的消息,只是to
和from
交换,我得到了一个不同的500
错误:
{
"error": {
"code": "ServiceError",
"message": "*Sorry, Web Chat is having a problem responding right now.*",
"statusCode": 500
}
}
谢谢史蒂芬!属性'reply.to'和'reply.from'里面有什么?是否需要所有4个子属性('channelId','address','name'和'id')?也许你可以添加'reply'的JSON表示。再次感谢! – Stephan
再次感谢Steven,同时,答案已发布在GitHub上,并附有其他信息。于是我写了一个新的答案。 – Stephan