[#]
/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
>Не, это не то... В каждом сообщении есть время в формате юникстайм.
>Мда. Без базы тут ничего не сделаешь такого. Точнее сделаешь, но это будет отстойно.
В текущей реализации только так. А фильтр по тс тебе ничего не даст, кроме того, что ты пропустишь сообщения, которые отправлены раньше, но на твою ноду пришли позже. РАСПРЕДЕЛЕННОСТЬ же.