Роботы, плагины и скрипты к чату MyChat. Разработка альтернативных клиентов и различных утилит. Технические вопросы по программированию, замечания и предложения по развитию API
Various
Добрый день! Не нашел ответа на форуме, попытаю счастья тут =) Есть ли и, если есть, то в какой версии, функция в скриптах для создания оповещения для пользователя/-лей?
Аватара пользователя
Алексей Пикуров
Добрый день, функция есть в последней версии (4.14), но в ней была найдена ошибка и мы её закрыли. Если за сегодня исправим - я выложу дистрибутив и напишу пример здесь, как ею пользоваться.
Аватара пользователя
Алексей Пикуров
Дистрибутивы обновлены.

Функция скриптового языка mSendBroadcast

Примеры использования:

Отправка многострочного сообщения пользователю с UIN 6, с обязательным прочтением, сроком действия сутки с момента отправки:
mSendBroadcast('Привет, как дела?[CRLF]Ответь, когда будет время', '6', IncDay(Now, 1), true);

Отправить сообщение нескольким пользователям, срок действия оповещения - неделя, прочтение не контролируется:
mSendBroadcast('Тестовое оповещение', '6,12,49,3', IncDay(Now, 7), false);

Оповещения приходят от имени встроенного робота UIN 0 (Elisa). Её можно переименовать в настройках сервера, а также дать её другой аватар.
Various
Спасибо, очень полезная функция! Читал, что с этой версии, или даже с 4.12, подтверждение прочтения сообщения возвращаются к отправителю. А если отправитель Элиза, то, может быть, эти подтверждения где-то логгируются?
Аватара пользователя
Алексей Пикуров
В скриптовом языке в функции mSendBroadcast указывается только параметр "обязательное прочтение". Это означает, что окно с оповещением будет висеть на экране до тех пор, пока получатель не нажмёт галку "Да, я прочитал это". Уведомления же о прочтении, которые приходят в приват, нету. Они там не нужны. Кого уведомлять, робота? :)

Если нужно чего-то логгировать - к вашим услугам скриптовый язык, можно сделать практически любую логику, какая нужна.
Various
Логгирование в общем-то и не нужно, нужно уведомление о прочтении =) Ну да ладно, это все лирика. mSendBroadcast - функция? Она что-то возвращает?
Аватара пользователя
Алексей Пикуров
Да, это функция. Возвращает число типа integer.

0 - всё ок
-1 - нет списка UIN-ов для отправки рассылки
-2 - неправильный список пользовательских UIN-ов (должны быть только цифры и запятые)
Аватара пользователя
Алексей Пикуров
Справка по функции mSendBroadcast.