MiroTalk P2P Integration (Self-Hosted Video)
MiroTalk P2P is an open-source video conferencing solution built on WebRTC technology. It lets you run unlimited audio/video calls, screen sharing, chat and recording directly on your own server, without any licence fees or limits on the length of calls.
Note
By connecting LockMyCal to a MiroTalk instance, you ensure that every booked online meeting automatically gets a unique, secure video room on your own domain.
How the integration works
sequenceDiagram
participant K as Client
participant L as LockMyCal
participant M as MiroTalk Server
K->>L: Confirms a booking of the type "MiroTalk Video"
L->>L: Generates a cryptographically secure video room
L->>K: Sends the link: https://meet.yourdomain.com/join/room-xyz
L->>L: Writes the link into calendars and email invitations
K->>M: Enters the room at the time of the meeting (WebRTC P2P)
1. Deploying MiroTalk P2P via Docker
If you don't have MiroTalk installed yet, you can easily start it with Docker:
version: "3.8"
services:
mirotalk:
image: mirotalk/p2p:latest
container_name: mirotalk-p2p
restart: unless-stopped
ports:
- "3000:3000"
environment:
- NODE_ENV=production
Start the container:
docker compose up -d
2. Setting up the reverse proxy and HTTPS
WebRTC strictly requires a secure HTTPS connection (for access to the microphone and camera in the browser).
An example configuration for Caddy:
meet.yourdomain.com {
reverse_proxy localhost:3000
}
3. Connecting in the LockMyCal administration
- Go to Integrations → Video and choose MiroTalk.
- Enter the Base URL of your MiroTalk instance (e.g.
https://meet.yourdomain.com). - Enter the API Key – the API key set in the configuration of your MiroTalk server.
- Save the settings.
Tip
If MiroTalk runs in your internal network (e.g. under a Docker service name), the LockMyCal operator must allow ALLOW_PRIVATE_IPS_FOR_VIDEO=true.
4. Activation on a meeting type
- Open Meeting Types and edit the required meeting.
- In the Location section, choose Video and the MiroTalk service.
- With every new booking, LockMyCal automatically generates a unique room link and inserts it into the confirmation email for you and the client.