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

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

Модератор: immortal

Yevgen16
Сообщения: 119
Зарегистрирован: Вс мар 29, 2020 11:20 am

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

Сообщение Yevgen16 »

Eraser писал(а): Пн дек 06, 2021 1:56 pm а самому подумать!!!! все же написано
Да думал. Или не туда вставил или как)) Ближе к вечеру еще раз попробую, спасибо.
Raspberry Pi4B (4Gb) + MegaD + Informer (skysilver)
Yevgen16
Сообщения: 119
Зарегистрирован: Вс мар 29, 2020 11:20 am

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

Сообщение Yevgen16 »

Eraser писал(а): Пн дек 06, 2021 1:56 pm а самому подумать!!!! все же написано
$option - массив кнопок
в вашем случае $optionMenu

$optionMenu= array_chunk($optionMenu, 2);
Кстати, всё равно не работает. Клавиатура не появляется. В истории событий:

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

12:16:19 0.67682400 Skip next processing message
12:16:19 0.67645800 Skip next processing events message
12:16:19 0.52056500 Execute code event Commands
Raspberry Pi4B (4Gb) + MegaD + Informer (skysilver)
RomanAndr
Сообщения: 15
Зарегистрирован: Пт янв 01, 2021 3:40 pm
Откуда: Беларусь

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

Сообщение RomanAndr »

Yevgen16 писал(а): Вт дек 07, 2021 12:19 pm
Eraser писал(а): Пн дек 06, 2021 1:56 pm а самому подумать!!!! все же написано
$option - массив кнопок
в вашем случае $optionMenu

$optionMenu= array_chunk($optionMenu, 2);
Кстати, всё равно не работает. Клавиатура не появляется. В истории событий:

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

12:16:19 0.67682400 Skip next processing message
12:16:19 0.67645800 Skip next processing events message
12:16:19 0.52056500 Execute code event Commands
Возможно надо прислать команду вручную, и тогда меню обновиться.
:idea: Ubuntu Server 22.04.1 LTS (alpha, PHP 7.4, скрипт установки, Noolite, ESP8266 (WiFi IoT), Tuya, Яндекс Алиса)
:arrow: VK| Telegram| Connect
pasha413
Сообщения: 131
Зарегистрирован: Сб янв 13, 2018 6:28 pm

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

Сообщение pasha413 »

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 каналов. (Готово)
  • Добавить другие игры с использованием других смайликов с рандомом (игровой автомат, баскетбол, дротик). (Готово)
  • Сделать управление простыми устройствами.
  • Возможность простого добавления собственных команд с аргументами.
  • Получение любого графика из модуля Charts.
  • И что-нибудь ещё.. ( :idea: предлагайте идеи :idea: )
Спасибо, хорошая менюшка, но есть вопрос:
не получилось автоматически удалять сообщения, например сообщение ввода команды "назад"
вот например так https://disk.yandex.ru/i/DfZggjGA4pD93g - видосик как работает у меня автоудаление. могу скинуть код.
Моё: Orange Pi Zero H2 + DietPi / Paspberry Pi3b + MJD 3.41
Аватара пользователя
Kvantos
Сообщения: 295
Зарегистрирован: Вт окт 31, 2017 1:05 pm

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

Сообщение Kvantos »

Подскажите плиз.
Есть событие

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

if (substr($callback,13,4) == "rate") { //обрезать "Callback_say_rate_XXX"
	//DebMes("chat_id = ".$chat_id,0);//"to user" telegram ID
    //DebMes("callback txt = ".$callback,0);
    //DebMes("callback_id = ".$callback_id,0);
    //DebMes("message_id = ".$message_id,0);
    
	$telegram_module = new telegram();
	$cur = substr($callback,18); //обрезать "Callback_say_rate_XXX" до XXX
	$telegram_module->sendMessageToUser($chat_id, $cur, null, '', true);
	
	switch ($cur) {
		case "USD":
			runScriptSafe('USD_to_telegram');
			break;
			
		case "EUR":
			$date = gg("exchange_rate.date1");//дата и время извлечения данных из privat24
			$dateAt_d_m_Y = date('d-m-Y H:i', strtotime($date));
			$eurosalePrivat24 = gg("exchange_rate.eurosale");
			$eurobuyPrivat24 = gg("exchange_rate.eurobuy");
			$telegram_module->sendMessageToUser($chat_id, "Приватбанк покупает EUR за ".$eurobuyPrivat24."грн., продет EUR за ".$eurosalePrivat24."грн., на ".$dateAt_d_m_Y, null, '', true);
			break;
		
		default:
			$skip=true;
			break;
	}
}
Как для EUR вызвать код из КОМАНДЫ "EUR" модуля телеграмм? чтобы не дудировать код в Событиях и Командах
MDM живет на 4.9.0-8-amd64 #1 SMP Debian 4.9.130-2 (2018-10-27) x86_64 GNU/Linux
Daniral
Сообщения: 82
Зарегистрирован: Чт мар 05, 2020 5:11 pm

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

Сообщение Daniral »

Подскажите что делать?
Очень часто зависает в телефоне бот. Отправляю команду в мдм а ответа нет. В мдм тоже ничего не приходит. Может зависнуть минут на 5. Когда больше когда меньше. А потом все сразу прилетает. Все что отправлял. И ещё заметил если отправил и ответа нету то можно отправить сообщение из модуля тлг из мдм и тогда сразу растормаживантся и все прилетает и начинает нормально работать. Куда копать пните пожалуйста
RomanAndr
Сообщения: 15
Зарегистрирован: Пт янв 01, 2021 3:40 pm
Откуда: Беларусь

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

Сообщение RomanAndr »

pasha413 писал(а): Ср дек 22, 2021 3:30 pm
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 каналов. (Готово)
  • Добавить другие игры с использованием других смайликов с рандомом (игровой автомат, баскетбол, дротик). (Готово)
  • Сделать управление простыми устройствами.
  • Возможность простого добавления собственных команд с аргументами.
  • Получение любого графика из модуля Charts.
  • И что-нибудь ещё.. ( :idea: предлагайте идеи :idea: )
Спасибо, хорошая менюшка, но есть вопрос:
не получилось автоматически удалять сообщения, например сообщение ввода команды "назад"
вот например так https://disk.yandex.ru/i/DfZggjGA4pD93g - видосик как работает у меня автоудаление. могу скинуть код.
Спасибо! Как я понял сообщения удаляются через некоторый интервал после отправки, можете отправить код, в моём случае я бы сделал так, что при отправке нового сообщения боту, его предыдущее и моё отправленное удаляется, типо будет только одно активное сообщение для чистоты чата.
:idea: Ubuntu Server 22.04.1 LTS (alpha, PHP 7.4, скрипт установки, Noolite, ESP8266 (WiFi IoT), Tuya, Яндекс Алиса)
:arrow: VK| Telegram| Connect
Logrus
Сообщения: 2113
Зарегистрирован: Пт апр 07, 2017 12:20 pm

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

Сообщение Logrus »

RomanAndr писал(а): Чт фев 10, 2022 12:39 am [в моём случае я бы сделал так, что при отправке нового сообщения боту, его предыдущее и моё отправленное удаляется, типо будет только одно активное сообщение для чистоты чата.
в примере, в котором не может разобраться тс и который подается от его имени так и сделано, даже больше для каждого пользователя т.к. чат с ними индивидуальный это учитывается, помнится для хранения всего этого пришлось добавлять функционал в евенты
Telegram | Блог
Raspberry Pi3, с образа от Сергея 3.31, PHP 7, флешка 16 Гб работает с 10.09.2017
Почти всё время уходит на исправление ошибок, оставшееся - на их повторение. (с) ))) Спасибо
Dimonopera
Сообщения: 91
Зарегистрирован: Чт окт 04, 2018 10:12 am

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

Сообщение Dimonopera »

Всем здравствовать. Подскажите пожалуйста, как реализовать отправку картинки с камеры тому пользователю, который отправил запрос?
Где то натыкался на решение, но никак найти не могу. Уже второй день по форуму лазию
Сейчас у меня такой код отправки

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

// получаем картинку 
$url="rtsp://192.168.1.201:554/user=admin_password=HOGzcTu7_channel=1_stream=1.sdp?real_stream";  
$jpg="C:/_majordomo/htdocs/cached/img/snapshot.jpg";
exec('ffmpeg -y -i '.$url.' -r 10 -f image2 -ss 00:00:02.500 -vframes 1 '.$jpg.'');
// отправляем картинку в телеграмм
include_once(DIR_MODULES . 'telegram/telegram.class.php');
$telegram_module = new telegram();
$telegram_module->sendImageToUser(1092570625,$jpg);
Заранее спасибо
Аватара пользователя
Eraser
Сообщения: 1085
Зарегистрирован: Вт окт 21, 2014 7:31 pm
Откуда: Киров
Контактная информация:

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

Сообщение Eraser »

Dimonopera писал(а): Ср фев 23, 2022 9:38 am Всем здравствовать. Подскажите пожалуйста, как реализовать отправку картинки с камеры тому пользователю, который отправил запрос?
Где то натыкался на решение, но никак найти не могу. Уже второй день по форуму лазию
Сейчас у меня такой код отправки

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

// получаем картинку 
$url="rtsp://192.168.1.201:554/user=admin_password=HOGzcTu7_channel=1_stream=1.sdp?real_stream";  
$jpg="C:/_majordomo/htdocs/cached/img/snapshot.jpg";
exec('ffmpeg -y -i '.$url.' -r 10 -f image2 -ss 00:00:02.500 -vframes 1 '.$jpg.'');
// отправляем картинку в телеграмм
include_once(DIR_MODULES . 'telegram/telegram.class.php');
$telegram_module = new telegram();
$telegram_module->sendImageToUser(1092570625,$jpg);
Заранее спасибо
sendImageToUser($chat_id,$jpg)
Connect ---- Telegram
ЮMoney для благодарностей за помощь: 410012076838296 или нажмите кнопку "Спасибо"!!! :D
Ответить