[Модуль] Telegram (telegram)

Разработка дополнительных модулей, подключение различных приложений.

Модератор: immortal

RomanAndr
Сообщения: 15
Зарегистрирован: Пт янв 01, 2021 3:40 pm
Откуда: Беларусь

Re: [Модуль] Telegram (telegram)

Сообщение RomanAndr »

Всем привет, хочу поделится моим вариантом меню.
Меню включает в себя:
  • Получение погоды (модуль openwethermap)
  • Получение графика температуры (любое свойство с историей (модуль Charts))
  • Курс валют (получение / обновление курсов валют (модуль ExchangeRates))
  • Управление online radio (включение / выключение радиостанций, управление громкостью проигрывания (модуль Online Radio))
  • Возможность просмотра и обновление информации о луне. (MoonPhase)
  • Получение случаенных цитат (Quotes)
  • Получение новостей с RSS каналов(RSS Channels)
  • Возможность просматривать статус хостов. (модуль Устройства Online)
  • Управление освещением (Простое Устройство Реле/Управляемый Выключатель) (Включение / Выключение, просмотр статуса; Управление разделено по комнатам (объект Room); Все объекты берутся из вашей БД).
  • Возможность запустить любой сценарий (список берётся из ваших сценариев).
  • Получение изображений с ip камер
  • Возможность испытать удачу (мини игра, подбрасывает кубик)
  • Интерактивная клавиатура
Как выглядит меню:
Фотографии менюSPOILER_SHOW
МенюSPOILER_SHOW
Изображение
ПогодаSPOILER_SHOW
Список погодыSPOILER_SHOW
Изображение
На сегодняSPOILER_SHOW
Изображение
На завтраSPOILER_SHOW
Изображение
На послезавтраSPOILER_SHOW
Изображение
УправлениеSPOILER_SHOW
Изображение
ДругоеSPOILER_SHOW
Список функцийSPOILER_SHOW
Изображение
Активность в туалетеSPOILER_SHOW
Изображение
График температурыSPOILER_SHOW
Изображение
Курс валютSPOILER_SHOW
Изображение
РадиоSPOILER_SHOW
Управление радиостанциямиSPOILER_SHOW
Изображение
Управление звукомSPOILER_SHOW
Изображение
Статус устройствSPOILER_SHOW
Изображение
КамерыSPOILER_SHOW
Изображение
Фаза луныSPOILER_SHOW
Изображение
СценарииSPOILER_SHOW
Выбор сценарияSPOILER_SHOW
ИгрыSPOILER_SHOW
1SPOILER_SHOW
Изображение
Изображение
Изображение
2SPOILER_SHOW
Изображение
Изображение
Изображение
3SPOILER_SHOW
Изображение
Изображение
Изображение
4SPOILER_SHOW
Изображение
Изображение
Изображение
ЦитатыSPOILER_SHOW
Изображение
Изображение
ПользовательскиеSPOILER_SHOW
Изображение
НовостиSPOILER_SHOW
Изображение
Изображение
Изображение
Как сделать также:
ТуториалSPOILER_SHOW
Функции ботаSPOILER_SHOW
  1. Скачиваем архив
    ФайлSPOILER_SHOW
    TeleramMenu.zip
    Архив с необходимыми файлами.
    (18.92 КБ) 303 скачивания
  2. Импортируем в события файлы .txt
    Панель импорта событийSPOILER_SHOW
    Изображение
  3. Включаем галочки у всех событий (если у чего-нибудь выключены).
  4. Добавляем команду "Меню" с пустым содержанием.
    Команда "Меню"SPOILER_SHOW
    Изображение
RSS каналSPOILER_SHOW
  1. Создаём группу(или канал) в telegram'е.
    Создание группы в teleram'еSPOILER_SHOW
    Изображение
  2. Добавляем туда нашего бота.
    Добавление ботаSPOILER_SHOW
    Изображение
  3. Пишем команду /start.
  4. В настройках бота добавляем группе права администратора.
    Добавление прав администратораSPOILER_SHOW
    Изображение
    Изображение
  5. Импортируем в сценарии файл.json
    Панель импорта сценариевSPOILER_SHOW
    Изображение
  6. В сценарии изменяем id на тот, что у вашего канала.
    Изменение idSPOILER_SHOW
    Изображение
Готово!
Чтобы запустить меню, напишите "Меню".
P.SSPOILER_SHOW
P.S Все настройки меню легко можно изменять под себя, т.к. каждая функция лежит в отдельном ивенте.
P.S.S Версия от 24.02.22 Убрана многочисленная copy-paste, связанная с управлением.
Что планируется сделать:
ПланыSPOILER_SHOW
ГотовоSPOILER_SHOW
  • Возможность получения и просмотра информации о луне. (Готово)
  • Возможность запустить любой сценарий. (Готово)
  • Возможность просматривать устройства online. (Готово)
  • Получение случаенных цицат. (Готово)
  • Получение новостей из RSS каналов. (Готово)
  • Добавить другие игры с использованием других смайликов с рандомом (игровой автомат, баскетбол, дротик). (Готово)
  • Сделать управление простыми устройствами, по комнатам (освещением). (Готово)
ИдеяSPOILER_SHOW
  • Возможность простого добавления собственных команд с аргументами.
  • Получение любого графика из модуля Charts.
  • Работа с картами GPS, обработках ивентов, приходящих от них. Например кто-то пришёл домой - отправим в телеграм (думаю удобно).
  • Получение информации по состоянию системы (доступные обновления, имеющиеся ошибки и т.д.)
  • Автоматическое удаление сообщение (подчистка чата) для выделения активного сообщения от бота. То есть при отправке мною команды, бот будет удалять моё сообщение, а также своё предыдущие, посылая ответ на команду. Получим 1 активное сообщение.
  • И что-нибудь ещё.. ( :idea: предлагайте идеи :idea: )
Последний раз редактировалось RomanAndr Чт мар 10, 2022 12:27 pm, всего редактировалось 24 раза.
:idea: Ubuntu Server 22.04.1 LTS (alpha, PHP 7.4, скрипт установки, Noolite, ESP8266 (WiFi IoT), Tuya, Яндекс Алиса)
:arrow: VK| Telegram| Connect
grifindorec
Сообщения: 72
Зарегистрирован: Вт фев 02, 2021 12:54 pm

Re: [Модуль] Telegram (telegram)

Сообщение grifindorec »

Подскажите плз, клавиатура бота должна появляться в группе или это не реализовано? В чате с ботом все норм появляется и отрабатывает, но в группе клавиатура не появляется. Только команды вручную вбивать.
Logrus
Сообщения: 2113
Зарегистрирован: Пт апр 07, 2017 12:20 pm

Re: [Модуль] Telegram (telegram)

Сообщение Logrus »

grifindorec писал(а): Вс мар 21, 2021 2:57 pm Подскажите плз, клавиатура бота должна появляться в группе или это не реализовано? В чате с ботом все норм появляется и отрабатывает, но в группе клавиатура не появляется. Только команды вручную вбивать.
у ботов два вида клавиатур, меню только в чате, инлайн клавиатуры везде, но если постишь в канал и привязана к ней группа обсуждения то там и инлайн не будет
Telegram | Блог
Raspberry Pi3, с образа от Сергея 3.31, PHP 7, флешка 16 Гб работает с 10.09.2017
Почти всё время уходит на исправление ошибок, оставшееся - на их повторение. (с) ))) Спасибо
RiverTIka
Сообщения: 1
Зарегистрирован: Вт мар 23, 2021 11:22 pm

Re: [Модуль] Telegram (telegram)

Сообщение RiverTIka »

Здравствуйте всем. Я новичок, захотел управлять модулями через телеграмм бота. Хотел добавить событие изменения статуса датчиков, например регистрацию движения или распознавание дыма. Естественно, такие уведомления должны присылаться не по команде, а по триггеру. Но не нашел, как это сделать, те события в настройках работают только при получении сообщений. Так как это можно сделать?
Устройства связаны по mqtt, изменение состояния фиксируется в свойстве объекта. И при изменении его нужно отправить.
RomanAndr
Сообщения: 15
Зарегистрирован: Пт янв 01, 2021 3:40 pm
Откуда: Беларусь

Re: [Модуль] Telegram (telegram)

Сообщение RomanAndr »

RiverTIka писал(а): Вт мар 23, 2021 11:44 pm Здравствуйте всем. Я новичок, захотел управлять модулями через телеграмм бота. Хотел добавить событие изменения статуса датчиков, например регистрацию движения или распознавание дыма. Естественно, такие уведомления должны присылаться не по команде, а по триггеру. Но не нашел, как это сделать, те события в настройках работают только при получении сообщений. Так как это можно сделать?
Устройства связаны по mqtt, изменение состояния фиксируется в свойстве объекта. И при изменении его нужно отправить.
Можно создать метод, который будет вызываться когда изменяется свойство объекта или по другому в других скриптах (cm('Object.Method');) и в методе:
КодSPOILER_SHOW

Код: Выделить всё

include(DIR_MODULES . 'telegram/telegram.class.php');
$telegram_module = new telegram();
$telegram_module->sendMessageToAdmin("Message about something..");
или сразу отправлять свойство:
КодSPOILER_SHOW

Код: Выделить всё

include(DIR_MODULES . 'telegram/telegram.class.php');
$telegram_module = new telegram();
$telegram_module->sendMessageToAdmin(gg('Object.property'));
:idea: Ubuntu Server 22.04.1 LTS (alpha, PHP 7.4, скрипт установки, Noolite, ESP8266 (WiFi IoT), Tuya, Яндекс Алиса)
:arrow: VK| Telegram| Connect
laptevd
Сообщения: 12
Зарегистрирован: Чт апр 16, 2020 6:57 pm

Re: [Модуль] Telegram (telegram)

Сообщение laptevd »

RomanAndr писал(а): Пн мар 01, 2021 4:52 pm Всем привет, хочу поделится моим вариантом меню.
Меню включает в себя:
  • Получение погоды (модуль openwethermap)
  • Получение графика температуры (любое свойство с историей (модуль Charts))
  • Курс валют (получение / обновление курсов валют (модуль ExchangeRates))
  • Управление online radio (включение / выключение радиостанций, управление громкостью проигрывания (модуль Online Radio))
  • Возможность просмотра и обновление информации о луне. (MoonPhase)
  • Получение случаенных цитат (Quotes)
  • Получение новостей с RSS каналов(RSS Channels)
  • Возможность просматривать статус хостов. (модуль Устройства Online)
  • Управление освещением (включение различных методов объектов (turnOn, turnOff, switch))
  • Возможность запустить любой сценарий (список берётся из ваших сценариев).
  • Просмотр состояний светильников (объектов со свойством status)
  • Получение свойств любого объекта
  • Получение изображений с ip камер
  • Возможность испытать удачу (мини игра, подбрасывает кубик)
  • Интерактивная клавиатура
Как выглядит меню:
Фотографии менюSPOILER_SHOW
МенюSPOILER_SHOW
Изображение
ПогодаSPOILER_SHOW
Список погодыSPOILER_SHOW
Изображение
На сегодняSPOILER_SHOW
Изображение
На завтраSPOILER_SHOW
Изображение
На послезавтраSPOILER_SHOW
Изображение
УправлениеSPOILER_SHOW
Изображение
ДругоеSPOILER_SHOW
Список функцийSPOILER_SHOW
Изображение
Активность в туалетеSPOILER_SHOW
Изображение
График температурыSPOILER_SHOW
Изображение
Курс валютSPOILER_SHOW
Изображение
РадиоSPOILER_SHOW
Управление радиостанциямиSPOILER_SHOW
Изображение
Управление звукомSPOILER_SHOW
Изображение
Статус устройствSPOILER_SHOW
Изображение
КамерыSPOILER_SHOW
Изображение
Фаза луныSPOILER_SHOW
Изображение
СценарииSPOILER_SHOW
Выбор сценарияSPOILER_SHOW
ИгрыSPOILER_SHOW
1SPOILER_SHOW
Изображение
Изображение
Изображение
2SPOILER_SHOW
Изображение
Изображение
Изображение
3SPOILER_SHOW
Изображение
Изображение
Изображение
4SPOILER_SHOW
Изображение
Изображение
Изображение
ЦитатыSPOILER_SHOW
Изображение
Изображение
ПользовательскиеSPOILER_SHOW
Изображение
НовостиSPOILER_SHOW
Изображение
Изображение
Изображение
Как сделать также:
ТуториалSPOILER_SHOW
Функции ботаSPOILER_SHOW
  1. Скачиваем архив
    ФайлSPOILER_SHOW
    TeleramMenu.zip
  2. Импортируем в события файлы .txt
    Панель импорта событийSPOILER_SHOW
    Изображение
  3. Включаем галочки у всех событий (если у чего-нибудь выключены).
  4. Добавляем команду "Меню" с пустым содержанием.
    Команда "Меню"SPOILER_SHOW
    Изображение
RSS каналSPOILER_SHOW
  1. Создаём группу(или канал) в telegram'е.
    Создание группы в teleram'еSPOILER_SHOW
    Изображение
  2. Добавляем туда нашего бота.
    Добавление ботаSPOILER_SHOW
    Изображение
  3. Пишем команду /start.
  4. В настройках бота добавляем группе права администратора.
    Добавление прав администратораSPOILER_SHOW
    Изображение
    Изображение
  5. Импортируем в сценарии файл.json
    Панель импорта сценариевSPOILER_SHOW
    Изображение
  6. В сценарии изменяем id на тот, что у вашего канала.
    Изменение idSPOILER_SHOW
    Изображение
Готово!
Чтобы запустить меню, напишите "Меню".
P.SSPOILER_SHOW
P.S Все настройки меню легко можно изменять под себя, т.к. каждая функция лежит в отдельном ивенте.
P.S.S Это новая версия с переделанной структурой для более лёгкой настройки кода.
Что планируется сделать:
ПланыSPOILER_SHOW
  • Возможность получения и просмотра информации о луне. (Готово)
  • Возможность запустить любой сценарий. (Готово)
  • Возможность просматривать устройства online. (Готово)
  • Получение случаенных цицат. (Готово)
  • Получение новостей из RSS каналов. (Готово)
  • Добавить другие игры с использованием других смайликов с рандомом (игровой автомат, баскетбол, дротик). (Готово)
  • И что-нибудь ещё.. ( :idea: предлагайте идеи :idea: )
Прошу прощения за глупый вопрос, а как вставить runScript в отрывке кода?
У меня при замене на ран скрипт, при переходе в эту менюшку, нужный сценарий без нажатия кнопки запускается автоматом

Код: Выделить всё

	$this->sendContent(array(
						'chat_id' => $chat_id,
						'text' => "Управление освещением в подвале:",
						'reply_markup' => $this->buildInlineKeyBoard(
							array(
								array(
				                	$this->buildInlineKeyboardButton(
					            		$text = $indiactor_emoji[gg($devices[0][1].".status")].$devices[0][0],
					                	"",
					                	
"Control*"[runScript($devices[0][1])]
Последний раз редактировалось laptevd Сб апр 03, 2021 5:58 pm, всего редактировалось 3 раза.
Аватара пользователя
Nail
Сообщения: 377
Зарегистрирован: Пн мар 05, 2018 7:09 am
Откуда: Самара

Re: [Модуль] Telegram (telegram)

Сообщение Nail »

RomanAndr писал(а): Пн мар 01, 2021 4:52 pm Всем привет, хочу поделится моим вариантом меню.
Меню включает в себя:

[*]Получение изображений с ip камер
а поделитесь когда получения в телегу видео 5-6 сек с камеры с "модуля ONVIF" ,от ДД "Motion04.status ".
Вложения
Screenshot_19.jpg
Screenshot_19.jpg (13.09 КБ) 6681 просмотр
Mini AMD A6 1450 Quad-core.Ubuntu Server 18.04 (64-bit). MegaD. Zigbee2mqtt+SLS DIN Mini. Broadlink.
Аватара пользователя
Sapizdullin
Сообщения: 408
Зарегистрирован: Сб фев 18, 2017 9:47 am
Откуда: Земля

Re: [Модуль] Telegram (telegram)

Сообщение Sapizdullin »

Nail писал(а): Сб апр 03, 2021 10:08 am

а поделитесь когда получения в телегу видео 5-6 сек с камеры с "модуля ONVIF" ,от ДД "Motion04.status ".
В методе обработки датчика пишете:

Код: Выделить всё

exec('ffmpeg -y -i "rtsp://192.168.ХХХ.ХХХ:554/Streaming/Channels/102" -t 10 -f mp4 -vcodec libx264 -pix_fmt yuv420p -an -r 15 /var/www/cms/cached/out1.mp4'); // Свой путь до камеры - цифра 15 это время.
$img='/var/www/cms/cached/out1.mp4'; 
include_once(DIR_MODULES . 'telegram/telegram.class.php'); 
$telegram_module = new telegram(); 
$telegram_module->sendVideoToUser(ХХХХХХХХ, $img, 'Камера на калитку'); //Умный дом Сделай сам}
Вместо иксов свои данные.
Intel(R) Core(TM) i7-6700, Debian 9 "Stretch", Zoneminder, Avreg.
Аватара пользователя
Nail
Сообщения: 377
Зарегистрирован: Пн мар 05, 2018 7:09 am
Откуда: Самара

Re: [Модуль] Telegram (telegram)

Сообщение Nail »

Sapizdullin писал(а): Сб апр 03, 2021 9:59 pm
Вместо иксов свои данные.
/out1.mp4- файл нужно создать?
Mini AMD A6 1450 Quad-core.Ubuntu Server 18.04 (64-bit). MegaD. Zigbee2mqtt+SLS DIN Mini. Broadlink.
Аватара пользователя
Sapizdullin
Сообщения: 408
Зарегистрирован: Сб фев 18, 2017 9:47 am
Откуда: Земля

Re: [Модуль] Telegram (telegram)

Сообщение Sapizdullin »

Nail писал(а): Вс апр 04, 2021 3:29 pm
Sapizdullin писал(а): Сб апр 03, 2021 9:59 pm
Вместо иксов свои данные.
/out1.mp4- файл нужно создать?
Любое название..
Intel(R) Core(TM) i7-6700, Debian 9 "Stretch", Zoneminder, Avreg.
Ответить