sberdevices/salute-issues

Тестовый виджет не отображает сообщения, если они заданы в $context.response.replies с типом raw

and7ey opened this issue · 5 comments

Где нашелся баг: Code & Test Widget
Описание проблемы: Тестовый виджет не отображает сообщения, если ответ формируется полностью вручную через $context.response.replies (с типом raw)
Проблема воспроизводится у других пользователей? не знаю.
Дополнительная информация: Если оставить ответ в тэгах a:, то эти тексты в виджете отображаются.

Конкретно это поведение описано в документации: https://developer.sberdevices.ru/docs/ru/developer_tools/ide/JS_API/variables/response (под пунктом формирование ответов типа raw).
Внимание! Не тестируйте сценарий, в котором есть $rawResponse, в тестовом виджете! Если вы добавите $rawResponse в сценарий, а затем нажмете Тестировать, SmartApp Code вернет ошибку, так как смартап не может получить данные из ассистента, когда диалог идет в тестовом виджете.

На самом деле это не так работает. Если нажать Тестировать, то никакой ошибки нет (хотя в идеале бы выводить сообщение, что тестовый виджет не поддерживает код с $context.response.replies), просто ответы от Бота становятся пустыми. И это вводит в заблуждение - я долго разбирался с кодом, пытаясь понять почему же ответа нет.

Кстати, $context.response.replies с типом raw и $rawResponse - это одно и то же?

Ну и в идеальном мире надо бы, чтобы тестовый виджет поддерживал такие ответы. Предлагаю перевести issue в feature request.

Взяли в работу. До конца недели внесем корректировки в документацию