App for user remote control of two relais

Job ID: 37672712

Budget: $10 – $100 USD

Title:
- App for user remote control of two relais.

Description:
- This is a PoC App.
- Android app to manage user remote control of two washingmachine relais.
- Android App with GUI to be used by regular users (3-8 expected)
- Reads data from DB (tables provided by me) and sends string commands over BLE to an ESP32.
- Receives commands from an ESP32 and writes the data to the DB.

Programming technologies:
- I have a LAMP server already
- DB (MySql) tables will be created by myself; you will ack or suggest changes, if needed
- Code will be written using C#, python or RUST.
- You will use Jira management and BitBucket source control.
- You will provide a basic design and code documentation.

App installation:
- (a) New user? (b) Existing user but new phone? (users can have several phones)
- User creates account with full-name and address (no password required; DB stores phone-number in a look-up table, allowing phone to be manually updated in the DB by admin).
- App sends mail to admin, user stays 'pending' till admin sets "user=on" (by hand) in DB (app checks DB on connection and shows user state).
- Language selection (App reads from DB)
- (PH2) Adaptative Website for desktop access to user's account?

After user having been enabled by admin:
- Combobox with string("house-flat") to select between flats belonging to the user.
- Check washing schedules (week view: green=user is allowed, gray=not) with relais state (select one if there are many): ON, OFF, RESERVED, MINE, NOT_MINE, REST_DAY
- Show prices (3 types)
- Click on relais (1, 2...) on schedule and set on-off-pause.
- (PH2) See messages (if there'a new income one, an alert symbol should appear to bring attention).
- (PH2) Check 3-piled-bar graph of daily consumption (horizontal scroll), also RESERVED but not used.
- (PH2) Send message to admin, user1, user2... userN (appear on user app), attach a photo.
- (PH2) Reserve slot in (free) schedules --> define some rules to avoid reserving all slots!

At any time:
- Account data cannot be changed after having been created.
- User can:
* never change name, address etc.
* request Account (a) deletion, (b) pause or (c) change, all with a comment field. Account changes to 'pending' and gets blocked; admin gets an email.

Admin area --> for the moment, I will just write by hand in DB directly.
- (PH2) Admin web-interface