iot_notification 0.8.56 copy "iot_notification: ^0.8.56" to clipboard
iot_notification: ^0.8.56 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 : "eyJhbGciOiJSUzUxMiIsImtpZCI6IjZyMUF2MS1zNEN1SnhlUzlIRkRwUVN0V1VPSVY5U3Fiai1OWW0zSm81OEEifQ.eyJpYXQiOjE3MTg3NzgxNjMsIm5iZiI6MTcxODc3ODE2MywiZXhwIjoxNzE4OTUwOTYzLCJpc3MiOiJhcGktcHVibGljLnNhbWVsZW1lbnQuY29tIiwiYXVkIjoidXNlciIsInJlZiI6MCwic3ViIjoiSGFuaWYiLCJpZHQiOjYsImVtbCI6ImhhbmlmQHNhbWVsZW1lbnQuY29tIiwiaWRkIjoxLCJhcGkiOiJrUDh4TVNveWJHazhHbmlLc2dORXZyS3BWakRMenNLZyIsImRldiI6MX0.TDQUNSqtbLSju4kvCp9Y-Xx07pMNEPu0-J8sGFy8CGsK5TCqoqCmlPOCJ5kS3pFqasQmGKxGUDpyMU24AZ_fwgyJwtVkr4bF5yu_dQDrGScSaJ0Hf1vx4F57w85Of_eMcq2WbQyKP24TDYpRbEnrpFyE3GzeDcIH5B1S0Ycpe01vdJ06GCp4YoLcIuw_kYTPA42hJNQoSUgajxsvpwjL8LKFfqXHMvZk7_KPpyS-5Eee7gXqM9icFW5voG5joDm8tFJRKG-2yNYemG917tvtjbs57OfQsWJwtcMWjS86ZbStcjZ3XkpKJxeo0VyZAF_Nl2NumYikSkCUhTVX0E-dDQC4aPm5jlS4B-8D9PMuc5LMPfwTzpX6QWIJj3xipqa6aRrXgtkitRFOf7TrKqZmLsOnO-DqPnpUUv-xnVCADu_NkCGVNJkFD-K9kbrqtCbAq28DFWFxxYv_GgogTECA4NyamSHN_edD3y-ce-YLBldRUIAwMyh-rpyjrZBADOme4JB2kF5pHvQ64hsjehek0TUTdIKTxkPTIWdpGoYZQuCNqrPIL3fBlRI7s-_w2u4VhLHfhlrRujMPGNEpCx-97Mlwhk9Ju92tHI5oPUMjJRn_OGvk1xp6t29jY1-hQJePumsN_ReEEfDGefIlG5QsFUIbtZrqIQEakc-t-9MmXCI",
                      userRefreshToken : "eyJhbGciOiJSUzUxMiIsImtpZCI6IjZyMUF2MS1zNEN1SnhlUzlIRkRwUVN0V1VPSVY5U3Fiai1OWW0zSm81OEEifQ.eyJpYXQiOjE3MTg3NzgxNjMsIm5iZiI6MTcxODc3ODE2MywiZXhwIjoxNzE4ODY0NTYzLCJpc3MiOiJhcGktcHVibGljLnNhbWVsZW1lbnQuY29tIiwiYXVkIjoidXNlciIsInJlZiI6MSwic3ViIjoiSGFuaWYiLCJpZHQiOjYsImVtbCI6ImhhbmlmQHNhbWVsZW1lbnQuY29tIiwiaWRkIjoxLCJhcGkiOiJrUDh4TVNveWJHazhHbmlLc2dORXZyS3BWakRMenNLZyIsImRldiI6MX0.E-l0jGGLvB3Hm7T5gCMv090X0XMVK43X4sfWPeWU-07cpE_EPYh-vavviH6cQh1jIzCVKkUPKtUjsU-i8wkWs3hmtptzMsM1KoCAovocVGO07FIY3WbAjibVb_rmM0uOSy9WgKeQ3_9Z5077MPKvhc0z57xrqJj8AO5nhAxIJ5TUWGccRfDxysk_QjcyUEpNmiblkpbpLGNNdef8poxUaTr2KIR4PRLGyqPNzE1z9ET5bfD1Jz1yiy8CQo1z6dL9BXLV_ozNTRu4DfyJ8bXGw8tmDs2T4aNwuFx6IO1NpmBeUXy6JL3pGTbHiTqLjw4V_sE0ZP7FI8HZXTVJlKwgVPJ-y7kqKGYgN-IrQ5qnHSBX8km9U9BYiEdEaxoHM4QrkuEDIa5tzxVaI7lsu9KCuEvX9x2g6qRyeDwkoFYzWxjXxu3xy1_CS-b9zpRM0CEbrqOB8rkrl_YrWYEJpJVuZvo4dTULWItO-NWs7DSQ8pPwzyW4k-paBKm7HOBPGadVlnuYbOOxAnDsmjQVVVtmR_57vWQa4W_Cprtq0_zOP9C1P6WYGnIULvPMBS29a1BzCAYby0Jb5CmRqpKHWVx4NXC3b0iEfBjUVEOc9ZKjaLN3GATg8k9O3ueJKE4U3pTcoyByzlduIonMXya_l3pymsUER5rVSw18B0UD-ojAX_c",
                      devAccessToken : "eyJhbGciOiJSUzUxMiIsImtpZCI6IjZyMUF2MS1zNEN1SnhlUzlIRkRwUVN0V1VPSVY5U3Fiai1OWW0zSm81OEEifQ.eyJpYXQiOjE3MTg3ODQzNzksIm5iZiI6MTcxODc4NDM3OSwiZXhwIjoxNzE4OTU3MTc5LCJpc3MiOiJhcGktcHVibGljLnNhbWVsZW1lbnQuY29tIiwiYXVkIjoiZGV2aWNlIiwic3ViIjoiYXBpLXB1YmxpYyIsInJlZiI6MCwiYXBpIjoiZTBGYUUwRlFFWm5LZ21jUXFLVzEzT2kweE5XcE9kbUoiLCJkZXYiOjF9.LZqTBzJR5z_L6VODsPFDR8F5AHIh5flZaunXOHoqyLjlGHuKVFcXmdKWlpt1XjYR3UwFoiqNkhoLATOSEYdRsTG5XzwTzMZLqMmQJhTxY5ERbW5tef9va0JbkM0PqYn_nB6weD518xYV88rGCQL5-aujZaIdXG7fjtL75JS6CwVZbvFC6cY3iRX6jqQMYj6yiGUKmYzZaINwyu5WVpXfGxS6mdleKnwyLFLVhKRbNpiJ-36Pbe2QymPtHL66oZ1Yq2HTJWhZzvEBHUMZ4sRN-vjn0-NwffhZLZ-6HPzTaynatvd0q9PSUFIW0c7MJEiy3BIOJ-d1ZlPvG7FcWMODxS5esSmcZRDY_P7eDmrlwui43NgFlCQ9KObjTMPp03MnwFnhEmiHk5wNv-V5fCbfku1o2Sh4F6Ied9-gKoI_N6cHW2tP91nTkludThLqUUKm6bMXvlDhW1x7c38vyq6RYmb7CwYzydcm3wiNrxL8ur8VbH35PtMYxMWqgS855eZnHECkxOLvaFsgwb51OnHEVsdcG_aOTbgZVn3pAddNgrIbiLAunXbAikYTrxY4PWAoY7GltxSJ25ICYbzZNA6tHJy8OxEWYxuuf06BoCGSdQhpfXab1roBYXcAogMhU-7SQmxz8cCfzEKTsODuLTzICMGWF5bsAAgLSA_q8XV6tmw",
                      devRefreshToken : "eyJhbGciOiJSUzUxMiIsImtpZCI6IjZyMUF2MS1zNEN1SnhlUzlIRkRwUVN0V1VPSVY5U3Fiai1OWW0zSm81OEEifQ.eyJpYXQiOjE3MTg3ODQzNzksIm5iZiI6MTcxODc4NDM3OSwiZXhwIjoxNzE4OTU3MTc5LCJpc3MiOiJhcGktcHVibGljLnNhbWVsZW1lbnQuY29tIiwiYXVkIjoiZGV2aWNlIiwic3ViIjoiYXBpLXB1YmxpYyIsInJlZiI6MSwiYXBpIjoiZTBGYUUwRlFFWm5LZ21jUXFLVzEzT2kweE5XcE9kbUoiLCJkZXYiOjF9.R37zj-2Th05PB0eIasFb0oLjsUQKFTLvr9Rmnih4yGXOi06tUyZxwLptCYT5oyRltv53okasmmk8fNc0LHnnZ_bMj-nE2uAd4_PBw7xBx0cl6J_h5qwSBsYvc-nhGAmvNPDt2NBQu10Mu51Tet6bW-LMF_hAw6SY0NVSLI70uiNWAeKf0Z0jKdo2w2cvuo2WDs9pmuPSwJBA04nxXkkd4VFW9qD4acDekTwYPD5r-cyZ3c9H9S3T5u4alrHyNkpHReKR9890JnsOYVIuUzOuz_MrgJPkWHO3a2ooiRuzXVC8fzLQgXBx0HLFSMxWy3dO4nalx9mU_eEFxUNFRfysfqWnLtiblsMhWNzzG2uDkuacKqNPhGM2IkU1hjIb8sBUuhCFjvK-8T0S8z-Dd7LMNb02Ry3UNZlKcSk8yTbA6lP6jVoncWj5MJcs95Ohel6RJ0Lxdqbe0m555qkMxc-_0QAP9W2pVulTeMIhbfmiX_0cMjUal0OnbGvtc6eO_gRy3knOx8QNKnkVbjlhF9OQekk1yy8sPUZ-lsCwzIl42NcqVCRGw1r-BSiRJrplZSsjZ3JPFex79uR9acXly9nin7fFbuhC2W2COdQxZYA-mAMbKhz5etQ-s5h-S5cyHb7GBasubk586mc1uh4LE1_6tuI7Fh_f2zuNU7w3Z7KxZfI",
                      mqttClientIdentifier : "6-USER-hanif@samelement.com-iniadalahidekuuntuk",
                      brokerAddress : "mqtt.iot.samelement.com",
                      brokerProtocol : "ssl",
                      brokerPort : 8883,
                      authServer : "https://auth.iot.samelement.com",
					            apiServer : "https://api.iot.samelement.com",
                      rootCA : '''-----BEGIN CERTIFICATE-----
MIID6zCCAtOgAwIBAgIJAJviMizPUy7fMA0GCSqGSIb3DQEBCwUAMIGRMQswCQYD
VQQGEwJJRDETMBEGA1UECAwKSmF3YSBUaW11cjERMA8GA1UEBwwIU3VyYWJheWEx
FDASBgNVBAoMC1NBTSBFbGVtZW50MRwwGgYDVQQDDBNTQU0gRWxlbWVudCBSb290
IENBMSYwJAYJKoZIhvcNAQkBFhduby1yZXBseUBzYW1lbGVtZW50LmNvbTAgFw0y
MzAxMzEyMzIwMTNaGA8yMDczMDExODIzMjAxM1owgZExCzAJBgNVBAYTAklEMRMw
EQYDVQQIDApKYXdhIFRpbXVyMREwDwYDVQQHDAhTdXJhYmF5YTEUMBIGA1UECgwL
U0FNIEVsZW1lbnQxHDAaBgNVBAMME1NBTSBFbGVtZW50IFJvb3QgQ0ExJjAkBgkq
hkiG9w0BCQEWF25vLXJlcGx5QHNhbWVsZW1lbnQuY29tMIIBIjANBgkqhkiG9w0B
AQEFAAOCAQ8AMIIBCgKCAQEAvzMan2NMNcxFUSpNqb7udYXGb13aS1lXcreU1kD/
xlcliNkujD1NAag7y3J2ZZAfTxtVyJ+wlzJQ6+z/lGT76I/eTafIyBFm02Yoe2Zz
I0n8ihbOI57vkd+VUXjwsjPNwnZXBCZ7dRh0WjNDDpzuXP7diaAg24gV1OC2u+tq
YnpgQ69vOEtW/yxIcvWx4/3kL94g+OcU8mK7YDO3yrHjuxvX9UNbxvoebdm6yFHj
+uIStSnmMmjxmy5ahqErYRaAhffekIqL2YqLG0BImLwyrMUw0gbYmorOaFwsJrqK
XbY+SUK7U5zpAvqWszrvSFkkA6L2alNYKcD1R1StxWXJYwIDAQABo0IwQDAOBgNV
HQ8BAf8EBAMCAQYwDwYDVR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQUPsjGiX5sr1Od
QQP3C4RMpKRoYbswDQYJKoZIhvcNAQELBQADggEBAJz0WWYilOc2KAFgnhPctIuL
buJDrhmElwJJz1NhsG1qoXiLEtQ1ZdImUyNKjRwOYPGEDPStauqRHBzourOKcZkP
tPwUggb9eg1E8QkMkUOah39dqQD4C9Wt/6IAtP7TQFdFmVVPMi9qmrd4AqfV0VC5
FL8uRitY8UZkl5W+Glgh1mNed6WYB22imrGT+ScARKzq/uPduSFer21rv1wV18rB
LtmrNBsgShastgedESpqXLasEgOYLQNAH5VT0GgiWqGUvvBAInxhFcw+pCgokmqH
VVTAyOMB8bId/b+rqb6y+5EnXoSowvNW+UVZY5deacPMxMV84QerktXoyKiws0k=
-----END CERTIFICATE-----
'''
                  );
                }),
            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();
                    }
                ),
              ])),
        ),
      ),
    );
  }
}
0
likes
0
points
35
downloads

Publisher

unverified uploader

Weekly Downloads

A new Flutter plugin.

Homepage

License

unknown (license)

Dependencies

flutter

More

Packages that depend on iot_notification

Packages that implement iot_notification