iot_notification 0.8.64
iot_notification: ^0.8.64 copied to clipboard
A new Flutter plugin.
example/lib/main.dart
import 'dart:convert';
import 'package:flutter/material.dart';
import 'package:iot_notification/iot_notification.dart';
void main() => runApp(MyApp());
class MyApp extends StatefulWidget {
@override
_MyAppState createState() => _MyAppState();
}
class _MyAppState extends State<MyApp> {
@override
Widget build(BuildContext context) {
return MaterialApp(
home: Scaffold(
appBar: AppBar(
title: const Text('Iot Notification Example'),
),
body: SingleChildScrollView(
child: Center(
child: Column(children: <Widget>[
ElevatedButton(
child: Text("Start Service"),
onPressed: () {
IotNotification.startService(
userAccessToken : "eyJhbGciOiJSUzUxMiJ9.eyJpYXQiOjE3MjQzMjY2OTUsIm5iZiI6MTcyNDMyNjY5NSwiZXhwIjoxNzI0MzY5ODk1LCJpc3MiOiJpb3Quc2FtZWxlbWVudC5jb20iLCJhdWQiOiJ1c2VyIiwicmVmIjowLCJzdWIiOiJIYW5pZmJ1ZGlvdG9rcyIsImlkdCI6NzYsImVtbCI6ImhhbmlmQHNhbWVsZW1lbnQuY29tIiwiaWRkIjoxLCJhcGkiOiJ4MXdVYTNwZUF1Y2FjZXFGaWZlMTJIYVpBVnNiUkdTayIsImRldiI6MX0.Az4HsNoLcs0FBRtnnxcW2U7SrMM29Nz5ao2J-e3xnMLddd3FYA_Q-d6SPaCrkOUm06PDI4DpNZBJ7YVkFDkJn5mwJGFGC7HBn74n8k-GxrSJFaK9ctocHt1J4kAz-LyBAROS6ZbjHI9TSRawc-Z2Z_JRIaWxfKCIhPQTPIMQ7Z1qRIXo4gGjLqBYtaNzL_CsDqHg6rG7CCgMdhgH27WZdz5Bm17HeElbzag12oWvL8oNH44JAbjIJtW8PnyCZkirBUvATKfnz5rSHxE5ZcoaLhvxS-KBPkuDi29E_jCgRoCBqld0o8jlg_f8SgB9fvgvh3fSEibE5sVb_ulBX44UmVpJDsEScCG896OzJTuo10iEyVVSi7ZLJ2i0bV0h6y3xquxYltl7BAjAQFawn6tw24zGEO1bB5p315AqP62lSoYK3wmCCocbkmCVM1ju2vV1nELSGMdMaPEn4qzSqIo72cCTfE0cd2lDZEFySFpE__9cMXSyRx41U6rjWLImxL8bmQbigNfrDbzsKTuVDPzKfzNsOemO1slieo2R9D_CFijFGQ2uY_JPLtQcqMtrbgjpA8J1ZGLt7NJIJWhjPu_aNidEERbmjqcangsgw5BKxwhyklNsV6RFZuFHzohUVRUMWc4BRmRRiPTLZkw0BhB7o0Bhi9UZdEdWiiaZG-w6JKY",
userRefreshToken : "eyJhbGciOiJSUzUxMiJ9.eyJpYXQiOjE3MjQzMjY2OTUsIm5iZiI6MTcyNDMyNjY5NSwiZXhwIjoxNzM5ODc4Njk1LCJpc3MiOiJpb3Quc2FtZWxlbWVudC5jb20iLCJhdWQiOiJ1c2VyIiwicmVmIjoxLCJzdWIiOiJIYW5pZmJ1ZGlvdG9rcyIsImlkdCI6NzYsImVtbCI6ImhhbmlmQHNhbWVsZW1lbnQuY29tIiwiaWRkIjoxLCJhcGkiOiJ4MXdVYTNwZUF1Y2FjZXFGaWZlMTJIYVpBVnNiUkdTayIsImRldiI6MX0.CPL7oLgq31sbkQ94h19Ky2NiskoAnAAhDr3heUOgnOPlyht0OdlT9MwscPc6qSW2FEtYsvD7g2p7KnrYcKYKZ2ak00X7TNomP2AjxRhsO0DQyKC0tAyTpoD8TYlw-L-OUtwoj8oIvqo2tfNMekBgpKFbyktOtoNoPCDrGCyETQgbRDNtNpRzqPclv3f3TmPq5Umg_GEerfUq785zG6aTVSaM_jAZM5Ti8J8shTtmvaitpZ-MGfMjsO9iiaOgcnYUJkfyn0L2AXcOJq38y3S5-kLQ0vD2u95vnfnT31b0dgjLiTaRWpQ_trYEYKvEVKwYKiJ1KMt0tpqHIOLvtje-6kJOu1v5xavba3ZXoRMTeFB9ajfeaDZFZjWeBuDMtkLyElJPPnJPfYmNKJQomAKapgqbyyflytFKZGxGflT2ZeXkL5-3PXKef_zPfxohESSQNRex4EissYi5VBud39ILdH7UI2fKdWDsPC4D-25BNRH84Bby7itYGRJ-Y9Xl35nzxcqAI8n-yAhbQ4XaMlZ7A_uxDBRVVW_PonbLOa_Xbb2N6fINwrn6YCJCptzzjCQczcJxlkmud8fOBdZevJX31TMX1SHTEV9eyZk-Qe8lRm9VVRfcpVn53kux89ToCnmrruThmhj119JjxxTwp7Hny8uYTyZL9ceJmAjCXoA6wQM",
devAccessToken : "eyJhbGciOiJSUzUxMiJ9.eyJpYXQiOjE3MjQzMjY3NTUsIm5iZiI6MTcyNDMyNjc1NSwiZXhwIjoxNzI0MzY5OTU1LCJpc3MiOiJpb3Quc2FtZWxlbWVudC5jb20iLCJhdWQiOiJkZXZpY2UiLCJyZWYiOjAsInN1YiI6IklvVCBEZXZpY2VzIiwiaWR0IjozLCJhcGkiOiJkbUkwT2t2b0ZSTFJ6SHUzSjN0RVdRYklYUXdEZUY5cSIsImRldiI6MX0.Dh-EypZ3RSM8PL1Vhp2Lhxykoq0Iq3B7-S2TGzeU6wE2WqdwBRlFQUoTUuze1MdYXiQx8ehf6Iqq1UBL8iBYbNDHCG1q9ygxkGfwAP73AbVAf1LKIrI_1qGu-Ny3q1sYX9HxKi6VYTT8PP7PFn2bOJc7hShiQQ3qTVGDjsKUYQIkQMVll0Xx2_Lh6GY4a1CRUn5mfuTiaGDixqZjmZ7FxavW6dPtLX0Yosgl205644rPwwTltHyXwmDiOnPMGB13ehkjsfYFoAAICcQVIF2muK6M_LcahfoMJmftXYaLsgYGbAFxdWjJLdMlkdJBR0XP-yFBaqMSVQfz6K0KV_VYYkaoh4mexAmJnhLG0CnTDjooj0kVyvlHFnkMl1Hj5_JwanWPcOgKPpyMrUPcFl_LSSr0prizaePMyGt7_sKO5E_gjTGgU3xwwY3OC8_MmmU3o03yD_jMdFoiJQvjgyoTDE6SK_-aCj2mjrUCDYVviRL6obnM4iUw9IJvuiImVvi4oRRzgDOI1LTbPvyVeTTXpfR9F4hDYKtvYkp2TusJZmVlq8HPy6ca3PkxxkROci3eQtxcYyK8gGEdBiN6_jiSQlFI3hf3dM-JndaKBK3cuVQYRN62InOUCO9PhQ5myCT7aIh05Qqs_JlFd7u97N1DuADygYSkQwuFyKpm9OU66EU",
devRefreshToken : "eyJhbGciOiJSUzUxMiJ9.eyJpYXQiOjE3MjQzMjY3NTUsIm5iZiI6MTcyNDMyNjc1NSwiZXhwIjoxNzM5ODc4NzU1LCJpc3MiOiJpb3Quc2FtZWxlbWVudC5jb20iLCJhdWQiOiJkZXZpY2UiLCJyZWYiOjEsInN1YiI6IklvVCBEZXZpY2VzIiwiaWR0IjozLCJhcGkiOiJkbUkwT2t2b0ZSTFJ6SHUzSjN0RVdRYklYUXdEZUY5cSIsImRldiI6MX0.uYLjzn-bCPFjAO_MFCTfSlxSli-TUkzUwkknq0EOcQbTu4iLoQVJ8Rhx1NctoDUuwut9KubuzZbunw99eNleZvRImsM_Y6uGR4XlsAyM0Xd0zhYTcELPdohSuCGhwMkxAGfaX56LFyJGMMl6MxJsEHJnnoZCRs_bY_CWoAenhHZIQWYDkOHLUCCTZiZytnSfc77WtEL9aNtOClauZn1MsxA7UDovONRm7hv-7NfDgdWQAh4mDYR1lEIsvga041-C95IQhHKZv55h0-UQpxQY28NGT7l8rT9u9A0dVQtNUiyf1jPTcyrrnxeEhgitPHnLdGGmd02QN_ljjHocRIv1tg0G0j4661jooQhfNNqAHUpP6RbG1xH3SPiAvPQdCIVQcLwiijtmHK6LT00tn7ZX_PkBbDyEMtnItMGGLTOQF-7XfajUULzw99RhVJJg5A6IOnqtRQcZrvMnD_INsbvPJOVTJFBgk7T43p2HRF4rKFrXNOmb17pfacAaBTFRO-Tx81ruaUki02rlH-5cHM-LjW7CVu1_2a2jfCKdTm72Rd__BHJGcGrJePzF65zodmD1EQEMB9qlumM5RgWtOV7QydcC9W1gHtVVjJXgGSsmz2Mspw1A6gGFze1LYqVcQLJaGyC8MPeFTgV0RIx4fhvXCeQQ7_4Zc002lKULzXupPYg",
mqttClientIdentifier : "skdjskdjskdjskdjskdjskdjs-iniadalahidekuuntuk",
brokerAddress : "iot.samelement.com",
brokerProtocol : "ssl",
brokerPort : 8883,
authServer : "https://iot.samelement.com",
apiServer : "https://iot.samelement.com",
rootCA : ''
);
}),
ElevatedButton(
child: Text("Add Device"),
onPressed: () async {
IotNotification.addDevice(json.encode({
"id": "1213213",
"sn": "INISN",
"name": "DEVIA ABAL",
"state": "ready",
"desc": "UUN",
"developer_id": "1",
"options": null
}));
}),
ElevatedButton(
child: Text("Scan Barcode"),
onPressed: () async {
String? result = await IotNotification.scan();
print("QR CODE $result");
}),
ElevatedButton(
child: Text("Get Keys"),
onPressed: () async {
List<String> keys = await IotNotification.getKeys();
print(keys[0]);
print(keys[1]);
}),
ElevatedButton(
child: Text("Stop service"),
onPressed: () async {
IotNotification.stopService();
}),
ElevatedButton(
child: Text("Cancel alarm"),
onPressed: () async {
IotNotification.cancelAlarm();
}),
ElevatedButton(
child: Text("Request Alarm Permission"),
onPressed: () async {
IotNotification.requestAlarmPermission();
}),
ElevatedButton(
child: Text("IgnoreBatteryOptimization"),
onPressed: () async {
IotNotification.ignoreBatteryOptimization();
}),
ElevatedButton(
child: Text("OpenBatterySettings"),
onPressed: () async {
IotNotification.openBatterySettings();
}),
ElevatedButton(
child: Text("Request Post notification"),
onPressed: () async {
IotNotification.requestPostNotificationsPermission();
}),
ElevatedButton(
child: Text("Test Logger"),
onPressed: () async {
IotNotification.initLogger("dev", "debug", "username",
"password", "server", "sam-iot", "dev");
}),
ElevatedButton(
child: Text("OpenFileManager"),
onPressed: () {
IotNotification.openFileManager();
}),
ElevatedButton(
child: Text("Insert Event"),
onPressed: () {
IotNotification.insertEvent(sender: "System", title: "Random Title", description: "This is a description");
}),
ElevatedButton(
child: Text("Get All Events"),
onPressed: () async {
List<Events> events = await IotNotification.getAllEvents();
events.forEach((element) {
print("Nilainya ${element.id} ${element.createdAt.toString()}");
});
}),
ElevatedButton(
child: Text("Clear Events"),
onPressed: () {
IotNotification.clearEvents();
}
),
ElevatedButton(
child: Text("Show full screen intents"),
onPressed: () {
IotNotification.showFullScreenIntent();
}
),
])),
),
),
);
}
}