FP VK iHA Bot (Donate) - умный бот для android устройств. Целью программы является автоматизация ответов на различные сообщения или записи на стене, что позволит создать интерес к вашей странице. У разработчика знатно прикипело в одной группе, где нужно было захейтить пользователей айфонов, и он решил уделать их программно, так и появилось на свет данное приложение. Программа имеет бешеный функционал.
Что умеет:- Дистанционное и встроенное управление (удаление/публикация записей, управление базой ответов и шаблонов, получение подробной информации о работе бота, включение/выключение, контроль над всем и т. д.);
- Распознавание опечаток и синонимов;
- Возможность работы с несколькими аккаунтами, распределяя нагрузку;
- Назначение "доверенных" людей, чьи команды бот также будет обрабатывать как и Ваши, "учителей", которые пополняют базу...
- Игнорирование пользователей;
- Автоматическое изменение статуса, принятие в друзья и добавление в ЧС тех, кто кинул в подписчики;
- Мощный модуль регулярных выражений;
- Огромное количество прочих функций;
- Более 20,000 качественных ответов в стандартной базе!
----- (ЭПИЗОД 1)
- Здравствуйте! Сегодня я Вам расскажу о приложении VK_iHA_bot для Вашего Андроид-смартфона.
- VK_iHA_bot - приложение для автоматического ответа на записи и сообщения на Вашей странице Вкнтакте.
- Рассмотрим процесс первоначальной настройки программы. Для начала нужно скачать программу. Сделать это можно в нашей группе Вконтакте
- На стене Вы всегда сможете найти последнюю версию бота, опубликованную от имени группы.
----- (ЭПИЗОД 2)
- После того, как программа установлена, можно приступать к процессу первоначальной настройки
- Во время первого запуска программы Вы увидите загадочную кнопку "0" на экране. Нажимайте на неё.
- В открывшемся окошке браузера выполните вход в свой аккаунт Вконтакте.
- В появившемся предупреждении нажмите кнопку "разреить"
- Если процедура входа прошла успешно, окошко браузера исчезнет, и программа начнёт процесс подготовки, читая последние 20 записей на Вашей стене.
- Когда процедура подготовки закончится, программа готова к работе. Она Вам об этом сообщит текстом "Программа готова к работе. Жду новых сообщений".
----- (ЭПИЗОД 3)
- Чтобы убедиться, что программа работает, попробуйте написать у себя на стене текст "Бот, привет!". Не забудьте убедиться, что на Вашей стене включено комментирование записей.
- Бот должен обнаружить сообщение и ответить Вам в комментарии. Это обычно занимает около 30ти секунд.
- Теперь, когда всё работает, можно изучать возможности настройки программы.
- Чтобы управлять программой, можно использовать специальные команды.
- Одной из таких команд является команда botcmd help, предназначенная для вывода списка и описания всех команд, которые есть в программе. Будем называть это справкой.
- Т.К. справка достаточно длинная, бот делит её текст на 2 сообщения.
- Далее рассмотрим случаи, когда бот будет отвечать на стене.
----- (ЭПИЗОД 4)
- Первый случай - это обращение лично к нему, по имени "Бот". Например: "Бот, привет".
- В таком случае программа будет использовать базу данных ответов, подбирая наиболее подходящий ответ на сообщение.
- Обратите внивание, в логах отображается подробная инофрмация о том, почему был выбран именно такой ответ.
- Эту базу можно пололнять либо командой botcmd addspkpatt, либо общением с учителями. Подробнее описано в справке.
- Например: botcmd addspkpatt Обзор*Обзор - это круто!
- Теперь напишем боту сообщение "Обзор" и посмотрим что он ответит.
- Бот ответил "Обзор - это круто". Как видите, этот шаблон был внесен в базу и работает.
----- (ЭПИЗОД 5)
- Второй случай - обработка команд. Любое сообщение, содержащее фрагмент "botcmd" считается командой. Их список содержится в справке.
- Обрабатываются только команды владельца программы и доверенных пользователей.
- Например: "botcmd status". Эта команда выводит подробную информацию о состоянии всех модулей бота.
----- (ЭПИЗОД 6)
- Третий случай - обработка "позитивных" сообщений. Сообщение считается позитивным, если оно содержится в списке позитивных шаблонов.
- Ответ на такое сообщение формируется случайным образом из списка позитивных ответов.
- Например, команда botcmd pos getpatt позволит увидеть весь список позитивных шаблонов.
- Напишем "Nexus рулит!" и посмотрим, что бот ответит:
- Как видим, он работает.
- Списки, естественно, можно редактировать. Для этого предусмотрены несколько команд, подробно о которых можно прочитать в справке.
----- (ЭПИЗОД 7)
- Также, по аналогии, существует негативный обработчик - ответ на негативные шаблоны.
- Список негативных шаблонов можно получить этой командой: botcmd neg getpatt
- Для проверки, напишем "Андроид говно"
- Как видим, программа работает.
----- (ЭПИЗОД 8)
- Пятый сценарий использования - стандартный ответ на сообщение, содержащее какое либо словосочитание. Этот модуль я назвал "Шаблонизаторы".
- Для просмотра всех шаблонизаторов предусмотрена команда botcmd getpatternizator.
- Если одно сообщение содержит несколько шаблонизаторов, ответ будет выбран случайным образом среди подходящих шаблонизаторов.
- Примером работы такого модуля может быть следующее:
"айпад лучший планшет"
- Как видим, модуль работает нормально.
----- (ЭПИЗОД 9) (пропустить)
- Все вышеупомянутые действия происходили на стене владельца. Однако, это не единственный способ использования бота. Также бота можно использовать не стене сообщества.
- Для демонстрации этой возможности добавим сообщество "клуб владельцев ботов" в список обрабатываемых стен командой "botcmd addownerid ihabotclub"
- Обработалось. Теперь попробуем написать там на стене обращение к боту...
- Работает=)
----- (ЭПИЗОД 10)
- Теперь попробуем добавить стену сообщества в список обрабатываемых программой
- Для этого скопируем адрес сообщества из адресной строки и вставим его в команду addownerid.
- После обработки и подготовки стены, бот сообщит о готовности.
- Напишем сообщение на стене группы
- Как видим, бот ответил на стене группы в комментарии.
----- (ЭПИЗОД 11)
- Кроме того, бот может отвечать и в личных сообщениях.
- Там это работает так же как и на стене. Попробует написать "Бот, привет!" мне с другого аккаунта.
- Работает.
----- (ЭПИЗОД 12)
- Для распознавания слов и фраз бот использует вероятностный анализ слов, с учётом возможных опечаток. Кроме того, он имеет словарь синонимов, который позволяет ему понимать, что слова "рулит" и "круто" - одно и то же. Подробно описано в справке.
----- (ЭПИЗОД 13)
- Изначально бот не задумывался как массовая программа и писал я его в первую очередь для себя. Однако, многим программа понравилась, поэтому Вы и смотрите сейчас это видео.
- В данный момент бот находится в стадии разработки, и в программе присутствует масса ошибок и недоработок. Программа часто вылетает или вовсе не работает.
- В дальнейшем, возможно, бот будет совершенстврваться, и эти ошибки будут исправляться.
- Надеюсь, Вам понравился этот обзор! Спасибо за просмотр!
- Устанавливаем, запускаем;
- Включаем интернет соединение;
- В настройках своей страницы, включаем "комментирование стены";
- Авторизируемся в программе;
- !!!Если при старте программы она вылетает - попробуйте удалить с директории бота (/storage/sdcard/DrFailov_VK_iHA_bot) все папки;
- Начнётся лог "Init post ..." и тому подобное. Ждём;
- "Begin waiting for new actions..." Это значит, что программа работает и уже обрабатывает Вашу стену;
- Пишем на своей стене текст botcmd status. Спустя 5-50 секунд бот должен Вам ответить и вывести подробную информацию о своём состоянии;
- Также рекомендую ввести botcmd help;
- Напишите у себя на стене команду: botcmd owner add ihabotclub. Это добавит группу (В данном случае, "Клуб владельцев ботов") в список обрабатываемых Вашим ботом. (Узнать ID группы можно, скопировав ссылку на "Участники", и оставив последние цифры. ID стены человека писать без минуса!)
Команды можно писать везде, где бот может отвечать, например, на стене, в настройках "Написать сообщение боту", или в ЛС, если их обработка включена.
[ Сохранить все внесенные в базы изменения ]
---| botcmd save
[ Получить подробный отчёт о состоянии программы ]
---| botcmd status
[ Изменить метку бота (отображается в скобках перед текстом ответа) ]
[ EMPTY будет означать пустую метку ]
---| botcmd setbotname <новая метка>
[ Получить версию программы ]
---| botcmd version
[ Вывести ответы на часто задаваемые вопросы ]
---| botcmd faq
[ Преобразовать коды символов в символы ]
[ может быть полезно для отладки программы ]
---| botcmd encode <числа, разделенные запятыми: 56,495,8459,278,...>
[ Преобразовать текст в набор кодов ]
[ может быть полезно для отладки программы ]
---| botcmd decode <текст для преобразования>
[ Получить показатели температурных датчиков устройства ]
---| botcmd cputemp
[ Очистить папку загрузок бота ]
---| botcmd clearcache
[ Начать управление файлами ]
[ list - список файлов]
[ up - подняться на уровень вверх ]
[ cd ... - перейти в папку ]
[ get ... - получить файл ]
[ put (1) (2) - загрузить прикрепленный файл (2) в папку под именем (1) ]
[ del ... - удалить файл или папку ]
[ read ... - вывести содержимое текстового файла ]
[ write ... ... - Записать текст (2) в файл (1)]
[ end - закончить сеанс управления файлами ]
---| botcmd filemanager
[ Короткая справка по командам аккаунтов ]
---| botcmd acc help
[ Удалить аккаунт из списка аккаунтов ]
---| botcmd accs rem
[ Добавить аккаунт в список аккаунтов ]
---| botcmd accs add <токен>
[ Включить или выключить аккаунт <имя аккаунта> ]
---| botcmd acc act <причина>
[ Вкл\выкл ответ инструкцией на сообщение без обращения для аккаунта <имя аккаунта> ]
---| botcmd acc sendinstruction
[ Включить или выключить принятие всех заявок в друзья для аккаунта <имя аккаунта> ]
---| botcmd acc acceptanyrequest
[ Включить или выключить трансляцию статуса для аккаунта <имя аккаунта> ]
---| botcmd acc status
[ Получить токен (секретный(!) код) для аккаунта <имя аккаунта> ]
---| botcmd acc gettoken
[ Задать токен (секретный(!) код) для аккаунта <имя аккаунта> ]
---| botcmd acc settoken <новый токен>
[ Включить или выключить обработку личных сообщений для аккаунта <имя аккаунта> ]
---| botcmd acc messageprocessing
[ Изменить инструкцию для аккаунта <имя аккаунта> ]
---| botcmd acc setinstruction <текст инструкции>
[ Изменить текст статуса для аккаунта <имя аккаунта> ]
[ фрагмент TIME заменяется на время обновления статуса ]
[ фрагмент NAME заменяется на название и версию бота ]
[ фрагмент WORKING заменяется на время работы с момента перезагрузки ]
[ фрагмент PROCESSED заменяется на количество обработанных сообщений ]
[ фрагмент RECEIVED заменяется на общее количество принятых сообщений ]
[ фрагмент API заменяется на количество обращений программы к API ]
---| botcmd acc setstatustext <текст статуса>
[ Получить счетчики чатов для аккаунта <имя аккаунта> ]
---| botcmd acc getchatcounter
[ Включить или выключить автоматический выход из оффтопных чатов для аккаунта <имя аккаунта> ]
---| botcmd acc exitfromofftopchats
[ Включить или выключить автоматический выход из оффтопных чатов для аккаунта <имя аккаунта> ]
---| botcmd acc exitfromofftopchats
[ Задать интервал чтения личных сообщений для аккаунта <имя аккаунта> ]
---| botcmd acc messagescaninterval <число, интервал сканирования в секундах>
[ Включить или выключить обработку бесед для аккаунта <имя аккаунта> ]
---| botcmd acc processchats
[ Получить список бесед для аккаунта <имя аккаунта> ]
---| botcmd acc getchatlist <количество> <сдвиг>
[ Вернуться в беседу ... для аккаунта <имя аккаунта> ]
---| botcmd acc backtochat
[ Выйти из беседы ... для аккаунта <имя аккаунта> ]
---| botcmd acc leavefromchat
[ Получить текст статуса для аккаунта <имя аккаунта> ]
---| botcmd acc getstatustext
[ Пригласить в беседу ... пользователя ... для аккаунта <имя аккаунта> ]
---| botcmd acc invitetochat
[ Добавить стену в список обрабатываемых ]
---| botcmd wall add <ссылка формата https://vk.com/drfailov>
[ Добавить лайк на комментарий или пост ]
---| botcmd like <ссылка формата https://vk.com/wall10299185_13439?reply=19248>
[ Удалить стену из списка обрабатываемых ]
---| botcmd wall rem <ссылка формата https://vk.com/drfailov>
[ Получить список обрабатываемых стен ]
---| botcmd wall get
[ Очистить список обрабатываемых стен ]
---| botcmd wall clr
[ Задать интервал сканирования стен ]
---| botcmd setscaninterval <новый интервал в секундах>
[ Задать количество сканируемых на стене записей ]
---| botcmd setscanmessages <новое число от 1 до 100)>
[ Включить\выключить режим ожидания ]
---| botcmd standby
[ Отправить сообщение на стену ]
---| botcmd sendpost <ссылка формата vk.com/drfailov> <текст сообщения>
[ Удалить запись или комментарий со стены ]
---| botcmd deletepost <ссылка формата https://vk.com/wall10299185_13439?reply=19248>
[ Получить состояние кэша имён ]
---| botcmd namescache
[ Очистить кэш имён ]
[ Может быть полезно, если проявляется нехватка оперативной памяти ]
---| botcmd namescache clear
[ Активировать/деактивировать стену <название> ]
---| botcmd wall setactive
[ Выполнить ROOT-команду в системе ]
[ Очевидно, требуется ROOT в системе ]
[ Может понадобиться Ваше подтверждение ]
---| botcmd shell <команда>
[ Получить весь лог ]
[ (Осторожно, может сработать система защиты!) ]
---| botcmd getlog
[ Показать на экране устройства сообщение ]
---| botcmd messagebox <текст сообщения>
[ Завершить работу программы ]
---| botcmd turnoff
[ Перезапустить программу ]
[ Не использовать, если программа свёрнута!!! ]
---| botcmd restart
[ Вызвать ошибку в программе]
[ Используется разработчиком для отладки ]
---| botcmd error
[ Вызвать переполнение памяти в программе ]
[ Используется разработчиком для отладки ]
---| botcmd outofmemory
[ Задать яркость экрана ]
[ Не использовать, если программа свёрнута!!! ]
---| botcmd setscreenbrightness <число от 0 до 100>
[ Воспроизвести песню ]
---| botcmd playmusic <ссылка на песню>
[ Остановить песню (если играет) ]
---| botcmd stopmusic
[ Добавить страницу в список доверенных ]
---| botcmd allow add <ссылка формата https://vk.com/ihabotclub> <комментарий>
[ Удалить страницу из списка доверенных ]
---| botcmd allow rem <ссылка формата https://vk.com/ihabotclub>
[ Получить комментарий на страницу из списка доверенных ]
---| botcmd allow comm <ссылка формата https://vk.com/ihabotclub>
[ Очистить список доверенных ]
---| botcmd allow clr
[ Получить содержание списка доверенных ]
---| botcmd allow get
[ Добавить страницу в список игнорируемых ]
---| botcmd ignor add <ссылка формата https://vk.com/ihabotclub> <комментарий>
[ Удалить страницу из списка игнорируемых ]
---| botcmd ignor rem <ссылка формата https://vk.com/ihabotclub>
[ Получить комментарий на страницу из списка игнорируемых ]
---| botcmd ignor comm <ссылка формата https://vk.com/ihabotclub>
[ Очистить список игнорируемых ]
---| botcmd ignor clr
[ Получить содержание списка игнорируемых ]
---| botcmd ignor get
[ Добавить страницу в список учителей ]
---| botcmd teacher add <ссылка формата https://vk.com/ihabotclub> <комментарий>
[ Удалить страницу из списка учителей ]
---| botcmd teacher rem <ссылка формата https://vk.com/ihabotclub>
[ Получить комментарий на страницу из списка учителей ]
---| botcmd teacher comm <ссылка формата https://vk.com/ihabotclub>
[ Очистить список учителей ]
---| botcmd teacher clr
[ Получить содержание списка учителей ]
---| botcmd teacher get
[ Сбросить значение счетчика предупреждений для пользователя ]
---| botcmd warning reset
[ Получить значения счетчика предупреждений ]
---| botcmd warning get
[ Задать значение счетчика предупреждений для пользователя ]
---| botcmd warning set <новое значение счетчика>
[ Оставить пользователю автоответчик ]
---| botcmd setanswerphone <текст сообщения>
[ Удалить автоответчик ]
---| botcmd remanswerphone
[ Получить все сообщения автоответчика ]
---| botcmd getanswerphone
[ Получить статистику работы учителей ]
---| botcmd teacherstats
[ Отправить анонимное сообщение ]
---| botcmd anonymous <текст сообщения>
[ Изменить текст объявления P.S. ]
[ Текст P.S. - это текст, объявление, которое каждый собеседник получит один раз за сеанс ]
---| botcmd setpsmessage <текст>
[ Получить список получивших объявление P.S. ]
---| botcmd getpsreceivers
[ Получить список pos ответов ]
---| botcmd pos getansw
[ Получить список pos шаблонов ]
---| botcmd pos getpatt
[ Удалить pos шаблон ]
---| botcmd pos rempatt <текст шаблона>
[ Удалить pos ответ ]
---| botcmd pos remansw <текст ответа>
[ Добавить pos ответ ]
---| botcmd pos addansw <текст ответа>
[ Добавить pos шаблон ]
---| botcmd pos addpatt <текст шаблона>
[ Получить список neg ответов ]
---| botcmd neg getansw
[ Получить список neg шаблонов ]
---| botcmd neg getpatt
[ Удалить neg шаблон ]
---| botcmd neg rempatt <текст шаблона>
[ Удалить neg ответ ]
---| botcmd neg remansw <текст ответа>
[ Добавить neg ответ ]
---| botcmd neg addansw <текст ответа>
[ Добавить neg шаблон ]
---| botcmd neg addpatt <текст шаблона>
[ Получить список шаблонов шаблонизатора ]
[ так же сработает gpt ]
---| botcmd getpatternizator
[ Добавить шаблон шаблонизатора ]
[ так же сработает apt ]
---| botcmd addpatternizator <текст ответа>*<регулярное выражение>
[ Удалить шаблон шаблонизатора ]
[ так же сработает rpt ]
---| botcmd rempatternizator <порядковый номер элемента>
[ Проверить регулярное выражение на соответствие тексту ]
[ так же сработает tpt ]
---| botcmd testpatternizator <текст для теста>*<регулярное выражение>
[ Что такое "Шаблонизатор"? ]
---| botcmd whatispatternizator
[ Добавить ответ на сообщение в базу ]
[ Фрагмент %USERNAME% будет заменяться на имя собеседника]
[ Фрагмент %USERSURNAME% будет заменяться на фамилию собеседника]
[ Фрагмент %USERBIRTHDATE% будет заменяться на дату рождения]
[ Фрагмент %USERBOOKS% будет заменяться на список любимых книг собеседника]
[ Фрагмент %USERINTERESTS% будет заменяться на список интересов собеседника]
[ Фрагмент %USERPHOTO% будет заменяться на фотографию с аватарки собеседника!]
[ Фрагмент " -n " будет заменяться на переход к новой строке]
[ Также сработает asp ]
---| botcmd addspkpatt <сообщение>*<ответ>
[ Удалить ответ на сообщение из базы ]
[ Также сработает rsp ]
---| botcmd remspkpatt <текст ответа или ID>
[ Выгрузить дамп базы данных ]
---| botcmd dumpdatabase
[ Импортировать записи базы данных ]
---| botcmd importdatabase <ссылка на документ в формате https://vk.com/doc10299185_358837359>
[ Выгрузить дамп базы неизвестных слов ]
---| botcmd dumpunknownmessages
[ Удалить из базы все ответы, содержащие ключевое слово ]
---| botcmd remspkkeyw <ключевое слово или фраза>
[ Удалить дубликаты ответов из базы ]
---| botcmd clearduplicates
[ Удалить дубликаты ответов из базы с использованием глубокого анализа ]
[ Эта команда очень долго выполняется! ]
---| botcmd clearduplicatesdeep
[ Очистить список неизвестных слов ]
---| botcmd clearunknown
[ Отобразить несколько последних добавленных в базу ответов ]
---| botcmd showlastansw <количество от 1 до 300> <сдвиг от конца базы>
[ Найти ответы в базе по тексту ответа или вопроса ]
---| botcmd findansw <текст для поиска>
[ Получить сводку по базе ответов бота ]
---| botcmd database
[ Очистить временный кэш базы данных ]
[ Полезно в экстренных ситуациях для освобождения памяти ]
---| botcmd cleardatabasecache
[ Заменить в базе все упоминания про фраза 1 на фраза 2 ]
---| botcmd replspkkeyw <фраза 1>*<фраза 2>
[ Показать ответ из базы по индексу ]
[ Также сработает ssp ]
[ Можно писать либо интервал (000-999), либо порядковый номер одного элемента (999) ]
---| botcmd showspkpatt <порядковый номер начала>-<порядковый номер конца>
[ Очистить базу от медиа, которые не доступны ]
---| botcmd filtermedia
[ Вывести все возможные варианты ответа на фразу ]
[ Также сработает gsp ]
---| botcmd getspkpatt <фраза, на которую подобрать ответ>
[ Изменить обращение к боту ]
[ Обращение "EMPTY" отключит обращение ]
---| botcmd setbottreatment <новое обращение>
[ Сделать всех учителями ]
---| botcmd setallteachers
[ Сравнить 2 сообщения ]
---| botcmd compare <сообщение 1>*<сообщение 2>
[ Преобразовать сообщение для сравнения в программе ]
---| botcmd prepare <сообщение>
[ Добавить новый синоним в базу ]
---| botcmd addsyn <базовый синоним>*<новый синоним>
[ Выполнить бекап папки с настройками ]
[ Бекапы хранятся в папке backup внутренней памяти ]
---| botcmd makebackup
[ Запустить НТТР сервер ]
---| botcmd http start
[ Остановить НТТР сервер ]
---| botcmd http stop
[ Задать порт НТТР сервера ]
---| botcmd http setport <новый порт>
[ Задать интервал автоперезагрузки ]
[ Для работы автоперезагрузки требуется ROOT! ]
---| botcmd autoreboot setinterval <новый интервал в миллисекундах>
[ Получить интервал автоперезагрузки ]
[ Для работы автоперезагрузки требуется ROOT! ]
---| botcmd autoreboot getinterval
[ Включить или выключить автоперезагрузку ]
[ Для работы автоперезагрузки требуется ROOT! ]
---| botcmd autoreboot active
[ Перезагрузить устройство сейчас ]
[ Для работы автоперезагрузки требуется ROOT! ]
---| botcmd autoreboot reboot