Страница 1 из 1

Curl и передача параметров

Добавлено: Пн май 25, 2015 3:47 pm
fynto
Доброго всем дня.

О проекте MajorDoMo знаю давно, но никак не доходили руки. Решил поставить MajorDoMo и протестировать. Разобрался в некоторых вещах.
Я использую Arduino c Ethernet Shield. Скетч написан давно, и работает так, при отправлении на него запроса вида http://192.168.1.33/pin?id=5&cmd=0, он выполняет команду. Прочитал интернет понял, что запросы шлют с помощью curl.

Код: Выделить всё

    
$t = 'http://192.168.1.33/pin?id=5&cmd=0'; //target
    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL, $t);
    curl_setopt($ch, CURLOPT_HEADER, 1);
    curl_setopt($ch, CURLINFO_HEADER_OUT, 1);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (X11; Linux x86_64; rv:17.0) Gecko/17.0 Firefox/17.0');
    curl_setopt($ch, CURLOPT_ENCODING, 'utf-8');
    curl_setopt($ch, CURLOPT_TIMEOUT, 200);
    curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
    $data = curl_exec($ch);        
    curl_close($ch); 
Этот пример работает на ура. Подскажите, пожалуйста, как менять параметры id и cmd ну ни как не моуг понять.

Re: Curl и передача параметров

Добавлено: Пн май 25, 2015 4:23 pm
sergejey
Если используете сценарии/методы majordomo, то можно сократить код до одной строчки:

Код: Выделить всё

getURL(' http://192.168.1.33/pin?id=5&cmd=0',0); 
если надо менять параметры, то их можно вынести в переменные

Код: Выделить всё

$id='5';
$cmd='0';
getURL(' http://192.168.1.33/pin?id='.$id.'&cmd='.$cmd,0); 

Re: Curl и передача параметров

Добавлено: Пн май 25, 2015 5:25 pm
fynto
Да использую majordomo. Большое спасибо, с этим кодом работает, теперь можно создавать сценарии поведения

Re: Curl и передача параметров

Добавлено: Вт май 26, 2015 11:24 am
fynto
Ковыряясь вчера в majordomo настроил по примерам включаться реле. Через меню все работает. Но реле у меня китайское и управляется не 1, а 0. При этом кнопка отображает, что реле включено( значение 1), а на самом деле оно выключено, можно ли это как то поправить?