| name | jami |
| description | Make automated calls via Jami (GNU Ring). Use for light VoIP calling, messaging, and peer-to-peer communication without infrastructure. |
Jami Calling Skill
Automate phone calls and messaging using Jami (free, decentralized, peer-to-peer VoIP).
Quick Start
Installation
brew install --cask jami
sudo apt install jami
Setup
- Install Jami app
- Create/register a Jami account
- Get your Jami ID (looks like a long hex string)
- Configure in Clawdbot
Make a Call
jami account list
jami call <jami_id> <contact_id>
jami hangup <call_id>
Send Message
jami message send <contact_id> "Hello"
CLI Usage
Account Management
jami account list
jami account info <account_id>
jami account register <username>
jami account enable <account_id>
jami account disable <account_id>
Calling
jami call <account_id> <contact_id>
jami call list
jami call status <call_id>
jami hangup <call_id>
jami audio volume <volume_percent>
Contacts & Messaging
jami contact add <account_id> <contact_id>
jami contact list <account_id>
jami message send <contact_id> "Message text"
jami message listen
Automated Calling Examples
Simple outbound call
#!/bin/bash
ACCOUNT_ID="your_jami_account_id"
CONTACT_ID="contact_jami_id"
jami call $ACCOUNT_ID $CONTACT_ID
sleep 30
jami hangup
Call with message
#!/bin/bash
ACCOUNT_ID="your_account"
CONTACT_ID="contact_id"
jami call $ACCOUNT_ID $CONTACT_ID
jami message send $CONTACT_ID "Automated call from Clawdbot"
sleep 5
jami hangup
Listen for incoming calls
jami daemon --listening
jami call list
Clawdbot Integration
Configuration (in TOOLS.md)
## Jami Configuration
- Account ID: [your_jami_account_hex_id]
- Contacts:
- name: contact_jami_id (hex string)
- name: contact_jami_id
Usage in Clawdbot
"Make a call to [contact]"
"Send message to [contact]"
"Hang up current call"
"List my Jami contacts"
How Jami Works
Decentralized: No central server. Calls go peer-to-peer.
DHT: Uses Distributed Hash Table to find contacts.
Secure: Encryption built-in.
Free: No costs, no accounts, no subscriptions.
Open Source: Full source available.
Limitations
- Need both parties running Jami (or on a compatible VoIP network)
- No traditional phone numbers (uses Jami IDs instead)
- Requires internet (VoIP)
- Audio quality depends on connection
- No built-in automated IVR (you'd handle that in scripts)
Advanced: Self-Hosted
For serious automated calling, you can self-host a SIP gateway:
But for light calling, basic Jami CLI is sufficient.
Bundled Resources
scripts/jami_caller.sh - Make calls from CLI
scripts/jami_listener.sh - Listen for incoming calls
references/jami_api.md - Full Jami CLI reference
assets/jami_ids.txt - Local contact database