Exemple #1
0
    $js_types .= "types.{$t_name}= [];\n";
    $ts = '';
    if ($t == $form['type']) {
        $ts = " selected='selected'";
    }
    $html_options_mess .= "\t<option value='{$t}'{$ts}>{$t_name}</option>\n";
    foreach ($sub_types[$t] as $code => $n) {
        $js_types .= "types.{$t_name}[{$n}] = '{$code}';\n";
    }
}
// process the  form -------------------------------------------------
if ($_REQUEST['do']) {
    if ($gateway == 'serial') {
        $mys = new MySensorSendSerial($form['s_port']);
    } else {
        $mys = new MySensorSendEthernet($form['ip'], $form['port']);
    }
    $result = $mys->sendMessage($form['node'], $form['child'], $form['type'], $form['ack'], $form['sub'], $form['payload'], $form['wait']);
    if ($result) {
        $class = 'success';
        if ($form['wait']) {
            $err_mess = "Received : <b style='color:black'>{$result}</b>";
        } else {
            $err_mess = "Successfull!";
        }
    } else {
        $class = 'danger';
        if ($form['wait']) {
            $err_mess = "Did not receive an answer!";
        } else {
            $err_mess = "Something went wrong. Check GW is receiving on {$form['ip']}:{$form['port']} ! ";
Exemple #2
0
<?php

require dirname(__FILE__) . '/src/mysensors.class.php';
// instance Class ---------------------------------------------
//Ethernet Gateway
$mys = new MySensorSendEthernet('10.1.7.40');
// or
//Serial Gateway
//$mys=new MySensorSendSerial('COM1');
// fetching the Gateway Version -------------------------------
echo "Gateway version is : ";
echo $mys->internal(0, 0, 'I_VERSION', false, true);
echo " <br>\n";
DisplayMessages(1);
echo "<hr>\n\n";
// Sending a message to a node -------------------------------
$node_id = '199';
$child_id = '0';
$type = 'V_STATUS';
$payload = 1;
echo "Sending {$type}={$payload} to node {$node_id} , child {$child_id}<br>\n";
$mys->set($node_id, $child_id, $type, $payload);
DisplayMessages(0);
//-----------------------------------------------
function DisplayMessages($with_answer = 0)
{
    global $mys;
    echo " - Message sent : " . $mys->GetRawMessage() . " <br>\n";
    if ($with_answer) {
        echo " - Answer received : " . $mys->GetRawAnswer() . " <br>\n";
    }
}
//check every one is set
if (!$argv[1]) {
    ExitError("Missing Address (IP or SerialPort) !");
}
if (!$argv[2]) {
    ExitError("Missing Command !");
}
if (!isset($argv[3]) or !isset($argv[4]) or !isset($argv[5])) {
    ExitError("Missing Command options !");
}
if (preg_match('#[a-z]+#i', $argv[1])) {
    //if letters it is a SerialPort
    $mys = new MySensorSendSerial($argv[1]);
} else {
    $mys = new MySensorSendEthernet($argv[1], $opts['p']);
}
$ack = isset($opts['a']) ? 1 : 0;
$wait = isset($opts['g']) ? 1 : 0;
$verbose = isset($opts['v']) ? 1 : 0;
$commands = array_keys($mys->getMessageTypes());
if (!in_array($argv[2], $commands)) {
    ExitError("Unknow command '{$argv[2]}' !");
}
if ($argv[2] == 'set' and !isset($argv[6])) {
    ExitError("Missing payload argument");
}
$r = $mys->sendMessage($argv[3], $argv[4], $argv[2], $ack, $argv[5], $argv[6], $wait);
if ($wait) {
    if ($r) {
        echo "{$r}\n";