ElevenLabs + Kasamila: video-call customer service with one voice and visual path
Keep your existing ElevenLabs Agent and give its customer-service replies a visible avatar, using one audio path for sound and mouth motion.
Keep your existing ElevenLabs Agent and give its customer-service replies a visible avatar, using one audio path for sound and mouth motion.
Implementation
- Configure your existing ElevenLabs Agent with its knowledge base, service instructions, authorized tools and human escalation. The avatar does not replace your business logic.
- Run npm ci in the sample directory and copy .env.example to .env. Set backend-only PROVIDER=elevenlabs, ELEVENLABS_API_KEY, ELEVENLABS_AGENT_ID and the Kasamila key, accessible template ID and matching canonical media descriptor. Select PCM input and output.
- Run npm start and open /public/video-call.html. Click Start to unlock audio and permit the microphone. Your backend obtains the signed ElevenLabs conversation URL; neither it nor permanent provider keys go to the browser.
- The microphone reaches the voice agent only. Its actual reply PCM reaches Kasamila for BOTH playback and mouth inference; do not add a second provider audio player. Optional caller-camera preview stays local. This UI is not a completed human WebRTC call or PSTN service.
- Barge-in invalidates old playback. Manual queue clearing does not guarantee upstream generation has stopped. End closes the provider transport, destroys the avatar and requests authorized Runtime termination. Silence is not a billing stop; investigate an unconfirmed end request.
cd examples/realtime-integrations
npm ci
cp .env.example .env
# Backend-only configuration: see linked guide
npm start
Boundaries and acceptance
This is a runnable AI video-call-style starter, not vendor production certification or a phoneme-accuracy guarantee. Add login, template authorization, HTTPS/WSS, consent and CRM/tool controls; test real accounts, multi-turn speech and interruption.
Code and protocols
Markdown / AI reading
zh | en | fr | de | ru | es | it | ar | ja | ko | th | ms | vi | hi | id