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

как фильтровать сообщение посланное mqtt клиентом

Добавлено: Сб июл 09, 2016 9:28 pm
ауслэндер
Ребята подскажите как фильтровать сообщение посланное mqtt клиентом.
Получаю сообщение со значением вот в таком виде:
{"val":28.6,"ts":"1468088269499","lc":"1468088269499","hm_addr":"KEQ0054089:1","hm_unit":"°C"}
привязал это значение к объекту со свойством. Всё нормально значение принимает но только вот такое длинное.
Могу ли я из него только 28.6 извлечь и в свойствах оставить чтобы потом график рисовать.
Очень благодарен заранее за совет

Re: как фильтровать сообщение посланное mqtt клиентом

Добавлено: Сб июл 09, 2016 9:56 pm
nightwind
Извлечь не можешь. но можешь связать со свойством объекта, к свойству привязать метод, который будет вырезать из строки то, что тебе нужно и присваивать куда нужно.

Re: как фильтровать сообщение посланное mqtt клиентом

Добавлено: Вс июл 10, 2016 12:12 am
ауслэндер
Спасибо за совет,
т.е. нужно создать какую-то новую переменную, присвоить ей вырезанное значение и сохранить на пару дней чтобы можно было график рисовать, я правильно понимаю?
Ещё бы найти код для вырезки.....
Но всё-ровно большое спасибо!

Re: как фильтровать сообщение посланное mqtt клиентом

Добавлено: Вс июл 10, 2016 2:50 pm
ауслэндер
не подскажете как правильно вырезать 28.6 градусов из значения:
{"val":28.6,"ts":"1468088269499","lc":"1468088269499","hm_addr":"KEQ0054089:1","hm_unit":"°C"}
в программирование скриптов не силён, пытаюсь замутить что-то вроде array('VALUE'=>$matches[2]) но что-то ничего не получается
Спасибо заранее

Re: как фильтровать сообщение посланное mqtt клиентом

Добавлено: Пн июл 11, 2016 9:19 am
nightwind
как то так попробуй
$data = json_decode( gg( где эта твоя строка) );
$temp = $data->val;