Всем — привет. Давно зрела идея разобраться с отправкой данных из формы на сайте в мессенджер Telegram, но руки не доходили, а моментально получать заявки прямо в телефон, ой как хотелось!
И вот, наконец-то посидел и разобрался. Конечно постичь все тонкости API — не удалось, но по кусочкам насобирал информацию и удалось отправить данные из контактной формы в чат Telegram.
Это актуализированная статья, в которой решены такие проблемы, как отправка фото и пропадающий символ «+», который не приходил в сообщение и из-за этого номер телефона был некликабельным. Появилась возможность не просто отправлять 1 фото, а сразу несколько файлов, в том числе PDF, docx и любых других.
Важно: для отправки файла из формы в Телеграм на вашем сервере должен быть включен cURL. Обратитесь к техподдержке вашего хостинга, они подскажут что делать и как включить. У многих он включен по умолчанию. Например, на моем хостинге Beget — так.
Как отправить данные формы на сайте в Telegram
- Пишем команду /newbot, для создания нового бота.
- Придумываем имя бота.
- Придумываем ник бота.
Если все прошло успешно, то увидите поздравления и токен вашего бота, в моем случае это:
После этого можно пойти двумя путями:
- создать групповой чат, в который будут приходить заявки и пригласить туда нашего бота;
- вступить в переписку с ботом и получать личные сообщения от него.
Давайте займемся этим и, пока, пойдем по первому пути.
Зайдите в меню, нажмите «New Group» («Создать группу») и задайте имя вашему чату.
Не забываем пригласить своего бота в чат. Откройте меню чата, перейдите в «Add Members» («Добавить участников») и введите имя своего бота.
На данный момент у нас есть бот, мы знаем его токен, есть чат, в который будут приходить заявки, и нам осталось узнать только id чата. Для этого, напишем в чате:
А затем перейдите в браузер, если используете приложение и введите:
https://api.telegram.org/botXXXXXXXXXXXXXXXXXXXXXXX/getUpdates
где, XXXXXXXXXXXXXXXXXXXXXXX — токен вашего бота, полученный ранее.
Если все сделали правильно, то перед вами откроется подобная страница:
Разметка формы
Не стал выдумывать что-то сверхсложное, а просто 2 поля и возможность прикрепить файл. Оставил телефон, ведь у многих возникала проблема с символом «+», а файл добавил, так как меня просили разобраться с этой темой, при этом, теперь можно вставлять несколько штук.
Добавил стили — получилось примерно так (внешний вид в исходнике немного отличается):
Не забывайте, что форма отправляется без перезагрузки страницы, а значит используется ajax, и, для упрощения, jQuery. Поэтому подключаем сам jQuery, если не подключен, а после, и сам скрипт. Я сделал специальную папку telegramform, которую нужно поместить в корень сайта. Если нужно, сделаю исходник без использования jQuery.
Код с AJAX запросом. Файл — telegramform.js
(function ($) < $(«.contact-form»).submit(function (event) < event.preventDefault(); // Сообщения формы let successSendText = «Сообщение успешно отправлено»; let errorSendText = «Сообщение не отправлено. Попробуйте еще раз!»; let requiredFieldsText = «Заполните поля с именем и телефоном»; // Сохраняем в переменную класс с параграфом для вывода сообщений об отправке let message = $(this).find(«.contact-form__message»); let form = $(«#» + $(this).attr(«id»))[0]; let fd = new FormData(form); $.ajax(< url: «/telegramform/php/send-message-to-telegram.php», type: «POST», data: fd, processData: false, contentType: false, beforeSend: () =>< $(«.preloader»).addClass(«preloader_active»); >, success: function success(res) < $(«.preloader»).removeClass(«preloader_active»); // Посмотреть на статус ответа, если ошибка // console.log(res); let respond = $.parseJSON(res); if (respond === «SUCCESS») < message.text(successSendText).css(«color», «#21d4bb»); setTimeout(() =>< message.text(«»); >, 4000); > else if (respond === «NOTVALID») < message.text(requiredFieldsText).css(«color», «#d42121»); setTimeout(() =>< message.text(«»); >, 3000); > else < message.text(errorSendText).css(«color», «#d42121»); setTimeout(() =>< message.text(«»); >, 4000); > > >); >); >)(jQuery);
А теперь сам обработчик нашей формы. Файл — send-message-to-telegram.php:
Во многом он повторяет обработчик из других форм на блоге. Например, в статье «Создание формы обратной связи» используется аналогичный подход, и вы легко сможете осуществить отправку данных как на почту, так и в мессенджер одновременно. Но помните, что это все тестовый, учебный пример и в реальной жизни можно сделать намного больше проверок.
Тут стоит обратить внимание на константы TOKEN и CHATID. Не забывайте подставить туда свои данные. Чтобы принимать какой-то определённый тип файла, поместите его в «Массив допустимых значений типа файла.» Из популярных можно выделить:
При этом файлы будут приходить общим потоком, одним сообщением. Если тип файла не проходит проверку, то он просто не отправляется. Специально не прерываю отправку, так как для большинства важно получить хотя бы контакты для связи, чтобы не потерять лида. Больше типов файлов тут.
Вот так выглядит отправка сообщения:
Не стал делать каких-то серьезных валидаций, так как это просто пример и вам наверняка нужно будет не только отправка текста или картинки в Телеграм, но и на почту, а значит все равно подстраивать под свои нужды. Если будут вопросы и замечания — пишите в комментариях.
Вот так, средствами PHP можно отправлять в Telegram сообщения и файлы. Если вы используете CMS MODX, то на блоге igamov.ru есть отличная инструкция по интеграции формы с мессенджером.
Исходник для отправки данных формы в Телеграм
Источник: smartlanding.biz
Как создать временный чат в ТГ
Telegram — это один из популярных мессенджеров, который используется многими для обмена сообщениями, фотографиями, видео и другой информацией. Однако, для определенных задач, вам может потребоваться создание временного чата, группы, приветственного сообщения или закрепления сообщения. В этой статье мы расскажем, как это сделать.
- Как создать секретный чат в Телеграм
- Как создать группу в ТГ с собой
- Как создать приветственное сообщение в Телеграм
- Как сделать закрепление сообщения в Телеграм
- Полезные советы и выводы
Как создать секретный чат в Телеграм
Создание секретного чата позволит вам общаться с другим пользователем Telegram, осуществляя конфиденциальную связь. Чтобы создать секретный чат, выполните следующие шаги:
- Откройте диалог с нужным контактом в Telegram.
- Нажмите на иконку профиля контакта в верхней части экрана.
- Нажмите на три точки, расположенные рядом с иконкой вызова.
- В выпадающем списке выберите «Начать секретный чат».
- Подтвердите создание секретного чата.
Теперь вы и ваш контакт можете общаться в защищенном режиме. Обратите внимание на замочек, который появляется рядом с именем собеседника при создании секретного чата. Он указывает на то, что вы общаетесь в защищенном режиме.
Как создать группу в ТГ с собой
Создание группы в Телеграме позволит вам обмениваться информацией с группой людей, в том числе с самим собой. Вы можете использовать эту функцию для сохранения заметок, списков задач или просто для обмена информацией с другими людьми. Чтобы создать группу в Телеграме, выполните следующие действия:
- Откройте меню в левом верхнем углу экрана.
- Нажмите на первую кнопку с надписью «Создать новую группу».
- Введите название группы в появившемся окне.
- Telegram предложит добавить людей из списка контактов в группу.
- Нажмите кнопку «Создать» и группа будет создана.
Теперь у вас есть своя группа, в которую вы можете добавлять любые сообщения, которые могут понадобиться вам в будущем.
Как создать приветственное сообщение в Телеграм
Приветственное сообщение — это сообщение, которое будет автоматически отправлено всем новым участникам вашего канала или группы в телеграмме. Это удобно для того, чтобы приветствовать новых пользователей и дать им полезную информацию о вашем канале или группе. Чтобы создать приветственное сообщение в Телеграме, выполните следующие действия:
- Перейдите в раздел «Автоматизация» в настройках вашего канала или группы в Телеграме.
- Нажмите на кнопку «Новое приветствие».
- Введите название приветствия, чтобы оно было видно только вам.
- Выберите канал, для которого вы хотите создать автоматизацию.
- Выберите бота или
Уже есть боты на основе нашумевшего генератора текста ChatGPT. Есть боты на основе нейросетей генерирующих изображения, таких как Midjourney, Stable Diffusion, DALL-E.
Спрос на ботов Телеграм понятен: часто пользоваться ими намного удобнее и сподручнее, чем сайтами нейросетей и другими приложениями.
Скажем, мы уже писали, как сложно зарегистрироваться на сайте ChatGPT для генерации текста. Пользуясь ботами на основе этой модели, вам не нужно нигде регистрироваться. Все что нужно — это перейти в один из ботов ChatGPT в Телеграм и начать пользоваться.
Та же история, например, с Midjourney или Stable Diffusion. Пользуясь ботами Телеграм на основе данных нейросетей, вам не нужно устанавливать Discord, искать работающие сервисы под Stable Diffusion и прочее.
Боты Телеграм для генерации текста
Приведем список работающих Телеграм ботов для написания текста и ответов на ваши вопросы:
Все эти боты работают на модели ChatGPT. Пользоваться ими очень просто. В каждом из ботов обычно есть свои дополнительные команды, но основная — это конечно непосредственно генерация текста по вашему запросу.
Боты Телеграм для генерации изображения
Аналогично текстовым ботам в Телеграм пользуются популярностью генераторы изображений на основе известных нейросетей.
Боты DALL-E 2
Это боты на модели DALL-E 2.
Боты Stable Diffusion
Для модели Stable Diffusion есть свои боты в Telegram:
Боты Midjourney
Куда же без Midjourney. Естественно и для этой нейросети есть свои боты в Телеграм. Правда периодически умирают. Из работающих на данный момент отметим достаточно стабильный Midjourney_rbot.
Боты Телеграм для генерации аниме
Если вы любите аниме, данный список ботов будет актуальным для вас:
Боты Телеграм для улучшения фото
Ниже приведем список ботов, с помощью которых можно улучшить фото:
С помощью этих ботов можно сделать фото более четким, увеличить разрешение картинки, сделать коррекцию цветов и яркости.
Бот Телеграм для генерации стихов
Есть также интересный бот, который поможет вам написать стихотворение. Называется он Ай да Пушкин!
Чтобы сочинить стихотворение вместе с нейросетью, необходимо написать любую фразу и в ответ получите четверостишье.
А какими ботами в Телеграм пользуетесь вы?
Источник: neuroseti.ru