PENGEMBANGAN BACKEND EKOSISTEM SMART HOME YANG TERINTEGRASI DENGAN GOOGLE HOME
LUTFI ANDRIYANTO, Dr. I Wayan Mustika, S.T., M.Eng.;Ir. Azkario Rizky Pratama, S.T., M.Eng., Ph.D.
2024 | Skripsi | TEKNOLOGI INFORMASI
Perkembangan Internet of Things (IoT) yang pesat memungkinkan terciptanya ekosistem smart home yang cerdas dan terintegrasi. Sayangnya, sangat sedikit perangkat lunak dari smart home tersebut yang asli dibuat di Indonesia yang menyebabkan berkurangnya kesempatan untuk bersaing di pasar global. Penelitian ini berfokus pada pengembangan backend ekosistem smart home yang terintegrasi dengan Google Home. Tujuan utama dari penelitian ini adalah mengembangkan backend ekosistem smart home, mengembangkan layanan OAuth 2.0, mengintegrasikan ekosistem ini ke Google Home, dan menguji integrasi Google Home menggunakan Google Home Test Suite.
Backend dirancang menggunakan arsitektur semi event-driven microservices dan diimplementasikan menggunakan bahasa pemrograman Go. Arsitektur ini terinspirasi oleh arsitektur yang digunakan oleh Home Assistant dan Domoticz yang merupakan ekosistem open-source untuk smart home terbaik saat ini. Komunikasi backend dengan perangkat dilakukan menggunakan event bus berupa MQTT karena ringan dan efisien. MongoDB digunakan sebagai basis data utama, sementara Redis digunakan sebagai cache dan message broker internal.
Layanan OAuth 2.0 diperlukan untuk integrasi sistem ini ke Google Home yang memungkinkan pengguna mengakses perangkat smart home dari Google Home. Selain itu, diperlukan implementasi API untuk intent fulfillment yang berisi SYNC, QUERY, EXECUTE, dan DISCONNECT, serta implementasi request sync setelah pengguna melakukan perubahan ke perangkat dan implementasi report state setelah nilai perangkat mengalami perubahan.
Backend diuji menggunakan load testing untuk menguji non-fungional berupa Requests Per Second, gray-box testing untuk menguji fungsionalitas, dan Google Home Test Suite untuk menguji integrasi ke Google Home sesuai dengan standar Google. Hasil menunjukkan bahwa backend memenuhi semua kondisi pengujian, baik di gray-box testing internal sistem maupun Google Home Test Suite. Adapun dari pengujian non-fungsional, REST API yang diuji menunjukkan memiliki performa yang cukup bagus. Hal ini menunjukkan backend yang dikembangkan sudah terjamin fungsionalitasnya untuk ekosistem smart home yang terintegrasi dengan Google Home.
The rapid development of the Internet of Things (IoT) has enabled the creation of intelligent and integrated smart home ecosystems. Unfortunately, very few smart home software products are originally made in Indonesia, reducing the opportunity to compete in the global market. This study focuses on the development of a backend for a smart home ecosystem integrated with Google Home. The main objectives of this research are to develop a smart home ecosystem backend, create an OAuth 2.0 service, integrate this ecosystem with Google Home, and test the Google Home integration using the Google Home Test Suite.
The backend is designed using a semi event-driven microservices architecture and implemented using the Go programming language. This architecture is inspired by the architectures used by Home Assistant and Domoticz, which are the best open-source ecosystems for smart homes available today. Backend communication with devices is conducted using an event bus in the form of MQTT because it is lightweight and efficient. MongoDB is used as the primary database, while Redis is used as a cache and internal message broker.
The OAuth 2.0 service is required for integrating this system with Google Home, allowing users to access smart home devices from Google Home. Additionally, it requires the implementation of APIs for intent fulfillment, including SYNC, QUERY, EXECUTE, and DISCONNECT, as well as implementing request sync after users make changes to devices and report state after device values change.
The backend is tested using load testing to evaluate non-functional aspects such as Requests Per Second, gray-box testing for functional testing, and the Google Home Test Suite to ensure integration with Google Home meets Google's standards. The results show that the backend meets all test conditions, both in internal system gray-box testing and the Google Home Test Suite. The non-functional tests indicated that the REST APIs performed adequately. This demonstrates that the developed backend is functionally reliable for a smart home ecosystem integrated with Google Home.
Kata Kunci : Smart Home,Backend,OAuth 2.0,Google Home,Internet of Things