Before you start
You need:- A Spectrum project.
- An iMessage line in that project.
- A SIP application or phone system that can receive calls over TLS or TCP.
- A public hostname or IP address that Spectrum can reach.
- Firewall access (network permission) for the SIP listening port and the RTP audio ports used by your application.
If the SIP application runs on a private network, such as a laptop on home or
office Wi-Fi, it is not normally reachable from Spectrum. Configure port
forwarding and firewall rules, or run the application on a public server.
Set up inbound calling
1
Open the project
Sign in to the Spectrum dashboard and select the
project that owns the iMessage line.
2
Open inbound voice registration
Open the project’s inbound voice registration and choose the iMessage line
that should receive calls.Make sure you select an iMessage line. WhatsApp numbers are not supported.
3
Register the inbound route
In the SIP URI field, enter the address that Spectrum should call. Use
Replace Port 5061 is the default for
sips: for encrypted TLS signaling or sip: for unencrypted TCP
signaling:agent with the SIP username or extension expected by your
application, and replace voice.example.com with its public hostname.
The final number is the port on which your application listens. A port tells
Spectrum which network service to contact on that server.If the application does not require a specific username or extension, omit
agent@. For example:sips: and 5060 is the default for sip:.
These are defaults, not requirements. To use a different listening port,
include that port in the URI. UDP is not supported.The dashboard also has optional Username and Password fields. Fill
in both fields only if your SIP application requires username-and-password
authentication for incoming calls. This standard SIP mechanism is called
SIP Digest. Otherwise, leave both fields empty.4
Configure your SIP application
Configure the application to listen using the same transport and port as
the SIP URI saved in the dashboard.For TLS, the application needs a TLS certificate and its private key. For
production, use a publicly trusted certificate that is valid for the
hostname or IP address in the SIP URI. TCP does not require a TLS
certificate.
5
Keep the SIP application available
Start the SIP application and make sure Spectrum can reach its public
hostname or IP address and SIP port.Also allow the application’s RTP port range through the firewall. RTP
carries the call audio and normally uses UDP; check the application’s media
or RTP settings for its exact port range.
6
Place an inbound test call
From another phone, call the iMessage line registered in the dashboard.
Confirm that your SIP application receives the call and that audio works in
both directions.
What each registration does
The word “registration” can refer to two different settings:
Registering a business profile does not create an inbound route. Registering
an inbound route does not register the business profile.
Before going live
- The inbound route is saved under the correct project.
- The selected number is an iMessage line, not a WhatsApp number.
- The SIP application uses the routing values shown in the dashboard.
- The saved SIP URI uses
sips:for TLS orsip:for TCP. - The application listens on the transport and port specified by the saved SIP URI.
- The TLS certificate is valid for the hostname or IP address in the SIP URI when using TLS.
- Spectrum can reach the application’s public hostname or IP address and SIP port.
- A test call reaches the application and has working two-way audio.
- The firewall allows the application’s UDP RTP port range. SIP TLS does not encrypt the RTP audio stream.
Troubleshooting
No inbound call arrives
Check that the inbound route is saved for the exact iMessage line being called. Then confirm that the SIP application is running, publicly reachable, and listening on the transport and port specified by the saved SIP URI. If the application runs behind a router or cloud firewall, confirm that traffic on the SIP port is forwarded to the application.The wrong project or line receives the call
Open the inbound registration in the dashboard and verify both the selected project and iMessage line. The inbound route is tied to that selection.The SIP application tries UDP
Select TLS or TCP explicitly in the SIP application. Spectrum Voice does not accept SIP over UDP.A TLS route does not connect
Confirm that the route starts withsips:, the receiving application listens
for TLS on the configured port, and its certificate covers the hostname or IP
address in the route. Also confirm that the firewall allows inbound TCP traffic
on that port.