Documentation Index
Fetch the complete documentation index at: https://docs.famulor.io/llms.txt
Use this file to discover all available pages before exploring further.
Asterisk / FreePBX Integration
Connect your self-hosted Asterisk or FreePBX PBX to Famulor as a SIP trunkThis guide shows how to add Famulor as a generic outbound SIP trunk on Asterisk (chan_pjsip) or FreePBX. Famulor exposes an FQDN like
xxx.sip.livekit.cloud; you create a trunk that registers — or, preferred, statically routes — to that host with credentials you control.
Prerequisites
- Asterisk 16+ (or FreePBX 15+).
- Outbound UDP/TCP 5060 (or TLS 5061) reachable from your PBX to
xxx.sip.livekit.cloud. - An RTP port range opened on your firewall (Asterisk default
10000–20000).
Find your Famulor SIP address: Famulor dashboard → Phone Numbers → Integrate SIP trunk → Our SIP address.
Option A: FreePBX (GUI)
- Connectivity → Trunks → Add Trunk → Add SIP (chan_pjsip) Trunk.
- General tab:
- Trunk Name:
famulor - Outbound Caller ID: the DID Famulor should present, e.g.
+49305550123
- Trunk Name:
- pjsip Settings → General:
- SIP Server:
xxx.sip.livekit.cloud - SIP Server Port:
5060(or5061with TLS) - Transport:
udp(ortlsif your Famulor project supports it) - Authentication:
Outbound - Registration:
None - Username and Secret: the credentials you’ll re-use in Famulor
- SIP Server:
- pjsip Settings → Advanced:
- From Domain:
xxx.sip.livekit.cloud - From User: the DID’s E.164 number, no
+ - Codecs:
ulaw, alaw(force G.711)
- From Domain:
- Submit → Apply Config.
Option B: Asterisk pjsip.conf (manual)
Add to/etc/asterisk/pjsip.conf (or split across the conf.d files):
asterisk -rx 'pjsip reload'.
Step 2: Outbound route
Send selected destinations through the trunk:-
FreePBX: Connectivity → Outbound Routes → Add → Trunk Sequence:
famulor, dial pattern+.or whatever you want routed to AI. -
Asterisk dialplan:
Step 3: Inbound route
- FreePBX: Connectivity → Inbound Routes → Add → DID Number: your E.164 DID → destination = the extension or IVR you want the AI to answer as.
- Asterisk: in the
from-famulorcontext,exten => _+X.,1,Goto(your-ivr,s,1).
Step 4: Import the number into Famulor
- Open your Famulor dashboard and go to Phone Numbers → Integrate SIP trunk.
-
Fill in:
-
Outbound settings:
- Authorization type: Username and password.
- Country: the country your DID belongs to.
Step 5: Verify
- Assign the number to a
Receive phone callsassistant. Call the DID — the AI should answer. - Create a
Make phone callsassistant with the same number and trigger an outbound test call.
Common issues
One-way audio (NAT)
One-way audio (NAT)
Most common Asterisk problem. In
pjsip.conf set external_media_address and external_signaling_address to your PBX’s public IP, and add your LAN to local_net. Make sure RTP UDP 10000–20000 is forwarded to the PBX.488 Not Acceptable Here
488 Not Acceptable Here
Codec mismatch — leave only
ulaw, alaw allowed on the endpoint. Disable G.722, Opus, and any video codecs.401 / 407 on outbound
401 / 407 on outbound
The username/password Asterisk sends doesn’t match what Famulor has. Re-paste the credentials in both places carefully — Asterisk silently strips trailing whitespace from
pjsip.conf but FreePBX does not, so confirm by hand.Calls drop after 30 seconds
Calls drop after 30 seconds
Re-INVITE / direct-media issue. Add
direct_media=no and rewrite_contact=yes to the endpoint. This forces Asterisk to stay in the media path, which avoids the LiveKit ↔ PSTN endpoint trying to talk RTP to a NAT’d address.Need help with setup? Our support team can review your
pjsip.conf snippets and help debug NAT/codec issues.
