web

command module
v0.0.0-...-c48c3e2 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 6, 2026 License: MIT Imports: 31 Imported by: 0

README

Browser call console

This example pairs a whatsmeow client by QR code and exposes meowcaller's audio, H.264 video, independent camera controls, orientation, and call reactions in a localhost browser UI.

When idle, the console can start a direct call, an ad-hoc multi-person call, or a group-JID-bound call. Enter WhatsApp numbers or LIDs in the People box, separated by commas or newlines, or enter a @g.us group ID in the group field. Audio and video starts remain separate controls.

During an established call, use the People box and choose Add people. The event log reports each invite independently, then waits for the authoritative WhatsApp roster. group_state shows each transaction, and participant_join is emitted only when the target is connected with a selected PID-bearing device. The persistent participant list also shows invited/disconnected users and offers a Ring action for users already in the roster. Ring is distinct from adding a new participant.

The call-link controls create server-issued audio/video links with one click. The generated URL has direct copy and join actions; the separate existing-link field is only for previewing or joining a token/URL created elsewhere. Admins can toggle approval and approve or reject each waiting user from the rendered waiting-room list. A joining client remains in the waiting-room phase without microphone, speaker, or relay media until an authoritative admission update arrives.

In an active group call, the console can raise/lower the local hand, display other participants' hand state, send fixed or arbitrary Unicode emoji reactions, and start/stop display sharing. Screen sharing requires video signaling first. Stopping display capture restores the previous camera state and does not end or downgrade the call. Display frames currently use the established H.264 video sender. This matches the captured non-dual-stream mode: camera, display, and restored camera preserve the same SSRC and RTP sequence timeline, with a fresh IDR required at each source switch.

See the capture-backed feature notes for API examples, observed protocol boundaries, and remaining live-validation work.

go run .

Open the printed http://127.0.0.1:... URL. On first run, scan the QR code from WhatsApp under Linked devices. The SQLite session stays in this directory for later runs.

Use go run . -diagdump ./capture to record sensitive call diagnostics for local protocol research. Do not share those captures without reviewing their contents.

Documentation

Overview

Command web runs a localhost browser console for meowcaller audio and video calls.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL