Добрый день уважаемые пользователи.
Маленький шаг вперед.
Как правило СМС которое мы получаем от весов это констатация факта. Ранее оно состояло из даты, времени, имени весов и текущих или последних параметров датчиков. Каждый раз когда общаюсь с пользователями стараюсь прислушиваться и по мере возможности реализовывать их предложения.
Поскольку менять серверную часть легче и в работу это вступает сразу для всех пользователей то сделал изменения именно на уровне сервера и СМС центра.
Теперь когда вы делаете запрос данных звонком на СМС центр +7 965 010-4499 в ответ получаете такое СМС:
BSMD170511-00275
0.299 kg
[+0.192 kg]
24.9 C
24.2 %
25.189 C
GSM 28 %
Bat 100 %
2017-05-20 16:17:04
Что значат эти поля:
Имя весов
Вес (ниже время снятия показания)
[привес или уменьшение веса]
температура 1
влажность
температура 2
Уровень сигнала сотовой сети
Заряд батареи.
Дата, время показаний.
Теперь немного о том, откуда взялся вес в скобках. Сейчас система обращается к накопленным данным и забирает по весам последнее показание. Оно было в 2017-05-20 16:17:04 вес в это время составлял 0.299 kg. После этого программа переводит время ровно на сутки назад и начинает искать показания около этого времени 2017-05-19 16:17:04. Программа ищет в прошлых сутках отступая 15 минут назад и идет на полчаса вперед. Если ей удается найти в это время снятое показание, она принимает его за вес прошлых суток. Соответственно берем разницу сегодняшнего дня минус вчера, знаем привес. Если весы только включились и накопленных данных еще нет. Привес всегда будет +0 kg.
Подчеркну, этот режим предназначен для сравнения веса от точки запроса (точки последних данных). Если вы запросили данные сегодня в 14:20:45 то и прошлый вес будет найден вчера в это время. Если в 15:00:00 значит срез информации будет на 15:00:00 сегодня и 15:00:00 вчера.
(планирую сделать автоотчет в 21 час ежедневно, но только для пользователей России пока. К сожалению слать СМС за границу очень накладно, зарубежные пользователи будут получать электронное письмо.)