homebridge-livekit-sip-door
v1.2.0
Published
Homebridge plugin to unlock doors via LiveKit SIP integration and DTMF tones
Maintainers
Readme
homebridge-livekit-sip-door
A Homebridge plugin that integrates LiveKit SIP door intercoms with Apple HomeKit, allowing you to unlock doors via DTMF tones from your iPhone, Apple Watch, or Siri.
How It Works
This plugin monitors a LiveKit room for incoming SIP calls (e.g., from a door intercom). When a caller joins, the plugin automatically connects to the room and exposes a Lock accessory in HomeKit. Triggering "Unlock" sends a configurable DTMF code to open the door.
Installation
Search for homebridge-livekit-sip-door in the Homebridge UI, or install via npm:
npm install -g homebridge-livekit-sip-doorConfiguration
Configure the plugin using the Homebridge UI, or add the following to your config.json under platforms:
{
"platform": "LiveKitSIPDoorPlatform",
"name": "LiveKit SIP Door",
"livekitUrl": "wss://your-livekit-server.livekit.cloud",
"apiKey": "YOUR_API_KEY",
"apiSecret": "YOUR_API_SECRET",
"roomName": "sip-door",
"dtmfCode": "9",
"pollInterval": 5000
}Configuration Options
| Option | Required | Default | Description |
|--------|----------|---------|-------------|
| platform | Yes | — | Must be LiveKitSIPDoorPlatform |
| name | No | LiveKit SIP Door | Display name for the platform |
| livekitUrl | Yes | — | Your LiveKit server WebSocket URL |
| apiKey | Yes | — | LiveKit API key |
| apiSecret | Yes | — | LiveKit API secret |
| roomName | No | sip-door | The LiveKit room name for SIP calls |
| dtmfCode | No | 9 | DTMF digit(s) to send for door unlock |
| pollInterval | No | 5000 | How often to check for active calls (ms) |
Requirements
- Node.js 20 or later
- Homebridge 1.8.0 or later
- A LiveKit server with SIP integration configured
- A SIP trunk connected to your door intercom
Development
Setup
npm install
npm run buildWatch Mode
npm run watchThis will automatically recompile on changes and restart Homebridge with debug logging.
Lint
npm run lintLicense
ISC
