Author Topic: Сервер дублирования сообщений Не могу отобразить исходящие сообщения  (Read 7596 times)

0 Members and 1 Guest are viewing this topic.

Offline wismerhil

  • Newbie
  • *
  • Posts: 4
Здравствуйте.  :)
Мне необходимо продублировать сообщения на все открытые клиенты Миранды. Т.е. есть организация в которой часто используется ICQ, при этом под одним UIN Миранда может быть загружена на нескольких компьютерах и новые сообщения отправленные и полученные на одном компьютере не дублируются на остальные загруженные клиенты - вот, а задача собственно на всех загруженных клиентах поддерживать актуальный диалог.
Собственно для решения этой задачи я сделал следующее:
1. Собрал отдельно приложение с БД в которой хранятся отправленные/полученные сообщения
2. В момент получения/отправки сообщения - сделал отправку на приложение из пункта 1
3. В модуль ICQOscar дописал - В отдельном потоке запрос к программе из первого пункта - получаю историю сообщений для конкретного UIN
Относительно нормально всё работает - сообщения я получаю, но никак не могу дописать их в чат -
Точнее получилось с помощью db_event_add добавить в чат входящие сообщения
Не могу отобразить исходящие сообщения - не знаю как это отобразить.... :'(
Я недавно начал разбираться в Miranda. Объясните пожалуйста как добавлять исходящие и входящие сообщения в чат или в историю хотя бы но желательно без повторной их отправки. Вот.
 

Offline ghazan

правильное решение - поставить jabber
 

Offline wismerhil

  • Newbie
  • *
  • Posts: 4
Неужели никто не добавлял сообщения в чат?(без отправки). Jabber брать нельзя все пользуются icq
 

Offline Apollo2k4

Нужно из костылей собрать велосипед :-X. Странно организовывать такое в протоколе который не умеет такое делать, да и ещё каких-то три года назад вышибал старый клиент при входе с нового. Идея с джабером очень разумна.
«Все глупости совершаются с серьёзным выражением лица» © Кён «Меланхолия Сузумии Харухи»

Правильно заданный вопрос – 50% решения.
Правила постинга
 

Offline unsane

wismerhil, посмотри как происходит синхронизация истории в протоколе VKontakte.
Конкретно, функцию OnReceiveHistoryMessages.
Si no estas con nosotros, estas contra nosotros.
 

Offline wismerhil

  • Newbie
  • *
  • Posts: 4
Спасиба unsane:THUMBS UP:
Нашёл решение своей задачи свойство - flags в структуре DBEVENTINFO - аргументе функции db_event_add. Простановка различных флагов в этом свойстве позволяет делать сообщение от пользователя/польлзователю/прочитанное/не прочитанное/добавлять/не добавлять в историю и т.д. Вот. В общем разобрался. Спасиба! :THUMBS UP: