Форма обратной связи отправляющая сообщения в телеграм

Главные вкладки

Аватар пользователя kisa_wp kisa_wp 5 декабря 2023 в 21:51

Здравствуйте, не нашел на drupal.org ни одного модуля для Drupal 10, который бы отправлял сообщения с формы обратной связи в телеграм канал. Может кто знает готовый мод. Спасибо

Комментарии

Аватар пользователя gun_dose gun_dose 5 декабря 2023 в 23:21
1

В модуле webform есть хэндлер post-request. Надо его сконфигурировать, чтобы отправлял данные на URL телеграмовского бота. Мануалов под друпал вы скорее всего не найдёте, поэтому смотрите API телеграма и конфигурируйте в друпал запрос с нужными заголовками. Там даже ничего кодить не придётся.

Аватар пользователя kisa_wp kisa_wp 17 декабря 2023 в 5:09

Здравствуйте, подскажите, где мне найти post-request? Вроде все облазил, но так и не нашел, где он настрвивается

Аватар пользователя pselfin pselfin 18 декабря 2023 в 10:58

Добавляем хендлер

Делаем настройки

Здесь описано как сделать бота, получить токен, содлать группу и получить ее ID.

В общем, формируем ссылку для хендлера, что то вроде этого получится:

https://api.telegram.org/bot6956131030:AAF5lIGqe0X8UUfRflEYGl6NXabxxxxx/sendMessage?chat_id=-40xxxx257&text=???

Где
bot6956131030:AAF5lIGqe0X8UUfRflEYGl6NXabxxxxx - токен
-40xxxx257 - ид чата

А вот с текстовой частью у меня не получилось что-то... То ли как то токены нужно вызывать хитро... Буду благодарен помощи.

так не работает &text=[webform_submission:values], передается токен как текст, а не значение...

Ну и дебаг в расширенных в хендлере включить, чтобы отследить где ошибка

Аватар пользователя pselfin pselfin 19 декабря 2023 в 12:36
1

Короче, в Drupal 10 заработало!
Токен [webform_submission:values]
Надо чистить КЕШ!!!, как водится половина проблем из-за него)

Аватар пользователя kisa_wp kisa_wp 18 декабря 2023 в 4:04

Хотя просмотрев кучу видео, я понял, что у меня по другому отображается данный раздел. Подскажите, может, я не включил какой-то важный модуль? Спасибо

Аватар пользователя gun_dose gun_dose 18 декабря 2023 в 10:33

Структура - Вебформы. Перейти на список вебформ. Кликнуть справа возле интересующей формы кнопку настройки, там на той странице найти таб Emails/Handlers и нажать кнопку добавить.
Ссылка должна быть вида: /admin/structure/webform/manage/машинное имя вебформы/handlers

Аватар пользователя pselfin pselfin 18 декабря 2023 в 11:11

Не подскажешь как правильно в урле передать значения заполненных полей, ибо токен не работает почему-то....
Спасибо!

Аватар пользователя gun_dose gun_dose 18 декабря 2023 в 12:52

Точно не помню, потому что эту задачу делал мой коллега на позапрошлой работе, а я только помогал. Насколько помню, сначала мучались с кастомным токеном, который корректно всё собирает, но потом вроде бы как-то смогли всё впихнуть в тело запроса стандартными токенами, а не в URL.

я в этом уверен где-то на 70%)))

Аватар пользователя pselfin pselfin 6 декабря 2023 в 0:06

Сам не пробовал, но интересно:
https://dartharth.top/articles/drupal-8-form-notifications-telegram-bot
https://drupalfly.ru/station/drupal-8-otpravka-rezultatov-zapolnenia-for...

Ещё костыльный вариант: можно @GmailBot использовать - забирать письма из ящика, куда класть их вебформой))