iot_notification 0.8.41
iot_notification: ^0.8.41 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.eyJpYXQiOjE2OTQxNTIwMTYsIm5iZiI6MTY5NDE1MjAxNiwiZXhwIjoxNjk0MTk1MjE2LCJpc3MiOiJpb3Quc2FtZWxlbWVudC5jb20iLCJhdWQiOiJ1c2VyIiwicmVmIjowLCJzdWIiOiJIYW5pZmJ1ZGlvdCIsImlkdCI6NzYsImVtbCI6ImhhbmlmQHNhbWVsZW1lbnQuY29tIiwiaWRkIjoxLCJhcGkiOiJ4MXdVYTNwZUF1Y2FjZXFGaWZlMTJIYVpBVnNiUkdTayIsImRldiI6MX0.sEZex-kNhmuHifakoojbNuOvAggD1BYjGzqxMu5b3WJw0kjbdBzLk4yM58l3u7VHIJ7pEK3CN5DMGT_Uhmcn61h2feGznm0F60XFTYwD9r3D9QSe-O-e1_0WovgjlY5K2KVGZjx4PJlwYXbRmYUgxcCwqcf17psLNYWQwYr5SQ1-8IEnYen7kJd8vKzhauvus-S1409lZ6C7TS3D7lAM5E4sPhVB-TxRQ5sYjx8NuRz-O7-djKK6ch0UVeExVu3KAxSq0XYNInph9Eg6PLCRUHSRx-edmy6wN820Zf-x1MpfaxJCDgtpxiAKB-rYZjCLNTAjtFJP_Xip70QIHhb4F--olReV2qxM5pRhwRvNJW2jqV78xPwbnfwBpyAugislWzXKHliwtzxVt72OzsBL7s8zagjaHzYqY88d-_r-wyZVS2kjdK3PRwhagCehnGWD_3ttiSP5Yis8gTl5qzOhXcwUaGrAThMGnO-4MsehAH1HC7kdPSPv-kiLVvO1wsurfktNPMAsxT2nVBAjZUrlvqcqH7u6O8JY5hNvVT4L2FMcFrN0Ttaah6_H3mX6b_f2rKRvgO46W_d5y-8vXi7V-EqQs02m5VqH6JSBNQueR5zyOt_z8WPBWsZI0_YwubtY6xNARvahPZKQmDWgPA-IARGFiPbL-QUEBg5yUak48Xo",
userRefreshToken : "eyJhbGciOiJSUzUxMiJ9.eyJpYXQiOjE2OTQxNTIwMTYsIm5iZiI6MTY5NDE1MjAxNiwiZXhwIjoxNzA5NzA0MDE2LCJpc3MiOiJpb3Quc2FtZWxlbWVudC5jb20iLCJhdWQiOiJ1c2VyIiwicmVmIjoxLCJzdWIiOiJIYW5pZmJ1ZGlvdCIsImlkdCI6NzYsImVtbCI6ImhhbmlmQHNhbWVsZW1lbnQuY29tIiwiaWRkIjoxLCJhcGkiOiJ4MXdVYTNwZUF1Y2FjZXFGaWZlMTJIYVpBVnNiUkdTayIsImRldiI6MX0.ikIwPIFldqxDBBs7fKzXCSzmEVfp3KoI0uZagJ-X5PZQQyoEeej1RV_IUi2H9fcAzshmqud1r0d-hCuRRHKjje1k-LGLXCe_056SWgdt8wgKDAiQqh6_6oU_SF8DpvN0792pOTt5rsdZcZN9r2SS13nHF_Xb49lPJei19NhVtGxyizculKK-jJpJaSJuLLs5idUnsS40Sl7O2n9Icz2VOuaTjAFYi0koQ1wPsvhiq8_OvN6WaExlYm-pLjiRQ9ExCADseM_DTjLxr_gV_-Dd57nFguQWD6j3rtp0N04RinSVWKJcFunefgvhIGdQaKHnLKt0pBTzjLWQEilkl92tuI2fM_1ipD58TY-nymchsluI6p3w_YlRCcQKec-JaMc0zbKCU-oG5udCvqV1BrM6rvENkp_5wclWHAStrhw1HbdAl7RhxrNfKoKdWpx9O2EM0cqMvU8g9p5eVaHQrXP44NVtvSf3hk-b-QLpIe8ZAeeksuA1HMTDbP1ijTkQpKAiAzryXHrGCUgeqfeOqGblJ7e3x_b8C4gZ8w_Oa3jOINg1PPKYb4sQAajl3UDSH2ualZvX_4WkpkxF5qPvtYWHehSo3K5_1-b6oY8wQ9-PoMHqZiDWtLyhfiv18dwjqkPsVXRCMuLO7ihudf_9Z3k8ClUcCbOpHwsieL-Fm4Shgcc",
devAccessToken : "eyJhbGciOiJSUzUxMiJ9.eyJpYXQiOjE2OTQxNTE5MTgsIm5iZiI6MTY5NDE1MTkxOCwiZXhwIjoxNjk0MTk1MTE4LCJpc3MiOiJpb3Quc2FtZWxlbWVudC5jb20iLCJhdWQiOiJhcHAiLCJyZWYiOjAsInN1YiI6IklvVCBBcHAiLCJpZHQiOjEsImFwaSI6Ingxd1VhM3BlQXVjYWNlcUZpZmUxMkhhWkFWc2JSR1NrIiwiZGV2IjoxfQ.I9K1-tTi_N8y-xY4cj7kpeEiGeXMT4HVdXdA9Vf5-0EeODOymq2jzGd9wQMjY4eqWZZ5wi92xqrNy5y8n-i-oaG6fapAF701j2M6CsPQKfblHxHYlTrDRB07nY2selDeRmKWv3AXz1HyUjBZuG2bOtVyEce5arRpAWRDXwWAi8BvZyPL7hIyTMNxkXnt0wSOLXBPMi28NUNpTdEg_JWrV6b_c4E9RTJcXFygylgj8rXIXVBmBrzEbRld5CahYrYC5458xleQvlupyHylmM19WWAJ1LjXUf9Rfgb8K6yvitYInt-H9ptiDh2myaNWedKKMe8fkq5Zflu0wwTdpL7hTI8G7BNt0QkyRmzJpQf2pKANUU20zaasTVwGgaiUdYdw4leu6I99iuijQ4sghcaqjfrIdl2oxMuBPx-2Ac6r28SEhgZQ9CfUHjBK5B-v0Wwdt_x3G8t7cZLpcajh4itugm6i43QhXP3Yf41Vx-jjPH8PSaTGaeikm5SqnoeUltTIUxmTTMurnOAeoeY9RMO2Gz9Lu1HSKCcUiNb4OKhpSV5cCRkrIAiwML464MsO19ySANJBlKhxX-QobSw05izcNX6rG6caj_2qxzwqqMAONx1BGDok_zNQQwfrlz2vJllvbWSH2kQwLn-qdyg3mrSwErIfQNhHztEWcc0rLEzR4Qo",
devRefreshToken : "eyJhbGciOiJSUzUxMiJ9.eyJpYXQiOjE2OTQxNTE5MTgsIm5iZiI6MTY5NDE1MTkxOCwiZXhwIjoxNzA5NzAzOTE4LCJpc3MiOiJpb3Quc2FtZWxlbWVudC5jb20iLCJhdWQiOiJhcHAiLCJyZWYiOjEsInN1YiI6IklvVCBBcHAiLCJpZHQiOjEsImFwaSI6Ingxd1VhM3BlQXVjYWNlcUZpZmUxMkhhWkFWc2JSR1NrIiwiZGV2IjoxfQ.zgIoqWbEgLiNsBGGGOuQY93ZsSZZiVtzO8RbYGMjA4gpRrPRAGGzS_lGvBbGgr3NsGH_VzbrpHCLOD6m9pfvlsnCElU-Q0jHPCN74COWtdGgpRkgEuCk7sJgDc2g2ozS6gz72OanPZ0ejyTfDKJ8PyvUFPuh78KCAM_pJEfSEvDFyPhAbbfAPTCUU2mGvD6iosuQPiRAFY2IMWdwi-MSZ4ITSRjzWvQp8VgpmLXxnb0D4A0QHwXg7cnFbvnR6hNCSDtzGHi0DKeso3xxhYJgk32JOUA7O7baUNK806q31Chx6Mh4Slf1KbvRJyjXFOUG6wcjQ9DTp_1axDDyKWRwJP3q6B81t04r99y1LQHfPjjRBpKV2ZX77TKQfNthoMIUkkO9lm8XAGGUwFBt_EnKJhqfoa7dfqYW_GayzM-Vt5UlsXN4AJCVPjKqMz4-6GVv1tzJJwDqA5ByDRQbxG9AJfepZUsnsIlwO-Fx3Msmb-W3jRPSLhMeezYo0wnGYZWkxg5s_xqoU5STnMAfUU6nwwI-i4O0daLpqql_9ZFoBIr6iVZJjsj2vEU2P6x_lLa5FpMzg9jpCUoc6z05e94dsZWrE6HminSu10BlN1AMYqxCCXq-z0FHxR6HjrVVDY6QUvTNPffkEhjDrNxhaTE7MQJyGPzI70aiBUUBbhuL9jg",
mqttClientIdentifier : "djksjdkadoklsakdladasd",
brokerAddress : "iot.samelement.com",
brokerProtocol : "ssl",
brokerPort : 8883,
authServer : "https://iot.samelement.com",
apiServer : "https://iot.samelement.com/api/en",
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();
}
),
])),
),
),
);
}
}