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

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

Модератор: immortal

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

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

Сообщение RomanAndr » Пн мар 01, 2021 4:52 pm

Всем привет, хочу поделится моим вариантом меню.
Меню включает в себя:
  • Получение погоды (модуль openwethermap)
  • Получение графика температуры (любое свойство с историей (модуль Charts))
  • Курс валют (получение / обновление курсов валют (модуль ExchangeRates))
  • Управление online radio (включение / выключение радиостанций, управление громкостью проигрывания (модуль Online Radio))
  • Возможность просмотра и обновление информации о луне. (MoonPhase)
  • Получение случаенных цитат (Quotes)
  • Получение новостей с RSS каналов(RSS Channels)
  • Возможность просматривать статус хостов. (модуль Устройства Online)
  • Управление освещением (включение различных методов объектов (turnOn, turnOff, switch))
  • Возможность запустить любой сценарий (список берётся из ваших сценариев).
  • Просмотр состояний светильников (объектов со свойством status)
  • Получение свойств любого объекта
  • Получение изображений с ip камер
  • Возможность испытать удачу (мини игра, подбрасывает кубик)
  • Интерактивная клавиатура
Как выглядит меню:
Фотографии менюПоказать
МенюПоказать
Изображение
ПогодаПоказать
Список погодыПоказать
Изображение
На сегодняПоказать
Изображение
На завтраПоказать
Изображение
На послезавтраПоказать
Изображение
УправлениеПоказать
Изображение
ДругоеПоказать
Список функцийПоказать
Изображение
Активность в туалетеПоказать
Изображение
График температурыПоказать
Изображение
Курс валютПоказать
Изображение
РадиоПоказать
Управление радиостанциямиПоказать
Изображение
Управление звукомПоказать
Изображение
Статус устройствПоказать
Изображение
КамерыПоказать
Изображение
Фаза луныПоказать
Изображение
СценарииПоказать
Выбор сценарияПоказать
ИгрыПоказать
1Показать
Изображение
Изображение
Изображение
2Показать
Изображение
Изображение
Изображение
3Показать
Изображение
Изображение
Изображение
4Показать
Изображение
Изображение
Изображение
ЦитатыПоказать
Изображение
Изображение
ПользовательскиеПоказать
Изображение
НовостиПоказать
Изображение
Изображение
Изображение
Как сделать также:
ТуториалПоказать
Функции ботаПоказать
  1. Скачиваем архив
    ФайлПоказать
    TeleramMenu.zip
    Архив с нужными файлами.
    (85.61 КБ) 17 скачиваний
  2. Импортируем в события файлы .txt
    Панель импорта событийПоказать
    Изображение
  3. Включаем галочки у всех событий (если у чего-нибудь выключены).
  4. Добавляем команду "Меню" с пустым содержанием.
    Команда "Меню"Показать
    Изображение
RSS каналПоказать
  1. Создаём группу(или канал) в telegram'е.
    Создание группы в teleram'еПоказать
    Изображение
  2. Добавляем туда нашего бота.
    Добавление ботаПоказать
    Изображение
  3. Пишем команду /start.
  4. В настройках бота добавляем группе права администратора.
    Добавление прав администратораПоказать
    Изображение
    Изображение
  5. Импортируем в сценарии файл.json
    Панель импорта сценариевПоказать
    Изображение
  6. В сценарии изменяем id на тот, что у вашего канала.
    Изменение idПоказать
    Изображение
Готово!
Чтобы запустить меню, напишите "Меню".
P.SПоказать
P.S Все настройки меню легко можно изменять под себя, т.к. каждая функция лежит в отдельном ивенте.
P.S.S Это новая версия с переделанной структурой для более лёгкой настройки кода.
Что планируется сделать:
ПланыПоказать
  • Возможность получения и просмотра информации о луне. (Готово)
  • Возможность запустить любой сценарий. (Готово)
  • Возможность просматривать устройства online. (Готово)
  • Получение случаенных цицат. (Готово)
  • Получение новостей из RSS каналов. (Готово)
  • Добавить другие игры с использованием других смайликов с рандомом (игровой автомат, баскетбол, дротик). (Готово)
  • И что-нибудь ещё.. ( :idea: предлагайте идеи :idea: )
Последний раз редактировалось RomanAndr Пт апр 02, 2021 2:11 pm, всего редактировалось 17 раз.
За это сообщение автора RomanAndr поблагодарили (всего 12):
andrey040670 (Пн мар 01, 2021 5:48 pm) • tnk2341 (Пн мар 01, 2021 11:02 pm) • dimka (Вт мар 02, 2021 11:39 am) • Gasinskiy (Чт мар 04, 2021 9:32 am) • kolobokserver (Чт мар 04, 2021 7:15 pm) • ebramariys (Сб мар 13, 2021 12:53 pm) • astotskiy (Вс мар 14, 2021 12:07 pm) • Hold (Пт мар 19, 2021 11:11 am) • ~220v (Пн мар 22, 2021 1:04 am) • Molostov (Ср мар 24, 2021 12:53 am) и ещё 2
Рейтинг: 14.29%
Raspberry Pi 4 (v4_44 alpha), Noolite, ESP8266 (WiFi IoT)
grifindorec
Сообщения: 28
Зарегистрирован: Вт фев 02, 2021 12:54 pm
Благодарил (а): 5 раз
Поблагодарили: 2 раза

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

Сообщение grifindorec » Вс мар 21, 2021 2:57 pm

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

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

Сообщение Logrus » Вс мар 21, 2021 3:33 pm

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

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

Сообщение RiverTIka » Вт мар 23, 2021 11:44 pm

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

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

Сообщение RomanAndr » Ср мар 24, 2021 12:33 am

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

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

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

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

include(DIR_MODULES . 'telegram/telegram.class.php');
$telegram_module = new telegram();
$telegram_module->sendMessageToAdmin(gg('Object.property'));
За это сообщение автора RomanAndr поблагодарил:
RiverTIka (Ср мар 24, 2021 1:01 pm)
Рейтинг: 1.19%
Raspberry Pi 4 (v4_44 alpha), Noolite, ESP8266 (WiFi IoT)
laptevd
Сообщения: 8
Зарегистрирован: Чт апр 16, 2020 6:57 pm
Благодарил (а): 1 раз
Поблагодарили: 1 раз

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

Сообщение laptevd » Сб апр 03, 2021 12:50 am

RomanAndr писал(а):
Пн мар 01, 2021 4:52 pm
Всем привет, хочу поделится моим вариантом меню.
Меню включает в себя:
  • Получение погоды (модуль openwethermap)
  • Получение графика температуры (любое свойство с историей (модуль Charts))
  • Курс валют (получение / обновление курсов валют (модуль ExchangeRates))
  • Управление online radio (включение / выключение радиостанций, управление громкостью проигрывания (модуль Online Radio))
  • Возможность просмотра и обновление информации о луне. (MoonPhase)
  • Получение случаенных цитат (Quotes)
  • Получение новостей с RSS каналов(RSS Channels)
  • Возможность просматривать статус хостов. (модуль Устройства Online)
  • Управление освещением (включение различных методов объектов (turnOn, turnOff, switch))
  • Возможность запустить любой сценарий (список берётся из ваших сценариев).
  • Просмотр состояний светильников (объектов со свойством status)
  • Получение свойств любого объекта
  • Получение изображений с ip камер
  • Возможность испытать удачу (мини игра, подбрасывает кубик)
  • Интерактивная клавиатура
Как выглядит меню:
Фотографии менюПоказать
МенюПоказать
Изображение
ПогодаПоказать
Список погодыПоказать
Изображение
На сегодняПоказать
Изображение
На завтраПоказать
Изображение
На послезавтраПоказать
Изображение
УправлениеПоказать
Изображение
ДругоеПоказать
Список функцийПоказать
Изображение
Активность в туалетеПоказать
Изображение
График температурыПоказать
Изображение
Курс валютПоказать
Изображение
РадиоПоказать
Управление радиостанциямиПоказать
Изображение
Управление звукомПоказать
Изображение
Статус устройствПоказать
Изображение
КамерыПоказать
Изображение
Фаза луныПоказать
Изображение
СценарииПоказать
Выбор сценарияПоказать
ИгрыПоказать
1Показать
Изображение
Изображение
Изображение
2Показать
Изображение
Изображение
Изображение
3Показать
Изображение
Изображение
Изображение
4Показать
Изображение
Изображение
Изображение
ЦитатыПоказать
Изображение
Изображение
ПользовательскиеПоказать
Изображение
НовостиПоказать
Изображение
Изображение
Изображение
Как сделать также:
ТуториалПоказать
Функции ботаПоказать
  1. Скачиваем архив
    ФайлПоказать
    TeleramMenu.zip
  2. Импортируем в события файлы .txt
    Панель импорта событийПоказать
    Изображение
  3. Включаем галочки у всех событий (если у чего-нибудь выключены).
  4. Добавляем команду "Меню" с пустым содержанием.
    Команда "Меню"Показать
    Изображение
RSS каналПоказать
  1. Создаём группу(или канал) в telegram'е.
    Создание группы в teleram'еПоказать
    Изображение
  2. Добавляем туда нашего бота.
    Добавление ботаПоказать
    Изображение
  3. Пишем команду /start.
  4. В настройках бота добавляем группе права администратора.
    Добавление прав администратораПоказать
    Изображение
    Изображение
  5. Импортируем в сценарии файл.json
    Панель импорта сценариевПоказать
    Изображение
  6. В сценарии изменяем id на тот, что у вашего канала.
    Изменение idПоказать
    Изображение
Готово!
Чтобы запустить меню, напишите "Меню".
P.SПоказать
P.S Все настройки меню легко можно изменять под себя, т.к. каждая функция лежит в отдельном ивенте.
P.S.S Это новая версия с переделанной структурой для более лёгкой настройки кода.
Что планируется сделать:
ПланыПоказать
  • Возможность получения и просмотра информации о луне. (Готово)
  • Возможность запустить любой сценарий. (Готово)
  • Возможность просматривать устройства 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 раза.
За это сообщение автора laptevd поблагодарил:
andrey040670 (Сб апр 03, 2021 10:32 am)
Рейтинг: 1.19%
Аватара пользователя
Nail
Сообщения: 347
Зарегистрирован: Пн мар 05, 2018 7:09 am
Откуда: Самара
Благодарил (а): 150 раз
Поблагодарили: 21 раз

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

Сообщение Nail » Сб апр 03, 2021 10:08 am

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

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

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

Сообщение Sapizdullin » Сб апр 03, 2021 9:59 pm

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, 'Камера на калитку'); //Умный дом Сделай сам}
Вместо иксов свои данные.
За это сообщение автора Sapizdullin поблагодарил:
Nail (Вс апр 04, 2021 3:59 pm)
Рейтинг: 1.19%
Intel(R) Core(TM) i7-6700, Debian 9 "Stretch", Zoneminder, Avreg.
Аватара пользователя
Nail
Сообщения: 347
Зарегистрирован: Пн мар 05, 2018 7:09 am
Откуда: Самара
Благодарил (а): 150 раз
Поблагодарили: 21 раз

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

Сообщение Nail » Вс апр 04, 2021 3:29 pm

Sapizdullin писал(а):
Сб апр 03, 2021 9:59 pm

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

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

Сообщение Sapizdullin » Вс апр 04, 2021 3:42 pm

Nail писал(а):
Вс апр 04, 2021 3:29 pm
Sapizdullin писал(а):
Сб апр 03, 2021 9:59 pm

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