Уведомления с MODx в Telegram
Всем привет. Это не совсем готовое дополнение, скорее инструкция. Может быть кто нибудь разовьёт и соберёт пакет.
У меня небольшой контентный проект и надо было быть оперативно в курсе, что там журналисты публикуют.
Такое извещение можно повесить на заказ обратного звонка, заказ товара или какие нибудь другие события о которых я не подумал :)
В общем так, сначала заводим себе бота:
Дальше добавляем своего бота в контакт лист.
И заходим по ссылке
Там подсматриваем свой id
И всё, можем слать себе уведомления подставляя текст в ссылку
MODx
Добавляем новый плагин — telegram
Код плагина
И вешаем его на системные события, в моём случае так:
Надеюсь я всё понятно написал и информация пригодится сообществу из которого так много узнаю!
У меня небольшой контентный проект и надо было быть оперативно в курсе, что там журналисты публикуют.
Такое извещение можно повесить на заказ обратного звонка, заказ товара или какие нибудь другие события о которых я не подумал :)
В общем так, сначала заводим себе бота:
- Ищем пользователя @botfather и добавляем его.
- После нажатия /start должны прийти все доступные команды.
- Создаем нового бота (/newbot)
- botFather попросит нас ввести название бота. (leads).
- Вводим имя бота
- Потом его username (leads_bot). Username должен заканчиваться на Bot или _bot. Это то имя, по которому можно будет этого бота найти (@leads_bot).
Дальше добавляем своего бота в контакт лист.
И заходим по ссылке
https://api.telegram.org/bot<bot_token>/getUpdates
где <bot_token>тот самый токен который мы получили.Там подсматриваем свой id
И всё, можем слать себе уведомления подставляя текст в ссылку
https://api.telegram.org/bot<bot_token>/sendMessage?chat_id=<id>&text=<text>
MODx
Добавляем новый плагин — telegram
Код плагина
<?php
$title= $resource->get('pagetitle');
$alias= $resource->get('uri');
if ($resource->get('published') == "1") {
$fp=fopen("https://api.telegram.org/bot<bot_token>/sendMessage?chat_id=<id>&text={$title} http://site.info/{$alias}","r");
while(!feof($fp))
{ $content .= fread($fp,1024); }
fclose($fp); };
И вешаем его на системные события, в моём случае так:
Надеюсь я всё понятно написал и информация пригодится сообществу из которого так много узнаю!
Комментарии: 12
Можете взять за основу мой Slackify и на базе него сделать подобный пакет. Идея примерно такая же, только на Slack
Собрать пакет я ещё не осилю ) Если кто нибудь соберёт по этому решению и запилит в дистрибутив, я только благодарен буду!
спасибо! Возьму к себе на вооружение решений )
Спасибо за наводку
А можно ли сделать подобное для Viber? Какая цена реализации?
Есть проблема. Если сайт не может достучаться до телеграма, весь движок повисает…
Ещё не помешала бы возможность указывать прокси
Ещё не помешала бы возможность указывать прокси
Всё вроде работает, если себе сообщения отправлять, но как только ставишь иди канала, то публикация сразу виснит…
Боты вроде бы не могут писать в каналы самостоятельно, их нужно туда сначала добавить. Но и будет ли так работать, сейчас не скажу.
Ну с этим всё гуд, я его добавил через КонтроллерБот, в админку канала, в общем дал ему всю власть. Но что то не хотит.
Решил вопрос, оставив место ID — @username канала.
Теперь родилось два вопроса:
Теперь родилось два вопроса:
- Как отделить две области переносом {$title}{$content}?
- Как вывести изображение поста(TV)?
"«Дальше добавляем своего бота в контакт лист.
Я не нашел как сделать данный пункт. Нигде такого нет.
Надо просто написать боту, и тогда следующий шаг работает)
Я не нашел как сделать данный пункт. Нигде такого нет.
Надо просто написать боту, и тогда следующий шаг работает)
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.