Skip to content

Commit

Permalink
Add sip-to-webrtc example
Browse files Browse the repository at this point in the history
Shows how to bridge SIP and WebRTC Traffic
  • Loading branch information
Sean-Der committed Jan 4, 2024
1 parent e1242e8 commit 0bd3067
Show file tree
Hide file tree
Showing 10 changed files with 577 additions and 133 deletions.
40 changes: 2 additions & 38 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,7 @@ Have any questions? Join [the Slack channel](https://pion.ly/slack) to follow de
* [Twitch](twitch): Example twitch shows how to send audio/video from WebRTC to https://www.twitch.tv/ via RTMP.
* [C DataChannels](c-data-channels) Example c-data-channels shows how you can use Pion WebRTC from a C program
* [Snapshot](snapshot) Example snapshot shows how you can convert incoming video frames to jpeg and serve them via HTTP.
* [SIP to WebRTC](sip-to-webrtc) Example sip-to-webrtc shows how to bridge WebRTC and SIP traffic.


### Usage
Expand All @@ -37,44 +38,7 @@ We've made it easy to run the browser based examples on your local machine.
Note that you can change the port of the server using the ``--address`` flag.

### Contributing
Check out the **[contributing wiki](https://github.com/pion/webrtc/wiki/Contributing)** to join the group of amazing people making this project possible:

* [John Bradley](https://github.com/kc5nra) - *Original Author*
* [Raphael Randschau](https://github.com/nicolai86) - *STUN*
* [Sean DuBois](https://github.com/Sean-Der) - *Original Author*
* [Michiel De Backker](https://github.com/backkem) - *SDP, Public API, Project Management*
* [Konstantin Itskov](https://github.com/trivigy) - *SDP Parsing*
* [Max Hawkins](https://github.com/maxhawkins) - *RTCP*
* [Justin Okamoto](https://github.com/justinokamoto) - *Fix Docs*
* [leeoxiang](https://github.com/notedit) - *Implement Janus examples*
* [Michael MacDonald](https://github.com/mjmac)
* [Woodrow Douglass](https://github.com/wdouglass) *RTCP, RTP improvements, G.722 support, Bugfixes*
* [Rob Deutsch](https://github.com/rob-deutsch) *RTPReceiver graceful shutdown*
* [Jin Lei](https://github.com/jinleileiking) - *SFU example use http*
* [Antoine Baché](https://github.com/Antonito) - *OGG Opus export*
* [frank](https://github.com/feixiao) - *Building examples on OSX*
* [adwpc](https://github.com/adwpc) - *SFU example with websocket*
* [imalic3](https://github.com/imalic3) - *SFU websocket example with datachannel broadcast*
* [Simonacca Fotokite](https://github.com/simonacca-fotokite)
* [Steve Denman](https://github.com/stevedenman)
* [RunningMan](https://github.com/xsbchen)
* [mchlrhw](https://github.com/mchlrhw)
* [CloudWebRTC|湖北捷智云技术有限公司](https://github.com/cloudwebrtc) - *Flutter example for SFU-WS*
* [Atsushi Watanabe](https://github.com/at-wat) - *WebM muxer example*
* [Jadon Bennett](https://github.com/jsjb)
* [Lukas Herman](https://github.com/lherman-cs) - *C Data Channels example*
* [EricSong](https://github.com/xsephiroth) - *Implement GstV4l2Alsa example*
* [Tristan Matthews](https://github.com/tmatth)
* [Alexey Kravtsov](https://github.com/alexey-kravtsov) - *GStreamer encoder tune*
* [Tarrence van As](https://github.com/tarrencev) - *Webm saver fix*
* [Cameron Elliott](https://github.com/cameronelliott) - *Small race bug fix*
* [Jamie Good](https://github.com/jamiegood) - *Bug fix in jsfiddle example*
* [PhVHoang](https://github.com/PhVHoang)
* [Pascal Benoit](https://github.com/pascal-ace)
* [Jin Gong](https://github.com/cgojin)
* [harkirat singh](https://github.com/hkirat)
* [oasangqi](https://github.com/oasangqi)
* [Shahin Sabooni](https://github.com/longlonghands)
Check out the **[contributing wiki](https://github.com/pion/webrtc/wiki/Contributing)** to join the group of amazing people making this project possible

### License
MIT License - see [LICENSE](LICENSE) for full text
6 changes: 6 additions & 0 deletions examples.json
Original file line number Diff line number Diff line change
Expand Up @@ -64,5 +64,11 @@
"link": "play-from-disk-h264",
"description": "Example shows how to play a H264 and OGG file from disk",
"type": "browser"
},
{
"title": "SIP to WebRTC",
"link": "sip-to-webrtc",
"description": "sip-to-webrtc demonstrates how to bridge WebRTC and SIP traffic using Pion.",
"type": "browser"
}
]
62 changes: 36 additions & 26 deletions go.mod
Original file line number Diff line number Diff line change
Expand Up @@ -3,37 +3,47 @@ module github.com/pion/example-webrtc-applications/v3
go 1.19

require (
github.com/at-wat/ebml-go v0.16.0
github.com/google/uuid v1.3.0
github.com/gorilla/websocket v1.4.2
github.com/at-wat/ebml-go v0.17.0
github.com/emiago/sipgo v0.16.0
github.com/google/uuid v1.5.0
github.com/gorilla/websocket v1.5.1
github.com/notedit/janus-go v0.0.0-20210115013133-fdce1b146d0e
github.com/pion/rtcp v1.2.6
github.com/pion/rtp v1.7.1
github.com/pion/rtcp v1.2.13
github.com/pion/rtp v1.8.3
github.com/pion/sdp/v2 v2.4.0
github.com/pion/webrtc/v3 v3.1.0-beta.3
gocv.io/x/gocv v0.28.0
golang.org/x/image v0.0.0-20210628002857-a66eb6448b8d
golang.org/x/net v0.0.0-20210805182204-aaa1db679c0d
github.com/pion/webrtc/v3 v3.2.24
gocv.io/x/gocv v0.35.0
golang.org/x/image v0.14.0
golang.org/x/net v0.19.0
)

require (
github.com/pion/datachannel v1.4.21 // indirect
github.com/pion/dtls/v2 v2.0.9 // indirect
github.com/pion/ice/v2 v2.1.12 // indirect
github.com/pion/interceptor v0.0.15 // indirect
github.com/davecgh/go-spew v1.1.1 // indirect
github.com/gobwas/httphead v0.1.0 // indirect
github.com/gobwas/pool v0.2.1 // indirect
github.com/gobwas/ws v1.2.1 // indirect
github.com/icholy/digest v0.1.22 // indirect
github.com/mattn/go-colorable v0.1.13 // indirect
github.com/mattn/go-isatty v0.0.16 // indirect
github.com/pion/datachannel v1.5.5 // indirect
github.com/pion/dtls/v2 v2.2.7 // indirect
github.com/pion/ice/v2 v2.3.11 // indirect
github.com/pion/interceptor v0.1.25 // indirect
github.com/pion/logging v0.2.2 // indirect
github.com/pion/mdns v0.0.5 // indirect
github.com/pion/mdns v0.0.8 // indirect
github.com/pion/randutil v0.1.0 // indirect
github.com/pion/sctp v1.7.12 // indirect
github.com/pion/sdp/v3 v3.0.4 // indirect
github.com/pion/srtp/v2 v2.0.5 // indirect
github.com/pion/stun v0.3.5 // indirect
github.com/pion/transport v0.12.3 // indirect
github.com/pion/turn/v2 v2.0.5 // indirect
github.com/pion/udp v0.1.1 // indirect
github.com/pkg/errors v0.9.1 // indirect
github.com/rs/xid v1.3.0 // indirect
golang.org/x/crypto v0.0.0-20210812204632-0ba0e8f03122 // indirect
golang.org/x/sys v0.0.0-20210809222454-d867a43fc93e // indirect
golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1 // indirect
github.com/pion/sctp v1.8.8 // indirect
github.com/pion/sdp/v3 v3.0.6 // indirect
github.com/pion/srtp/v2 v2.0.18 // indirect
github.com/pion/stun v0.6.1 // indirect
github.com/pion/transport/v2 v2.2.3 // indirect
github.com/pion/turn/v2 v2.1.3 // indirect
github.com/pmezard/go-difflib v1.0.0 // indirect
github.com/rs/xid v1.4.0 // indirect
github.com/rs/zerolog v1.28.0 // indirect
github.com/satori/go.uuid v1.2.1-0.20181028125025-b2ce2384e17b // indirect
github.com/stretchr/testify v1.8.4 // indirect
golang.org/x/crypto v0.16.0 // indirect
golang.org/x/sys v0.15.0 // indirect
gopkg.in/yaml.v3 v3.0.1 // indirect
)
Loading

0 comments on commit 0bd3067

Please sign in to comment.