• Tidak ada hasil yang ditemukan

Lampiran A.1 Struktur Program IoT Platform

N/A
N/A
Protected

Academic year: 2023

Membagikan "Lampiran A.1 Struktur Program IoT Platform"

Copied!
92
0
0

Teks penuh

(1)

LAMPIRAN

(2)

Lampiran A Berkas Konfigurasi dan Catatan

Lampiran A.1 Struktur Program IoT Platform

(3)
(4)

Lampiran A.3 Catatan Instal Packages API Gateway

(5)

Lampiran A.5 Berkas self-signed-skripsi.key

(6)

Lampiran A.7 Berkas fcm-key.json

(7)

Lampiran A.8 Struktur Program Aplikasi Mobile

(8)

Lampiran A.9 Catatan Keygen Android

(9)

Lampiran A.11 Catatan Flutter Build APK

Lampiran A.12 Catatan Instalasi Alat Utilitas Pengujian

(10)

Lampiran A.14 Berkas skripsi-public.pem

Lampiran A.15 Berkas .env

Lampiran A.16 Berkas konfigurasi Nginx

Lampiran A.17 Skema HTTP

(11)

Authorization: Bearer <jwt>

}

GET /device/list Query {

search: string, ids: string[], limit: number }

Header {

Authorization: Bearer <jwt>

}

Code 200 Body {

_id: string, name: string, description: string, last_recorded: date, coordinate: {

lat: number, lng: number }

}[]

Berguna untuk mengambil list IoT Device yang tersedia. Header Authorization hanya diperlukan oleh Web admin IoT Platform agar bisa mengakses data konfidensial seperti secret_key.

GET /device/:id/write Query {

ultrasonic: number, waterlevel: number, power: number, notify: number, _token: string }

Code 201 Digunakan untuk merekam data dari IoT Device dengan ID tertentu. Query notify diatur ke true jika IoT Device ingin memberikan notifikasi.

POST /device Header {

Authorization: Bearer <jwt>

} Body {

name: string, description: string, secret_key: string, coordinate: {

lat: number, lng: number }

}

Code 201 Body {

_id: string, name: string, description: string, last_recorded: date, coordinate: {

lat: number, lng: number }

}

Digunakan oleh Web admin IoT Platform untuk menambahkan perangkat IoT baru yang belum terdaftar.

PUT /device/:id Header {

Authorization: Bearer <jwt>

} Body {

name: string,

Code 200 Body {

_id: string, name: string, description: string, last_recorded: date, coordinate: {

Berguna untuk memperbaharui data IoT Device dengan ID tertentu.

(12)

Authorization: Bearer <jwt>

}

GET /device/:id Header {

Authorization: Bearer <jwt>

} Query {

with_log: boolean, log_mode: enum (realtime | 1hour | 2days | 2weeks) }

Code 200 Body {

_id: string, name: string, description: string, last_recorded: date, coordinate: {

lat: number, lng: number }

}

Untuk mengambil rekaman data dari suatu IoT Device dengan ID tertentu.

Lampiran A.18 Spesifikasi Pengujian Fungsional

No Spesifikasi Masukan Tindakan Keluaran Diharapkan

1 Login web admin Memasukan username,

password, lalu Login Muncul layar utama berisi list perangkat IoT 2

Membuat identitas perangkat IoT

Muncul form perangkat IoT

Mengisi data Pindah ke layar utama

Perangkat IoT (sesuai data) baru muncul 3

Mengubah data identitas perangkat IoT

Menekan nama perangkat

IoT pada list Muncul form perangkat IoT yang terisi data lama

Mengubah data Pindah ke layar utama

Perangkat IoT yang baru diubah muncul

4

Menghapus identitas perangkat IoT

Menekan nama perangkat

IoT pada list Muncul form perangkat IoT yang terisi data lama Muncul alert konfirmasi Alert tertutup

Muncul alert konfirmasi Pindah ke layar utama Perangkat IoT yang dihapus tidak ada di list

(13)

7

IoT Platform menolak pengiriman data yang tidak valid oleh perangkat IoT

Perangkat IoT mengirim data pengukuran dengan Id yang tidak terdaftar

Operasi ditolak dan menghasilkan error 404 Perangkat IoT mengirim

data pengukuran dengan Id yang terdaftar, tapi dengan secret key salah

Operasi ditolak dan menghasilkan error 401 Perangkat IoT mengirim

data pengukuran tidak lengkap dengan Id dan secret key benar

Operasi ditolak dan menghasilkan error 400 8

Menghapus perangkat IoT dari list di aplikasi mobile

Pengguna menekan tombol

Device Muncul alert konfirmasi Alert tertutup

Muncul alert konfirmasi Pindah ke layar utama Perangkat IoT yang dihapus tidak ada di list 9

Perangkat IoT mengirim data pengukuran dengan notifikasi peringatan

Perangkat IoT mengirim data pengukuran beserta permintaan notifikasi dengan Id yang

sebelumnya ditambahkan pada List aplikasi mobile

Muncul notifikasi pada Smartphone pengguna aplikasi mobile

Pengguna aplikasi mobile menekan notifikasi

Aplikasi mobile memunculkan halaman perangkat IoT sesuai ID

(14)

Lampiran B Kode Program IOT Platform

Lampiran B.1 cloud/admin/babel.config.js

Lampiran B.2 cloud/admin/package.json

(15)
(16)
(17)

Lampiran B.7 cloud/admin/src/assets/styles/_overrides.scss

(18)
(19)
(20)
(21)
(22)

Lampiran B.8 cloud/admin/src/assets/styles/_variables.scss

(23)

Lampiran B.9 cloud/admin/src/main.js

(24)

Lampiran B.10 cloud/admin/src/main.scss

(25)

Lampiran B.11 cloud/admin/src/registerServiceWorker.scss

(26)

Lampiran B.12 cloud/admin/src/router/index.js

Lampiran B.13 cloud/admin/src/views/Device.vue

(27)
(28)
(29)
(30)
(31)

Lampiran B.14 cloud/admin/src/views/List.vue

(32)
(33)

Lampiran B.15 cloud/admin/src/views/Login.vue

(34)
(35)

Lampiran B.16 cloud/admin/vue.config.js

Lampiran B.17 cloud/server/index.js

(36)

Lampiran B.18 cloud/server/package.json

Lampiran B.19 cloud/server/scripts/cron-aweek-aggregate.js

(37)

Lampiran B.20 cloud/server/src/admin-actions.js

(38)

Lampiran B.22 cloud/server/src/device-actions.js

(39)
(40)
(41)
(42)
(43)
(44)
(45)

Lampiran B.24 cloud/server/src/mongodb.js

Lampiran B.24 cloud/utils/pacakge.json

(46)

Lampiran B.25 cloud/utils/src/create-bot.js

(47)
(48)

Lampiran B.26 cloud/utils/src/create-jwt.js

(49)

Lampiran B.27 cloud/utils/src/create-key-pairs.js

(50)
(51)

Lampiran B.29 cloud/utils/src/simulate-device-write-log.js

(52)
(53)
(54)

Lampiran B.30 cloud/utils/src/simulate-mobile-app-endpoint.js

(55)
(56)

Lampiran B.31 cloud/utils/util.js

(57)

Lampiran C Kode Program Aplikasi Mobile

Lampiran C.1 mobile/android/app/build.gradle

(58)
(59)

Lampiran C.3 mobile/android/app/src/main/AndroidManifest.xml

(60)
(61)

Lampiran C.9 mobile/android/build.gradle

Lampiran C.10 mobile/android/gradle/wrapper/gradle-wrapper.properties

(62)
(63)
(64)

Lampiran C.15 mobile/lib/entities/sensor_data.dart

(65)

Lampiran C.16 mobile/lib/entities/sensor_record_data.dart

Lampiran C.17 mobile/lib/main.dart

(66)

Lampiran C.18 mobile/lib/screens/sensoraddtolist_screen.dart

(67)
(68)

Lampiran C.19 mobile/lib/screens/sensoritem_screen.dart

(69)
(70)
(71)
(72)
(73)

Lampiran C.20 mobile/lib/screens/sensorlist_screen.dart

(74)
(75)
(76)
(77)
(78)

Lampiran C.21 mobile/lib/widgets/sensor_add_to_list_item.dart

(79)
(80)
(81)
(82)
(83)

Lampiran C.23 mobile/lib/widgets/sensor _parameter_chart.dart

(84)
(85)

Lampiran C.25 mobile/pubspec.yaml

(86)
(87)

Lampiran D Data Pengukuran Performa

Lampiran D.1 Performa saat perangkat IoT mengirim data (client)

Total Mulai Selesai L ms SR Bytes R Bytes W %SR Req/s Read/R Write/R

20 9:14:18 9:14:18 150 20 2740 6850 100 133,33 137 342,5 20 9:14:19 9:14:19 81 20 2740 6847 100 246,91 137 342,35 20 9:14:19 9:14:19 89 20 2740 6849 100 224,72 137 342,45 40 9:14:24 9:14:24 296 40 5480 13700 100 135,14 137 342,5 40 9:14:24 9:14:25 173 40 5480 13698 100 231,21 137 342,45 40 9:14:25 9:14:25 187 40 5480 13697 100 213,9 137 342,43 60 9:14:30 9:14:30 233 60 8220 20544 100 257,51 137 342,4 60 9:14:30 9:14:31 240 60 8220 20549 100 250 137 342,48 60 9:14:31 9:14:31 219 60 8220 20553 100 273,97 137 342,55 80 9:14:36 9:14:37 291 80 10960 27400 100 274,91 137 342,5 80 9:14:37 9:14:37 284 80 10960 27400 100 281,69 137 342,5 80 9:14:37 9:14:37 303 80 10960 27408 100 264,03 137 342,6 100 9:14:43 9:14:43 367 100 13700 34248 100 272,48 137 342,48 100 9:14:43 9:14:43 353 100 13700 34246 100 283,29 137 342,46 100 9:14:44 9:14:44 338 100 13700 34259 100 295,86 137 342,59 120 9:14:49 9:14:52 341 120 16440 41095 100 351,91 137 342,46 120 9:14:53 9:14:53 418 120 16440 41090 100 287,08 137 342,42 120 9:14:53 9:14:54 385 120 16440 41102 100 311,69 137 342,52 140 9:14:59 9:14:59 441 140 19180 47950 100 317,46 137 342,5 140 9:14:59 9:15:00 430 140 19180 47951 100 325,58 137 342,51 140 9:15:00 9:15:00 424 140 19180 47928 100 330,19 137 342,34 160 9:15:05 9:15:07 528 160 21920 54793 100 303,03 137 342,46 160 9:15:07 9:15:08 533 160 21920 54789 100 300,19 137 342,43 160 9:15:08 9:15:08 565 160 21920 54779 100 283,19 137 342,37 180 9:15:14 9:15:14 594 180 24660 61633 100 303,03 137 342,41 180 9:15:14 9:15:15 558 180 24660 61639 100 322,58 137 342,44

(88)

Lampiran D.2 Performa saat perangkat IoT mengirim data (server)

Waktu CPU (%) Memory (%) Memory (KB)

9:14:12 6.481 36.093 699380

9:14:14 7.407 36.102 699536

9:14:16 6.542 36.103 699556

9:14:18 5.607 36.096 699436

9:14:20 7.339 36.136 700208

9:14:22 6.481 36.137 700224

9:14:23 4.673 36.139 700260

9:14:25 12.264 36.144 700360

9:14:27 4.717 36.163 700724

9:14:29 8.411 36.165 700772

9:14:31 21.101 36.203 701508

9:14:33 7.477 36.297 703324

9:14:35 5.556 36.298 703352

9:14:37 28.155 36.232 702072

9:14:39 7.407 36.469 706652

9:14:41 5.556 36.466 706596

9:14:43 35.577 36.463 706536

9:14:45 7.339 36.539 708016

9:14:47 8.333 36.537 707976

9:14:49 6.481 36.541 708044

9:14:51 6.481 36.544 708108

9:14:53 29.126 36.355 704456

9:14:55 5.607 36.569 708588

9:14:57 5.607 36.575 708716

9:14:59 6.542 36.571 708632

(89)

9:15:20 6.422 36.799 713048 9:15:22 39.604 36.531 707856

9:15:24 4.673 36.639 709956

9:15:26 12.150 36.636 709896

9:15:28 7.339 36.642 710004

9:15:30 6.542 36.638 709932

9:15:32 5.607 36.638 709936

9:15:34 7.407 36.641 709988

9:15:36 6.481 36.645 710072

9:15:38 6.604 36.639 709960

(90)

Lampiran D.3 Performa saat aplikasi mobile mengambil data (client)

Total Mulai Selesai L ms SR Bytes R Bytes W %SR Req/s Read/R Write/R

50 9:16:07 9:16:08 277 50 76908 4200 100 180,51 1538,16 84 50 9:16:08 9:16:08 223 50 77006 4200 100 224,22 1540,12 84 50 9:16:08 9:16:08 203 50 77104 4200 100 246,31 1542,08 84 100 9:16:14 9:16:14 381 100 153032 8400 100 262,47 1530,32 84 100 9:16:14 9:16:15 381 100 153718 8400 100 262,47 1537,18 84 100 9:16:15 9:16:15 336 100 154208 8400 100 297,62 1542,08 84 150 9:16:20 9:16:21 523 150 231508 12600 100 286,81 1543,39 84 150 9:16:21 9:16:22 599 150 230724 12600 100 250,42 1538,16 84 150 9:16:22 9:16:23 508 150 231606 12600 100 295,28 1544,04 84 200 9:16:28 9:16:28 733 200 306946 16800 100 272,85 1534,73 84 200 9:16:29 9:16:29 685 200 304594 16800 100 291,97 1522,97 84 200 9:16:29 9:16:30 705 200 304888 16800 100 283,69 1524,44 84 250 9:16:35 9:16:36 826 250 385422 21000 100 302,66 1541,69 84 250 9:16:37 9:16:37 817 250 382678 21000 100 306 1530,71 84 250 9:16:38 9:16:39 876 250 383756 21000 100 285,39 1535,02 84 300 9:16:44 9:16:45 958 300 462624 25200 100 313,15 1542,08 84 300 9:16:45 9:16:46 1062 300 456940 25200 100 282,49 1523,13 84 300 9:16:46 9:16:47 991 300 458508 25200 100 302,72 1528,36 84 350 9:16:53 9:16:54 1074 350 539728 29400 100 325,88 1542,08 84 350 9:16:54 9:16:55 1113 350 540806 29400 100 314,47 1545,16 84 350 9:16:55 9:16:56 1096 350 538748 29400 100 319,34 1539,28 84 400 9:17:01 9:17:03 1204 400 617028 33600 100 332,23 1542,57 84 400 9:17:03 9:17:05 1165 400 617910 33600 100 343,35 1544,78 84 400 9:17:05 9:17:07 1254 400 616734 33600 100 318,98 1541,84 84

(91)

Lampiran D.4 Performa saat aplikasi mobile mengambil data (server)

Waktu CPU (%) Memory (%) Memory (KB)

9:16:03 5.607 36.642 701000

9:16:05 5.556 36.638 709940

9:16:07 5.660 36.635 709880

9:16:09 38.462 36.419 705684 9:16:10 16.981 36.396 705236

9:16:12 5.556 36.399 705300

9:16:14 39.806 36.426 705820

9:16:16 8.182 36.784 712756

9:16:18 6.422 36.785 712780

9:16:20 10.577 36.785 712788 9:16:22 35.238 36.855 714140

9:16:24 6.481 36.980 716556

9:16:26 8.411 36.970 716360

9:16:28 31.068 36.978 716528 9:16:30 64.078 37.048 717876

9:16:32 5.556 37.149 719824

9:16:34 7.547 37.153 719908

9:16:36 60.748 37.153 719908 9:16:38 32.000 37.248 721752

9:16:40 6.481 37.370 724112

9:16:42 6.542 37.371 724144

9:16:44 10.185 37.375 724216 9:16:46 58.095 37.386 724424 9:16:48 25.243 37.655 729644

9:16:50 8.333 37.759 731644

9:16:52 5.660 37.757 731616

9:16:54 61.905 38.032 736944 9:16:56 64.762 38.032 736948

(92)

9:17:07 10.577 38.041 737108

9:17:09 5.607 38.037 737032

9:17:11 6.422 38.042 737128

9:17:13 27.347 38.119 738624 9:17:15 49.048 38.137 738984 9:17:17 15.660 38.133 738900

9:17:19 7.477 38.136 738952

9:17:21 5.714 38.129 738828

9:17:23 28.269 38.143 739100 9:17:25 51.782 38.138 739004 9:17:27 16.604 38.155 739336

9:17:29 7.477 38.157 739372

9:17:31 5.607 38.156 739348

9:17:33 6.481 38.157 739368

9:17:35 6.422 38.149 739208

9:17:37 8.491 38.155 739336

9:17:39 5.607 38.159 739396

9:17:41 6.542 38.156 739352

Referensi

Dokumen terkait

Orang, proses, atau sistem lain yang berinteraksi dengan sistem informasi yang akan dibuat itu sendiri, jadi walaupun simbol dari actor adalah gambar orang, tapi

Kamus data atau data dictionary ialah data yang digunakan dalam analisis struktur dan desain sistem informasi dan juga merupakan suatu katalog yang menjelaskan lebih

Thingspeak merupakan sebuah platform IoT yang bisa digunakan untuk mengambil dan menyimpan data dari sensor ke dalam cloud dan mengembangkan aplikasi IoT tersebut.. Platform IoT

1) Belum adanya sertifikat hak milik dari pemberi waris. Anggapan dari sebagian masyarakat bahwa petok letter C sudah cukup sebagai tanda bukti hak kepemilikan

Membuat rangkuman tentang platform IoT yang umum digunakan METODE PENGERJAAN TUGAS. Mencari referensi di internet tentang platform IoT yang umum digunakan

Dengan metode klasifikasi ABC, dapat diketahui bahwa produk- produk sabun dan shampoo yang termasuk dalam 50% dari demand merupakan produk-produk sabun dan shampoo yang

Phantom.. Pada penelitian ini bahasa pemograman perangkat lunak yang digunakan adalah bahasa Basic yaitu BASCOM AVR, LabView dan EIDORS. Program BASCOM-AVR digunakan untuk

Edge computing merupakan suatu konsep pengkomputasian data yang mana terjadi sebelum pada bagian “edge” dengan cara data dari seluruh perangkat IoT