Re: [Железо] Tion MagicAir - Интеграция с облаком (Неофициальное API)
Добавлено: Ср янв 01, 2020 5:12 pm
Я вам давал примеры куда копать чтобы все заработало. Прямо сейчас по этим примера написал себе код - все работает. Включается авторежим, включается ручной. Все срабатывает. У меня Tion O2 + MA.
Вот мой код для запроса данных:
Код: Выделить всё
$token = getGlobal('TionMagicAir.access_token');
$data = TionGetData($token);
echo '<pre>';
print_r($data);// выводим данные для диагностики;
echo '</pre>';
SetGlobal('TionMagicAir.CO2', $data['zones'][1]['devices'][0]['data']['co2']);
SetGlobal('TionMagicAir.temperature', $data['zones'][1]['devices'][0]['data']['temperature']);
SetGlobal('TionMagicAir.humidity', $data['zones'][1]['devices'][0]['data']['humidity']);
SetGlobal('TionMagicAir.t_in', $data['zones'][1]['devices'][1]['data']['t_in']);
SetGlobal('TionMagicAir.t_set', $data['zones'][1]['devices'][1]['data']['t_set']);
SetGlobal('TionMagicAir.t_out', $data['zones'][1]['devices'][1]['data']['t_out']);
SetGlobal('TionMagicAir.device_guid', $data['zones'][1]['devices'][1]['guid']);
SetGlobal('TionMagicAir.zone_guid', $data['zones'][1]['guid']);
SetGlobal('Sensor_general01.value', $data['zones'][1]['devices'][0]['data']['co2']);
SetGlobal('Sensor_temphum04.value', $data['zones'][1]['devices'][0]['data']['temperature']);
SetGlobal('Sensor_temphum04.valueHumidity', $data['zones'][1]['devices'][0]['data']['humidity']);
SetGlobal('Sensor_temp05.value', $data['zones'][1]['devices'][1]['data']['t_in']);
SetGlobal('Sensor_temp06.value', $data['zones'][1]['devices'][1]['data']['t_out']);
Код: Выделить всё
$device_guid = getGlobal('TionMagicAir.device_guid');
$zone_guid = getGlobal('TionMagicAir.zone_guid');
$token = getGlobal('TionMagicAir.access_token');
$result_zone = TionSetMode($token, 'zone', $zone_guid, '{"mode":"auto","co2":750}');
$result_device = TionSetMode($token, 'device', $device_guid, '{"speed":3,"t_set":21,"is_on":true,"heater_enabled":true,"speed_min_set":1,"speed_max_set":4}');
echo '<pre>';
print_r($result_device); // выводим данные для диагностики;
echo 'Данные зоны<br>';
print_r($result_zone); // выводим данные для диагностики;
echo '</pre>';
Если написать "mode":"auto" то включается авто режим, если "mode":"manual" то ручной.
В авто режиме для device можно задавать настройки ограничения скорости, которые работают в авторежиме у бризера "speed_min_set":0,"speed_max_set":4