Jigasi Telephony Gateway: SIP & PSTN Configuration Guide

Learn how to configure a Jigasi telephony gateway for SIP and PSTN calls, connect Jitsi Meet with a SIP server, and troubleshoot common setup issues.

Jigasi Telephony Gateway: SIP & PSTN Configuration Guide

Jigasi SIP and PSTN Gateway Configuration: Complete Guide to Jigasi Telephony Gateway

Jitsi Meet works very well for browser-based video meetings, but sometimes you also need people to join a meeting using a normal telephone or SIP client. This is where a Jigasi telephony gateway becomes useful. Jigasi connects Jitsi Meet with SIP-based telephone systems, allowing users to make or receive audio calls through a SIP server. Jigasi is not itself a SIP server; it acts as a connector between Jitsi Meet and an existing SIP server or PBX.

For organizations already using VoIP, SIP trunks, PBX systems, or telephone numbers, this can make Jitsi Meet much more flexible. A user can stay in a Jitsi meeting while another participant joins through a phone call.

In this guide, we will explain how Jigasi works, what you need before installation, how to configure SIP, how PSTN connectivity fits into the setup, and how to troubleshoot common problems.

What Is a Jigasi Telephony Gateway?

Jigasi is a server-side application developed for connecting Jitsi Meet conferences with SIP clients.

In a normal Jitsi meeting, participants usually connect through a web browser or the Jitsi mobile application. With Jigasi, a telephone participant can also become part of the meeting.

A simple setup looks like this:

Telephone/PSTN → SIP Provider or PBX → Jigasi → Jitsi Meet → Meeting Participants

For example, imagine that your company has a Jitsi Meet server at:

https://meet.example.com

You also have a SIP account from your VoIP provider:

conference@example-sip.com

Jigasi registers that SIP account with the SIP server. When a Jitsi user makes an outgoing call, Jigasi handles the SIP side of the connection and connects the call to the Jitsi conference.

The official Jigasi project describes it as a gateway that connects SIP clients to Jitsi Meet conferences hosted by Jitsi Videobridge.

Jigasi Is Not a SIP Server

This is an important point.

Jigasi does not replace your PBX, SIP provider, or telephone network.

Instead, it works as a connector.

You normally need:

  • Jitsi Meet
  • Jitsi Videobridge
  • Prosody/XMPP
  • Jigasi
  • A SIP server, PBX, or SIP provider
  • A SIP account
  • PSTN service if you want calls to normal telephone numbers

Your SIP provider or PBX is responsible for the connection to the telephone network.

How the Jigasi SIP Gateway Works

The easiest way to understand Jigasi is to look at the call flow.

Outgoing Call

Suppose a Jitsi participant wants to call:

+1 555 123 4567

The process is roughly:

Jitsi Meet

Jigasi

SIP Server / PBX

SIP Provider

PSTN

Telephone

Jigasi receives the call request from the Jitsi environment and uses the configured SIP account to place the call.

Incoming Call

Incoming calls work in the opposite direction:

Telephone

PSTN

SIP Provider / PBX

Jigasi

Jitsi Meet Conference

For incoming calls, Jigasi can use information in the SIP INVITE to determine which Jitsi conference should receive the call. The Jigasi documentation also describes a default room setting that can be used when the incoming SIP request does not contain the expected conference header.

SIP vs PSTN: What Is the Difference?

Before configuring Jigasi, it helps to understand these two terms.

SIP

SIP stands for Session Initiation Protocol.

It is commonly used to start and manage VoIP calls.

A SIP account may look something like:

user123@example.com

A SIP server or PBX can manage these calls.

PSTN

PSTN stands for Public Switched Telephone Network.

This is the traditional telephone network used to call normal phone numbers.

When you want a Jitsi user to call a mobile or landline number, you normally need a SIP provider or PBX that provides access to the PSTN.

So Jigasi itself does not magically provide telephone numbers.

A typical PSTN setup is:

Jitsi Meet

Jigasi

PBX / SIP Provider

PSTN

Phone Number

What You Need Before Configuring Jigasi

A working setup requires more than installing one package.

Before configuring Jigasi, prepare the following.

1. A Working Jitsi Meet Server

Your Jitsi Meet installation should already be working correctly.

For example:

https://meet.example.com

Test normal browser-to-browser meetings before adding telephony.

This makes troubleshooting much easier.

2. A SIP Account

You need a SIP account from your SIP provider or PBX.

For example:

SIP Username: 1001@example-sip.com
Password: ********
SIP Server: example-sip.com
Port: 5060
Transport: UDP

The exact values depend on your provider.

3. PSTN Service

If you want to call regular telephone numbers, your SIP provider needs to support PSTN connectivity.

Your provider may give you:

  • SIP credentials
  • DID numbers
  • Outbound calling
  • Inbound calling
  • SIP trunk information
  • Supported codecs
  • Authentication details

4. Network Access

Jigasi needs to communicate with:

  • Jitsi/XMPP services
  • SIP server
  • SIP/RTP endpoints

Firewall and NAT configuration can have a major impact on call quality.

Jigasi Telephony Gateway Configuration

Now let’s look at the basic configuration.

The main configuration file used by Jigasi is:

/etc/jitsi/jigasi/sip-communicator.properties

The Jigasi project also provides a sample sip-communicator.properties file containing SIP account settings and other options.

Your exact installation path can vary depending on whether you installed Jigasi from packages, source, or a container.

Configure the SIP Account

A basic SIP account configuration looks like this:

net.java.sip.communicator.impl.protocol.sip.acc123456789=acc123456789

net.java.sip.communicator.impl.protocol.sip.acc123456789.ACCOUNT_UID=SIP\:user123@example.com

net.java.sip.communicator.impl.protocol.sip.acc123456789.PASSWORD=YOUR_PASSWORD

net.java.sip.communicator.impl.protocol.sip.acc123456789.PROTOCOL_NAME=SIP

net.java.sip.communicator.impl.protocol.sip.acc123456789.SERVER_ADDRESS=sip.example.com

net.java.sip.communicator.impl.protocol.sip.acc123456789.USER_ID=user123@example.com

net.java.sip.communicator.impl.protocol.sip.acc123456789.KEEP_ALIVE_INTERVAL=25

net.java.sip.communicator.impl.protocol.sip.acc123456789.KEEP_ALIVE_METHOD=OPTIONS

The official sample configuration uses the same basic fields for the SIP account, including account UID, password, protocol, server address, user ID, and keep-alive settings.

Replace the example values with the information supplied by your SIP provider.

Configure the Jitsi Conference Connection

Jigasi also needs to know which XMPP conference service it should use.

For example:

org.jitsi.jigasi.MUC_SERVICE_ADDRESS=conference.meet.example.com

This connects Jigasi with the conference component used by your Jitsi deployment.

Your exact XMPP and MUC configuration depends on your Jitsi domain and Prosody setup.

The official Jigasi setup instructions also require configuring a MUC component for the Jigasi brewery/control system.

Configure a Default Jitsi Room

For incoming SIP calls, you can configure a default room:

org.jitsi.jigasi.DEFAULT_JVB_ROOM_NAME=siptest@conference.meet.example.com

This can be useful when an incoming SIP request does not contain a Jitsi-Conference-Room header.

Jigasi’s documentation explains that an incoming SIP INVITE can contain this header to identify the Jitsi conference. If it is missing, Jigasi can use the configured default room instead.

Enable SIP in Jigasi

Jigasi supports SIP and transcription functions.

For a normal SIP gateway setup, SIP should be enabled:

org.jitsi.jigasi.ENABLE_SIP=true

If you are not using Jigasi for transcription, you can leave transcription disabled:

org.jitsi.jigasi.ENABLE_TRANSCRIPTION=false

These are also the default SIP/transcription settings described in the current Jigasi documentation.

Configure Jigasi for Outgoing Calls

One of the most useful features is dial-out.

A Jitsi participant can invite a telephone participant from the meeting interface when Jigasi is correctly configured.

The flow is:

Jitsi Participant

Dial telephone number

Jigasi

SIP Server

PSTN

Telephone

The SIP provider must allow outbound calls.

If your provider blocks international or premium numbers, Jigasi cannot bypass those restrictions.

This is controlled by your SIP provider or PBX.

SIP Dial-Out Example

Imagine your SIP provider gives you:

SIP User:
1001@sip.example.com

SIP Password:
your-password

SIP Server:
sip.example.com

Your Jigasi configuration would contain values similar to:

net.java.sip.communicator.impl.protocol.sip.acc1001=acc1001

net.java.sip.communicator.impl.protocol.sip.acc1001.ACCOUNT_UID=SIP\:1001@sip.example.com

net.java.sip.communicator.impl.protocol.sip.acc1001.PASSWORD=your-password

net.java.sip.communicator.impl.protocol.sip.acc1001.PROTOCOL_NAME=SIP

net.java.sip.communicator.impl.protocol.sip.acc1001.SERVER_ADDRESS=sip.example.com

net.java.sip.communicator.impl.protocol.sip.acc1001.USER_ID=1001@sip.example.com

Do not copy these values directly into production. Replace them with the credentials supplied by your provider.

Configure Incoming SIP Calls

Jigasi can also accept incoming SIP calls.

For example:

Customer

Telephone

SIP Provider

Jigasi

Jitsi Meeting

The incoming SIP request needs to tell Jigasi which conference the caller should join.

The official documentation describes the use of:

Jitsi-Conference-Room

in the SIP INVITE.

For example, a SIP system may send a room value corresponding to:

room1234@conference.meet.example.com

Jigasi can then connect the caller to the related Jitsi meeting.

PSTN Gateway Setup With Jigasi

Jigasi is often called a PSTN gateway because it can connect Jitsi to telephone networks through SIP.

However, the actual PSTN connection usually comes from your SIP provider or PBX.

A common architecture looks like this:

                  ┌───────────────┐
                  │   Jitsi Meet  │
                  └───────┬───────┘

                       XMPP

                  ┌───────▼───────┐
                  │     Jigasi    │
                  └───────┬───────┘

                         SIP

                  ┌───────▼───────┐
                  │ PBX / SIP     │
                  │ Provider      │
                  └───────┬───────┘

                         PSTN

                  ┌───────▼───────┐
                  │ Telephone     │
                  └───────────────┘

This separation is important when troubleshooting.

If Jigasi registers successfully but a phone number cannot be reached, the problem may be with the PBX, SIP trunk, routing, or PSTN provider rather than Jitsi itself.

SIP Transport: UDP, TCP or TLS

Your SIP provider may support different transports.

Common options include:

  • UDP
  • TCP
  • TLS

The correct choice depends on your SIP provider.

For example, the current Jitsi Docker documentation exposes SIP server, port, and transport settings such as:

JIGASI_SIP_SERVER
JIGASI_SIP_PORT
JIGASI_SIP_TRANSPORT

with UDP shown as an example transport.

Do not select a transport simply because it is common. Use the settings required by your SIP service.

SIP Port and Firewall Configuration

A common SIP port is:

5060

SIP over TLS commonly uses:

5061

But the actual ports depend on your provider.

You also need to think about RTP.

SIP handles call signaling, while RTP carries the actual audio.

This means a configuration can look correct while the call still has:

  • No audio
  • One-way audio
  • Broken audio
  • Random disconnections

Firewall and NAT rules are therefore very important.

NAT Problems With Jigasi

NAT is one of the common causes of SIP audio problems.

For example:

Internet

Router / NAT

Jigasi

The SIP signaling may reach Jigasi, but RTP packets may not return correctly.

This can create situations where:

The phone rings, the call connects, but nobody can hear anything.

If you see this behavior, do not only check the SIP username and password.

Also check:

  • Public IP
  • NAT rules
  • Firewall
  • RTP ports
  • SIP provider requirements
  • Server routing
  • Docker networking, if applicable

Codec Configuration

Audio codecs are another important part of a telephony setup.

Your SIP provider may support codecs such as:

  • Opus
  • G.711
  • G.722
  • AMR-WB

The supported codecs depend on your provider and PBX.

Do not disable codecs without knowing what the other side supports.

A codec mismatch can prevent a call from establishing correctly or can result in poor audio.

Jigasi Brewery and XMPP Configuration

Jigasi also communicates with the Jitsi environment through XMPP.

The official Jigasi setup includes a brewery MUC used by Jigasi instances and requires an XMPP account for the control connection.

A typical setup includes:

Jitsi Meet

Prosody / XMPP

Jigasi Brewery

Jigasi

For larger deployments, the brewery mechanism becomes useful because multiple Jigasi instances can participate in the same environment.

Multiple Jigasi Instances

If your service receives many telephone calls, one Jigasi instance may not be enough.

You can run multiple Jigasi instances.

For example:

                  Jitsi Meet
                      |
             ┌────────┴────────┐
             ↓                 ↓
          Jigasi 1          Jigasi 2
             |                 |
             └────────┬────────┘

                SIP / PBX

This can help distribute calls across multiple Jigasi servers.

However, scaling Jigasi is not simply a matter of adding servers.

You should also consider:

  • SIP account design
  • Concurrent calls
  • CPU usage
  • Network capacity
  • RTP traffic
  • PBX capacity
  • SIP provider limits
  • Monitoring
  • Failover

Test your expected call volume before moving the setup into production.

How to Test Your Jigasi Configuration

After configuration, test one feature at a time.

Test 1: Check the Jigasi Service

On a package-based installation:

sudo systemctl status jigasi

If it is not running, check the logs before testing calls.

Test 2: Check SIP Registration

Your SIP provider should show the account as registered.

If it is not registered, check:

  • SIP username
  • Password
  • SIP server
  • Port
  • Transport
  • DNS
  • Firewall

Test 3: Test an Outgoing Call

Start a Jitsi meeting and try a telephone dial-out.

Use a test number that you control.

Test 4: Test Incoming Calls

Call the configured SIP number and verify that Jigasi connects the caller to the expected Jitsi meeting.

Test 5: Check Audio

Test both directions:

Jitsi → Phone
Phone → Jitsi

Do not assume that working signaling means working audio.

Common Jigasi SIP Problems and Solutions

1. Jigasi Is Not Starting

First check the service:

sudo systemctl status jigasi

Then check the logs:

sudo journalctl -u jigasi

Look for configuration or authentication errors.

2. SIP Account Is Not Registering

Check:

  • SIP username
  • SIP password
  • SIP server
  • SIP port
  • SIP transport

Also confirm that the provider allows registration from your server’s IP address.

3. Call Connects but There Is No Audio

This is often related to RTP or NAT.

Check:

  • Firewall
  • RTP port range
  • NAT
  • Public IP configuration
  • SIP provider settings
  • Codec support

A SIP registration test alone does not prove that RTP is working.

4. Incoming Calls Do Not Reach the Meeting

Check the incoming SIP INVITE.

Make sure the conference information is being provided correctly.

The Jitsi-Conference-Room header is particularly important when you want Jigasi to route an incoming call to a specific Jitsi conference.

5. Outgoing Calls Fail

If Jigasi is registered but outgoing calls fail, check the SIP provider.

Possible reasons include:

  • Outbound calling is disabled
  • Destination is blocked
  • International calls are disabled
  • Insufficient account balance
  • Incorrect dial format
  • SIP trunk routing problem

Jigasi cannot override restrictions placed by the SIP provider.

Security Tips for a Jigasi Gateway

A telephone gateway should be treated as an important part of your infrastructure.

Protect SIP Credentials

Do not publish:

SIP username
SIP password

in public repositories or articles.

Use a Firewall

Only allow the traffic that your Jitsi and SIP setup requires.

Protect Your Server

Keep your operating system and Jitsi components updated.

Watch for SIP Abuse

If your SIP account allows paid outbound calls, unauthorized access can become expensive very quickly.

Monitor:

  • Unexpected calls
  • International calls
  • High call volume
  • Unknown destinations
  • Failed authentication attempts

Use Strong Passwords

Avoid simple SIP passwords.

A compromised SIP account can potentially be used for unauthorized calls.

Jigasi in Docker

Jitsi also provides Docker-based configuration for the SIP gateway.

The current Jitsi Docker documentation exposes environment variables for configuring the SIP URI, password, server, port, and transport.

For example:

JIGASI_SIP_URI
JIGASI_SIP_PASSWORD
JIGASI_SIP_SERVER
JIGASI_SIP_PORT
JIGASI_SIP_TRANSPORT

The advantage of using Docker is that configuration can fit more easily into an existing container-based Jitsi deployment.

However, networking needs extra attention.

For SIP and RTP, Docker networking should be planned carefully, especially when the server is behind NAT.

Jigasi vs a Direct SIP-to-Jitsi Connection

You may wonder why Jigasi is needed.

The reason is that Jitsi Meet and SIP use different communication systems.

Jitsi uses technologies such as:

  • WebRTC
  • XMPP
  • Jingle
  • ICE
  • DTLS-SRTP

SIP systems use:

  • SIP signaling
  • RTP media
  • SIP accounts
  • PBX or SIP servers

Jigasi acts as the bridge between these systems.

The official project describes Jigasi as handling the connection between SIP systems and Jitsi Meet, including XMPP signaling and media-related functions.

When Should You Use Jigasi?

Jigasi can be useful when your organization needs telephone access to Jitsi meetings.

Typical use cases include:

Business Meetings

Employees can join meetings using a phone when internet access is limited.

Customer Support

Customers can join an audio meeting through a telephone number.

Healthcare

Patients or staff can join a conference through a phone line when browser access is not practical.

Education

Students can use telephone access for specific meetings or events.

Remote Areas

Participants with poor internet access may still be able to join through a phone.

Existing PBX Systems

Organizations that already have SIP infrastructure can connect that system with Jitsi Meet.

Important Things to Check Before Production

Before putting a Jigasi telephony gateway into production, create a simple checklist.

Jitsi

  • Jitsi Meet is working
  • Videobridge is working
  • Prosody is working
  • Conference rooms work normally

Jigasi

  • Jigasi service starts
  • XMPP connection works
  • Brewery is configured
  • SIP account registers

SIP

  • SIP server is reachable
  • Correct transport is used
  • Correct port is open
  • Authentication works

PSTN

  • PSTN calling is enabled
  • Telephone numbers are routed correctly
  • Caller ID is configured if required
  • International calling rules are understood

Network

  • Firewall is configured
  • NAT is configured
  • RTP traffic works
  • DNS works correctly

Security

  • SIP password is protected
  • Server access is restricted
  • Call activity is monitored
  • Unexpected usage is reviewed

Jigasi Telephony Gateway Best Practices

A stable setup starts with a simple design.

Do not try to configure every feature at once.

Start with:

Jitsi Meet

Jigasi

SIP Account

Test Phone

Once this works, add PSTN routing, incoming calls, multiple Jigasi instances, monitoring, and other features.

Keep your configuration documented.

For example:

Jitsi Domain:
meet.example.com

SIP Server:
sip.example.com

SIP Account:
1001@example.com

SIP Port:
5060

Transport:
UDP

PSTN Provider:
Example Provider

This makes future troubleshooting much easier.

Frequently Asked Questions

A Jigasi telephony gateway connects Jitsi Meet with SIP-based telephone systems. It allows SIP users and telephone participants to join Jitsi conferences and can support outgoing calls through a configured SIP service.

No. Jigasi is not a SIP server. It acts as a connector between Jitsi Meet and an existing SIP server, PBX, or SIP provider.

Yes, but Jigasi normally relies on a SIP provider or PBX that provides PSTN access. Jigasi connects Jitsi to the SIP side; the provider or PBX handles the telephone network connection.

For a typical package-based installation, the SIP configuration is stored in /etc/jitsi/jigasi/sip-communicator.properties. The official Jigasi sample configuration provides the SIP account properties used in this file.

Usually you need: SIP username, SIP password, SIP server, SIP port, SIP transport, and supported codecs. Your provider may also give you additional settings.

Yes. When properly configured, Jigasi can be used by Jitsi Meet to make outgoing calls to telephone participants.

Yes. Jigasi can register with a SIP server and accept incoming calls. Incoming calls can be routed to Jitsi conferences using the appropriate conference information.

The problem is often related to RTP, NAT, firewall rules, or codec compatibility. SIP signaling can work even when the media path is not configured correctly.

SIP commonly uses port 5060, while SIP over TLS commonly uses 5061. However, you should use the port specified by your SIP provider.

Yes. Jigasi is designed to connect Jitsi Meet with SIP servers and B2BUAs, so an existing PBX can be part of the architecture.

Yes. Multiple Jigasi instances can be used for larger deployments. The configuration should be designed around your expected call volume, SIP infrastructure, and Jitsi deployment.

No. Jigasi does not automatically provide a telephone number. You generally need a SIP provider or PBX with a telephone number and PSTN service.
Your subscription could not be saved. Please try again.
Your subscription has been successful.

Get in Touch

Get Started with Us Today!

Looking to set up or optimize your Jitsi? Let's connect and make it happen.