Network

Дана документація описує роботу з сервісом передачі даних в режимі реального часу. Прочитайте уважно дану документацію, для розуміння роботи з нашою мережею.

Перше підключення:

Для початку потрібно визначити IP адресу сервера і порт, оскільки серверів може бути більше одного і якісь сервера можуть відключатися і підключатися нами, скористайтеся API v2 методом getListSpotServers. Даний метод поверне список IP адрес і порти серверів, для підключення.

Зверніть увагу, що метод getListSpotServers повертає кількість підключених клієнтів, рекомендуємо вам підключаться до сервера у якого найменша кількість клієнтів. Такий підхід розподілить навантаження рівномірно.

Підключитися можете за допомогою TCP Logger стороннього софта, або виконавши команду в терміналі:

Terminal
telnt {ip} {port}

Після підключення, ви почнете отримувати повідомлення в JSON форматі, далі ми будемо говорити про ці повідомлення, як про події. Нижче наведено приклад подій spot, які події є і як їх обробляти читайте далі.

Подія:

На даний момент існує лише 3 події, це: spot, message, sun. Всі події, які транслюються на серверах з методу getListSpotServers, є ідентичними. Це зроблено для того, щоб гарантувати доставку повідомлень, спотів і будь-яких інших даних всім користувачам системи. Незалежно від того, до якого конкретного сервера підключений користувач, він отримає повний і однаковий набір подій. Таким чином забезпечується однаковість даних і синхронність роботи всіх клієнтів в розподіленому середовищі.

Загальна структура JSON повідомлення
{
    "event": "name_event", // ENUM можуть бути Значення: spot, message, sun
    "data": {...}, // Данне події, читайте опис подій.
    "event_at": "Y-m-d H:i:s" // Дата і час події: 2025-08-29 19:23:10
}

Подія: message

Дана подія інформує про відправку повідомлення в чаті. Для цього використовується API-запит до методу sendMessage. Подробиці про роботу з відправкою повідомлень дивіться в документації API v2.

Список чатів можна отримати за допомогою методу getChats.

Дані події
{
    "chat_id": 1,
    "sender": "R4CAT/P",
    "text_color": "#1E3A5F",
    "background_color": "#E6F0FA",
    "text": "Привіт! Я зараз в поле, надішліть когось з чаєм, тут холодно."
}

Результат:

R4CAT/P:
Привіт! Я зараз в поле, надішліть когось з чаєм, тут холодно. 29.08.2025 19:23

Подія: sun

Надсилає актуальний Індекс сонячної активності, корисно відстежувати що б не звертатися до API сервісу.

Дані події
{
    "value": 4 // Мала геомагнітна буря.
}
  1. 1 — Немає помітних обурень.
  2. 2 — Невеликі обурення.
  3. 3 — Слабка геомагнітна буря.
  4. 4 — Мала геомагнітна буря.
  5. 5 — Помірна геомагнітна буря.
  6. 6 — Сильна геомагнітна буря.
  7. 7 — Жорсткий геомагнітний шторм.
  8. 8 — Екстремальний шторм.