Botium Botkit 4.0: указать идентификатор пользователя - PullRequest
2 голосов
/ 05 января 2020

Как мне указать userId в соединителе Botium для Botkit 4.0?

В версии 0.7 мне удалось указать BOTKIT_USERID в моем файле .spec.js.

Это было полезно проверить ответы для разных групп пользователей.

1 Ответ

3 голосов
/ 06 января 2020

Соединитель Botium Botkit 4.x основан на Botium Generi c HTTP / JSON Соединитель , поэтому можно полностью настроить полезную нагрузку, включая идентификатор пользователя.

По умолчанию полезная нагрузка сообщения состоит из текста сообщения и уникального сгенерированного идентификатора пользователя:

{ "text": "{{msg.messageText}}", "user": "{{botium.conversationId}}", "type": "message"}

Вы можете изменить это в своем botium. json:

...
"BOTKIT_4_0_BODY_TEMPLATE": "{ \"text\": \"{{msg.messageText}}\", \"user\": \"my-user-id\", \"type\": \"message\"}",
...

Или вы также можете использовать хук UPDATE_CUSTOM logi c, чтобы иметь разные идентификаторы пользователя для каждого из ваших тестовых случаев - mytestcase.convo.txt:

my test case

#begin
UPDATE_CUSTOM BOTKIT_USER_ID|1234567

#me
hallo ...
...

И в вашем botium. json:

...
"BOTKIT_4_0_BODY_TEMPLATE": "{ \"text\": \"{{msg.messageText}}\", \"user\": \"{{msg.BOTKIT_USER_ID}}{{^msg.BOTKIT_USER_ID}}my-default-user-id{{/msg.BOTKIT_USER_ID}}\", \"type\": \"message\"}",
...

ОБНОВЛЕНИЕ

Вместо литеральной строки со всеми escape-символами вы также можете использовать литерал JSON в botium. json для указания шаблона тела:

...
"BOTKIT_4_0_BODY_TEMPLATE": {
    "text": "{{msg.messageText}}", 
    "user": "my-user-id",
    "type": "message"
},
...

Легче для чтения. Зависит от вашей настройки.

ОБНОВЛЕНИЕ 2

Для использования ловушки UPDATE_CUSTOM logi c в разделе # begin есть запрос на выдачу невыполнено. На данный момент вы можете использовать только UPDATE_CUSTOM в разделе #me, а для использования идентификатора пользователя вам придется повторять это для каждого раздела #me:

my test case

#me
hallo
UPDATE_CUSTOM BOTKIT_USER_ID|1234567
...
...