Incoming SIP call router for Jigasi
.
This repository contains scripts, files and documentation to convert
FreeSwitch
into a router for incoming SIP calls for Jigasi
. Assumed that
following services are already installed and configured correctly:
Jitsi
Jigasi
FreeSwitch
JigasiRecepta
is a plugin for FreeSwitch
to route incoming SIP calls to
Jigasi
. The following steps are tested in Debian 12 Bookworm
. Assumed
that FreeSwitch
already installed and running on this server.
apt-get update
apt-get install python3 python3-requests
In /etc/freeswitch/autoload_configs/modules.conf.xml:
<load module="mod_python3"/>
cd /usr/local/lib/python3.11/dist-packages
mkdir nordeck
cd nordeck
touch __init__.py
wget https://raw.githubusercontent.com/nordeck/jigasi-recepta/main/files/jigasi.py
cd /etc/freeswitch/dialplan/public
wget https://raw.githubusercontent.com/nordeck/jigasi-recepta/main/files/98_public_jigasi_dialplan.xml
cd /etc/freeswitch/dialplan/default
wget https://github.com/nordeck/jigasi-recepta/blob/main/files/99_default_jigasi_dialplan.xml
cd /etc/freeswitch/directory/default
wget https://raw.githubusercontent.com/nordeck/jigasi-recepta/main/files/jigasi.xml
Update jigasiPassword
in this file according to your settings.
Update conference_mapper_uri
according to your conference mapper URI in
/etc/freeswitch/dialplan/public/98_public_jigasi_dialplan.xml
:
<action application="set" data="conference_mapper_uri=https://domain/path?pin={pin}"/>
Restart the service:
systemctl restart freeswitch
Call the external number set in 98_public_jigasi_dialplan.xml. e.g.:
jigasi@freeswitch_address:5080
Or call the internal number set in 99_default_jigasi_dialplan.xml. e.g.:
jigasi
Type PIN when asked.
If you have a domain name, set SRV
records for SIP service.
-
DNS
A
record forsip.mydomain.com
which points the IP address of this server. -
DNS
SRV
record for_sip._tcp.mydomain.com
which pointssip.mydomain.com
. Select5080
as port if you still use the default external port. -
DNS
SRV
record for_sip._udp.mydomain.com
which pointssip.mydomain.com
. Select5080
as port if you still use the default external port.
In this case, the remote peer can call jigasi@mydomain.com
without setting the
port.
You may check the records in VoIP Toolbox. Write your
domain into the input box. e.g mydomain.com