gpt4 book ai didi

botframework - 从 Postman 向 Microsoft Bot 发送消息

转载 作者:行者123 更新时间:2023-12-04 11:01:28 25 4
gpt4 key购买 nike

我正在尝试向我创建并发布到 azure 服务的机器人发送消息,以便机器人可以开始向其某些用户发送消息。

我试图首先向 Postman 发出请求,以便我可以为该交互构建一个 Controller 。

我正在执行以下请求:

POST https://login.microsoftonline.com/botframework.com/oauth2/v2.0/token
Content-Type: application/x-www-form-urlencoded
Body:
grant_type:client_credentials
client_id: my_ms_app_id
client_secret: my_ms_app_secret
scope: https://api.botframework.com/.default

由此我得到了承载授权的响应:
{
"token_type": "Bearer",
"expires_in": 3599,
"ext_expires_in": 0,
"access_token": "eyJ0eXA..."
}

然后我继续执行以下请求:
POST https://skype.botframework.com/v3/conversations
Content-Type: application/json
Authorization: Bearer eyJ0eXAi....

{
"bot": {
"id": "i don't have this id so i pass some string",
"name": "connector controller"
},
"isGroup": false,
"members": [
{
"id": "28:...", //ID of the bot I want to send the message to
"name": "Sp Bot"//Name of the bot I want to talk to
},
{
"id": "i don't have this id so i pass some string",
"name": "connector controller"
}
],
"topicName": "News Alert"
}

作为回应,我得到了与“id”匹配的对话 id:“我没有这个 id,所以我传递了一些字符串”:
{
"id": "我没有这个 ID,所以我传递了一些字符串"
}

然后我继续执行以下 POST 请求:
POST. https://skype.botframework.com/v3/conversations/i don't have this id so i pass some string/activities
Authorization: Bearer eyJ0...
Content-Type:application/json

我收到以下回复:
400 Bad Request

{
"error": {
"code": "ServiceError",
"message": "The conversationId 29... and bot .... doesn't match a known conversation"
}
}

看起来问题发生在第二个和第三个 post 方法之间。看起来是 https://skype.botframework.com/v3/conversations不会使用我输入的 ID 生成与机器人的对话。

因此,当我对机器人进行最后一次调用时: https://skype.botframework.com/v3/conversations/.../activities我总是收到 serviceError 消息。

最佳答案

根据您的评论,您正在尝试创建一个自定义的“ channel /客户端”来与机器人交谈。

为此,我建议您查看 Direct Line,这似乎是实现您的要求的方法。

我不确定您使用的是哪种语言,因此我将向您发送指向 C# 和 Node.js 的指针。

这些示例将向您展示如何使用 Direct Line 创建自定义客户端以与您的机器人交互:
C#

  • Basic Direct Line sample
  • Direct Line sample using Web Sockets
  • Node.js
  • Basic Direct Line sample
  • Direct Line sample using Web Sockets

  • 所有示例都使用控制台应用程序作为“自定义 channel ”。

    关于botframework - 从 Postman 向 Microsoft Bot 发送消息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43276389/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com