drachtio/drachtio-server

Outbound calls via TLS not working

Opened this issue · 2 comments

Issue: Outbound calls over TLS/SRTP are not working anymore

First time we faced the issue: 0.8.25
Latest image I have tested: 0.9.0

Carrier setup:

  • Twilio
  • TLS enabled
  • Port 5061
  • TLS/SRTP

Sample Gateway in the screenshot
Screenshot from 2024-05-22 12-22-03

In sbc-outbound we see this error when creating a call via API:

{"level":30, "u":"sip:+49176XXXXXXXX@staging-tls.pstn.frankfurt.twilio.com:5061;transport=tls","msg":"using SRTP for outbound call, pad crypto: no"}
{"level":30, "gw":{"name":"Twilio TLS","diversion":null,"hostport":"staging-tls.pstn.frankfurt.twilio.com:5061","protocol":"tls/srtp","register_from_domain":null},"msg":"sending INVITE to sip:+49176XXXXXXXX@staging-tls.pstn.frankfurt.twilio.com:5061;transport=tls via carrier Twilio TLS"}
{"level":30, "err":{"type":"Error","message":"requested protocol/transport not available","stack":"Error: requested protocol/transport not available\n    at DrachtioAgent.<anonymous> (/opt/app/node_modules/drachtio-srf/lib/drachtio-agent.js:315:21)\n    at DrachtioAgent._onMsg (/opt/app/node_modules/drachtio-srf/lib/drachtio-agent.js:737:11)\n    at WireProtocol.emit (node:events:517:28)\n    at WireProtocol.emit (node:domain:489:12)\n    at WireProtocol.processMessageBuffer (/opt/app/node_modules/drachtio-srf/lib/wire-protocol.js:293:12)\n    at WireProtocol._onData (/opt/app/node_modules/drachtio-srf/lib/wire-protocol.js:326:14)\n    at Socket.emit (node:events:517:28)\n    at Socket.emit (node:domain:489:12)\n    at addChunk (node:internal/streams/readable:368:12)\n    at readableAddChunk (node:internal/streams/readable:337:11)"},"msg":"CallSession error sending INVITE"}
{"level":50, "err":{"type":"Error","message":"requested protocol/transport not available","stack":"Error: requested protocol/transport not available\n    at DrachtioAgent.<anonymous> (/opt/app/node_modules/drachtio-srf/lib/drachtio-agent.js:315:21)\n    at DrachtioAgent._onMsg (/opt/app/node_modules/drachtio-srf/lib/drachtio-agent.js:737:11)\n    at WireProtocol.emit (node:events:517:28)\n    at WireProtocol.emit (node:domain:489:12)\n    at WireProtocol.processMessageBuffer (/opt/app/node_modules/drachtio-srf/lib/wire-protocol.js:293:12)\n    at WireProtocol._onData (/opt/app/node_modules/drachtio-srf/lib/wire-protocol.js:326:14)\n    at Socket.emit (node:events:517:28)\n    at Socket.emit (node:domain:489:12)\n    at addChunk (node:internal/streams/readable:368:12)\n    at readableAddChunk (node:internal/streams/readable:337:11)"},"msg":"unexpected call failure"}

log from drachtio server would be needed

is there a reason you are using sip rather than sips as the scheme?