d_kishkinev (d_kishkinev) wrote,
d_kishkinev
d_kishkinev

Автоматически запрашиваем Particle сервер и парсим JSON ответ в растущий файл

Занимаю разработкой своего кастомизированного GPS трекера с удаленной дуплексной связью на основе платформы Particle.
Ибо это будет относительно недорого и как я хочу, а не как разработчики за очень дорого делают, да еще всегда не с теми функциями, что нужны. Идея - на трекере замеряются GPS фиксы каждую секунду, наполняем ими eeprom память, при наличии мобильной связи - скидываем данные на сервер. Единственное что будет довольно тяжело, грамм 30-40, но мои голуби потянут (многие 400-500 г и летают до 20 км максимум).

Купил и осваиваю 2G Particle Electron. Отличная штука. Есть документация, поддержка, форум. Платформа существует уже несколько лет. Много библиотек и DIY проектов онлайн.

Для замера какой-либо сенсора (сейчас для примера фоторезистор, но потом будет GPS модуль) можно зафлешить в Партикл программу (что-то типа C/Arduino) прямо OTA (over the air т.е. через мобильную связь). Мобильная платформа на M2M симкарте с 5 Мб данными за $2.5 (можно докупить больше если нужно on demand)

Далее посылаем на сервер particle запрос типа

https://api.particle.io/v1/devices/my_device_id/analogvalue?access_token=my_device_token

ну и в ответ получать JSON объект типа

{"cmd":"VarReturn","name":"analogvalue","result":XXXX,"coreInfo":{"last_app":"","last_heard":"2018-07-28T18:07:56.936Z","connected":true,"last_handshake_at":"2018-07-28T17:54:47.421Z","deviceID":"my_device_id","product_id":xx}}

Мне нужно настроить свой сервер так, чтобы он автоматически в запрограммированное время, скажем каждые 3 минуты, посылал вышеописанный запрос, ждал ответа и парсил этот JSON ответ, извлекая и сохраняя в отдельный файл вида time_stamp: value всё что после "result" (там сейчас просто уровень освещенности в неких "попугаях").

Я не специалист, но думаю опять же можно написать bash скрипт и вызывать его на моем сервере через cron в установленное время, а потом какой-то второй скрипт(или всё тот же?) дожидается ответа, парсит JSON и добавляет result в нужном формати в какой-то растущий файл. Это может быть python script ну или какой-то иной.

Но возможно есть более элегантное решение? Я еще учусь и конечно там есть какие-то продукты для этого (вроде что-то под node.js но я очень смутно представляю это. Пока читаю, но как обычно хочется бежать быстрее). 



И как в общих чертах может выглядеть script для вышеизложенного?
Tags: iot, it, programming, science, seeking help
Subscribe

  • Magnetic set-up

    Продолжаю строить свой собственный 3-axis magnetic set-up. Вообще-то на рынке они есть, но стоят turn-key продукуты такого рода (схожие по размеру)…

  • Статья в Science про Adams Geomagnetic Anomaly Effect

    Те, кто всё время интересуются, что происходит при смене магнитных полюсов. Abstract Geological archives record multiple reversals of…

  • R for Research, Python for Production

    Конечно рекламная статья, но хорошо показывает сильные и слабые стороны R vs Python.…

  • Post a new comment

    Error

    default userpic

    Your reply will be screened

    Your IP address will be recorded 

    When you submit the form an invisible reCAPTCHA check will be performed.
    You must follow the Privacy Policy and Google Terms of use.
  • 7 comments