
и запускаю его из модуля телеграмма вот такой командой:

Подскажите как сделать так что бы ответ приходил только тому кто спрашивал?
Модератор: immortal
Нужно в скрипт передавать $chat_id
Код: Выделить всё
runScript("sendTelegram",array("id"=>$chat_id));
Код: Выделить всё
$message="test";
$chat_id=$params['id'];
include_once(DIR_MODULES . 'telegram/telegram.class.php');
$telegram_module = new telegram();
$telegram_module->sendMessageToUser($chat_id, $message);
Код: Выделить всё
//if(timeBetween("09:00", "22:00")){ // уберите комент, если не хотите ночью сообщения получать
if(gg('улица.tempr_out')<3{
say('температура на улице '.gg('улица.tempr_out').'C',2); //2 - чтобы в телеграм ушло
}
//}
такое проще всего реализовать сделав метод у объекта, который выполняется при изменении свойства tempr_outwoow писал(а):Модуль запустил, а как дальше? Мне нужно, чтобы на телеграмму пришло сообщение, когда температура упадёт ниже 3 градусов. Модуль телеграмм запущен. Создал:
Шаблон поведения-На основе значений свойств-
Связанный объект улица-Свойство tempr_out -
Условие < Значение 3
Выполнить при совпадении Сценарий:Alarm_tempr
Сценарий-
Сенсоры: Alarm_tempr и тут мои фантазии закончились. Правильную ли методику выбрал для данной цели?
Что сделать, чтобы отправить сообщение при спаде температуры?
Код: Выделить всё
if ($params['NEW_VALUE'] == $params['OLD_VALUE'])
return;
$text = "Температура < 3";
if ($params['NEW_VALUE'] <3)
runScript("sendTelegram",array("id"=>'user_id',"msg"=>$text));
Как?Eraser писал(а):сделать чтобы сообщение отправлялось только один раз при переходе через указанную границу
Amarok писал(а):Как?Eraser писал(а):сделать чтобы сообщение отправлялось только один раз при переходе через указанную границу
Код: Выделить всё
if ($params['NEW_VALUE'] < 3 && $params['OLD_VALUE'] >= 3)
runScript("sendTelegram",array("id"=>'user_id',"msg"=>$text));
Спасибо, и как очередной раз до конца не дапёр, к чему этот метод привязать, что к объекту то понял, но сидел ждал температура падает, а телеграмм не получаю.Eraser писал(а):такое проще всего реализовать сделав метод у объекта, который выполняется при изменении свойства tempr_outwoow писал(а):Модуль запустил, а как дальше? Мне нужно, чтобы на телеграмму пришло сообщение, когда температура упадёт ниже 3 градусов. Модуль телеграмм запущен. Создал:
Шаблон поведения-На основе значений свойств-
Связанный объект улица-Свойство tempr_out -
Условие < Значение 3
Выполнить при совпадении Сценарий:Alarm_tempr
Сценарий-
Сенсоры: Alarm_tempr и тут мои фантазии закончились. Правильную ли методику выбрал для данной цели?
Что сделать, чтобы отправить сообщение при спаде температуры?
пример кода в методе:данный метод позволяет узнать, что температура снизилась без задержки, как только пришли данные с датчиковКод: Выделить всё
if ($params['NEW_VALUE'] == $params['OLD_VALUE']) return; $text = "Температура < 3"; if ($params['NEW_VALUE'] <3) runScript("sendTelegram",array("id"=>'user_id',"msg"=>$text));
кроме этого можно выполнять еще какие либо проверки, или сделать чтобы сообщение отправлялось только один раз при переходе через указанную границу
метод создается в объекте в котором сохраняется температураwoow писал(а): Спасибо, и как очередной раз до конца не дапёр, к чему этот метод привязать, что к объекту то понял, но сидел ждал температура падает, а телеграмм не получаю.
тут по своим понятиям настроить
f ($params['NEW_VALUE'] == $params['OLD_VALUE'])
return;
$text = "tempr_out < 3";
if ($params['NEW_VALUE'] <3)
runScript("sendTelegram",array("id"=>'1234567 **это что я получил при настройке телеграмм?**',"msg"=>$O.M.G. как холодно!!!));
Код: Выделить всё
//runScript("sendTelegram",array("id"=>'ИмяПользователя',"msg"=>'ТекстСообщения'));
$message=$params['msg'];
$chat_id=$params['id'];
include_once(DIR_MODULES . 'telegram/telegram.class.php');
$telegram_module = new telegram();
$telegram_module->sendMessageToUser($chat_id, $message);