[Модуль] Telegram (telegram)
Модератор: immortal
- Eraser
- Сообщения: 1085
- Зарегистрирован: Вт окт 21, 2014 7:31 pm
- Откуда: Киров
- Благодарил (а): 14 раз
- Поблагодарили: 873 раза
- Контактная информация:
Re: Модуль "Telegram"
"Bot can't send messages to the bot"
никак не получится https://core.telegram.org/bots/faq#what ... my-bot-get
никак не получится https://core.telegram.org/bots/faq#what ... my-bot-get
Connect ---- Telegram
ЮMoney для благодарностей за помощь: 410012076838296 или нажмите кнопку "Спасибо"!!!
ЮMoney для благодарностей за помощь: 410012076838296 или нажмите кнопку "Спасибо"!!!

- m-malva
- Сообщения: 291
- Зарегистрирован: Чт фев 26, 2015 1:38 am
- Откуда: Санкт-Петербург
- Благодарил (а): 16 раз
- Поблагодарили: 66 раз
- Контактная информация:
Re: Модуль "Telegram"
Уважаемый Eraser
Подскажите почему так происходит?
В шаблонах есть шаблон "Найди фильм"
он запускает скрипт
выполнение которого подтверждается в чате и в Telegram
если я еще раз вызову скрипт то отправка в Telegram не происходит
после третьего вызова в Telegram перестает работать как на отправку так и на прием
При этом Алиса нормально отрабатывает все что вводится локально
Отваливается модуль только при выполнении этого скрипта (правда он единственный у меня с запросом к бд)
Подскажите почему так происходит?
В шаблонах есть шаблон "Найди фильм"
он запускает скрипт
СпойлерПоказать
Код: Выделить всё
$kino=$params['kino'];
say ("Ищу фильм ".$kino." в домашних базах",3);
//соединяемся с mysql
include_once("./config.php");
$connect_to_db = mysql_connect(DB_HOST, DB_USER, DB_PASSWORD)
or die("Could not connect: " . mysql_error());
// подключаемся к базе данных
mysql_select_db("db_terminal",$connect_to_db)
or die("Could not select DB: " . mysql_error());
mysql_query ("SET NAMES utf8");//Устанавливаем кодировку
// значения поиск по похожему
$sql="SELECT * FROM `video_list` WHERE `name` LIKE '%$kino%'";
// выбираем из таблицы
$result=mysql_query($sql,$connect_to_db)
or die(mysql_error());
//Проверяем "есть че"
if(mysql_num_rows($result)){
while($arr=mysql_fetch_array($result)) {
$o=gg("Folder01.skan_dir").'\\'.$arr['name'];
$mediafile="smb:".str_replace('\\','/', $o);
}
}else{
echo "не нашла".$kino;
return;
}
//отправка в Коди
say ("Сейчас ".gg("XBMC.statusText")." ".gg("XBMC.status"));
echo "нашла ".$mediafile;
if (gg("NobodyHomeMode.active")=="1"){
say("Так, как дома никого нет, видеофайл пока помещу в отложенный запуск",3);
SetGlobal("XBMC.playafter",$mediafile);
}else{
if (gg("XBMC.Online")=="1"){
say ("Отправляю в медиаплеер ".gg("XBMC.statusText"),5);
$url="http://".gg("XBMC.IP").":".gg("XBMC.Port")."/jsonrpc?request={%22jsonrpc%22:%222.0%22,%22method%22:%22Player.Open%22,%22params%22:{%22item%22:{%22file%22:%22".urlencode($mediafile)."%22}},%22id%22:1}";
fopen($url, 'r');
}else{
$hw_comp = getGlobal('XBMC.MAC');
$comp_name = getGlobal('XBMC.statusText');
rs("WakeOnLAN",array("hw_comp"=>$hw_comp, "comp_name"=>$comp_name ));
say("Видеофайл пока помещу в отложенный запуск",5);
SetGlobal("XBMC.playafter",$mediafile);
}
}
СпойлерПоказать
СпойлерПоказать
При этом Алиса нормально отрабатывает все что вводится локально
СпойлерПоказать
- m-malva
- Сообщения: 291
- Зарегистрирован: Чт фев 26, 2015 1:38 am
- Откуда: Санкт-Петербург
- Благодарил (а): 16 раз
- Поблагодарили: 66 раз
- Контактная информация:
- Eraser
- Сообщения: 1085
- Зарегистрирован: Вт окт 21, 2014 7:31 pm
- Откуда: Киров
- Благодарил (а): 14 раз
- Поблагодарили: 873 раза
- Контактная информация:
Re: Модуль "Telegram"
возможно проблема в rs("WakeOnLAN",array("hw_comp"=>$hw_comp, "comp_name"=>$comp_name ));
- Рейтинг: 1.16%
Connect ---- Telegram
ЮMoney для благодарностей за помощь: 410012076838296 или нажмите кнопку "Спасибо"!!!
ЮMoney для благодарностей за помощь: 410012076838296 или нажмите кнопку "Спасибо"!!!

- m-malva
- Сообщения: 291
- Зарегистрирован: Чт фев 26, 2015 1:38 am
- Откуда: Санкт-Петербург
- Благодарил (а): 16 раз
- Поблагодарили: 66 раз
- Контактная информация:
Re: Модуль "Telegram"
да спасиб. похоже в нем.Eraser писал(а):возможно проблема в rs("WakeOnLAN",array("hw_comp"=>$hw_comp, "comp_name"=>$comp_name ));
но почему WakeOnLAN останавливает работу модуля?
СпойлерПоказать
Код: Выделить всё
$comp_name = $params['comp_name'];
$hw_comp = $params['hw_comp'];
say('Пытаюсь включить '.$comp_name,1);
magicPacket($hw_comp);
function magicPacket($mac,$addr='255.255.255.255',$socket_number=7) {
//split up the mac address based upon the colons in the string
$addr_byte = explode(':', $mac);
$hw_addr = '';
for ($a=0; $a <6; $a++)
$hw_addr .=chr(hexdec($addr_byte[$a])); //convert the hex to its decimal equivalent, encode as a character, and repeat 16 times
$msg = str_repeat(chr(255),6); //FF in decimal is 255, which is then encoded as a char as with our mac address
for ($a = 1; $a <= 16; $a++)
$msg .= $hw_addr;
$s = socket_create(AF_INET, SOCK_DGRAM, SOL_UDP); //create our socket
if ($s == false) {
say('У меня не получается включить, ошибка создания сокета',1);
echo "Error creating socket!\n";
echo "Error code is '".socket_last_error($s)."'- " . socket_strerror(socket_last_error($s));
return false;
}
else {
// setting a broadcast option to socket:
//$opt_ret = socket_set_option($s, 1, 6, TRUE);
$opt_ret = socket_set_option($s,SOL_SOCKET,SO_BROADCAST,true);
if($opt_ret <0) {
echo "setsockopt() failed, error: " . strerror($opt_ret) ."\n";
return false;
}
if(socket_sendto($s, $msg, strlen($msg), 0, $addr,$socket_number)) {
socket_close($s);
return true;
}
else {
return false;
}
}
}
- Eraser
- Сообщения: 1085
- Зарегистрирован: Вт окт 21, 2014 7:31 pm
- Откуда: Киров
- Благодарил (а): 14 раз
- Поблагодарили: 873 раза
- Контактная информация:
Re: Модуль "Telegram"
Обновление
Команды с параметрами (пример wget http://....., название команды wget, и в обработчике из $text выделяются предаваемые параметры)
В настройки добавлен параметр Debug - расширенная информация по запросам к серверу Telegram
Команды с параметрами (пример wget http://....., название команды wget, и в обработчике из $text выделяются предаваемые параметры)
В настройки добавлен параметр Debug - расширенная информация по запросам к серверу Telegram
Connect ---- Telegram
ЮMoney для благодарностей за помощь: 410012076838296 или нажмите кнопку "Спасибо"!!!
ЮMoney для благодарностей за помощь: 410012076838296 или нажмите кнопку "Спасибо"!!!

- m-malva
- Сообщения: 291
- Зарегистрирован: Чт фев 26, 2015 1:38 am
- Откуда: Санкт-Петербург
- Благодарил (а): 16 раз
- Поблагодарили: 66 раз
- Контактная информация:
Re: Модуль "Telegram"
Уважаемый Eraser.
А почему не добавили стикеры, файлы, и все остальные функции?
А почему не добавили стикеры, файлы, и все остальные функции?
-
- Сообщения: 3006
- Зарегистрирован: Чт авг 21, 2014 8:28 am
- Откуда: Киров, Россия
- Благодарил (а): 400 раз
- Поблагодарили: 1754 раза
- Контактная информация:
Re: Модуль "Telegram"
Ребята, подкиньте идей, кто как использует этот модуль. Какие команды реализуете? О чем оповещаете? А то фантазии что-то не хватает. ))
MajorDoMo (GitHub) на Cubietruck. ОС Debian 7 (wheezy) (kernel 3.4.105) с переносом на HDD.
Мой CONNECT | Блоги | Telegram
Мой CONNECT | Блоги | Telegram
- Eraser
- Сообщения: 1085
- Зарегистрирован: Вт окт 21, 2014 7:31 pm
- Откуда: Киров
- Благодарил (а): 14 раз
- Поблагодарили: 873 раза
- Контактная информация:
Re: Модуль "Telegram"
никто не просил, а мне как-то пока не надо былоm-malva писал(а):Уважаемый Eraser.
А почему не добавили стикеры, файлы, и все остальные функции?

добавлю
а какие остальные функции?
Connect ---- Telegram
ЮMoney для благодарностей за помощь: 410012076838296 или нажмите кнопку "Спасибо"!!!
ЮMoney для благодарностей за помощь: 410012076838296 или нажмите кнопку "Спасибо"!!!

- Eraser
- Сообщения: 1085
- Зарегистрирован: Вт окт 21, 2014 7:31 pm
- Откуда: Киров
- Благодарил (а): 14 раз
- Поблагодарили: 873 раза
- Контактная информация:
Re: Модуль "Telegram"
как пример по команде, Алиса мне высылает изображение с вебкамерыskysilver писал(а):Ребята, подкиньте идей, кто как использует этот модуль. Какие команды реализуете? О чем оповещаете? А то фантазии что-то не хватает. ))
Код: Выделить всё
echo $chat_id;
$url = "http://192.168.0.111:8765/picture/1/current/";
$img = "/var/www/files/webcam1.jpg";
$data = file_get_contents($url);
$handle = fopen($img, "w");
fwrite($handle, $data);
fclose($handle);
include_once(DIR_MODULES . 'telegram/telegram.class.php');
$telegram_module = new telegram();
$telegram_module->sendImageToUser($chat_id,$img);
echo "send\n";
Последний раз редактировалось Eraser Чт апр 28, 2016 10:57 am, всего редактировалось 1 раз.
Connect ---- Telegram
ЮMoney для благодарностей за помощь: 410012076838296 или нажмите кнопку "Спасибо"!!!
ЮMoney для благодарностей за помощь: 410012076838296 или нажмите кнопку "Спасибо"!!!
