+
Skip to content

jfly/on-air

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

15 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

on air

Detect if an attached webcam is in use and optionally publish its status to an MQTT broker in a way Home Assistant understands.

Usage

Just get the current status

$ on-air get
device: /dev/video0
    name: Integrated RGB Camera: Integrat
    status: streaming
device: /dev/video2
    name: Integrated RGB Camera: Integrat
    status: not streaming

Publish the current status to MQTT broker

This connects to an MQTT broker and publishes the status to a topic.

First, it publishes a retained "config" discovery message as described by Home Assistant here: https://www.home-assistant.io/integrations/mqtt/#discovery-topic. The component type is binary_sensor.

Next, it runs forever, polling the state of the attached webcams and publishing to the MQTT broker if anything changes.

$ on-air mqtt --broker mqtts://mqtt.snow.jflei.com --username jfly --password hunter2 --unique-id compy386

Run on-air mqtt --help to discover some optional settings, including polling interval.

Demo

You can see this in action here: https://www.youtube.com/watch?v=9zsV41U3B2E. Details:

  • I have systemd user targets configured for the various locations my laptop can be in.
  • These targets are activated by a script that currently looks at attached monitors, but may use other heuristics in the future.
  • When I'm in my office (the garage), a systemd unit runs that starts the on-air binary.
  • The rest is all in Home Assistant: a couple of automations ("garage on-air" and "garage off-air") that turn the "on air led" on/off when my laptop webcam appears/disappears.
  • I built the on air display, which was a fun mix of woodworking and electronics. It has an ESP8266 running ESPHome. It's directly connected to mains electricity for power. Feel free to reach out if you'd like more details. It may motivate me to document the full build.

About

Detect if an attached webcam is in use.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published
点击 这是indexloc提供的php浏览器服务,不要输入任何密码和下载