[#] /x
Difrex(station13, 8) — All
2014-06-25 17:32:51


Кстати, а поясните мне про протокол /x. Я правильно понял, что можно запросить все сообщения(или хэши) пришедшие после unixtime в запросе?

[#] Re: /x
gadfly(mira, 7) — Difrex
2014-06-25 19:18:38


>Кстати, а поясните мне про протокол /x. Я правильно понял, что можно запросить все сообщения(или хэши) пришедшие после unixtime в запросе?

Нет. Без синхронизации времени не вижу в этом смысла. Единственным методов в /x (который реализован только в питоно-ноде, и единственным сервером, поддерживающим его, является мой экспериментальный сервер, не связанный с основной сетью) является /x/t. Он возвращяет версию запрошенных эх. Локальную для конкретной ноды. Версия всегда растёт, в текущей реализации это mtime файла эхи.

[#] Re: /x
ntrknlmp.exe(mira, 9) — Difrex
2014-06-25 19:27:50


Не, для этого надо городить костыли в виде поиска по всему списку сообщений, удовлетворяющим условиям запроса. Причем искать надо по всем сообщениям в эхе, потому что они не отсортированы по времени (К примеру, в im были сообщения, которые на этой ноде появились только N-го числа, но были отправлены N-1 числа).
/x/t должен вернуть только версию текущей базы, это нужно для снижения трафика при проверке наличия новых сообщений.

[#] Re: /x
ntrknlmp.exe(mira, 9) — gadfly
2014-06-25 19:36:30


Кстати, в паре с /x/t неплохо будет смотрется какой-нибудь /x/d(iff)/echoid/msgid,
где echoid - имя эхи,
msgid - айдишник последнего сообщения, которое есть у клиента, из этой эхи.

Сервер найдет в файле эхи строчку с этим айдишником (если она есть) и вернет айдишники сообщений, которые ниже найденной строчки.

А далее простым /u/m выкачивать.

[#] Re: /x
Difrex(station13, 8) — gadfly
2014-06-25 22:02:02


Не, это не то... В каждом сообщении есть время в формате юникстайм.
Мда. Без базы тут ничего не сделаешь такого. Точнее сделаешь, но это будет отстойно.

[#] Re: /x
gadfly(mira, 7) — Difrex
2014-06-26 04:49:57


>Не, это не то... В каждом сообщении есть время в формате юникстайм.
>Мда. Без базы тут ничего не сделаешь такого. Точнее сделаешь, но это будет отстойно.

В текущей реализации только так. А фильтр по тс тебе ничего не даст, кроме того, что ты пропустишь сообщения, которые отправлены раньше, но на твою ноду пришли позже. РАСПРЕДЕЛЕННОСТЬ же.