A connection channel Kafka based between jetson nano (edge device), WIX (user side), and a cloud platform, the code will be split to the 3 platform as:
1. WIX – the WIX platform will be at the user side, we can not assume that the user side and edge device are connect to the same router and we cannot use SSH, the WIX Kafka will hold a consumer and publisher as:
a. Consumer – the WIX consumer will receive information about the edge device, the massage will contain the edge ID, active\not active and if available.
b. Publisher – the WIX publisher will hold 2 kind of channels, first is the cannel for send request to active and stop the edge device, and the second one will be to send user information for the system when activating it.
Package that is already installed on WIX - [login to view URL]
2. Jetson nano (edge device) – the jetson will run at request a script in python, the Kafka code should be wrap in docker container, please note that Jetson is based on ARM64 hardware and some container will find hard to work over it and special assignments in the definition of the docker will be required, the scripts will be:
a. Consumer – consume the information from WIX for request to start and stop, where request to start will active the python script (assume [login to view URL] script) and when request to stop will stop the script, in addition will listen to the channel for user information.
b. Publisher – will publish the Jetson status, as described in WIX consumer part.
In addition, a data upload script\code will be required, the requirement is:
1. Jetson nano (edge device) – a single in log to the cloud, upload video file in a different thread to the Kafka and python script, the script will get a json file into a queue that the json will hold a path to the file\directory and where to save on the cloud from root directory, it will make directory if needed.
2. Cloud – we required to have a storage management for the cloud based on could given API, the management required to do as requested in Jetson part.