Разработка дополнительных модулей, подключение различных приложений.
Модератор: immortal
-
RomanAndr
- Сообщения: 15
- Зарегистрирован: Пт янв 01, 2021 3:40 pm
- Откуда: Беларусь
-
Благодарил (а):
1 раз
-
Поблагодарили:
20 раз
Сообщение
RomanAndr » Пн мар 01, 2021 4:52 pm
Всем привет, хочу поделится моим вариантом меню.
Меню включает в себя:
- Получение погоды (модуль openwethermap)
- Получение графика температуры (любое свойство с историей (модуль Charts))
- Курс валют (получение / обновление курсов валют (модуль ExchangeRates))
- Управление online radio (включение / выключение радиостанций, управление громкостью проигрывания (модуль Online Radio))
- Возможность просмотра и обновление информации о луне. (MoonPhase)
- Получение случаенных цитат (Quotes)
- Получение новостей с RSS каналов(RSS Channels)
- Возможность просматривать статус хостов. (модуль Устройства Online)
- Управление освещением (Простое Устройство Реле/Управляемый Выключатель) (Включение / Выключение, просмотр статуса; Управление разделено по комнатам (объект Room); Все объекты берутся из вашей БД).
- Возможность запустить любой сценарий (список берётся из ваших сценариев).
- Получение изображений с ip камер
- Возможность испытать удачу (мини игра, подбрасывает кубик)
- Интерактивная клавиатура
Как выглядит меню:
Как сделать также:
- Скачиваем архив
- Импортируем в события файлы .txt
- Включаем галочки у всех событий (если у чего-нибудь выключены).
- Добавляем команду "Меню" с пустым содержанием.
- Создаём группу(или канал) в telegram'е.
- Добавляем туда нашего бота.
- Пишем команду /start.
- В настройках бота добавляем группе права администратора.
- Импортируем в сценарии файл.json
- В сценарии изменяем id на тот, что у вашего канала.
Готово!
Чтобы запустить меню, напишите "Меню".
P.S Все настройки меню легко можно изменять под себя, т.к. каждая функция лежит в отдельном ивенте.
P.S.S Версия от 24.02.22 Убрана многочисленная copy-paste, связанная с управлением.
Что планируется сделать:
- Возможность получения и просмотра информации о луне. (Готово)
- Возможность запустить любой сценарий. (Готово)
- Возможность просматривать устройства online. (Готово)
- Получение случаенных цицат. (Готово)
- Получение новостей из RSS каналов. (Готово)
- Добавить другие игры с использованием других смайликов с рандомом (игровой автомат, баскетбол, дротик). (Готово)
- Сделать управление простыми устройствами, по комнатам (освещением). (Готово)
- Возможность простого добавления собственных команд с аргументами.
- Получение любого графика из модуля Charts.
- Работа с картами GPS, обработках ивентов, приходящих от них. Например кто-то пришёл домой - отправим в телеграм (думаю удобно).
- Получение информации по состоянию системы (доступные обновления, имеющиеся ошибки и т.д.)
- Автоматическое удаление сообщение (подчистка чата) для выделения активного сообщения от бота. То есть при отправке мною команды, бот будет удалять моё сообщение, а также своё предыдущие, посылая ответ на команду. Получим 1 активное сообщение.
- И что-нибудь ещё.. ( предлагайте идеи )
Последний раз редактировалось
RomanAndr Чт мар 10, 2022 12:27 pm, всего редактировалось 24 раза.
- За это сообщение автора RomanAndr поблагодарили (всего 16):
- 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) и ещё 6
-
grifindorec
- Сообщения: 72
- Зарегистрирован: Вт фев 02, 2021 12:54 pm
-
Благодарил (а):
18 раз
-
Поблагодарили:
6 раз
Сообщение
grifindorec » Вс мар 21, 2021 2:57 pm
Подскажите плз, клавиатура бота должна появляться в группе или это не реализовано? В чате с ботом все норм появляется и отрабатывает, но в группе клавиатура не появляется. Только команды вручную вбивать.
-
Logrus
- Сообщения: 2084
- Зарегистрирован: Пт апр 07, 2017 12:20 pm
-
Благодарил (а):
313 раз
-
Поблагодарили:
457 раз
Сообщение
Logrus » Вс мар 21, 2021 3:33 pm
grifindorec писал(а): ↑Вс мар 21, 2021 2:57 pm
Подскажите плз, клавиатура бота должна появляться в группе или это не реализовано? В чате с ботом все норм появляется и отрабатывает, но в группе клавиатура не появляется. Только команды вручную вбивать.
у ботов два вида клавиатур, меню только в чате, инлайн клавиатуры везде, но если постишь в канал и привязана к ней группа обсуждения то там и инлайн не будет
Telegram |
Блог
Raspberry Pi3, с образа от Сергея 3.31, PHP 7, флешка 16 Гб работает с
10.09.2017
Почти всё время уходит на исправление ошибок, оставшееся - на их повторение. (с) )))
Спасибо
-
RiverTIka
- Сообщения: 1
- Зарегистрирован: Вт мар 23, 2021 11:22 pm
-
Благодарил (а):
1 раз
-
Поблагодарили:
0
Сообщение
RiverTIka » Вт мар 23, 2021 11:44 pm
Здравствуйте всем. Я новичок, захотел управлять модулями через телеграмм бота. Хотел добавить событие изменения статуса датчиков, например регистрацию движения или распознавание дыма. Естественно, такие уведомления должны присылаться не по команде, а по триггеру. Но не нашел, как это сделать, те события в настройках работают только при получении сообщений. Так как это можно сделать?
Устройства связаны по mqtt, изменение состояния фиксируется в свойстве объекта. И при изменении его нужно отправить.
-
RomanAndr
- Сообщения: 15
- Зарегистрирован: Пт янв 01, 2021 3:40 pm
- Откуда: Беларусь
-
Благодарил (а):
1 раз
-
Поблагодарили:
20 раз
Сообщение
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'));
-
laptevd
- Сообщения: 12
- Зарегистрирован: Чт апр 16, 2020 6:57 pm
-
Благодарил (а):
2 раза
-
Поблагодарили:
5 раз
Сообщение
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 камер
- Возможность испытать удачу (мини игра, подбрасывает кубик)
- Интерактивная клавиатура
Как выглядит меню:
Как сделать также:
- Скачиваем архив
- Импортируем в события файлы .txt
- Включаем галочки у всех событий (если у чего-нибудь выключены).
- Добавляем команду "Меню" с пустым содержанием.
- Создаём группу(или канал) в telegram'е.
- Добавляем туда нашего бота.
- Пишем команду /start.
- В настройках бота добавляем группе права администратора.
- Импортируем в сценарии файл.json
- В сценарии изменяем id на тот, что у вашего канала.
Готово!
Чтобы запустить меню, напишите "Меню".
P.S Все настройки меню легко можно изменять под себя, т.к. каждая функция лежит в отдельном ивенте.
P.S.S Это новая версия с переделанной структурой для более лёгкой настройки кода.
Что планируется сделать:
- Возможность получения и просмотра информации о луне. (Готово)
- Возможность запустить любой сценарий. (Готово)
- Возможность просматривать устройства online. (Готово)
- Получение случаенных цицат. (Готово)
- Получение новостей из RSS каналов. (Готово)
- Добавить другие игры с использованием других смайликов с рандомом (игровой автомат, баскетбол, дротик). (Готово)
- И что-нибудь ещё.. ( предлагайте идеи )
Прошу прощения за глупый вопрос, а как вставить 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 поблагодарили (всего 2):
- andrey040670 (Сб апр 03, 2021 10:32 am) • slax (Ср янв 19, 2022 12:01 pm)
-
Nail
- Сообщения: 374
- Зарегистрирован: Пн мар 05, 2018 7:09 am
- Откуда: Самара
-
Благодарил (а):
174 раза
-
Поблагодарили:
28 раз
Сообщение
Nail » Сб апр 03, 2021 10:08 am
RomanAndr писал(а): ↑Пн мар 01, 2021 4:52 pm
Всем привет, хочу поделится моим вариантом меню.
Меню включает в себя:
[*]Получение изображений с ip камер
а поделитесь когда получения в телегу видео 5-6 сек с камеры с "модуля ONVIF" ,от ДД "Motion04.status ".
-
Вложения
-
- Screenshot_19.jpg (13.09 КБ) 4212 просмотров
Mini AMD A6 1450 Quad-core.Ubuntu Server 18.04 (64-bit). MegaD. Zigbee2mqtt+SLS ZigBee Gateway. Broadlink.
-
Sapizdullin
- Сообщения: 408
- Зарегистрирован: Сб фев 18, 2017 9:47 am
- Откуда: Земля
-
Благодарил (а):
54 раза
-
Поблагодарили:
61 раз
Сообщение
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)
Intel(R) Core(TM) i7-6700, Debian 9 "Stretch", Zoneminder, Avreg.
-
Nail
- Сообщения: 374
- Зарегистрирован: Пн мар 05, 2018 7:09 am
- Откуда: Самара
-
Благодарил (а):
174 раза
-
Поблагодарили:
28 раз
Сообщение
Nail » Вс апр 04, 2021 3:29 pm
Sapizdullin писал(а): ↑Сб апр 03, 2021 9:59 pm
Вместо иксов свои данные.
/out1.mp4- файл нужно создать?
- За это сообщение автора Nail поблагодарил:
- Jimbik (Пт ноя 05, 2021 5:03 pm)
Mini AMD A6 1450 Quad-core.Ubuntu Server 18.04 (64-bit). MegaD. Zigbee2mqtt+SLS ZigBee Gateway. Broadlink.
-
Sapizdullin
- Сообщения: 408
- Зарегистрирован: Сб фев 18, 2017 9:47 am
- Откуда: Земля
-
Благодарил (а):
54 раза
-
Поблагодарили:
61 раз
Сообщение
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)
Intel(R) Core(TM) i7-6700, Debian 9 "Stretch", Zoneminder, Avreg.