Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Improve input frames from motes #12

Open
jdavid opened this issue May 21, 2019 · 1 comment
Open

Improve input frames from motes #12

jdavid opened this issue May 21, 2019 · 1 comment

Comments

@jdavid
Copy link
Member

jdavid commented May 21, 2019

For frames coming from motes online three different entry points exist, one for each network type we support:

  • XBee local network
  • 4G
  • Iridium

The purpose of this task is to review the system, there will still be 3 different entry points, but with more code in common and shared behaviour. We need to:

  • Archive the frames locally, keep a copy in the local filesystem
  • Insert the frames in batches into the database
  • Generalize the use of work queues (Celery)
  • Parse the frames in the server, not in the Pi, for motes coming from an XBee network
@jdavid
Copy link
Member Author

jdavid commented May 31, 2019

This has been done and is already deployed:

  • Now the frames coming from the 4G network go also through a Celery queue (like it was already the case for frames coming from Iridium). The API adds the received time and IP address to the information and sends the frame to a Celery task. The Celery task saves the frame in the database.

  • Now frames coming from the 4G and Iridium networks are saved into the filesystem as well. Before they were saved only in the database. See the var/data folder.

  • We have added integration tests for these 2 APIs.

  • We have added support for running the tests in Travis CI.

Next to do:

  • Do the same for frames from the XBee network: use celery, save a copy in the filesystem, parse the frames in the server.

  • Do the same for frames from other sources: CR6, Eddypro.

  • Other: save the mote frames in batches, compress the archived frames in the filesystem.

This way the architecture will be more consistent regardless of the source of the frames, and we will have some features such as filesystem archival, required for import replay.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant