From 07ec7f4cd479c8d8a2318a276e519952ca77ec42 Mon Sep 17 00:00:00 2001 From: CupIvan Date: Wed, 9 May 2018 15:14:45 +0300 Subject: [PATCH] =?UTF-8?q?=D0=BF=D0=B5=D1=80=D0=B5=D0=B4=D0=B5=D0=BB?= =?UTF-8?q?=D0=B0=D0=BB=20handshake?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- API.md | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/API.md b/API.md index 3e6e3b7..2436f24 100644 --- a/API.md +++ b/API.md @@ -25,25 +25,26 @@ GUI - примитивная программа под Linux/Window/Android, к ## Протокол обмена Обмен сообщениями ведётся по GET/POST http протоколу в формате JSON, что позволяет делать GUI прямо в браузере. При любой успешной отправке данных обновляем поле last_connect у контакта. -Во всех сообщениях нужно указывать ключ, если он не подойдёт - то сообщение отбрасывается. +Если пришло сообщение от контакта, которого нет в адресной книге - то оно отбрасывается. +Исключения - запрос handshake. 1. Добавление в друзья -Используется, чтобы установить связь с контактом. Для этого запрашиваем у него ключ доступа, предварительно отправив свой. +Используется, чтобы установить связь с контактом. Тот кто хочет добавиться в друзья - отправляет такой запрос. ```json -{ "action":"handshake", "key":"пароль" } +{ "action":"handshake", "nick": "" } ``` ответ ```json { "status": 1 } ``` -Когда один отправил запрос - то второй может отправить свой ключ и тогда сервера смогут общаться друг с другом. +У другого абонента висит этот контакт в списке неавторизованных. Если он хочет его тоже добавить в друзья - отправляем ему свой handshake. Возможет вариант, когда сервер автоматически добавляет в друзья (публичный сервер для пересылки offline сообщений). ### Отправка сообщения Структура сообщения в JSON: ```json -{ "action":"send", "from":"адрес", "to":"адрес", "message":"сообщение", "timestamp":"время", "enctype":"", "key":"" } +{ "action":"send", "from":"адрес", "to":"адрес", "message":"сообщение", "timestamp":"время", "enctype":"" } ``` ответ: ```json