checkFreeSpace
|
$max_usage=90; //%
$output=array();
exec('df',$output);
//var_dump($output);
$problems=0;
$problems_details='';
foreach($output as $line) {
if (preg_match('/(\d+)% (\/.+)/',$line,$m))
$proc=$m[1];
$path=$m[2];
if ($proc>$max_usage) {
$problems++;
$problems_details.="$path: $proc; ";
}
//echo "$path: $proc%<br/>";
}
sg("ThisComputer.SpaceProblems",$problems);
sg("ThisComputer.SpaceProblems_Details",$problems_details);
setTimeOut('checkFreeSpace','runScript("checkFreeSpace");',5*60);
|
hello_world
|
пора вставать
setGlobal('minMsgLevel',1);
Say('Утро доброе! Сейчас '.timeNow(),2);
RunScript('readWeatherToday');
if (gg('RMPro.state')==1) {
CallMethod('AutoMode.activate');
RunScript('Zhaluzion');
RunScript('WatchTV');
// Если режим темного времени суток включен или просто темно в комнате
if (gg('DarknessMode.active')==1 || gg('Zalvkvartire.illumination'<350)) {
RunScript('TurnLightsOn');
}
RunScript('504');
CallMethod('AutoMode.deactivate');
} else Say('RM Pro недоступен, не могу ничего включить',2);
|
isWorking
|
Проверяем, рабочий день или выходной
//$i = 0 — рабочий день;
//$i = 1 — праздничный/нерабочий день;
//$i = 2 — сокращенный на 1 час рабочий день.
$date = gg('dateymd');
$weekend = idate(w);
$i = file_get_contents('https://isdayoff.ru/'.$date.'?pre=1');
$w=0;
$param = 'Рабочий день';
if($i==2) $param = 'Cокращенный рабочий день';
if($i==1) {
$param = 'Праздник';
if ($weekend==6 || $weekend==0) {
$param = 'Выходной день';
}
$w=1;
}
setGlobal('ThisComputer.isWorking',$param);
if ($w==1 && !getGlobal('WeekendMode.active')) callMethod('WeekendMode.activate');
if ($w<>1 && getGlobal('WeekendMode.active')) callMethod('WeekendMode.deactivate');
|
isWorking_copy
|
Проверяем, рабочий день или выходной
//$i = 0 — рабочий день;
//$i = 2 — праздничный/нерабочий день;
//$i = 3 — сокращенный на 1 час рабочий день.
$json = file_get_contents('http://basicdata.ru/api/json/calend/');
$array = json_decode($json, true);
$year = idate(Y);
$month = idate(m);
$day = idate(d);
$weekend = idate(w);
$i = $array["data"][$year][$month][$day]["isWorking"];
$w=0;
$param = 'Рабочий день';
if($i==3) $param = 'Cокращенный рабочий день';
if ($weekend==6 || $weekend==0) {
$param = 'Выходной день';
$w=1;
}
if($i==2) {
$param = 'Праздник';
$w=1;
}
setGlobal('ThisComputer.isWorking',$param);
if ($w==1 && !getGlobal('WeekendMode.active')) callMethod('WeekendMode.activate');
if ($w<>1 && getGlobal('WeekendMode.active')) callMethod('WeekendMode.deactivate');
|
morning_alarm
|
Проверяем, если рабочий день, пора вставать
if (getGlobal('WeekendMode.active')<>1) {
RunScript('hello_world');
}
|
IpFromMac
|
Определяем IP-адрес по mac-адресу
$mac='34-CE-00-90-75-82';
$matches=array();
//
exec('su arp-scan -T 34-CE-00-90-75-82 192.168.1.0/24 2> /tmp/readings1.txt');
$rgResult = exec('cat /tmp/readings1.txt');
var_dump($rgResult);
//exec('arp -a|find "'.$mac.'"', $rgResult);
//$ip_template='/^(25[0-5]|2[0-4][0-9]|[0-1][0-9]{2}|[0-9]{2}|[0-9])(\.(25[0-5]|2[0-4][0-9]|[0-1][0-9]{2}|[0-9]{2}|[0-9])){3}$/';
$ip_template='/\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}/';
foreach($rgResult as $key=>$value)
{
if (strpos($value, $mac)!==FALSE)
{
preg_match($ip_template, $value, $matches);
break;
}
};
$ip=$matches[0];// собственно, Ваш MAC-адрес.
//echo $ip_template.'</br>';
echo "IP = ".$ip;
|
MQTT
|
$t=27;
exec('mosquitto_pub -h vitthome.ddns.net -t /XIAOMI/json/sensors/tmpsnsr -m "'.$t.'"');
|
recordSound
|
Записываем звук
$fn="/var/www/cached/rec/".time().".wav";
//$fn="/var/www/cached/rec/1234.wav";
$cmd="arecord -d 5 -t wav -f cd ".$fn;
//echo $cmd;
//playsound("/var/www/sounds/ok.mp3");
exec($cmd);
//playsound("/var/www/sounds/ok.mp3");
//echo "записан файл: ".$cmd;
//playsound($fn);
runScript('speechyandexcurl', array('fn' =>$fn));
|
rssProcess
|
/*
$params['URL'] --link
$params['TITLE'] -- title
$params['BODY'] -- body
$params['CHANNEL_ID'] -- channel ID
$params['CHANNEL_TITLE'] -- channed title
*/
//say($params['TITLE']); // reading news
|
sendAdminTelegram
|
Тестовый сценарий как отправлять сообщения в телеграм. Хотя, по-ходу достаточно просто say, потом удалить.
include(DIR_MODULES . 'telegram/telegram.class.php');
$telegram_module = new telegram();
$telegram_module->sendAction(174019010,"typing");
$telegram_module->sendMessageToAdmin($params);
|
speechyandexcurl
|
Распознаем записанный текст
function generateRandomSelection($min, $max, $count)
{
$result=array();
if($min>$max) return $result;
$count=min(max($count,0),$max-$min+1);
while(count($result)<$count) {
$value=rand($min,$max-count($result));
foreach($result as $used) if($used<=$value) $value++; else break;
$result[]=dechex($value);
sort($result);
}
shuffle($result);
return $result;}
$key="5157d93a-cac9-4e71-82e2-bc4c7ac6a990";
$filename="@".$params['fn'];
if ($fn=="@"){$filename='@/var/www/cached/voice/8622cf4b70d9508f1910bdb77e74d5d8_ivona.mp3';}
//$filename='@/var/www/cached/voice/probki.wav';
//echo substr($filename,-5);
$ras=explode(".",substr($filename,-5));
if ($ras[1]=="wav"){$tip="audio/x-wav";}
else if ($ras[1]=="mp3"){$tip="audio/x-mpeg-3";}
$uuid=generateRandomSelection(0,30,64);
$uuid=implode($uuid);
$uuid=substr($uuid,1,32);
$url="curl -X POST -H \"Content-Type: ".$tip."\" --data-binary \"".$filename."\" \"https://asr.yandex.net/asr_xml?uuid=".$uuid."&key=".$key."&topic=queries\"";
//echo $url;
//say('Пытаюсь распознать файл '.$filename,1);
$answ=shell_exec($url);
preg_match("/<recognitionResults[^>]*>\s*<variant[^>]*>([^<]+)<\/variant>/i", $answ, $answ1);
echo $answ1[1];
say($answ1[1],2);
|
Test
|
|
test1
|
global $session; //Обращаемся к глобальной переменной
var_dump ($session);
$ter = $session->data['TERMINAL']; // Считываем терминал
if ($ter == '') $ter = 'main';
$objects=getObjectsByClass("SRelays"); // Ищем объект терминала
foreach($objects as $obj) {
if (gg($obj['TITLE'].'.loadType') == 'terminal'){ // Если объект - это терминал
if ($obj['TITLE'] == $ter){ // И он совпадает с терминалом выше
$objects1=getObjectsByClass("Rooms"); // Получаем комнаты
foreach($objects1 as $obj1) {
if (gg($obj['TITLE'].'.LinkedRoom') == $obj1['TITLE']) { // Если нашли комнату с терминалом, включаем там все ТВ
//CallMethod($obj1['TITLE'].'.turnOnOff',array('loadType'=>'multimedia','OnOff'=>'turnOn'));
}
}
}
}
}
|
test2
|
for($i=0;$i<=100;$i++) brLinkCommand('Zhal1on');
|
watchSend
|
//if ($chat_id == -1001301946569) {
// Say('Вова',1);
//----------------------------------------------------
// Здесь надо конвертировать полученный голос $file_path в AMR формат, который понимают часы
$cachedFileName = "/var/www/files/voice.amr";
exec('ffmpeg -y -i "'.$file_path.'" -ar 8000 "'.$cachedFileName.'"');
@touch($cachedFileName);
//----------------------------------------------------
// Отправка голосового файла в часы
include_once(DIR_MODULES . 'app_GpsWatch/app_GpsWatch.class.php');
$watch_module = new app_GpsWatch();
$watch_module -> sendVoice(1,$cachedFileName);
$skip = true;
//}
|
Greeting
|
Зачем-то дублирует запрос статуса системы
runScript("reportStatus", array());
|
img2telegram
|
Отправляем картинку в телеграм
$objects=getObjectsByClass("SCameras");
foreach($objects as $obj) {
callMethod($obj['TITLE'].'.takeSnapshot');
$img = '/var/www/cms/images/'.gg($obj['TITLE'].'.snapshot');
include_once(DIR_MODULES . 'telegram/telegram.class.php');
$telegram_module = new telegram();
//$telegram_module->sendImageToUser($chat_id,$img);
$telegram_module->sendImageToAdmin($img);
}
|
readWeatherToday
|
Запрос погоды.
$weather.="Сегодня ожидается ".str_replace('°',' ',getGlobal('weatherToday'));
$weather.=".\nЗавтра ".str_replace('°',' ',getGlobal('weatherTomorrow'));
$weather.=".\nСейчас на улице ".gg('Sensor_temphum01.value').'.';
$weather=str_replace('°','',$weather);
say($weather,2);
|
reportStatus
|
Запрос статуса системы. Добавил дачу сюда.
$res='';
if (gg('Security.stateColor')=='green' && gg('System.stateColor')=='green' && gg('Communication.stateColor')=='green' && gg('Dacha.stateColor')=='green'){
$res='Все системы работают в штатном режиме';
} else {
if (gg('Security.stateColor')!='green') {
$res.=" Проблема безопасности: ".getGlobal('Security.stateDetails');
}
if (gg('System.stateColor')!='green') {
$res.=" Системная проблема: ".getGlobal('System.stateDetails');
}
if (gg('Communication.stateColor')!='green') {
$res.=" Проблема связи: ".getGlobal('Communication.stateDetails');
}
if (gg('Dacha.stateColor')!='green') {
$res.=" Проблема со связью с дачей";
}
}
//echo $res;
Say ($res, 2);
|
sayYes
|
Выбираем ответ готово-сделано
$input = array("Готово", "Сделано", "Хорошо", "Окей", "Выполнено");
$rand_keys = array_rand($input, 1);
global $session; //Обращаемся к глобальной переменной
$term = $session->data['TERMINAL'];
//if ($term='main') Say($input[$rand_keys], 2);
//else
if($term=='') $term='main';
SayTo($input[$rand_keys], 2, $term);
return($input[$rand_keys]);
|
sendUserTelegram
|
Отправляем сообщение в телеграм всем
include(DIR_MODULES . 'telegram/telegram.class.php');
$telegram_module = new telegram();
//$telegram_module->sendMessageToUser(139809588, "test message");
//$telegram_module->sendMessageToAdmin("test message to admin");
//$telegram_module->sendMessageToAll("test message to all");
//$telegram_module->sendAction(174019010,"typing");
//$telegram_module->sendMessageToAll($params);
$telegram_module->sendMessageToUser(-1001301946569, $params);
|
timeNow
|
Кукушка
|
watchVoice
|
слушаем часы
//----------------------------------------------------
// Алиса сообщает о голосовом сообщении.
say('Пришло голосовое сообщение от Вовы', 2);
//----------------------------------------------------
// Алиса проговаривает пришедший из часов голосовой файл
playSound($params['path_voice']);
//----------------------------------------------------
// Конвертирование файла .AMR в .OGG
$cachedFileName = "/var/www/files/voice.ogg";
exec('ffmpeg -y -i "'.$params['path_voice'].'" "'.$cachedFileName.'"');
@touch($cachedFileName);
//----------------------------------------------------
// Отправка голосового файла в Телеграмм
include_once(DIR_MODULES . 'telegram/telegram.class.php');
$telegram_module = new telegram();
$telegram_module->sendVoiceToUser(-1001301946569, $cachedFileName);
|
whoWhere
|
смотрим кто где
$objects=getObjectsByClass("Users");
$text = "";
foreach($objects as $obj) {
$title = getGlobal($obj['TITLE'].".fullName");
if ($title == '') break;
$batt = "n/a";
$charging = getGlobal($obj['TITLE'].".Charging");
if (getGlobal($obj['TITLE'].".BattLevel")<>"") {
$batt = getGlobal($obj['TITLE'].".BattLevel")."%";
if ($charging == 1) $batt .= ", на зарядке";
}
$text .= $title." (".$batt.") находится в месте ".getGlobal($obj['TITLE'].".seenAt")." в ".getGlobal($obj['TITLE'].".CoordinatesUpdated").". \n";
}
Say($text,0);
//runScript('sendUserTelegram',$text);
|
wol_mitv
|
Будим ТВ дома
# Wake on LAN - (c) HotKey@spr.at, upgraded by Murzik
# Modified by Allan Barizo http://www.hackernotcracker.com
flush();
function WakeOnLan($addr, $mac,$socket_number) {
$addr_byte = explode(':', $mac);
$hw_addr = '';
for ($a=0; $a <6; $a++) $hw_addr .= chr(hexdec($addr_byte[$a]));
$msg = chr(255).chr(255).chr(255).chr(255).chr(255).chr(255);
for ($a = 1; $a <= 16; $a++) $msg .= $hw_addr;
// send it to the broadcast address using UDP
// SQL_BROADCAST option isn't help!!
$s = socket_create(AF_INET, SOCK_DGRAM, SOL_UDP);
if ($s == false) {
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);
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)) {
echo "Magic Packet sent successfully!";
socket_close($s);
return TRUE;
}
else {
echo "Magic packet failed!";
return FALSE;
}
}
}
// Port number where the computer is listening. Usually, any number between 1-50000 will do. Normally people choose 7 or 9.
$socket_number = "7";
// MAC Address of the listening computer's network device
$mac_addy = "8C:5A:F8:25:79:B0";
// IP address of the listening computer. Input the domain name if you are using a hostname (like when under Dynamic DNS/IP)
$ip_addy = gethostbyname("192.168.1.255");
RunScript('sayYes');
WakeOnLan($ip_addy, $mac_addy,$socket_number);
|
wol_mitv_dacha
|
Будим ТВ на даче
# Wake on LAN - (c) HotKey@spr.at, upgraded by Murzik
# Modified by Allan Barizo http://www.hackernotcracker.com
flush();
function WakeOnLan($addr, $mac,$socket_number) {
$addr_byte = explode(':', $mac);
$hw_addr = '';
for ($a=0; $a <6; $a++) $hw_addr .= chr(hexdec($addr_byte[$a]));
$msg = chr(255).chr(255).chr(255).chr(255).chr(255).chr(255);
for ($a = 1; $a <= 16; $a++) $msg .= $hw_addr;
// send it to the broadcast address using UDP
// SQL_BROADCAST option isn't help!!
$s = socket_create(AF_INET, SOCK_DGRAM, SOL_UDP);
if ($s == false) {
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);
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)) {
echo "Magic Packet sent successfully!";
socket_close($s);
return TRUE;
}
else {
echo "Magic packet failed!";
return FALSE;
}
}
}
// Port number where the computer is listening. Usually, any number between 1-50000 will do. Normally people choose 7 or 9.
$socket_number = "7";
// MAC Address of the listening computer's network device
$mac_addy = "04:cf:8c:a9:6c:7b";
// IP address of the listening computer. Input the domain name if you are using a hostname (like when under Dynamic DNS/IP)
$ip_addy = gethostbyname("192.168.3.255");
RunScript('sayYes');
WakeOnLan($ip_addy, $mac_addy,$socket_number);
|
wol_vitalnew
|
Будим домашний комп
# Wake on LAN - (c) HotKey@spr.at, upgraded by Murzik
# Modified by Allan Barizo http://www.hackernotcracker.com
flush();
function WakeOnLan($addr, $mac,$socket_number) {
$addr_byte = explode(':', $mac);
$hw_addr = '';
for ($a=0; $a <6; $a++) $hw_addr .= chr(hexdec($addr_byte[$a]));
$msg = chr(255).chr(255).chr(255).chr(255).chr(255).chr(255);
for ($a = 1; $a <= 16; $a++) $msg .= $hw_addr;
// send it to the broadcast address using UDP
// SQL_BROADCAST option isn't help!!
$s = socket_create(AF_INET, SOCK_DGRAM, SOL_UDP);
if ($s == false) {
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);
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)) {
echo "Magic Packet sent successfully!";
socket_close($s);
return TRUE;
}
else {
echo "Magic packet failed!";
return FALSE;
}
}
}
// Port number where the computer is listening. Usually, any number between 1-50000 will do. Normally people choose 7 or 9.
$socket_number = "7";
// MAC Address of the listening computer's network device
$mac_addy = "90:E6:BA:25:27:23";
// IP address of the listening computer. Input the domain name if you are using a hostname (like when under Dynamic DNS/IP)
$ip_addy = gethostbyname("192.168.1.255");
RunScript('sayYes');
WakeOnLan($ip_addy, $mac_addy,$socket_number);
|
wol_vova
|
Будим Вовкин комп
# Wake on LAN - (c) HotKey@spr.at, upgraded by Murzik
# Modified by Allan Barizo http://www.hackernotcracker.com
flush();
function WakeOnLan($addr, $mac,$socket_number) {
$addr_byte = explode(':', $mac);
$hw_addr = '';
for ($a=0; $a <6; $a++) $hw_addr .= chr(hexdec($addr_byte[$a]));
$msg = chr(255).chr(255).chr(255).chr(255).chr(255).chr(255);
for ($a = 1; $a <= 16; $a++) $msg .= $hw_addr;
// send it to the broadcast address using UDP
// SQL_BROADCAST option isn't help!!
$s = socket_create(AF_INET, SOCK_DGRAM, SOL_UDP);
if ($s == false) {
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);
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)) {
echo "Magic Packet sent successfully!";
socket_close($s);
return TRUE;
}
else {
echo "Magic packet failed!";
return FALSE;
}
}
}
// Port number where the computer is listening. Usually, any number between 1-50000 will do. Normally people choose 7 or 9.
$socket_number = "7";
// MAC Address of the listening computer's network device
$mac_addy = "1C-7E-E5-5F-B8-3B";
// IP address of the listening computer. Input the domain name if you are using a hostname (like when under Dynamic DNS/IP)
$ip_addy = gethostbyname("192.168.3.255");
RunScript('sayYes');
WakeOnLan($ip_addy, $mac_addy,$socket_number);
|
Выключение
|
$filename = ROOT . '/database_backup/db.sql';
$mysqlDumpPath = "/usr/bin/mysqldump";
$mysqlDumpParam = " --user=" . DB_USER . " --password=" . DB_PASSWORD;
$mysqlDumpParam .= " --no-create-db --add-drop-table --databases " . DB_NAME;
if (file_exists($filename)) rename($filename, $filename . '.prev');
exec($mysqlDumpPath . $mysqlDumpParam . " > " . $filename);
say("Подготовка к выключению",2);
setTimeout("shutdownTimer","safe_exec('shutdown -h now');",15);
|
Перезагрузка
|
$filename = ROOT . '/database_backup/db.sql';
$mysqlDumpPath = "/usr/bin/mysqldump";
$mysqlDumpParam = " --user=" . DB_USER . " --password=" . DB_PASSWORD;
$mysqlDumpParam .= " --no-create-db --add-drop-table --databases " . DB_NAME;
if (file_exists($filename)) rename($filename, $filename . '.prev');
exec($mysqlDumpPath . $mysqlDumpParam . " > " . $filename);
say("Подготовка к перезагрузке",2);
setTimeout("shutdownTimer","safe_exec('shutdown -r now');",15);
|
AllMultimediaOff
|
Выключаем весь просмотр
global $session; //Обращаемся к глобальной переменной
$ter = $session->data['TERMINAL']; // Считываем терминал
if ($ter == 'Acer'){
if (gg('Relay40.status')==1) {
CallMethod('Spalnyapervyyetazh.turnOnOff',array('loadType'=>'multimedia','OnOff'=>'turnOff'));
} else Say('Управление недоступно, не могу ничего включить',2);
} else {
if (gg('RMPro.status')==1) {
CallMethod('Zalvkvartire.turnOnOff',array('loadType'=>'multimedia','OnOff'=>'turnOff'));
} else Say('Управление недоступно, не могу ничего включить',2);
}
// Если влючила автоматика, молчим
if (gg('AutoMode.active')<>1) RunScript('sayYes');
|
Backup
|
$state=$params['STATE'];
$desc=$params['DESCRIPTION'];
include_once(DIR_MODULES . 'telegram/telegram.class.php');
$telegram_module = new telegram();
$message = "Резервное копирование\nСтатус: <b>".$state."</b>";
if ($desc)
$message .= "\nОписание:".$desc;
$telegram_module->sendMessageToAdmin($message);
|
playFavoriteMusic
|
Играем музыку
Say('Включаем музыку',1);
// вытягиваем историю из переменной
$alreadyPlayed=gg("AlreadyPlayedMusic");
if (!$alreadyPlayed) {
$alreadyPlayed='0';
}
// выбираем случайную папку
$rec=SQLSelectOne("SELECT * FROM media_favorites WHERE ID NOT IN (".$alreadyPlayed.") ORDER BY RAND()");
if (!$rec['ID']) {
// папок больше не осталось, поэтому выбираем случайную и сбрасываем истоирю
$rec=SQLSelectOne("SELECT * FROM media_favorites ORDER BY RAND()");
$alreadyPlayed='0';
}
if ($rec['ID']) {
// добавляем выбранную папку в историю
$alreadyPlayed.=','.$rec['ID'];
sg("AlreadyPlayedMusic",$alreadyPlayed);
// запускаем на проигрывание
$collection=SQLSelectOne("SELECT * FROM collections WHERE ID=".(int)$rec['COLLECTION_ID']);
$path=$collection['PATH'].$rec['PATH'];
playMedia($path);
//setTimeOut('VLCPlayer_update',"callMethod('VLCPlayer.update');",10);
RunScript('sayYes');
}
|
playPause
|
getURL('http://localhost/rc/?command=vlc_pause',0);
|
playRadio
|
Включаем радио
RunScriptRunScriptRunScriptRunScriptRunScriptRunScriptRunScriptRunScript('sayYes');
cm('RadioSetting.Control',array('sta'=>'Пионер ФМ','cmd'=>'play','vol'=>40));
|
RunAllAfterEconom
|
включаем все после эконом режима
// Включаем будильник
//sg('AlarmClock01.AlarmOn', 1);
// Включаем подсветку или окна, в зависимости от режима темного ВС
if (gg('RMPro.state')==1) {
CallMethod('AutoMode.activate');
if (gg('DarknessMode.active')==1) {
//RunScript('TurnLightsOn');
} else RunScript('Zhaluzion');
// Включаем будильник
sg('AlarmClock01.AlarmOn',1);
// Розетки
CallMethod('Relay25.turnOn');
CallMethod('Relay27.turnOn');
CallMethod('AutoMode.deactivate');
} else Say('RM Pro недоступен, не могу ничего включить',2);
|
RunEconom
|
включаем эконом режим
// Включаем режим автоматики
CallMethod('AutoMode.activate');
// Выключаем климат-контроль
CallMethod('ClimateControl.deactivate');
// Выключаем будильник
sg('AlarmClock01.AlarmOn',0);
// И все объекты в режиме экономии
$objects=getObjectsByProperty('groupEco','=',1);
$total = count($objects);
for ($i = 0; $i < $total; $i++) {
callMethodSafe($objects[$i].'.turnOff');
}
if (gg('RMPro.state')==1) {
//Закрываем шторы
RunScript('Zhaluzioff');
//Выключаем телевизор
RunScript('AllMultimediaOff');
} else Say('RM Pro недоступен, не могу ничего включить',2);
// Выключаем весь свет
callMethod('Relay23.turnOn');
// Выключаем режим автоматики
CallMethod('AutoMode.deactivate');
|
TurnLightsOff
|
Выключение разом всей подсветки в зале
$objects=getObjectsByClass("Rooms");
foreach($objects as $obj) {
CallMethod($obj['TITLE'].'.turnOnOff',array('loadType'=>'sublight','OnOff'=>'turnOff'));
}
if (!gg('AutoMode.active')) RunScript('sayYes');
|
TurnLightsOn
|
Включение разом всей подсветки в зале
if (gg('RMPro.state')==1) {
$objects=getObjectsByClass("Rooms");
foreach($objects as $obj) {
CallMethod($obj['TITLE'].'.turnOnOff',array('loadType'=>'sublight','OnOff'=>'turnOn'));
}
if (!gg('AutoMode.active')) RunScript('sayYes');
} else Say('RM Pro недоступен, не могу ничего включить',2);
|
WatchTV
|
Смотрим ТВ
global $session; //Обращаемся к глобальной переменной
$ter = $session->data['TERMINAL']; // Считываем терминал
if ($ter == 'Acer'){
if (gg('Relay40.status')==1) {
CallMethod('Spalnyapervyyetazh.turnOnOff',array('loadType'=>'multimedia','OnOff'=>'turnOn'));
sleep(3);
sg('Relay36.av',1);
} else Say('Управление недоступно, не могу ничего включить',2);
} else {
if (gg('RMPro.status')==1) {
CallMethod('Zalvkvartire.turnOnOff',array('loadType'=>'multimedia','OnOff'=>'turnOn'));
} else Say('Управление недоступно, не могу ничего включить',2);
}
// Если влючила автоматика, молчим
if (gg('AutoMode.active')<>1) RunScript('sayYes');
|
Zhaluzioff
|
Закрываем обе створки жалюзи
if (gg('RMPro.status')==1) {
if(gg('Relay12.status')==1 || gg('Relay13.status')==1){
CallMethod('Relay12.turnOff');
CallMethod('Relay12.turnOff');
sleep(5);
CallMethod('Relay13.turnOff');
CallMethod('Relay13.turnOff');
// Если влючила автоматика, молчим
if (gg('AutoMode.active')<>1) RunScript('sayYes');
} else Say('Жалюзи уже закрыты');
} else Say('RM Pro недоступен, не могу ничего закрыть',2);
|
Zhaluzion
|
Открываем обе створки жалюзи
if (gg('RMPro.status')==1) {
if(gg('Relay12.status')<>1 || gg('Relay13.status')<>1){
CallMethod('Relay12.turnOn');
CallMethod('Relay12.turnOn');
sleep(5);
CallMethod('Relay13.turnOn');
CallMethod('Relay13.turnOn');
// Если влючила автоматика, молчим
if (gg('AutoMode.active')<>1) RunScript('sayYes');
} else Say('Жалюзи уже открыты');
} else Say('RM Pro недоступен, не могу ничего открыть',2);
|
1
|
Включаем канал Nickelodeon
|
2
|
Включаем канал Nickelodeon
|
22
|
Включаем канал 22
sg('Relay20.2',1);
Sleep(1);
sg('Relay20.2',1);
|
504
|
Включаем канал Nickelodeon
Sleep(1);
sg('Relay20.5',1);
Sleep(1);
brLinkCommand('Приставка_0_143');
Sleep(1);
sg('Relay20.4',1);
|
Next
|
Включаем канал Nickelodeon
sg('Relay20.channel+',1);
|
PauseTV
|
Ставим паузу
RunScript('sayYes');
sg('Relay20.pause',1);
sg('Himediaдом.ok',1);
|
PlayTV
|
Снимаем паузу
RunScript('sayYes');
sg('Relay20.pause',1);
sg('Himediaдом.ok', 1);
|
Prev
|
Включаем канал Nickelodeon
sg('Relay20.channel-',1);
|
volume+
|
делаем погромче
for ($i==1;$i<=5;$i++){
Sg('Relay19.vol+',1);
}
|
volume-
|
делаем потише
for ($i==1;$i<=5;$i++){
Sg('Relay19.vol-',1);
}
|