a:1:{i:0;a:6:{s:5:"TITLE";s:10:"Megadevice";s:5:"NOLOG";s:1:"1";s:11:"DESCRIPTION";s:0:"";s:7:"METHODS";a:3:{i:0;a:7:{s:5:"TITLE";s:13:"statusChanged";s:11:"DESCRIPTION";s:53:"OBSOLETE.
We called this method from external script";s:4:"CODE";s:805:"// Try to resolve MegaD object by IP
$ip = $_SERVER['REMOTE_ADDR'];
$objects=getObjectsByClass("Megadevice");
foreach($objects as $obj) {
 if (getGlobal($obj['TITLE'].".ipAddress") == $ip)
   $megaD = $obj;
}
if(!$megaD) {
  DebMes('Cannot find Megadevice with ip = '.$ip);
  exit;
}
// Try to find Light objects (by device and input port)
$inputDevice = $megaD['TITLE'];
$inputPort = $params['pt'];
$objects=getObjectsByClass("Light");
foreach($objects as $obj) {
 if (getGlobal($obj['TITLE'].".inputDevice") == $inputDevice &&
   getGlobal($obj['TITLE'].".inputPort") == $inputPort)
   $light = $obj;
}
if(!$light) {
  DebMes(sprintf('Cannot find Light with inputDevice = %s and inputPort = %d', $inputDevice, $inputPort));
  exit;
}
callMethod($light['TITLE'].'.switchPressed');";s:11:"CALL_PARENT";s:1:"0";s:9:"SCRIPT_ID";s:1:"0";s:8:"EXECUTED";s:19:"2013-10-08 00:07:48";s:15:"EXECUTED_PARAMS";s:65:"a:2:{s:2:"pt";s:1:"6";s:21:"ORIGINAL_OBJECT_TITLE";s:6:"MegaD1";}";}i:1;a:7:{s:5:"TITLE";s:9:"setOutput";s:11:"DESCRIPTION";s:97:"Sends command like http://192.168.0.14/sec/?cmd=2:1
Expects
$params['output']
$params['value']";s:4:"CODE";s:305:"// Expects 'output' and 'value' in $params
$cmdUrl = sprintf('http://%s/%s/?cmd=%d:%d', $this->getProperty('IpAddress'), 
  $this->getProperty('Password'), intval($params['output']),
  intval($params['value']));
$log = getLogger($this);
$log->trace('setOutput method: '.$cmdUrl);
getURL($cmdUrl, 0);";s:11:"CALL_PARENT";s:1:"0";s:9:"SCRIPT_ID";s:1:"0";s:8:"EXECUTED";s:19:"2014-07-13 22:45:01";s:15:"EXECUTED_PARAMS";s:86:"a:3:{s:21:"ORIGINAL_OBJECT_TITLE";s:6:"MegaD2";s:6:"output";s:2:"13";s:5:"value";i:1;}";}i:2;a:7:{s:5:"TITLE";s:9:"getOutput";s:11:"DESCRIPTION";s:253:"It generates and sends command like http://192.168.0.20/sec/?pt=4&cmd=get
Method requires following parameters : 
$params['output'] - number of output port;
$params['propertyName'] - object name and property name. An example "MyBedroomLight.enabled".";s:4:"CODE";s:517:"// Expects 'output' and 'value' in $params
$log = getLogger($this);
$cmdUrl = sprintf ("http://%s/%s/?pt=%d&cmd=get", $this->getProperty('IpAddress'), 
  $this->getProperty('Password'), intval($params['output']));
$state = trim(file_get_contents($cmdUrl));
$log->trace(sprintf('getOutput method: %s returned %s', $cmdUrl, $state));
$value = stripos($state, 'ON') === 0 ? 1 : 0;
setGlobal($params['propertyName'], $value);
$log->trace(sprintf('getOutput method: set %s = %d', $params['propertyName'], $value));";s:11:"CALL_PARENT";s:1:"0";s:9:"SCRIPT_ID";s:1:"0";s:8:"EXECUTED";s:19:"2014-07-13 22:45:00";s:15:"EXECUTED_PARAMS";s:120:"a:3:{s:21:"ORIGINAL_OBJECT_TITLE";s:6:"MegaD5";s:6:"output";s:1:"6";s:12:"propertyName";s:23:"Corridor1Sensor.enabled";}";}}s:10:"PROPERTIES";a:5:{i:0;a:4:{s:5:"TITLE";s:9:"ipAddress";s:11:"DESCRIPTION";s:0:"";s:12:"KEEP_HISTORY";s:1:"0";s:8:"ONCHANGE";s:0:"";}i:1;a:4:{s:5:"TITLE";s:8:"password";s:11:"DESCRIPTION";s:29:""sec" по умолчанию";s:12:"KEEP_HISTORY";s:1:"0";s:8:"ONCHANGE";s:0:"";}i:2;a:4:{s:5:"TITLE";s:11:"temperature";s:11:"DESCRIPTION";s:18:"Device temperature";s:12:"KEEP_HISTORY";s:1:"5";s:8:"ONCHANGE";s:0:"";}i:3;a:4:{s:5:"TITLE";s:2:"id";s:11:"DESCRIPTION";s:63:"MegaDevice ID. Property is present starting from firmware v3.18";s:12:"KEEP_HISTORY";s:1:"0";s:8:"ONCHANGE";s:0:"";}i:4;a:4:{s:5:"TITLE";s:8:"isOnline";s:11:"DESCRIPTION";s:71:"External script will ping device and write here 0\1 if device is online";s:12:"KEEP_HISTORY";s:1:"0";s:8:"ONCHANGE";s:0:"";}}s:7:"OBJECTS";a:5:{i:0;a:3:{s:5:"TITLE";s:6:"MegaD1";s:11:"DESCRIPTION";s:0:"";s:7:"METHODS";a:0:{}}i:1;a:3:{s:5:"TITLE";s:6:"MegaD2";s:11:"DESCRIPTION";s:0:"";s:7:"METHODS";a:0:{}}i:2;a:3:{s:5:"TITLE";s:6:"MegaD3";s:11:"DESCRIPTION";s:0:"";s:7:"METHODS";a:0:{}}i:3;a:3:{s:5:"TITLE";s:6:"MegaD4";s:11:"DESCRIPTION";s:34:"РЩ4. датчики + замок";s:7:"METHODS";a:0:{}}i:4;a:3:{s:5:"TITLE";s:6:"MegaD5";s:11:"DESCRIPTION";s:0:"";s:7:"METHODS";a:0:{}}}}}