@@ -67,3 +67,52 @@ Vasya # Имя пользователя
67
67
*** TODO Формат node2node API
68
68
69
69
*** 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