Как отправить проактивное сообщение от бота пользователю - PullRequest
0 голосов
/ 24 сентября 2019

Я пытаюсь отправить сообщение от бота пользователю команды, который еще не установил бота и не нуждается в установке бота через REST API.

Я пытался следовать этому document .

В нем четко говорится: «Отправка сообщения, чтобы начать новую цепочку бесед, отличается от отправки сообщения в ответ на существующую беседу: когда ваш бот начинает новую беседу, существуетэто не существующий разговор, на который нужно отправить сообщение. Чтобы отправить проактивное сообщение, вам необходимо: "

Насколько я понимаю, это означает, что то, что я пытаюсь сделать, возможно.Я попытался запустить этот образец .

Однако, насколько я могу судить, ему нужен идентификатор разговора.Без идентификатора разговора это не работает.

Я пытался отправить запрос, подобный этому, с помощью токена бот-сети (который обычно используется для ответа пользователя на запрос активности):

POST /v3/conversations
{
  "bot": {
    "id": "28:10j12ou0d812-2o1098-c1mjojzldxcj-1098028n ",
    "name": "The Bot"
  },
  "members": [
    {
      "id": "29:012d20j1cjo20211"
    }
  ],
  "channelData": {
    "tenant": {
      "id": "197231joe-1209j01821-012kdjoj"
    }
  }
}

Однако, это терпит неудачу со следующим сообщением:

Send Message to https://graph.microsoft.com/v3/conversations failed: (401) {
  "error": {
    "code": "InvalidAuthenticationToken",
    "message": "Access token validation failure. Invalid audience.",
    "innerError": {
      "request-id": "92922235-8c87-47ed-92bc-4ba17469611a",
      "date": "2019-09-24T14:43:59"
    }
  }
}

Я предполагаю, что это возможно, потому что я не послал MicrosoftAppCredentials.TrustServiceUrl сначала.Но это AC # Call.Как сделать такой же вызов в REST API?

1 Ответ

0 голосов
/ 24 сентября 2019

Пожалуйста, ознакомьтесь с API REST Bot Framework документация.

Вот шаги для генерации токена доступа , который можно использовать для вызова СоздатьРазговор API.

POST https://login.microsoftonline.com/botframework.com/oauth2/v2.0/token
Host: login.microsoftonline.com
Content-Type: application/x-www-form-urlencoded

grant_type=client_credentials&client_id=MICROSOFT-APP-ID&client_secret=MICROSOFT-APP-PASSWORD&scope=https%3A%2F%2Fapi.botframework.com%2F.default
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...