Как писать плагины?

Больше
15 года 8 мес. назад #21 от Mikanoshi
Mikanoshi ответил в теме RE: Как писть плагины?
Если в плагине пишется PM_ABORT, то что тут усовершенствуешь) Если плагин, стоящий в списке выше, убил сообщение, то всё, следующие плаги обламываются.

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Больше
15 года 8 мес. назад #22 от xternalx
xternalx ответил в теме RE: Как писть плагины?
Mikanoshi писал(а):

Если в плагине пишется PM_ABORT, то что тут усовершенствуешь) Если плагин, стоящий в списке выше, убил сообщение, то всё, следующие плаги обламываются.

ага, я заметил.. :(

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Больше
15 года 8 мес. назад #23 от Toxa
Toxa ответил в теме RE: Как писть плагины?
можно для таких случаев усовершенствовать настраиваемость порядка вызова плагинов

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Больше
15 года 8 мес. назад #24 от xternalx
xternalx ответил в теме RE: Как писть плагины?
не знаю, баг это, или нет, но функция RQ_GetStatus всегда возвращает значение 0 - т.е. статус всегда online. Можно как нибудь другим способом узнать сой текущий статус?

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Больше
15 года 8 мес. назад #25 от xternalx
xternalx ответил в теме RE: Как писть плагины?
таак... очередной вопрос.
при событии PE_AUTHREQ_GOT вызываю такую функцию: RQ__ParseAuthRequestGotString(data, uin, flags, dt, msg);
после этого с этими данными можно что то делать.
Если сделать result:=str2comm(char(PM_ABORT)), то юзверю ничего не покажут, что кто то попросил у него авторизации,
а вот как бы составить пакет, чтобы при событии PE_AUTHREQ_GOT можно было бы показать текст, модифицированный моим плагином?
вот такой вот код не работает: result:=str2comm(char(PM_DATA)+_istring(msg)); :(
как сделать, чтобы работал?

и вообще, дайте пожалуйста совет, как правильно и на что ориентироваться при составлении таких пакетов?

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Больше
15 года 8 мес. назад #26 от Vinum
Vinum ответил в теме RE: Как писть плагины?
xternalx писал(а):

таак... очередной вопрос.
при событии PE_AUTHREQ_GOT вызываю такую функцию: RQ__ParseAuthRequestGotString(data, uin, flags, dt, msg);
после этого с этими данными можно что то делать.
Если сделать result:=str2comm(char(PM_ABORT)), то юзверю ничего не покажут, что кто то попросил у него авторизации,
а вот как бы составить пакет, чтобы при событии PE_AUTHREQ_GOT можно было бы показать текст, модифицированный моим плагином?
вот такой вот код не работает: result:=str2comm(char(PM_DATA)+_istring(msg)); :(
как сделать, чтобы работал?

и вообще, дайте пожалуйста совет, как правильно и на что ориентироваться при составлении таких пакетов?


Сначала нужно глянуть в апи, а тама пишут:

if event = PE_AUTHREQ_GOT
INT sender uin
INT flags
INT when
ISTRING text
possible replies:
1) PM_ABORT

То есть можно только result:=str2comm(char(PM_ABORT)), и все, тоесть только прервать сообщение. Но я так думаю, что если написать RQ_SendMsg(uin, 0, msg) в событии PE_AUTHREQ_GOT, где msg - модифицированное сообщение, то все должно уйти..при этом еще можно сообщение модифицировать в событии PE_MSG_SENT, которое должно произойти после RQ_SendMsg()

В общем, сначала смотрим описание апи, а потом делаем что нужно))

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Больше
15 года 8 мес. назад #27 от xternalx
xternalx ответил в теме RE: Как писть плагины?
Vinum писал(а):

Сначала нужно глянуть в апи, а тама пишут:
....
В общем, сначала смотрим описание апи, а потом делаем что нужно))

агхааа.... спасиба,я в принципе так и делал - читал апи, но я надеялся что все таки можно модифицировать текст...

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Модераторы: bassvazoozaDelphukdekRapid D
Время создания страницы: 0.314 секунд
Работает на Kunena форум