mini portal (CMS) for devices
Budget: $30 – $250 USD
For testing of devices, to allow devices to download specific content, i need a very small CMS to be developed which has rudimentary features.
The portal/CMS should run on a standard ubuntu server with little complications, ideally, using mongodb or another very simple database (if at all needed)
You can also implement the portal on azure or aws lambda!
Preferably written in node.js
You need to provide an install script and/or detailed installation instructions so we can install the software easily on a standard ubuntu virtual machine
Frontend:
- use a default user/password to control access to the frontend (we might extend this later, for now, one user)
- support management of DEVICES (add a device, delete a device). A device uses a unique 13 digit 'ID' which the user can enter. Check for duplicate, allow the user to add a device or remove a device
- for the device, when it is added, allow selection of an existing GROUP (initially there will only be the default group) or addition of a new GROUP. When a device is removed from a group and the group then is empty, delete the group
- allow listing of all devices sorted by group
- file upload: function to allow reliable upload of a file to the server (file can be very long, could be easily 200MB or so). The content will be assigned to a GROUP selected in the upload page, and only one content (file) per group is allowed. Uploading will automatically overwrite the previous content
- the backend will need to calculate hash/cryptogram over the file and store it too.
- LOG: show log of activities on the portal (file upload, device requesting content, last 100 entries)
REST API for the devices:
A device can call the API (REST API or just standard get url is ok) providing 2 different functions. The device will provide its ID as calling parameter
a) check content version: the portal will respond with the hash/cryptogram of the content which is assigned to the device (its group), preferably in a json response. If the device is not known (the ID is not registered on the portal) error 401 can be returned
b) download content: the portal will deliver the content file if the device is known.
Please quote the project, if you have very specific questions, i am happy to answer them. fixed price project please
The portal/CMS should run on a standard ubuntu server with little complications, ideally, using mongodb or another very simple database (if at all needed)
You can also implement the portal on azure or aws lambda!
Preferably written in node.js
You need to provide an install script and/or detailed installation instructions so we can install the software easily on a standard ubuntu virtual machine
Frontend:
- use a default user/password to control access to the frontend (we might extend this later, for now, one user)
- support management of DEVICES (add a device, delete a device). A device uses a unique 13 digit 'ID' which the user can enter. Check for duplicate, allow the user to add a device or remove a device
- for the device, when it is added, allow selection of an existing GROUP (initially there will only be the default group) or addition of a new GROUP. When a device is removed from a group and the group then is empty, delete the group
- allow listing of all devices sorted by group
- file upload: function to allow reliable upload of a file to the server (file can be very long, could be easily 200MB or so). The content will be assigned to a GROUP selected in the upload page, and only one content (file) per group is allowed. Uploading will automatically overwrite the previous content
- the backend will need to calculate hash/cryptogram over the file and store it too.
- LOG: show log of activities on the portal (file upload, device requesting content, last 100 entries)
REST API for the devices:
A device can call the API (REST API or just standard get url is ok) providing 2 different functions. The device will provide its ID as calling parameter
a) check content version: the portal will respond with the hash/cryptogram of the content which is assigned to the device (its group), preferably in a json response. If the device is not known (the ID is not registered on the portal) error 401 can be returned
b) download content: the portal will deliver the content file if the device is known.
Please quote the project, if you have very specific questions, i am happy to answer them. fixed price project please