go-sip-ua

module
v1.1.7-0...-d08fa44 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 14, 2023 License: Apache-2.0

README

go-sip-ua

SIP UA library for client/b2bua using golang

forked from https://github.com/cloudwebrtc/go-sip-ua

modified at stack.go#381, add "rport" to support NAT.

Features

  • Transports UDP/TCP/TLS/WS/WSS.
  • Simple pure Go SIP Client.
  • Simple pure Go B2BUA, support RFC8599, Google FCM/Apple PushKit.
  • RTP relay (UDP<-->UDP, WebRTC/ICE<->UDP)
  • WebRTC2SIP Gateway.

Running the examples

git clone https://gitee.com/finntenzor/go-sip-ua
cd go-sip-ua
Client
# run client
go run examples/client/main.go
B2BUA

B2BUA is a minimal SIP call switch, it registers and calls, and supports UDP/TCP/TLS/WebSockets.

When you need a quick test for TLS/WSS, you can use mkcert to create a local self-signed certificate.

mkdir -p certs
mkcert -key-file certs/key.pem -cert-file certs/cert.pem  localhost 127.0.0.1 ::1 example.com

Run the mini b2bua.

# run b2bua
go run examples/b2bua/main.go -c

You can use dart-sip-ua or linphone or jssip to test call or registration, built-in test account 100~400

WebSocket: wss://127.0.0.1:5081
SIP URI: 100@127.0.0.1
Authorization User: 100
Password: 100
Display Name: Flutter SIP Client

Dependencies

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL