Различия
Здесь показаны различия между двумя версиями данной страницы.
comet:ws-api [2018/06/03 05:58] levhav |
comet:ws-api [2019/12/18 01:58] |
||
---|---|---|---|
Строка 1: | Строка 1: | ||
- | Описание прямого взаимодействия с комет сервером по протоколу websockets | ||
- | |||
- | Может быть полезно для использования комет сервера в среде где нет javascript интерпритатора | ||
- | |||
- | Комет сервер отправляет данные в формате json | ||
- | С версии 4.1 будет принимать тоже большую часть запросов в json формате, а пока принимает в текстовом формате. | ||
- | |||
- | |||
- | === Авторизация === | ||
- | |||
- | Параметры подключения определены в url запроса на подключение. | ||
- | В них важен порядок следования параметров в адресе и регистр. Все параметры обязательны но могут иметь пустое значение. | ||
- | |||
- | Пример запроса на подключение: | ||
- | |||
- | <code> | ||
- | wss://app.comet-server.ru/ws/sesion=undefined&myid=undefined&devid=15&v=3.31&uuid=Db_YTZOMMQc902yluqo7mLns3RXWFz2t&api=js | ||
- | </code> | ||
- | |||
- | Параметры: | ||
- | |||
- | * sesion - токен авторизации для пользователя из таблицы users_auth или jwt токен | ||
- | * myid - идентификатор пользователя из таблицы users_auth | ||
- | * devid - идентификатор `dev_id` для отделения данных одного аккаунта от другого. | ||
- | * v - версия клиента (число с точкой) пока этот параметр игнорируется но возможно когда то он будет использоваться для обратной совместимости | ||
- | * uuid - случайным обаразом сгенерированный uuid клиента в апи пока не проработан. | ||
- | |||
- | После подключения комет сервер отправит в ответ статус авторизации. От других типов сообщений это сообщение отличается тем что содержит поле authorized | ||
- | <code> | ||
- | { | ||
- | {"data": "токен авторизации"}, | ||
- | {"pipe": "sys"}, | ||
- | {"event": "serverInfo"}, | ||
- | {"server": MYSQL_SERVERNAME}, | ||
- | {"authorized": true} | ||
- | } | ||
- | </code> | ||
- | |||
- | === Сообщения приходящие от комет сервера === | ||
- | |||
- | При наступлении события комет сервер отправляет сообщение в формате json, до версии 4.0 некоторые сообщения в json могут быть закодированы в base64. | ||
- | |||
- | Каждое сообщение отделено переносом строки. За раз может прийти несколько сообщений разделённых переносом строки. | ||
- | |||
- | Сообщение имеет следующие поля: | ||
- | |||
- | * data - полезная нагрузка отправленая кем то. Строка или json | ||
- | * pipe - имя канала (в версии до 4.0 называется pipe_name) | ||
- | * event - имя события в канале (в версии до 4.0 называется event_name) | ||
- | * error - код ошибки (не всегда есть) | ||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||