Skip to main content

Using websocket matter server to query/control matter-enabled lights/sensors via a HTTP GET interface.

Project description

Matter Web Controller

This document explains how the local Matter device management system works using a web interface.

System Architecture

The system separates background tasks and simplifies network rules to make it easier to use:

  1. Background Process: The app runs the standard python-matter-server as a separate background task. This keeps the heavy work away from the web server.
  2. WebSockets Connection: The web server keeps a constant connection to the background task. This updates the network data in real time without slowing things down.
  3. HTTP Setup: The web server acts as a middleman. It changes complex WebSocket data into a simple HTTP GET link. Users only need to visit a simple web address to get JSON data.

Requirements

Python 3.12 or newer.

Installation

Create a virtual environment and install the package using your package manager. This will automatically install required tools like aiohttp and home-assistant-chip-core.

How to Run

Start the system by typing the executable command matter-srv. You can use the --port parameter to set the web server port. The default is 8080. The background Matter server will automatically use the next port number.

API Endpoints

Get lighting device status

  • URL: /api/lights
  • Method: GET
  • Description: Gets a list of all devices that have lighting features on the local Matter network. The data includes the Node ID, Endpoint ID, power state, and current brightness level.
  • Example: http://localhost:8080/api/lights

Get sensor device status

  • URL: /api/sensors
  • Method: GET
  • Description: Gets a flattened list of all sensor readings on the local Matter network. Each reading is separated into its own object containing a composite ID (Node, Endpoint, and Sensor Name), the sensor name, and the raw integer value.
  • Example: http://localhost:8080/api/sensors

Commission a new Matter device

  • URL: /api/register
  • Method: GET
  • Description: Initiates the commissioning process for a new device on the local Matter network using the provided setup payload code.
  • Parameters: code (string) - The Matter setup payload code (e.g., starting with MT:).
  • Example: http://localhost:8080/api/register?code=MT:Y.ABCDEFG123456789

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

matter_web_controller-0.3.0.tar.gz (4.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

matter_web_controller-0.3.0-py3-none-any.whl (5.5 kB view details)

Uploaded Python 3

File details

Details for the file matter_web_controller-0.3.0.tar.gz.

File metadata

  • Download URL: matter_web_controller-0.3.0.tar.gz
  • Upload date:
  • Size: 4.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for matter_web_controller-0.3.0.tar.gz
Algorithm Hash digest
SHA256 a1dd42c71af28210136332fdabe45367801ba7084a3cb05a765ac019c1f72a25
MD5 72771f6fc2dca1ff54717a070f1a5648
BLAKE2b-256 37291f3021579b2425ef6d1f30bca8864bf8807259cb51f41658766b141e8c8b

See more details on using hashes here.

Provenance

The following attestation bundles were made for matter_web_controller-0.3.0.tar.gz:

Publisher: python-publish.yml on dongnh/matter_webcontrol

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file matter_web_controller-0.3.0-py3-none-any.whl.

File metadata

File hashes

Hashes for matter_web_controller-0.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 920ce82da9acb554bc6bd1c4a46d4bb1c5ae6afc6a69c1a664d6fb3cc74173ee
MD5 591cb5d897f674e3c47600cbb0de88c4
BLAKE2b-256 d6898dd9f6cc8eeaecde8cef3134623ecaf6f98e4791f206b6dbee8b8e79c4ee

See more details on using hashes here.

Provenance

The following attestation bundles were made for matter_web_controller-0.3.0-py3-none-any.whl:

Publisher: python-publish.yml on dongnh/matter_webcontrol

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page