This app uses AWS Amplify serverless cloud architecture.
- Install Prerequisites https://docs.amplify.aws/start/getting-started/installation/q/integration/flutter/
- Generate model files https://docs.amplify.aws/start/getting-started/generate-model/q/integration/flutter/
- Create IoT policies in the AWS IoT Core. The policies are in the "IoT policies" folder.
- Some AWS permissions are not created by themself. You may need to create them.
- AttachPolicyToUser: Attach the user to the IoT policy to allow them to communicate with AWS IoT Core.
- ThingOwnerManager: Allow the user to claim and declaim a device.
- "thing/attributes": To get device "ownerId" from the attributes.
- "$aws/rules/IoT_To_TimeStream": To send data to the AWS Timestream database.
- "{username}/{deviceid}/currentdata": Request level data.
- "{username}/{deviceid}/level": Send level data.
- Get historical data from Timestream.
Maybe there are things I forgot to write here if you encounter any issues report it.
