Как завершить разговор в Bot Framework с помощью DirectLine 3.0?

Единственная документация, которую я могу найти, касается активности endConversation (используется DirectLine 3.0).

Что мне делать после отправки действия типа endConversation?

Закрытие окна с чатом не приводит к корректному завершению разговора, мне нужно сделать это программно.

Мой код для завершения разговора в настоящее время просто отправляет событие в фреймворк:

botConnection.postActivity({
    type: endConversation,
    from: { id: 'Bot' },
    name: 'endActivity',
    value: "The user has closed the session. You can now close this conversation.",
}).subscribe(function (id) { console.log('Command sent'); });

person bmo    schedule 01.03.2018    source источник


Ответы (1)


Как в документации говорится, что после отправки запроса на публикацию по адресу https://directline.botframework.com/v3/directline/conversations/YOUR_CONVERSATION/activities

с телом, которое вы указали в своем вопросе, ни пользователь, ни бот не могут отправлять какие-либо дополнительные сообщения. Вы должны получить ответ 200 и идентификатор действия после того, как завершите запрос, и именно так вы узнаете, что запрос был успешным.

Существует запрос функции о том, что тип действия связан с окончанием беседы в DirectLine, но я не думаю, что он еще в разработке. Я обновлю этот ответ, когда получу дополнительную информацию.

С уважением, Франциско

person Fracisco Ponce Gomez    schedule 01.03.2018