Как уже многие заметили в чате появился бот. Он реагирует на обращения к нему и выдает заложенные ответы. Вот так выглядят правила первого уровня (т.е. которые предполагают сразу ответ) bot|спой;пой;песню|*, петь не умею;сейчас спою Алгоритм такой: сначала ищется обращение к боту, потом любое из трех слов спой;пой;песню, если вхождение найдено, бот выдает случайный ответ "петь не умею" или "сейчас спою". Правила могут быть более сложные, например. bot|как|дела;поживаешь;жизнь;сам|*, потихоньку, а у тебя;*, пока ничего Здесь сначала ищется слово "как", потом любое из четырех слов: дела, поживаешь, жизнь, сам. Так, на обращение "бот, есть ли жизнь на марсе?" правило не сработает, а на "бот, как жизнь" или "бот, как сам" или "бот, как поживаешь" - сработает. Добавлять правила боту можно следующей командой. бот, запомни команду:bot|расскажи|рассказ;историю|*,не знаю истории Таким образом можно обучать бота. Подробнее см. справочник по правилам и командам чат-бота. Вместо ответов для бота можно указывать функции и тогда бот может выполнять команды, например, сосчитать пример или перевести сатоши другому пользователю. Команды для бота выглядят так: Код: bot|посчитай;сосчитай;сколько будет|calc bot|переведи;пошли;отправь|пользователю;юзеру;для|transfer bot|фильм;сериал|getFilm Тут алгоритм действий такой: при нахождении ключевых слов в обращении, сообщение обрабатывается функцией. Функции для бота тоже смогут писать любые пользователи, знакомые с программированием: после проверки я их добавлю. См. справку написание функций для бота. Вот пример функции бота для вычислений. Практической пользы от нее особой нет, это для демонстрации. Код: /// function bot_calc($msg) { $msg=trim($msg['message']); if (substr($msg,-1)=='.') $msg=substr($msg,0,-1); $calc=preg_replace('~[^0-9+\-\*\/\(\)\.]~', '', $msg); // оставляем только пример try { eval("\$return=".$calc.";"); // если пример корректен, считаем } catch(Exception $e) { return 'Ошибка'; } return $return; } Правило, которое вызывает функцию, выглядит так: bot|посчитай;сосчитай;сколько будет|calc Функция вызывается командой "бот, пожалуйста сосчитай пример 234+432*25". Слова "пожалуйста" и "пример" тут не нужны, можно и так "бот сосчитай 234+432*25", я лишь хочу показать, что формат обращений может быть разным, бот все равно реагирует только на ключевые слова в сообщении. Аргумент $msg содержит в себе все данные пользователя и само сообщение. В этом примере данные пользователя нам не нужны, они понадобятся, например, в команде для перевода сатош другому пользователю (см. справку). Применение бота может быть довольно широким: это обмен криптовалют, пополнение сотового, отправка смс, внутренние переводы, прием депозитов под процент и т.д. На данный момент бот умеет обходить цензуру, находить фильмы, узнавать курсы криптовалют, отправлять переводы между пользователями, обменивать криптовалюты (см. полный справочник команд). Как видим, применение бота достаточно широко. Через функции бот может взаимодействовать с API различных сайтов, подключаться к различным базам, например, чтобы проверить репутацию сайта (или хайпов) или даже данные автомобильного номера. В дальнейшем планируется интеграция бота с мессенджером Телеграм: вы указываете свой логин Телеграма в профиле на форуме и бот будет понимать, что это вы, а значит будут доступны все функции, которые доступны через чат (обмены криптовалют, кинотеатр, переводы и т.д.), только другие пользователи не будут видеть ваших команд. Возможна интеграция с любыми мессенджерами, где есть API, даже с аськой, если кто-то ей еще пользуется.
Все что угодно, я же пишу, что бот расширяемый. формат команд бот, запомни команду:bot|расскажи|рассказ;историю|*,не знаю истории я объяснил что означают разделители и точки с запятой. Если не поняли, то не мучайте бота иначе он заспамит весь чат.
Класс!. Ещё бы выделить бота другим цветом в чате и стало бы удобнее чатом пользоваться и общаться с обитателями и самим роботом.