Skip to main content

Примеры

В корне пакета @squadus/botsdk существует каталог examples — это проект с примерами использования методов из таблицы. С помощью приведенных примеров можно ознакомиться с использованием данного пакета на практике.

Для выполнения запуска примеров следует:

  1. Установить зависимости из папки examples с помощью команды:
cd examples && yarn
  1. Заполнить конфигурационный файл ./examples/.env в соответствии с описанием в таблице.
Имя переменнойОписаниеПримечание
ALLOWED_ATTACHMENT_
PATH
Путь к каталогуЕсли значение каталога не менять, будет назначен каталог, в котором расположен бот
SERVERДоменное имя сервера Squadus-
TOKENТокен, созданный в соответствии с разделом Создание токена-

Пример заполненного файла конфигурации:

ALLOWED_ATTACHMENT_PATH="/example/example"
SERVER="https://im-squadus.example.net"
TOKEN="1IBMnCkcJnVZmYcCVqMOsdgA4YvxwxAssdJjklzFFr"
  1. Запустить пример с помощью команды:
yarn create-direct
  1. При успешном запуске будет выведено сообщение:
Direct dialog with ${partner_name} was created successfully
warning

При возникновении ошибок следует проверить параметры конфигурационного файла и имя учетной записи пользователя в диалоге.

Примеры для упрощения работы с @squadus/botsdk представлены в таблице.

Файл с примером скриптаКомандаОписание работы команды
connect.tsyarn connectБудет выполнена авторизация
getSettings.tsyarn get-settingsБудут получены значения настроек с сервера для Accounts_AllowRealNameChange и Accounts_AddGuestsToChats
createDirectRoom.tsyarn create-directС собеседником, указанным в файле .env (если такой пользователь существует), будет создан диалог.
sendMessage.tsyarn send-messageС собеседником, указанным в файле .env (если такой пользователь существует), будет создан диалог. Затем ему будет отправлено сообщение с текстом «Hi»
sendAttachment.tsyarn send-attachmentС собеседником, указанным в файле .env (если такой пользователь существует), будет создан диалог. Затем ему будет отправлено изображение example.png из проекта с сообщением «Image with logo». Если изображение будет заменено на файл с размером, превышающим допустимый, в консоли появится сообщение об ошибке: «File is too large». Также файл должен находиться по пути, который соответствует параметру allowedAttachmentsPath, указанному при создании squadusClient
addRemoveChannelUser.tsyarn add-remove-channel-userС собеседником, указанным в файле .env (если такой пользователь существует), будет создан диалог. Затем он будет удален из него
createPrivateChannel.tsyarn create-channel:privateБудет создан приватный канал с именем PRIVATE_CHANNEL_NAME
createPrivateChannel.tsyarn create-channel:publicБудет создан открытый канал с именем, указанным в константе PUBLIC_CHANNEL_NAME
changeUserRole.tsyarn change-roleБудет создан открытый канал c пользователем. Затем пользователю будет назначена роль Модератор
editChannel.tsyarn edit-channelБудет создан канал, затем его имя будет изменено
subscribeMessages.tsyarn subscribe-messagesБотом будет выполнена подписка на все новые сообщения, а также отдельная подписка на новые личные сообщения от пользователя, имя которого указано в переменной окружения PARTNER_NAME. При получении ботом сообщения «Hi» от пользователя PARTNER_NAME, будет отправлен ответ «Hello». При получении ботом сообщения «Bye» из любого чата, будет отправлен ответ «Bye». Через 20 секунд произойдет отписка от сообщений «Hi», через 40 секунд произойдет отписка от сообщений «Bye»
subscribeReaction.tsyarn subscribe-reactionБотом будет выполнена подписка на все новые сообщения. После получения ботом сообщения «start», бот отправит ответное сообщение, на реакции которого произойдет подписка ботом. Если поставить реакцию с эмодзи ![](/img/SQ_Бот SDK/applause.png) на это сообщение любым пользователем, в тот же чат бот отправит сообщение, содержащее эмоджи ![](/img/SQ_Бот SDK/sunrise.png), если будет реакция с ![](/img/SQ_Бот SDK/smile.png), то сообщение с эмоджи ![](/img/SQ_Бот SDK/boll.png). После отправки ботом сообщения на реакцию, бот отпишется от реакций на это сообщение
subscribeRoom.tsyarn subscribe-roomБотом будет выполнена подписка на события в личных сообщениях с пользователем, имя которого указано в переменной окружения PARTNER_NAME. Если пользователь PARTNER_NAME или сам бот начал или прекратил печатать сообщение в этом чате, в консоль будет выведено сообщение об этом
sendMessageToThread.tsyarn send-message:threadБудет отправлено сообщение, на основании идентификатора которого будет создана цепочка ответов
readThread.tsyarn read-threadБудет отправлено сообщение, на основании идентификатора которого будет создана цепочка ответов. Цепочка ответов будет отмечена как прочитанная пользователем, имя и токен которого указаны в переменных окружения PARTNER_NAME и PARTNER_TOKEN соответственно