Skip to main content
Guava agents can receive inbound calls over the SIP protocol. You can use this feature to directly dial Guava agents from an SBC, PBX, or softphone without going out to the PSTN.
Using Twilio? See the Twilio Programmable Voice guide or the Twilio Elastic SIP guide for step-by-step walkthroughs.

Contact us for peer whitelisting

Currently, we are whitelisting SIP peers at our firewall level. Contact us at hi@goguava.ai to get your source IPs whitelisted. The following providers are already whitelisted. If your SIP calls originate from one of them, you can skip this step.
  • Twilio

Check connectivity

Once whitelisted, try to make an OPTIONS ping to our SIP trunk at sip.goguava.ai. If the check fails, see our guide below on firewall configuration.

Create a SIP code

Every SIP integration requires a guavasip code, which you can create in the Guava dashboard. guavasip codes work just like registered phone numbers — agents can listen to them and peers can dial them.
  1. Open the SIP page in the dashboard.
  2. Click Create SIP Code.
  3. Take note of both the SIP code and the termination URI.

Attach your agent to the SIP code

Next, start an agent using agent.listen_sip("guavasip-xxx"). This is the SIP equivalent of agent.listen_phone(...) — Guava forwards every call addressed to that code to your agent.
main.py
To connect an agent to both a phone number and a SIP code simultaneously, see the documentation for guava.Runner.

Dial your agent

The last step is to dial your agent using the termination URI (e.g. sip:guavasip-xxx@sip.goguava.ai). If you’re having trouble connecting to your agent, please contact us at hi@goguava.ai.

Firewall configuration

To dial our SIP trunk from your network, you may need to whitelist us in your firewall.