Страница 159 из 193
Re: [Модуль] Telegram (telegram)
Добавлено: Пт апр 10, 2020 5:02 pm
Alexander Znamensky
Alexander Znamensky писал(а): Пт апр 10, 2020 4:42 pm
Eraser писал(а): Пт апр 10, 2020 8:36 am
Обновление
+добавлена функция sendDice (отправка emoji

, цифра на кубике каждый раз разная)
Код: Выделить всё
include(DIR_MODULES . 'telegram/telegram.class.php');
$telegram_module = new telegram();
$telegram_module->sendDice($chat_id);
PS баловство конечно, но может кто что-то интересное придумает
PSS сделал мини игру на основе sendDice
добавляем обработчик события "Текстовое сообщение" и отправляем боту
Код: Выделить всё
$dice = $data["message"]["dice"];
if ($dice)
{
$res=$this->sendDice($chat_id);
$diceRes = $res["result"]["dice"];
if($dice["value"] == $diceRes["value"])
$this->sendMessage($chat_id,"Ничья! Давай еще!");
else if($dice["value"] > $diceRes["value"])
$this->sendMessage($chat_id,"Ты выиграл!");
else
$this->sendMessage($chat_id,"Ура! я выиграла!");
$skip=true;
}
Попробовал добавить игрушку от нечего делать в режиме самоизоляции......

но что-то пошло не так.... - не отвечает мне бот. Хотя с ним это иногда бывает (то ли РКН что-то опять блокирует, то ли бот на меня за что-то обижается ))))
Screenshot 2020-04-10 16.34.37.pngScreenshot 2020-04-10 16.34.13.png
Подскажите, что-то не так делаю? Спасибо!!!
UPD - заработало ))))) все-таки Роскомнадзор, наверное )))))
Re: [Модуль] Telegram (telegram)
Добавлено: Сб апр 11, 2020 12:37 am
xor
Eraser писал(а): Пт апр 10, 2020 8:36 am
Обновление
...
PSS сделал мини игру на основе sendDice
...
Отлично! но у меня алиса сообщает результат игры ещё до того, как кубик остановится. так теряется интерес, кмк))
поставил слип 3 секунды перед ответом
Re: [Модуль] Telegram (telegram)
Добавлено: Ср апр 15, 2020 1:01 pm
iden
Чет умотался

всю ветку читаю с самого начала. Дайте пожалуйста простой пример, как получить числовое значение из объекта и его свойства?
Re: [Модуль] Telegram (telegram)
Добавлено: Ср апр 15, 2020 1:13 pm
Plug
iden писал(а): Ср апр 15, 2020 1:01 pm
Чет умотался

всю ветку читаю с самого начала. Дайте пожалуйста простой пример, как получить числовое значение из объекта и его свойства?
У меня вот так выводится температура:
//$counterCold = hex2bin('F09F94B5');
//$counterHot = hex2bin('F09F94B4');
$droplet = hex2bin('F09F92A7');
$thermometer = hex2bin('F09F8CA1');
$kPa = hex2bin('e38eaa');
$SensorTempOut = getGlobal("Sensor_temphum02.value"); //Улица
$SensorHumidityOut = getGlobal("Sensor_temphum02.valueHumidity"); //Улица
$SensorTempKuh = getGlobal("Sensor_temphum07.value"); //Кухня
$SensorHumidityKuh = getGlobal("Sensor_temphum07.valueHumidity"); //Кухня
$SensorPressureKuh = getGlobal("Sensor_pressure05.value"); //Кухня
$SensorTempKor = getGlobal("Sensor_temp04.value"); //Коридор
$SensorTempToi = getGlobal("Sensor_temp01.value"); //Туалет
$SensorTempBedroom = getGlobal("Sensor_temphum03.value"); //Спальня
$SensorHumidityBedroom = getGlobal("Sensor_temphum03.valueHumidity"); //Спальня
$SensorPressureBedroom = getGlobal("Sensor_pressure01.value"); //Спальня
$SensorTempLiv = getGlobal("Sensor_temphum04.value"); //Гостиная
$SensorHumidityLiv = getGlobal("Sensor_temphum04.valueHumidity"); //Гостиная
$SensorPressureLiv = getGlobal("Sensor_pressure02.value"); //Гостиная
$SensorTempChild = getGlobal("Sensor_temphum06.value"); //Детская
$SensorHumidityChild = getGlobal("Sensor_temphum06.valueHumidity"); //Детская
$SensorPressureChild = getGlobal("Sensor_pressure03.value"); //Детская
$SensorTempBath = getGlobal("Sensor_temphum05.value"); //Ванная
$SensorHumidityBath = getGlobal("Sensor_temphum05.valueHumidity"); //Ванная
$SensorPressureBath = getGlobal("Sensor_pressure04.value"); //Ванная
//$ColdWater = getGlobal("Counter02.value");
//$ColdWaterTemp = getGlobal("Sensor_temp03.value");
return "Температура и влажность на улице:".PHP_EOL
.$thermometer ."\x20\x20\x20" .$SensorTempOut ."\x20C°\x20\x20\x20\x20" .$droplet ."\x20\x20\x20" .$SensorHumidityOut ."\x20%" .PHP_EOL
."Температура и влажность дома:".PHP_EOL
."Гостиная:\x20".$thermometer ."\x20\x20" .$SensorTempLiv ."\x20C°\x20\x20\x20\x20" .$droplet ."\x20\x20" .$SensorHumidityLiv ."\x20%" ."\x20\x20\x20\x20" .$SensorPressureLiv ."\x20".$kPa.PHP_EOL
."Спальня:\x20".$thermometer ."\x20\x20" .$SensorTempBedroom ."\x20C°\x20\x20\x20\x20" .$droplet ."\x20\x20" .$SensorHumidityBedroom ."\x20%" ."\x20\x20\x20\x20" .$SensorPressureBedroom ."\x20".$kPa.PHP_EOL
."Детская:\x20".$thermometer ."\x20\x20" .$SensorTempChild ."\x20C°\x20\x20\x20\x20" .$droplet ."\x20\x20" .$SensorHumidityChild ."\x20%" ."\x20\x20\x20\x20" .$SensorPressureChild ."\x20".$kPa.PHP_EOL
."Коридор:\x20".$thermometer ."\x20\x20" .$SensorTempKor ."\x20C°" .PHP_EOL
."Ванная:\x20".$thermometer ."\x20\x20" .$SensorTempBath ."\x20C°\x20\x20\x20\x20" .$droplet ."\x20\x20" .$SensorHumidityBath ."\x20%" ."\x20\x20\x20\x20" .$SensorPressureBath ."\x20".$kPa.PHP_EOL
."Туалет:\x20".$thermometer ."\x20\x20" .$SensorTempToi ."\x20C°" .PHP_EOL
."Кухня:\x20".$thermometer ."\x20\x20" .$SensorTempKuh ."\x20C°\x20\x20\x20\x20" .$droplet ."\x20\x20" .$SensorHumidityKuh ."\x20%" ."\x20\x20\x20\x20" .$SensorPressureKuh ."\x20".$kPa .PHP_EOL;
Re: [Модуль] Telegram (telegram)
Добавлено: Ср апр 15, 2020 1:31 pm
iden
Plug писал(а): Ср апр 15, 2020 1:13 pm
iden писал(а): Ср апр 15, 2020 1:01 pm
Чет умотался

всю ветку читаю с самого начала. Дайте пожалуйста простой пример, как получить числовое значение из объекта и его свойства?
У меня вот так выводится температура:
//$counterCold = hex2bin('F09F94B5');
//$counterHot = hex2bin('F09F94B4');
$droplet = hex2bin('F09F92A7');
$thermometer = hex2bin('F09F8CA1');
$kPa = hex2bin('e38eaa');
$SensorTempOut = getGlobal("Sensor_temphum02.value"); //Улица
$SensorHumidityOut = getGlobal("Sensor_temphum02.valueHumidity"); //Улица
$SensorTempKuh = getGlobal("Sensor_temphum07.value"); //Кухня
$SensorHumidityKuh = getGlobal("Sensor_temphum07.valueHumidity"); //Кухня
$SensorPressureKuh = getGlobal("Sensor_pressure05.value"); //Кухня
$SensorTempKor = getGlobal("Sensor_temp04.value"); //Коридор
$SensorTempToi = getGlobal("Sensor_temp01.value"); //Туалет
$SensorTempBedroom = getGlobal("Sensor_temphum03.value"); //Спальня
$SensorHumidityBedroom = getGlobal("Sensor_temphum03.valueHumidity"); //Спальня
$SensorPressureBedroom = getGlobal("Sensor_pressure01.value"); //Спальня
$SensorTempLiv = getGlobal("Sensor_temphum04.value"); //Гостиная
$SensorHumidityLiv = getGlobal("Sensor_temphum04.valueHumidity"); //Гостиная
$SensorPressureLiv = getGlobal("Sensor_pressure02.value"); //Гостиная
$SensorTempChild = getGlobal("Sensor_temphum06.value"); //Детская
$SensorHumidityChild = getGlobal("Sensor_temphum06.valueHumidity"); //Детская
$SensorPressureChild = getGlobal("Sensor_pressure03.value"); //Детская
$SensorTempBath = getGlobal("Sensor_temphum05.value"); //Ванная
$SensorHumidityBath = getGlobal("Sensor_temphum05.valueHumidity"); //Ванная
$SensorPressureBath = getGlobal("Sensor_pressure04.value"); //Ванная
//$ColdWater = getGlobal("Counter02.value");
//$ColdWaterTemp = getGlobal("Sensor_temp03.value");
return "Температура и влажность на улице:".PHP_EOL
.$thermometer ."\x20\x20\x20" .$SensorTempOut ."\x20C°\x20\x20\x20\x20" .$droplet ."\x20\x20\x20" .$SensorHumidityOut ."\x20%" .PHP_EOL
."Температура и влажность дома:".PHP_EOL
."Гостиная:\x20".$thermometer ."\x20\x20" .$SensorTempLiv ."\x20C°\x20\x20\x20\x20" .$droplet ."\x20\x20" .$SensorHumidityLiv ."\x20%" ."\x20\x20\x20\x20" .$SensorPressureLiv ."\x20".$kPa.PHP_EOL
."Спальня:\x20".$thermometer ."\x20\x20" .$SensorTempBedroom ."\x20C°\x20\x20\x20\x20" .$droplet ."\x20\x20" .$SensorHumidityBedroom ."\x20%" ."\x20\x20\x20\x20" .$SensorPressureBedroom ."\x20".$kPa.PHP_EOL
."Детская:\x20".$thermometer ."\x20\x20" .$SensorTempChild ."\x20C°\x20\x20\x20\x20" .$droplet ."\x20\x20" .$SensorHumidityChild ."\x20%" ."\x20\x20\x20\x20" .$SensorPressureChild ."\x20".$kPa.PHP_EOL
."Коридор:\x20".$thermometer ."\x20\x20" .$SensorTempKor ."\x20C°" .PHP_EOL
."Ванная:\x20".$thermometer ."\x20\x20" .$SensorTempBath ."\x20C°\x20\x20\x20\x20" .$droplet ."\x20\x20" .$SensorHumidityBath ."\x20%" ."\x20\x20\x20\x20" .$SensorPressureBath ."\x20".$kPa.PHP_EOL
."Туалет:\x20".$thermometer ."\x20\x20" .$SensorTempToi ."\x20C°" .PHP_EOL
."Кухня:\x20".$thermometer ."\x20\x20" .$SensorTempKuh ."\x20C°\x20\x20\x20\x20" .$droplet ."\x20\x20" .$SensorHumidityKuh ."\x20%" ."\x20\x20\x20\x20" .$SensorPressureKuh ."\x20".$kPa .PHP_EOL;
Спасибо конечно) но это жесть для меня
Re: [Модуль] Telegram (telegram)
Добавлено: Ср апр 15, 2020 1:36 pm
Plug
Ну если до компа сегодня доберусь, то распишу подробнее

Re: [Модуль] Telegram (telegram)
Добавлено: Ср апр 15, 2020 1:41 pm
iden
Plug писал(а): Ср апр 15, 2020 1:36 pm
Ну если до компа сегодня доберусь, то распишу подробнее
Супер)
UPD:
Почитал
тут, разобрался
Re: [Модуль] Telegram (telegram)
Добавлено: Пт апр 17, 2020 3:46 pm
iden
iden писал(а): Ср апр 15, 2020 1:41 pm
Plug писал(а): Ср апр 15, 2020 1:36 pm
Ну если до компа сегодня доберусь, то распишу подробнее
Супер)
UPD:
Почитал
тут, разобрался
Мой простой пример, может кому пригодится:
Код: Выделить всё
$infected_day = getGlobal("covid19sens_infected_day.value"); // присваиваем переменной infected_day значение
$infected = getGlobal("covid19sens_infected.value");
$recovered = getGlobal("covid19sens_recovered.value");
$died = getGlobal("covid19sens_died.value");
$report = "<b>☣️ COVID-2019 ☣️</b>\n\n";//
$report .= "<b>Новосибирская область:</b>\n"; // данные пойдут с новой строки
$report .= "Заражений всего: <b>" . $infected. "</b>\n";
$report .= "Заражений за сутки: <b>" . $infected_day. "</b>\n";
$report .= "Выздоровело: <b>" . $recovered. "</b>\n";
$report .= "Смертей: <b>" . $died. "</b>\n";
$report .= "информация с ngs.ru <b> </b>\n";
return $report;
Прикольные значки спер у Ская, так же из его примера понял как данные выводить с новой строки.
Re: [Модуль] Telegram (telegram)
Добавлено: Пт апр 17, 2020 8:10 pm
yden
Добрый.
Плиз подскажите. Хочу сделать в телеге текстовое меню по примеру как в BotFather.
Пример:
Блаблабла
/свет гостиная - включение света в гостиной верхний
/свет кухня - включение света на кухне основной
Пользователь в телеге видит этот текст. Если он щелкает по надписи "/свет гостиная" то соответственно загорается свет - с зажиганием и командой в модуле у меня проблем нет. Я не могу понять как вывести сам текст и чтобы он был кликабельным:
Блаблабла
/свет гостиная - включение света в гостиной верхний
/свет кухня - включение света на кухне основной
благодарю
Re: [Модуль] Telegram (telegram)
Добавлено: Сб апр 18, 2020 11:57 am
solalex
yden писал(а): Пт апр 17, 2020 8:10 pm
Добрый.
Плиз подскажите. Хочу сделать в телеге текстовое меню по примеру как в BotFather.
Пример:
Блаблабла
/свет гостиная - включение света в гостиной верхний
/свет кухня - включение света на кухне основной
Текстовое меню вывести не проблема, но ссылки в телеге работают только для английских слов
Но обнаружился еще один косяк с командами
https://github.com/Anisan/majordomo-telegram/issues/14
Так что сначала ждем пока автор поправит, иначе это использовать нельзя.