Skip to content

Commit 3fa53e3

Browse files
authored
Merge pull request #1 from idec-net/client_proto
Client protocol
2 parents d2e868d + 5200790 commit 3fa53e3

File tree

1 file changed

+49
-0
lines changed

1 file changed

+49
-0
lines changed

README.org

Lines changed: 49 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -67,3 +67,52 @@ Vasya # Имя пользователя
6767
*** TODO Формат node2node API
6868

6969
*** TODO Формат client API
70+
71+
Т.к. мы используем теги, то API отправки сообщения можно не менять, но поменять конечный эндпоинт,
72+
вынеся его в расширения протокола.
73+
74+
Т.е.:
75+
#+begin_src sh
76+
curl -XPOST -d 'pauth=authstring' -d 'tmsg=BASE64' http://node.domain.tld/x/m/point
77+
# Либо
78+
curl -XGET http://node.domain.tld/x/m/point/authstring/BASE64
79+
#+end_src
80+
81+
А для получения сообщений адресованных вам делаем запрос вида
82+
#+begin_src sh
83+
curl -XGET http://node.domain.tld/x/m/mail/authstring
84+
# Либо
85+
curl -XPOST -d 'pauth=authstring' http://node.domain.tld/x/m/
86+
# Получение сообщений со сдвигом
87+
curl -XPOST -d 'pauth=authstring' http://node.domain.tld/x/m/-10:10
88+
#+end_src
89+
90+
Т.к. нода по authstring может узнать информацию о поинте, то она должна знать о том
91+
какие сообщения адресованные этому поинту есть на этой ноде и возвращает их.
92+
93+
Так, ответ от ноды предлагается сделать аналогичным ~/u/e~:
94+
#+begin_src sh
95+
curl -XPOST -d 'pauth=authstring' http://node.domain.tld/x/m/-1:1
96+
HTTP/1.1 200 Ok
97+
Content-Type: text/plain
98+
dynamic,1
99+
IZXhLBKJx0rhx0lXYu3L
100+
#+end_src
101+
102+
Получаем это сообщение
103+
#+begin_src sh
104+
curl -XPOST -d 'pauth=authstring' http://node.domain.tld/x/m/IZXhLBKJx0rhx0lXYu3L
105+
HTTP/1.1 200 Ok
106+
Content-Type: text/plain
107+
IZXhLBKJx0rhx0lXYu3L:BASE64
108+
#+end_src
109+
110+
Либо несколько сообщений, по аналогии с существующей схемой ~/u/e~
111+
#+begin_src sh
112+
curl -XPOST -d 'pauth=authstring' http://node.domain.tld/x/m/IZXhLBKJx0rhx0lXYu3L/IZahLHKJ10rZx0ZXAAA0/...
113+
HTTP/1.1 200 Ok
114+
Content-Type: text/plain
115+
IZXhLBKJx0rhx0lXYu3L:BASE64
116+
IZahLHKJ10rZx0ZXAAA0:BASE64
117+
...:BASE64
118+
#+end_src

0 commit comments

Comments
 (0)