-
Notifications
You must be signed in to change notification settings - Fork 1
roschat bot api data type
На данной странице приведено описание типов данных, необходимых для разработки и проектирования сервисов и приложений сервера РОСЧАТ.
32-битное знаковое целое число.
Логический тип данных.
32-битное число с плавающей запятой.
Текстовая строка в кодировке UTF-8.
Массив объектов.
Объект в формате JSON.
Массив строк string.
var arrayString = [
['Строка 1','Строка 2','Строка 3']
];
Массив целых чисел int.
var arrayInt = [
[1,34,75]
];
Клавиатура чата или сообщения. Клавиатура представляет из себя массив строк keyboardLine, каждая строка представляет из себя массив кнопок keyboardButton.
var keyboard = [
[{text: 'я кнопка 1 1', callbackData: 'pressedButton1'},{text: 'я кнопка 1 2'}],
[{text: 'я кнопка 2 1', callbackData: 'pressedButton2'}],
[{text: 'я кнопка 2 1', link:'yandex.ru'}]
];
Строка клавиатуры чата или сообщения. Представляет из себя массив кнопок keyboardButton.
Кнопка клавиатуры чата или сообщения.
Название | Тип | Описание |
---|---|---|
text | string | Текст, отображаемый на кнопке |
callbackData | string | Данные передаваемые боту при нажатии, по умолчанию пустое |
link | string | Ссылка на внешние ресурсы, по умолчанию пустое |
var button = {
text: 'я кнопка 1 1',
callbackData: 'pressedButton1'
};
Действие с клавиатурой
Значение | Описание |
---|---|
'none' | Без действий |
'show' | Показать клавиатуру |
'hide' | Скрыть клавиатуру |
'remove' | Удалить клавиатуру |
Линейный размер данных.
Название | Тип | Описание |
---|---|---|
w | int | w - ширина |
h | int | h - высота |
var size = {
w: 250,
h: 250
};
Тип идентификатора пользователя.
Значение | Описание |
---|---|
'user' | Пользователь |
'group' | Группа пользователей |
Тип данных сообщения.
Значение | Описание |
---|---|
'text' | Текстовое сообщение |
'data' | Расширенный формат сообщения |
'unstored' | Текстовое сообщение без записи в БД |
'system' | Системное сообщение |
Данные сообщения.
string, в зависимости от значения dataType, имеет соответствующий формат сообщения.
Значение dataType | Формат сообщения |
---|---|
'text' | Текстовое сообщение string |
'data' | Cериализованным в строку JSON-объект dataBodyData |
'unstored' | Cериализованным в строку JSON-объект dataBodyData |
'system' | Cериализованным в строку JSON-объект dataBodySystem |
Примечание Сообщение должно быть в строковом виде с форматированием аналогичным результату работы функции JSON.stringify()
Список чатов. Список представляет из себя массив чатов chat.
var list = [ {
cidType: 'group',
cid: 16,
rev: 48,
name: 'Group A',
icon: '',
contacts:[{cid:1, privilege:'admin'}],
settings: {},
pinMessage: 0,
chatKeyboard: undefined,
lastMessage: {
id: 156,
dataType: 'data',
text: '{\'type\': \'text\', \'text\': \'Привет, это я!\'}',
senderId: 23,
replyId: undefined,
time: 200,
receivedTime: 62,
deletedTime: undefined
}
}];
Чат группы/пользовтеля.
Название | Тип | Описание |
---|---|---|
cidType | cidType | Тип чата, по умолчанию 'user'. |
cid | int | Идентификатор чата. |
rev | int | Номер ревизии чата. |
deleted | bool | Флаг удаления беседы. По умолчанию - false. |
readOnly | bool | Режим беседы "только для чтения". Изменение свойства доступно только для администратора. По умолчанию - false. |
pinMessage | int | Идентификатор прикреплённого сообщения. Для открепления сообщения, устанавливается равным 0. По умолчанию отсутствует. |
name | string | Название беседы. По умолчанию пустое. |
icon | string | Логотип беседы. По умолчанию пустое. |
lastMessage | message | Последнее сообщение в чате кроме полей cidType, cid. По умолчанию пустое. |
contacts | chatContactList | Участники группы. По умолчанию пустое, для типа 'user'. |
settings | chatSettings | Настройки чата. По умолчанию пустое. |
chatKeyboard | keyboard | Клавиатура чата, по умолчанию пустое |
var chat = {
cidType: 'group',
cid: 16,
rev: 48,
name: 'Group A',
icon: '',
contacts:[{cid:1, privilege:'admin'}],
settings: {},
pinMessage: 0,
chatKeyboard: undefined,
lastMessage: {
id: 156,
dataType: 'data',
text: '{\'type\': \'text\', \'text\': \'Привет, это я!\'}',
senderId: 23,
replyId: undefined,
time: 200,
receivedTime: 62,
deletedTime: undefined
}
};
Настройки беседы бота.
Название | Тип | Описание |
---|---|---|
marked | bool | Флаг отметки того, что чат не прочитан |
mute | int | Дата/время выставленного режима 'Без звука' в формате Unix-time. По умолчанию пусто. |
var settings = {
marked: false,
mute: 1537445765
};
Список участников группового чата. Список представляет из себя массив контактов чата chatContact.
var contacts = [{
cid: 16,
privilege: 'admin'
}];
Контакт чата.
Название | Тип | Описание |
---|---|---|
cid | int | Идентификатор участника чата. |
privilege | chatPrivilege | Привелегия участника. По умолчанию 'user'. |
var contact = {
cid: 16,
privilege: 'admin'
};
Привелегия участника в групповом чате.
Значение | Описание |
---|---|
'user' | Участник группы |
'admin' | Администратор группы |
Список сообщений. Список представляет из себя массив сообщений message.
var list = [{
cidType: 'user',
cid: 16,
id: 156,
dataType: 'data',
text: '{\'type\': \'text\', \'text\': \'Привет, это я!\'}',
senderId: 23,
replyId: undefined,
time: 200,
receivedTime: 62,
deletedTime: undefined
}];
Сообщение чата.
Название | Тип | Описание |
---|---|---|
cidType | cidType | Тип чата, по умолчанию 'user' |
cid | int | Идентификатор чата |
id | int | Идентификатор сообщения |
dataType | dataType | Тип данных сообщения, по умолчанию 'text' |
data | dataBody | Данные сообщения |
senderId | int | Идентификатор контакта отправителя. Отсутствует для системных сообщений dataBodySystem |
replyId | int | Идентификатор сообщения, на которое сформирован ответ, по умолчанию отсутствует |
time | int | Число секунд с момента отправки сообщения |
receivedTime | int | Число секунд с момента получения сообщения. Если отсутствует, значит сообщение еще не получено. |
watchedTime | int | Число секунд с момента просмотра сообщения. Если отсутствует, значит сообщение еще не просмотрено. |
deletedTime | int | Число секунд с момента удаления сообщения. Если отсутствует, значит сообщение еще не удалено. |
var msg = {
cidType: 'user',
cid: 16,
id: 156,
dataType: 'data',
text: '{\'type\': \'text\', \'text\': \'Привет, это я!\'}',
senderId: 23,
replyId: undefined,
time: 200,
receivedTime: 62,
watchedTime: undefined,
deletedTime: undefined
};
Список деталей сообщения по участникам чата. Список представляет из себя массив деталей сообщения messageDetail.
var list = [{cid: 1, receivedTime: 62}, {cid: 32, receivedTime: 435}, {cid: 45, receivedTime: 102}];
Детали сообщения группового чата.
Название | Тип | Описание |
---|---|---|
cid | int | Идентификатор участника чата |
receivedTime | int | Число секунд с момента получения сообщения. Если отсутствует, значит сообщение еще не получено. |
watchedTime | int | Число секунд с момента просмотра сообщения. Если отсутствует, значит сообщение еще не просмотрено. |
deletedTime | int | Число секунд с момента удаления сообщения. Если отсутствует, значит сообщение еще не удалено. |
var detail = {
cid: 32,
receivedTime: 62,
watchedTime: undefined,
deletedTime: undefined
};
Список изменений истории сообщений. Список представляет из себя массив изменений сообщения messageChanges.
var list = [{id: 102, rev: 51, receivedTime: 62}];
Изменения сообщения.
Название | Тип | Описание |
---|---|---|
id | int | Идентификатор сообщения. |
rev | int | Номер ревизии сообщения. |
receivedTime | int | Число секунд с момента получения сообщения. Если отсутствует, значит сообщение еще не получено. |
watchedTime | int | Число секунд с момента просмотра сообщения. Если отсутствует, значит сообщение еще не просмотрено. |
deletedTime | int | Число секунд с момента удаления сообщения. Если отсутствует, значит сообщение еще не удалено. |
var сhanges = {
id: 102,
rev: 51,
receivedTime: 62,
watchedTime: undefined,
deletedTime: undefined
};
Запись прохода через терминал СКУД.
Название | Тип | Описание |
---|---|---|
in | bool | Вход/выход (true/false) |
time | int | Время входа/выхода |
name | string | Название терминала СКУД |
var entry = {
in: true,
time: 1406045520,
name: 'Terminal A'
};
Статистика прохода пользователя через терминал СКУД. Представляет из себя массив записей acsLocationsEntry.
var locations = [
{ in: true, time: 1406045520, name: 'Terminal A' },
{ in: false, time: 1406045780, name: 'Terminal A' }
];
Статус пользователя в журнале СКУД.
Значение | Описание |
---|---|
'meeting' | Деловая встреча |
'business' | Командировка |
'work-home' | Работа дома |
'education' | Обучение |
'vacation' | Отпуск |
'compensatory' | Отгул |
'sick' | Болезнь |
'other' | Другое |
Запись в журнале СКУД.
Название | Тип | Описание |
---|---|---|
from | int | Дата начала |
to | int | Дата завершения |
status | ascStatus | Статус |
text | string | Краткое описание |
comment | string | Подробное описание |
var entry = {
from: 1406045520,
to: 1406545520,
status: 'sick',
text: 'Болезнь'
};
Журнал пользователя СКУД. Представляет из себя массив записей acsJournalEntry.
var journal = [
{ from: 1406045520, to: 1406545520, status: 'sick', text: 'Болезнь' },
{ from: 1406012520, to: 1406534520, status: 'vacation', text: 'Отпуск' }
];