d_kishkinev (d_kishkinev) wrote,
d_kishkinev
d_kishkinev

Categories:

Автоматически запрашиваем 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

  • Как "продать" Python биологам ?

    Тут коллега lybica учит Python для bioinformatics на Stepik - круто, молодец. Современные знания и уменения - в массы и практику :) ! Ей…

  • Делаем веб приложения с помощью Shiny App и ShinyProxy

    Возникла необходимость сделать web app для визуализации данных для не очень продвинутых юзеров, которым в R копаться сложно или даже невозможно (т.е.…

  • Что такое Particle IoT Platform

    Компания Particle.io (ожидаемо из San Francisco, CA), на основе которой я развиваю одну из линеек из своих продуктов - animal trackers на основе…

  • 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