iot_notification 0.8.66
iot_notification: ^0.8.66 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.eyJpYXQiOjE3MzI5NDc5ODMsIm5iZiI6MTczMjk0Nzk4MywiZXhwIjoxNzMyOTkxMTgzLCJpc3MiOiJpb3Quc2FtZWxlbWVudC5jb20iLCJhdWQiOiJ1c2VyIiwicmVmIjowLCJzdWIiOiJIYW5pZmJ1ZGlvdG9rcyIsImlkdCI6NzYsImVtbCI6ImhhbmlmQHNhbWVsZW1lbnQuY29tIiwiaWRkIjoxLCJhcGkiOiJ4MXdVYTNwZUF1Y2FjZXFGaWZlMTJIYVpBVnNiUkdTayIsImRldiI6MX0.N4Vz5jCy85Y3-7TKWT6bjOaxv_jA5_XKyhIqs2bYhcnUSy7lTDBmia8S4y8RYS8r0wk656wnP53-v9moMUetiT5CZaMmxvXjIb8kt3tl95sYvDTlb4rLLXw1A6PDnFDR9_HnkmTmtK0MLNaQ1ZJOW-chbqycX3q86YcA8ntZofHwRTLVlhgGz_93W8eglkvUqUZ7HdGPz6q26WjYzr9kM96maEIfQVsti07FxbJpPzeMKRC4ZDJl5djsjqI8HO-mp6KasvJ1rlB-7IcHfFIG598KP05Z_K1MiW6yS1Xpf-3lt4hgTnaUu8yMeY2__EgSg18aO721dkyG51-NPsujwlrran_BnI_RiGajt5xfOcp_Vpub1iVGOr47O80R5bau8JoCEmxbZo5c5YgYKfp7hdWEtEQgTI1m2VW4tyQnetGF_N25_JOLUhIqXDLJxEohuJ2SpMx9Z9ww5iwN17QcrfXl-kvS7QOpbvhTTzpepcbOMa3Q0ysGcAOlPijZeIu3vYruyAW9FB0R-G6IJIcT7Ts1_V72Z77BboSJVimHVI0_jD9o-ctkFqzpYtTxX0t3TQmGSfUX4O5R5mkAcGKAHcUyy9hiPgBm4C0e4L7Y4T8VkKAGY_BEKosGdVDyK0odapZcAuK-au9sFZDYFJVXbPczug9masF5XtChT4SKZ3s",
userRefreshToken : "eyJhbGciOiJSUzUxMiJ9.eyJpYXQiOjE3MzI5NDc5ODMsIm5iZiI6MTczMjk0Nzk4MywiZXhwIjoxNzQ4NDk5OTgzLCJpc3MiOiJpb3Quc2FtZWxlbWVudC5jb20iLCJhdWQiOiJ1c2VyIiwicmVmIjoxLCJzdWIiOiJIYW5pZmJ1ZGlvdG9rcyIsImlkdCI6NzYsImVtbCI6ImhhbmlmQHNhbWVsZW1lbnQuY29tIiwiaWRkIjoxLCJhcGkiOiJ4MXdVYTNwZUF1Y2FjZXFGaWZlMTJIYVpBVnNiUkdTayIsImRldiI6MX0.HR-TPdZ1GDqAUv1mNoXpALvzRSAdmBwl4PcyJFbhHRESpUHOs6TSjVD5G4GR9JCcWYZ-rURusDmUXGSCemHwZ8beNoxqb02bs0Fnxc5eFxUxh7qYuUiEKSMZ7RN0msGaRDW7TYjTtyhFqasV2gq_YBKaUUpkOSchLIXzr63O0KDN_F49lH-sm5_lG3rJHuTPAFWFdwQ6Kl_1z-jaYCkrWvUA2JZDXjPGH3Y1169ZL9b0Q23lB2cg0NncTAdnfNRrclV1xU5k_WKVdoeNP-v19J4ZgDYI0BLDz0tiOS1EkBdsFeiHlmIlEEuk67Q84_kqJaEGgGoQM2bhif5fOqqlvCx6pcVTFWlJNHV_Ercs3wafXvo63DvGUJlMPlNGLkmAXGMwz2mofN3x5P3xWQWSKqUsM-RIhvmnJYzl6wn7sohadUc52wb4jk8ou-uzKexyPNBAogWN7CpxoR_fkFtRYcadFx45IzMn5QoZZFW9hmZz6mvY4wJiu3MJ6Kxn9g7ohBmynH1oqW0ngAat3Fo1mDIgz9SSls-vk2lNaubMsLqhYRSGWOsmbbQpnqUxf9Xb2iJzkwkktCQ_UQyRMdIGwriACmAhs7CFXQaGPqXvgzI4G7qPrNJy_8PS6XB7xpq9vQYTH_HVHixF4KMvK6JJernQrrQrPaOTjdrjiA0h3Zw",
devAccessToken : "eyJhbGciOiJSUzUxMiJ9.eyJpYXQiOjE3MzI5NDc5MTcsIm5iZiI6MTczMjk0NzkxNywiZXhwIjoxNzMyOTkxMTE3LCJpc3MiOiJpb3Quc2FtZWxlbWVudC5jb20iLCJhdWQiOiJkZXZpY2UiLCJyZWYiOjAsInN1YiI6IklvVCBEZXZpY2VzIiwiaWR0IjozLCJhcGkiOiJkbUkwT2t2b0ZSTFJ6SHUzSjN0RVdRYklYUXdEZUY5cSIsImRldiI6MX0.kqqoqoqEN9wcz99wXPpZvV4x7rOjqOuY_2hbi9K_pOHhdNcZaz-Ki-JKOgxQD-43JRSEfZGCz6Gx01a8FqhY_X_aKOXVg1PURd1rhXGt8JezzcSfmYVfSCXdN-NulPQ3wcp6schzK6-NLh57WeylyLuW2tYb7EgPlIeCoL5EsCF9EmHSssYyQDxQpzVviU-KnOkit2FZkNoLPWKDxiLZqBaxZTpFNfUyJP4LcbjJNhGhJNWzs9wORR_Dm6QioldDYbQH-9Y8UkTAXd3C7TeljJb-DbBJeNrBnB7BUrGGuSOmvyslmPtl49QMLtDOHJ1Ry8VNgQ0fSIkrBcdYenOpxf9Xxm28rnxzS3ZGAEOAnhM9SkpfcY0gf_V_buKajw4CAi7r-B6YTTLDWr5pfl3aQkrGS8qGnsKM_sAK8tb8z_7e4ZYr_Ayp67cxAUfbrOkT6A59ho-pMWBV_vdrAm8eoTuX61dhgEHo6a0-ud9JX2mJ0wVmcLhBzzGqjr4sGH_Q-qWbAAy9QtpHUA_kOz4xG4w_fdLUIOHvezpn68tx36bJ5rb2FThW0jrU6rnOY0LhJ0Ryqc3jgGKmgLMHFPASu5QYUvTvxtygD-2UvcoBJp5IK62ntKx9EaSR1xxJP6ZdmtDM1okOg93L060FIT-II9XyMdQKhF9uODP8sy9BdO8",
devRefreshToken : "eyJhbGciOiJSUzUxMiJ9.eyJpYXQiOjE3MzI5NDc5MTcsIm5iZiI6MTczMjk0NzkxNywiZXhwIjoxNzQ4NDk5OTE3LCJpc3MiOiJpb3Quc2FtZWxlbWVudC5jb20iLCJhdWQiOiJkZXZpY2UiLCJyZWYiOjEsInN1YiI6IklvVCBEZXZpY2VzIiwiaWR0IjozLCJhcGkiOiJkbUkwT2t2b0ZSTFJ6SHUzSjN0RVdRYklYUXdEZUY5cSIsImRldiI6MX0.J3Z4xsTa1nmi-6G7_HQt7dYVeMCBYE2UIfrjrYXidaCUNmIEoiLTyCWrVMHNZkT63FmJYOc8OCvMca4UNTBPksCbvJy6zK8MTcs36DkDvMccEhxNYyYSEEaJbu4fOw446yHkQwk6rFwfQVEmJYGSy5bvvDTlRbcG_DOd8eqMln3YsaJKE5kLgegTxEmqXhFLJ-h0KJkYlC2gXCWOQbjdhTL8L7JcwHTS0JCgZaK39KxRUKyiMyxAFTw0E-2gAFb8IkqCInCE1LM_QhcGZaH2n46CK-pr9APGxWTj89u53Y2uK51BqEvhgG9X-wl5kyk_kgJ3ErAODjvSbADvwb2DIXV3zYrq3W3CkUCJZsZpMIlBMG3yKj0YeODbh4gUk_lQPjYJYO8tlQbzRYFmC8kDtcv-1mpwFaVb15C-9M2J27AuaksiHiUGI2TMhVbiy8XC1nXaXG8dc5k4Ka8DBUBT-u37fr4ftZRdfJN3nNPZerb3yEIXxhDlMtYNhB-w11zI85UKZqDd2sWIZqk-482ZYN2KT_YcXlCmd5invbLwu3CALTSujJgWEjnZtVnfRda8YGZcuis5Vu5Qtljc5lAjto2WA-sBJ70BeWvpbN3P_1CfrCjr-MwLnCbwsj9Sig03Oz-IWRuFNW0Gmudrwh6uWxjMEcsMZEYy-EjuhvoYP38",
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();
}
),
])),
),
),
);
}
}