Skip to main content

Set Up Bitcall with Asterisk Using SIP Credentials

A full beginner-friendly guide to connect your Asterisk server with Bitcall using a SIP username and password. Includes full config snippets

Alex avatar
Written by Alex
Updated over 6 months ago


“This guide will help you make your Asterisk talk to Bitcall. It’s like matchmaking for VoIP nerds — but way more romantic.” 💘📞


🧰 What You Need

  • A working Asterisk server (even on a basic VPS is fine)

  • A SIP account created inside your Bitcall dashboard (with username and password)

  • Console/SSH access to your server (you’ll use nano or vim — don’t worry, we’ll help)


🛠️ Step-by-Step Setup


🔹 1. Login to your Asterisk server

ssh root@your-server-ip

📸 [Insert screenshot: terminal window showing SSH into server]


🔹 2. Locate Your SIP Config File

You’re either using:

  • sip.conf (for chan_sip)

  • pjsip.conf (for chan_pjsip)

🧠 Let’s assume you’re using sip.conf first (chan_sip is more beginner-friendly). If you’re using pjsip, we’ll cover that right after.


🧾 A. chan_sip Configuration (Classic Style)

3. Edit

sip.conf

nano /etc/asterisk/sip.conf

Scroll to the bottom and add this:

[bitcall]
type=peer
host=gateway.bitcall.io
port=5060
username=your-bitcall-username
secret=your-sip-password
fromuser=your-bitcall-username
fromdomain=gateway.bitcall.io
insecure=invite
qualify=yes
dtmfmode=rfc2833
disallow=all
allow=ulaw
allow=alaw
nat=yes
canreinvite=no

📸 [Insert screenshot: sip.conf with above config added]


4. Edit

extensions.conf

nano /etc/asterisk/extensions.conf

Add this to your outbound dial plan (example for calling out through Bitcall):

[outbound-bitcall]
exten => _X.,1,Set(CALLERID(num)=your-callerid)
same => n,Dial(SIP/${EXTEN}@bitcall,60)
same => n,Hangup()

⚠️ Replace your-callerid with a valid CLI assigned to you by Bitcall.

📸 [Insert screenshot: extensions.conf with outbound context added]


5. Reload Asterisk

asterisk -rx "reload"

Then connect to the console to test:

asterisk -rvvv

You should see:

-- Registered SIP 'yourusername' to gateway.bitcall.io

📸 [Insert screenshot: Asterisk console showing SIP registration]


🧾 B. pjsip.conf Configuration (Modern Asterisk)

If your system uses pjsip (default in Asterisk 16+), follow this instead.

3. Edit

pjsip.conf

nano /etc/asterisk/pjsip.conf

Paste the following at the bottom:

[bitcall]
type=registration
outbound_auth=bitcall-auth
server_uri=sip:gateway.bitcall.io
client_uri=sip:[email protected]
retry_interval=60
contact_user=your-bitcall-username

[bitcall-auth]
type=auth
auth_type=userpass
username=your-bitcall-username
password=your-sip-password

[bitcall-aor]
type=aor
contact=sip:gateway.bitcall.io

[bitcall-endpoint]
type=endpoint
transport=transport-udp
aor=bitcall-aor
auth=bitcall-auth
context=outbound-bitcall
disallow=all
allow=ulaw
allow=alaw
outbound_auth=bitcall-auth

[bitcall-identify]
type=identify
endpoint=bitcall-endpoint
match=gateway.bitcall.io

📸 [Insert screenshot: pjsip.conf with above blocks added]


4. Create or Edit

extensions.conf

Same as before:

[outbound-bitcall]
exten => _X.,1,Set(CALLERID(num)=your-callerid)
same => n,Dial(PJSIP/${EXTEN}@bitcall-endpoint)
same => n,Hangup()

⚠️ Replace your-callerid with your assigned number.


✅ Testing

From the Asterisk console:

asterisk -rvvv

Then try calling a number manually:

channel originate SIP/bitcall/14155550123 extension 100@default

Or from your SIP phone, dial an external number that matches your outbound-bitcall context.


🚧 Troubleshooting Tips

Problem

Fix

“SIP registration failed”

Check username/password, ensure DNS resolves correctly

One-way audio

Set nat=yes, or use STUN or external_media_address settings

CLI not showing or rejected

Check that your Caller ID is valid and approved in Bitcall

Call disconnects fast

Try insecure=invite in sip.conf or disable re-invites

Still stuck?

Try using IP: 188.34.143.144 instead of domain


🧠 TL;DR Recap

✅ Edit sip.conf or pjsip.conf to add Bitcall as a peer  
✅ Set username, password, and domain (gateway.bitcall.io)
✅ Add outbound rule in extensions.conf
✅ Reload and test a call
🎉 Boom. You’re now using Asterisk with Bitcall!


Did this answer your question?