Создадим простого бота для мессенджера Telegram с использованием PHP. Данная статья создана исключительно в поучительных целях и не претендует на полноту или правильность подхода. Весь код бота очень простой и может быть освоен начинающими PHP-разработчиками.
Предупреждаю сразу профессионалов и перфекционистов от программирования — вам здесь делать нечего . Никаких фреймворков и гитхабов! Все будет очень просто и примитивно, но работать будет. И это главное. Всем счастья
Шаг 1: подготовка
Что нам понадобится:
- Веб-сервер с работающим PHP 5.6 и выше — не локальный веб-сервер, а веб-сервер на хостинге, что важно! Так как сервисы Telegram должны будут видеть вашего бота по внешней URL-ссылке;
- Веб-сервер должен работать через https — то есть на веб-сервере должен быть установлен давно (больше суток назад) зарегистрированный SSL-сертификат. Достаточно будет бесплатного Let’s Encrypt SSL-сертификата;
- Доступ к файлам на этом сервере, конечно же — иначе как мы что-то сделаем;
- Установленная кодовая страница UTF-8 на сервере по-умолчанию или добавьте в файл .htacces в корне сайта строку AddDefaultCharset utf-8;
- Аккаунт в мессенджере Telegram;
Шаг 2. Регистрация вашего бота в Телеграм
Да, да. Бот еще даже не создан, но перед этим его уже нужно зарегистрировать, чтобы получить уникальный идентификатор, чтобы в дальнейшем обращаться к BOT API Telegram.
Шаг 3. Создаем код бота
Будем делать прямо в корне сервера (не самый верный подход, можно создать папку bot, а в ней уже файл verysimple_bot.php). Для этого на сервере создадим файл verysimple_bot.php в котором и будет весь код бота. Не забываем, что весь код в файле verysimple_bot.php должен быть в кодировке UTF-8.
Для редактирования файлов кода и заброске их на сервер удобно использовать FAR Manager — в нем есть и подсветка синтаксиса и FTP/SFTP клиент для копирования файла на сервер.
Делаем заготовку бота, который сможет выдавать список команд и информацию о нас:
Шаг 4. Делаем WebHook и конкретизируем код бота
-
Чтобы все заработало, нужно сособщить сервису Телеграм, что наш бот лежит там-то — используй его код для такого-то бота verysimple_bot.
Для этого нужно сформировать ссылку, которая называется WebHook и её мы и сообщим телеграму:
https://api.telegram.org/bot 1234567899:AAKJhkkjhkjhKhKhjkhkhk_kJhgkjhJhgjghjhG /setWebhook?url= https://www.mysite.ru/verysimple_bot.php
Не забываем где красное заменяем на свои данные!
Как сформируете эту ссылку — вставьте её в браузер и запустите!
- Пользователь в диалоге с ботом пишет запрос, например /help
- Telegram Bot API через WebHook, что мы установили, берет этот запрос и отправляет в код бота
- Мы в боте получаем его, анализируем, видим например, /help и через Telegram Bot API и
функцию message_to_telegram отправляем ответ — который появлется в диалоге как ответ бота.
Шаг 5. Добавим возможность делать заявки через бота
Заявкой будем считать сообщение или вопрос, которое можно будет отправить через нашего бота какому-то пользователю, назовем его менеджер компании. То есть нам нужно организовать такую цепочку:
- Пользователь запрашивает у бота «Оставить заявку», например набрав команду /order
- Бот входит в режим ожидания текста Заявки
- Если пользователь ввел текст и нажал Enter, только тогда отослать это сообщение заранее запрограммированному по менеджеру компании.
Получим идентификатор chat_id пользователя кому нужно отсылать заявки:
- Помните наш файл message.txt — вот он сейчас понадобится
- Присоединяемся к нашему боту тем пользователем, кому будем слать заявки (менеджер компании)
- Сразу открываем файл message.txt и смотрим блок: [chat]
$order_chat_id = ‘123456789’; //chat_id менеджера компании для заявок $bot_state = »; // состояние бота, по-умолчанию пустое
Сохраняем состояние бота для каждого пользователя
Далее, важный момент: у нас любой присоединившийся пользователь сможет сделать заявку, и чтобы бот понимал, что находится в режиме ввода заявки именно с этим пользователем, мы должны сохранять и считывать состояния бота для каждого пользователя отдельно!
Напишем две функции: set_bot_state($chat_id, $data) и get_bot_state($chat_id) — которые сохраняют текущее состояние бота и получают соответсвенно, для нужного пользователя. Сохранять будем в подпапке /users на сервере, которую создадим предварительно не забыв дать права на запись. Состояния будут хранится все в тех же текстовых файлах с именами chat_id пользователей и содержать последнюю команду:
// сохранить состояние бота для пользователя function set_bot_state ($chat_id, $data) < file_put_contents(__DIR__ . ‘/users/’.$chat_id.’.txt’, $data); >// получить текущее состояние бота для пользователя function get_bot_state ($chat_id) < if (file_exists(__DIR__ . ‘/users/’.$chat_id.’.txt’)) < $data = file_get_contents(__DIR__ . ‘/users/’.$chat_id.’.txt’); return $data; >else < return »; >>
Теперь дополним код бота, добавив запись и отлов состояния и отправив заявку менеджеру компании, если состояние отправки заявки.
Шаг 6. Регистрация команд бота
Вот и все — простой бот работает! Всем спасибо, если дочитали и что-то заработало.
Николай Комарков
Источник: www.novelsite.ru
Как создать постбек-бота в Телеграме? Что такое Telegram Bot API?
Если хочешь преуспеть в арбитраже трафика, необходимо научиться анализировать статистику и вовремя реагировать на изменения в начатых кампаниях. Таким образом, можно предпринять действия, которые могут значительно увеличить прибыль. Но чтобы успеть быстро откликнуться, нужно, чтобы стата была всегда под рукой. Беда в том, что иногда не слишком удобно заходить на сайт партнерской сети только ради того, чтобы чекнуть цифры, в особенности с телефона. И тут на помощь приходит постбе- бот в Телеграме. Именно о том, как создать и настроить такого бота, мы и поговорим в этой статье.
ВЫБИРАЙ САМЫЙ НАДЕЖНЫЙ АНТИК И ПОЛУЧИ СКИДКУ 20%
Забрать скидку
Содержание скрыть
Что такое постбек и когда он нужен?
На случай, если ты новичок, разберемся в основах. Постбек в арбитраже трафика – это механизм, который передает информацию о конверсиях от партнерской сети или рекламодателя к вебмастеру. Таким образом, все данные о рекламной кампании доступны в одном месте, и используя их, арбитражник может делать соответствующие шаги для увеличения своей прибыли. К примеру, постбек в арбитраже поможет тебе понять, какие именно объявления, устройства, ГЕО или время суток самые конвертящие. Получается, без постбека никак? Именно! Особенно, если есть желание преуспеть в арбитраже трафика. Однако бывают редкие случаи, когда постбек не обязателен. Например, если речь о кампании в Facebook* Ads. Тогда за оптимизацию отвечает пиксель Фейсбука. Более подробно о том, как правильно прогревать аккаунты и лить трафик с Фейсбука, читай в статье у нас на сайте.
Что такое Telegram Bot API и для чего он нужен?
Для начала выясним, как расшифровывается API. С английского это значит Application Programming Interface, что в переводе на русский – интерфейс программирования приложений. На деле в нашем распоряжении некий набор инструментов, правил и функций, благодаря которым программы могут выполнять требуемые от нас задания и взаимодействовать друг с другом. Главная причина создания и существования API – автоматизация работы. То есть для того, чтобы программа выполнила задачу, не надо писать код, а нужно всего лишь задать необходимую команду нажатием одной кнопки. Исходя из вышенаписанного, Telegram API Bot – это вид интерфейса, который служит для автоматического программирования своего Телеграм-бота. Без Telegram API Bot всем бы приходилось писать с нуля собственный искусственный интеллект, чтобы создать своего бота. Но благодаря этой фиче уже готов шаблон поведения бота, к примеру, ответы на заранее прописанные вопросы. Все, что нужно, – это вписать туда свой текст. Читай также: Арбитраж трафика: ТОП-10 популярных вертикалей в 2023 году
Как создать постбек бота в Телеграме?
Создание бота
Войдя в диалог с “отцом” всех ботов, кликай на кнопку “Старт”.
2. Выбери из списка команду «/newbot» и дай имя и юзернейм своему боту. В конце юзернейма обязательно должно быть «bot». Например, NoNameBOT или noname_bot.
3. Дальше BotFather должен прислать тебе сообщение с подтверждением того, что бот был создан. Также в этом сообщении будет уникальный токен твоего бота – по сути, ключ, необходимый для отправки запросов. Токен лучше куда-то еще сохранить себе, чтобы не потерять.
4. Теперь найди своего бота в общем поиске Телеграма и отправь ему сообщение с любым текстом.
5. Дальше необходимо вставить в браузер ссылку api.telegram.org/bot/getUpdates, где часть нужно заменить на уникальный токен твоего бота. Как писали выше, он находится в последнем сообщении от BotFather. Вот пример того, как должна выглядеть ссылка.
6. Перейдя по ссылке выше, у тебя на экране должно появиться следующее сообщение:
Если оно не появилось, то напиши боту еще раз что-нибудь рандомное и обнови страницу.
В сообщении, которое ты видишь на экране, нужно найти свой ID. Он находится здесь: your_id,»is_bot»:false,
7. Теперь проверяем корректность работы твоего бота. Для этого перейди по ссылке https://api.telegram.org/bot/sendMessage?chat_id=
Запрещаем отправлять ссылки / рекламу в группу телеграм Настройка чата
Если все в порядке, то бот отправит сообщение, указанное тобой в макросе «text». В нашем примере мы попросили отправить слово “test”.
Как правильно настроить постбек?
- Зайди в настройки постбека в личном кабинете партнерской сети. В MyLead они находятся во вкладке “Для вебмастера”. Оказавшись в настройках, найди там «Высланные параметры GET».
2. Из списка выбери параметры, о которых хочешь получать оповещения в Телеграме, и добавь их в свою постбек-ссылку. Ниже можешь увидеть пример того, как это должно выглядеть.
3. В ссылке https://api.telegram.org/bot/sendMessage?chat_id=
4. После того, как мы настроили постбек-ссылку, необходимо добавить ее в личный кабинет партнерской сети и нажать «Проверить».
5. После завершения теста зайди в своего Telegram-бота и проверь результаты.
6. Как видно на скриншоте, проверка увенчалась успехом. Выбранные нами параметры были переданы боту.
Изменение внешнего вида информации, поступающей твоему боту
Итак, теперь ты будешь видеть статистику, но согласись, что читать ее не слишком удобно, когда все одной строкой и без пробелов. Поэтому после того, как мы сделали все, чтобы наш бот работал, позаботимся о его “дизайне”.
Изменить внешний вид информации, поступающей твоему боту, можно, пользуясь таблицей Unicode/UTF-8. Также больше эмодзи с юникодом есть на Github. А для непосредственно конфигурации внешнего вида подойдет Cryptii.
В результате, если немного поколдовать, инфа в твоем боте может выглядеть следующим образом:
Хочешь, чтобы сообщения о конверсиях приходили в твой бот в таком же формате, как показано на скриншоте выше? Тогда воспользуйся специально подготовленным нашими афф-менеджерами шаблоном, который ты найдешь здесь. Все, что тебе нужно, так это просто вставить шаблон в свою постбек-ссылку.
Заключение
Следуя четко инструкции из статьи, ты получишь доступ к статистике всего в один клик. Используй полученные данные, чтобы мгновенно реагировать на переменные кампании и зарабатывать больше. А больше обучающих материалов ищи в нашем блоге на сайте. Прокачивай свои знания, выбирай понравившийся тебе оффер из более чем 4500 вариантов во всевозможных вертикалях, и начинай лить трафик вместе с MyLead.
Источник: protraffic.com
Тг бот заходит на ссылках
Зарегистрировать новый бот можно через… бот! Заходите в BotFather, кликаете на команду /newbot. Теперь вам нужно придумать и ввести имя и адрес вашего нового бота. Имя будет отображаться в контактах, поэтому с ним можно поэкспериментировать и придумать что-то интересное.
Кстати, через BotFather вы можете создавать неограниченное количество ботов. Здесь же вы в любое время сможете изменить настройки имени и адреса бота
Учтите, что имя и адрес должны быть уникальными, иначе BotFather их не зарегистрирует. Если вы все сделаете правильно, BotFather пришлет вам “ключ” доступа к созданному боту – токен. Он вам пригодится при дальнейшей настройке. Ни с кем им не делитесь токеном: этот ключ дает доступ к боту и всей информации, которая в нем содержится.
После успешной регистрации вы получаете вот такое сообщение от BotFather. Токен выглядит как набор чисел и букв.
Здесь же вы можете загрузить аватарку вашего бота (команда /setuserpic), задать текст, который пользователи видят при запуске бота (команда /setdescription), изменить имя (команда /setname).
Ваш бот готов. Правда, он еще ничего не умеет. Давайте это исправим
Источник: svoemedia.space