roschat-bot-js-sdk
v2.0.0
Published
JavaScript SDK для написания ботов для сервера РОСЧАТ.
Downloads
1
Readme
roschat-bot
JavaScript SDK для написания ботов для сервера РОСЧАТ. Описание протокола ботов.
Установка
Склонируйте git репозиторий
git clone https://github.com/roschat/roschat-bot-js-sdk
cd roschat-bot-js-sdk
npm install
Или установите с помощью NPM
npm install roschat-bot --save
Использование
Импортируйте класс RochatBot
из модуля roschat-bot
и создайте новый экземпляр класса
const { RoschatBot } = require('roschat-bot')
// Или если склонировали репозиторий, то в файле `./bot/index.js`
// const { RoschatBot } = require('../index')
const bot = new RoschatBot({
config: {
token: 'YOUR_BOT_TOKEN', // сгенерированый уникальный токен
name: 'YOUR_BOT_NAME', // название бота
baseUrl: 'https://example.com' // адрес сервера РОСЧАТ
}
})
Для начала прослушивания событий используйте bot.start()
bot.start()
.then(res => {
// Обработчики событий сервера
})
.catch(error => {
// Обработка ошибки при инициализации
})
Пример API
Обработка входящего события от сервера
const { BOT_MESSAGE_EVENT, RoschatBot } = require('roschat-bot')
// ...
bot.on(BOT_MESSAGE_EVENT, (res) => {
// Обработчики сообщения от пользователя
})
Событие "отправить сообщение"
bot.sendMessage({cid: 100}, 'Тестовое сообщение', callbackFunc)
// тоже самое что
bot.emit('send-bot-message', {cid: 100, data: 'Тестовое сообщение'}, callbackFunc)
Методы RoschatBot
Инициализация:
start(): new Promise
Инициализировать работу бота
Работа с сообщениями
on(BOT_MESSAGE_EVENT, function)
Событие bot-message-event
- Уведомление о новом сообщении от пользователя (описание)
sendMessage({cid[, cidType, dataType, replyId]}, data[, callback])
Отправить сообщения пользователю (описание)
sendMessageReceived({id}[, callback])
Сообщить о получении сообщения пользователя (описание)
sendMessageWatched({id}[, callback])
Сообщить о просмотре сообщения пользователя (описание)
deleteBotMessage({id}[, callback])
Удалить сообщение в чате (описание)
Работа с клавиатурой
on(BOT_BUTTON_EVENT, function)
Событие bot-button-event
- нажатие кнопки пользователем (описание)
setBotKeyboard({cid, keyboard[, action]})
Установить клавиатуру в чате с пользователем (описание)
Пример бота
В папке example
можно найти реализацию бота для сервера РОСЧАТ с использованием данного SDK.