Lua [Доработано] VK Notifications 1.2.3 Unofficial [Open Source]

БеzликиЙ

Автор темы
Автор темы
Проверенный
802
451
Версия SA-MP
  1. 0.3.7 (R1)
  2. 0.3.7-R2
  3. 0.3.7-R3
  4. 0.3.7-R4
Всем здрасьте, люд честной. Помните скрипт VK Notifications? Его автор лично признался, что заниматься доработкой скрипта ему лень, поэтому я решил заняться этим сам. Почему бы и нет? Заодно и Lua подучу (да, кодер из меня так себе).

Оригинальное описание:
VK Notifications
Скрипт позволяет отправлять уведомления в сообщения группы VK и получать их оттуда же.
В основном будет полезно всяким ботоводам и качателям аккаунтов. Работает через группу, то есть сообщения вы будете получать/отправлять группе, при этом ее нужно будет создать самому и настроить ее должным образом. Данный подход как по мне является наилучшим, потому что:

  1. Не нужно прятать токен доступа к API группы в скрипте (бесполезно), следовательно веселые рассылки от анонимусов нам не страшны.
  2. Не нужно создавать лишних прослоек между API VK и клиентом, что конечно же повышает производительность, не требует затрат на хостинг "прослойки" и в принципе не зависит от нее же
  3. Нет зависимости от единой группы с пользователями уведомлений, у каждого пользователя будет своя группа которой он волен распоряжаться как угодно. К тому же это не мешает использовать одну группу для уведомлений нескольким пользователям, вопрос лишь в доверии.
Из минусов могу выделить только то, что целевой аудитории будет сложно это все настроить. Гайд обязательно будет, даже для тех кто читать еще не научился.
Пока что уведомления работают только на сообщения в чат от сервера, скрипт позволяет настроить различные профили с фильтрами сообщений по шаблону (lua regex) и цвету. В дальнейшем планируется добавить другие события, запросы состояния, раздельные ответы на разные аккаунты, скриптовые сообщения/диалоги (скорее всего в следующей жизни). Пишите свои пожелания в теме, постараюсь добавить их в todo-лист.



  1. Заходим во вкладку "Группы", сверху жмем на кнопку "Создать сообщество", даем название группе и собсна создаем
  2. В свежесозданной группе на панельке справа заходим в "Управление", справа выбираем "Настройки"->"Работа с API"
  3. Во вкладке "Ключи доступа" жмем "Создать ключ", разрешаем доступ к управлению и сообщениям, делаем подтверждение действия. Этот ключ нужно будет вбить в поле "Group token".
  4. Переходим во вкладку "Long Poll API", в подвкладке "Настройки" включаем его, выбираем версию 5.80, в "Типы событий" ставим галочку на входящее сообщение. Готово!
  5. Во вкладке "Сообщения" справа включаем сообщения сообщества и не забываем сразу же разрешить сообщения от сообщества с главной страницы группы или просто что-то пишем в сообщения группы.
  6. Теперь необходимо также активировать возможности ботов в группе - Управление - Сообщения - Настройки ботов - Возможности ботов - Включены
  7. В скрипте нужно будет заполнить ID пользователя VK, куда будут идти уведомы (обязательно числовой ID, можно посмотреть в личных настройках), ID группы (можно посмотреть в адресной строке - нужно тоже только число) и токен, который мы создали выше.
  8. Сохраняем и можно пользоваться!

vknotfs.lua очевидно в moonloader, vkfilters.json содержит пример с фильтрами для некоторых сообщений на ARP, закидывать в moonloader/config и если игра уже запущена, то перезапускаем скрипт или во вкладке "Фильтры" жмём "Восстановить". Почему-то тут нельзя прикрепить json файл, возможно сделаю это позже
В случае возникновения проблем не забывайте прикладывать файл moonloader.log из папки moonloader.
Код открыт, смотреть/использовать где-либо еще не рекомендую

Активация: /vk
Зависимости: moonloader, SF, samp.lua, imgui, requests, effil


Видеообзор:

А теперь, собственно, зачем я вообще сюда пришёл.


1.2.2
1. Определение номера строки работало весьма странно, поэтому оно вырезано. Возможно, разберусь с этим позже.
2. Диалоги теперь визуализируются более-менее похожими на оригинальные. В диалогах с полем ввода действительно видно некое подобие поля ввода - это сделано для удобства, чтобы было понятно, какой диалог с полем ввода, а какой - нет.
3. Под каждым диалогом теперь показываются его кнопки. Нажать на них, к сожалению, нельзя (пока что).
1587456835174.png

4. Зато можно нажать на новые кнопки на клавиатуре:
1587456661915.png

ОК и Отмена. "Ок" отправляет положительный ответ на диалог (Enter), "Отмена" - отрицательный. Лучше всего использовать с диалогами, в которых нет ни поля ввода, ни списка.
5. В Статусе теперь отображается ID текущего диалога. Если верить коду, который я дописал, оно отображается только когда диалог открыт, на деле же это не всегда так.
6. Если кому-то действительно интересно, могу дать инструкцию, как добавлять свои кнопки-биндер. Вроде бы я в этом разобрался.


1.2.3
Теперь скрипт пишет никнейм аккаунта, который был отключен от сервера. Может быть, это кому-то пригодится.

4.01.2022: обновлено обращение к VK API.

Автор оригинала (и ссылка на оригинал) в самом верху поста. Все права соблюдены. При распространении - указывайте автора и ссылку на тему.

Скрипт будет дорабатываться.
 

Вложения

  • vknotfs_1_2_3.lua
    30.2 KB · Просмотры: 239
Последнее редактирование:

MS.Corleone

Активный
195
51
Там дело не в том что скрипт не работает. Скрипт работает, ввожу все что надо там ключи, ID и т.д но 0 реакции. В ВК сообщения не приходят, и в игру не отправляются. Я не знаю с чем это связано ((((
 

БеzликиЙ

Автор темы
Автор темы
Проверенный
802
451
Там деле не в том что скрипт не работает. Скрипт работает, ввожу все что надо там ключи, ID и т.д но 0 реакции. В ВК сообщения не приходят, и в игру не отправляются. Я не знаю с чем это связано ((((
там обычно вверху пишет ошибку подключения к ВК, или в консоли что-то флудит
 

_delete_

Потрачен
122
78
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Там дело не в том что скрипт не работает. Скрипт работает, ввожу все что надо там ключи, ID и т.д но 0 реакции. В ВК сообщения не приходят, и в игру не отправляются. Я не знаю с чем это связано ((((
Нету подключение к ВК. Впн юзай
 

K4PPY

Новичок
10
0
Сделай кнопки "Ок" и "Отмена" только тогда, когда появляется диалог