Skip to content

operasoftware/opera-smart-home

Repository files navigation

Icon

Opera GX in Smart Home

Table of contents

  1. Introduction
  2. Use case examples
  3. How to set it up
  4. How does it work
  5. Security concerns
  6. How to set up new Smart Home
  7. License

Introduction

Opera GX can join any Smart Home built on platforms like Home Assistant, Homebridge, Node Red or any other supporting the MQTT protocol.

The integration allows Opera GX to join the existing Smart Home network as a device so user can automate actions within the browser based on the state or actions of other smart devices at home. Or and vice versa: automate other smart home devices based on the state or actions reported by the browser. Or both, let's see the examples.

Use case examples

Syncing the colors of smart bulbs and smart led strips with the theme color of Opera GX

Sync lights

Getting your room ready for watching movies

Prepare for movie

Keeping your private browsing really private

Close private windows

Smart charging of laptop battery

Smart battery charging

And many many more.

Since the solution is based on extensions, it's highly expandable. You can use the official Opera GX Smart Home Extension or use other extensions from by third parties or write your own extension which is a really easy task with the new MQTT API.

You can have installed as many extensions as you want, they won't interfere each other. You can also have many computers with Opera GX in the Smart Home network, they'll be still recognizable as separate devices even if having the same extensions installed.

How to set it up

MQTT broker

Setting up the integration requires a running MQTT broker in your smart home network. If you're familiar with Smart Home there big changes you already have a running MQTT broker in your setup. If you happen to be a user of the Home Assistant you can easily install the the MQTT broker by installing the MQTT Integration. If not, one of the options is to install a standalone Eclipse Mosquitto MQTT Broker or the Home Assistant.

If you don't have any Smart Home set up yet, jump to How to set up new Smart Home for guidance.

Steps to setup the MQTT connection in Opera GX:

  1. Navigate to the Smart Home settings on the Settings page
  2. Turn on the MQTT Support toggle
  3. Enter the MQTT broker address, port and credentials (if needed) and click the Apply button.
  4. If the address and credentials were correct you should see the state changed to 'Connected' as below:

Mqtt Settings

  1. Click the Install button to get the Opera GX Smart Home Extension installed.

Again, if you're a Home Assistant user, the Opera device will pop up automatically in your Home Assistant and look like below: Opera GX in HA

How does it work

The solution is based on extensions utilizing a new MQTT API which allows for making topic subscriptions and publishing messages to the MQTT Broker. Based on that the extensions can declare sensors, switches, commands, triggers, etc. (see example). The default Opera GX Smart Home Extension is also utilizing the Home Assistant MQTT Discovery protocol to announce the presense of those entities grouped into one device called Opera GX.

Security concerns

Since currently the browser doesn't support secure MQTT (SMQTT) connections, for security reasons, it's better avoid using the browser's MQTT support on untrusted networks like public Wi-Fi. Disabling this feature in your browser settings helps prevent potential attacks such as MQTT broker spoofing. This is especially important when using public internet access points.

How to set up new Smart Home

Read more if want to install any of MQTT supporting smart home platforms.

License

This project is licensed under the Apache License 2.0 - see the LICENSE.txt file for details.

About

Official Opera smart home extension based on new MQTT extension API

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published