mirror of
https://github.com/ChronosX88/Influence-cjdns.git
synced 2024-11-23 15:42:18 +00:00
Updated documentation
This commit is contained in:
parent
945beac311
commit
a2d82beedd
@ -1,4 +1,4 @@
|
||||
# Общая документация
|
||||
# Общая документация мессенджера HyperboriaIM
|
||||
|
||||
## Структура мессенджера
|
||||
|
||||
@ -6,7 +6,7 @@
|
||||
|
||||
GUI - API ==== API - GUI
|
||||
|
||||
GUI - примитивная программа под Linux/Windows/Android, которая умеет отображать сообщения и вызывать функции ядра (API).
|
||||
GUI - примитивная программа под Linux/Windows/Android, которая умеет отображать сообщения и вызывать функции ядра (API).
|
||||
API - ядро мессенджера. Достаточно подключить *main.hpp*, чтобы вызывать функции ядра. Такая структура позволяет писать какие угодно клиенты.
|
||||
|
||||
## Протокол обмена
|
||||
@ -21,19 +21,19 @@ API - ядро мессенджера. Достаточно подключить
|
||||
Используется, чтобы установить связь с контактом. Тот кто хочет добавиться в друзья - отправляет такой запрос:
|
||||
|
||||
```json
|
||||
{
|
||||
"action":"handshake",
|
||||
"peerID":"*IPv6 контакта*"
|
||||
{
|
||||
"action":"handshake",
|
||||
"peerID":"*IPv6 контакта*"
|
||||
}
|
||||
```
|
||||
|
||||
Ответ:
|
||||
|
||||
```json
|
||||
{
|
||||
"action":"handshakeSuccess",
|
||||
"peerID":"*IPv6*",
|
||||
"status": true
|
||||
{
|
||||
"action":"handshakeSuccess",
|
||||
"peerID":"*IPv6*",
|
||||
"status": true
|
||||
}
|
||||
```
|
||||
|
||||
@ -44,25 +44,25 @@ API - ядро мессенджера. Достаточно подключить
|
||||
Структура сообщения в JSON:
|
||||
|
||||
```json
|
||||
{
|
||||
{
|
||||
"action":"send",
|
||||
"peerSender":"*IPv6*",
|
||||
"peerReceiver":"*IPv6*",
|
||||
"chatID":"*Идентификатор чата, у обоих он одинаковый*",
|
||||
"msgID":"*ID сообщения в чате*","msgText":"*сообщение*",
|
||||
"timestamp":"*время*",
|
||||
"enctype":""
|
||||
"timestamp":"*время*",
|
||||
"enctype":""
|
||||
}
|
||||
```
|
||||
|
||||
ответ:
|
||||
|
||||
```json
|
||||
{
|
||||
{
|
||||
"action":"sendSuccess",
|
||||
"peerSender":"*IPv6 отправителя, т.е. кому доставили сообщение*",
|
||||
"peerSender":"*IPv6 отправителя, т.е. кому доставили сообщение*",
|
||||
"peerReceiver":"*IPv6 получателя, т.е. кто отправил сообщение*",
|
||||
"chatID":"*Идентификатор чата, у обоих он одинаковый*",
|
||||
"chatID":"*Идентификатор чата, у обоих он одинаковый*",
|
||||
"msgID":"*ID сообщения, которое доставлено, в чате*",
|
||||
"status": true
|
||||
}
|
||||
@ -77,18 +77,18 @@ API - ядро мессенджера. Достаточно подключить
|
||||
Если прошло время last_connect > 1 минуты, от отправляем запрос
|
||||
|
||||
```json
|
||||
{
|
||||
"action":"ping",
|
||||
"peerID":"*IPv6*"
|
||||
{
|
||||
"action":"ping",
|
||||
"peerID":"*IPv6*"
|
||||
}
|
||||
```
|
||||
|
||||
ответ:
|
||||
|
||||
```json
|
||||
{
|
||||
"action":"pong",
|
||||
"peerID":"*IPv6*"
|
||||
{
|
||||
"action":"pong",
|
||||
"peerID":"*IPv6*"
|
||||
}
|
||||
```
|
||||
|
||||
@ -96,18 +96,18 @@ API - ядро мессенджера. Достаточно подключить
|
||||
Если для этого адрес в базе есть недоставленные сообщения, то отправляем такой запрос:
|
||||
|
||||
```json
|
||||
{
|
||||
{
|
||||
"action":"history",
|
||||
"messages":[{},{},{}...]
|
||||
"messages":[{},{},{}...]
|
||||
}
|
||||
```
|
||||
|
||||
ответ:
|
||||
|
||||
```json
|
||||
{
|
||||
"action":"historySuccess",
|
||||
"status":[true,true,true,false,true]
|
||||
{
|
||||
"action":"historySuccess",
|
||||
"status":[true,true,true,false,true]
|
||||
}
|
||||
```
|
||||
|
||||
@ -120,7 +120,7 @@ API - ядро мессенджера. Достаточно подключить
|
||||
Для ретрансляции можно также использовать свой сервер в интернете, нужно просто его добавить в контакты.
|
||||
|
||||
```json
|
||||
{
|
||||
{
|
||||
"peerSender":"*IPv6*",
|
||||
"peerReceiver":"*IPv6*",
|
||||
"action":"resend",
|
||||
@ -128,17 +128,17 @@ API - ядро мессенджера. Достаточно подключить
|
||||
"msgID":"*ID сообщения в чате*",
|
||||
"msgText":"*сообщение*",
|
||||
"timestamp":"*время*",
|
||||
"enctype":""
|
||||
"enctype":""
|
||||
}
|
||||
```
|
||||
|
||||
Ответ:
|
||||
|
||||
```json
|
||||
{
|
||||
{
|
||||
"peerID":"*IPv6*",
|
||||
"action":"resendSuccess",
|
||||
"status":true
|
||||
"status":true
|
||||
}
|
||||
```
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user