
SIP.js v0.8.0 Supports All Major Browsers and Renegotiation - wakamoleguy
https://www.onsip.com/blog/sipjs-v0.8.0-supports-all-major-browsers-and-renegotiation
======
auvrw
> The bulk of SIP.js no longer cares about the media and what it’s doing

yes. this is important, even if only for testing.

my [semi]current test setup for jssip resorts to webdriver testing because the
WebRTC is not completely decoupled

[https://github.com/ransomw/simp-
phone/blob/master/test/clien...](https://github.com/ransomw/simp-
phone/blob/master/test/client/plivo/sip_wrap.js#L105)
[https://github.com/ransomw/simp-
phone/blob/master/test/clien...](https://github.com/ransomw/simp-
phone/blob/master/test/client/wd_serve.js)

i guess these updates would allow me to test call functionality completely
within the node runtime without scrounging around for WebRTC mocks?

~~~
egreenmachine
Yes! That was part of the goal of these changes. We want SIP.js to be a SIP
stack, not a WebRTC wrapper.

------
singularity2001
[https://sipjs.com/](https://sipjs.com/) demo does not work. do I have to
enable Google Analytics or something?

SIP/2.0 403 Forbidden Via: SIP/2.0/WSS
48cmgevbchtu.invalid;rport=24281;received=46.59. _._ ;branch=z9hG4bK1777859

~~~
egreenmachine
We accidentally terminated our demo account for non-payment (whoops). It
should be working now. We have made sure that this will not happen in the
future.

------
j_s
Awesome client-side resource! WebRTC is poised to hit the big time now that it
is supported by iOS 11.

For both of my questions below I will link options from previous
discussions[1]; any experience you can share would be appreciated.

1) What is the best option to implement a server that can tie into WebRTC for
audio/video/screensharing?

[https://github.com/mappum/electron-
webrtc](https://github.com/mappum/electron-webrtc) \- simple but bulky Node.js
WebRTC via a hidden Electron process

[https://chromium.googlesource.com/external/webrtc](https://chromium.googlesource.com/external/webrtc)
\- C++ Chromium WebRTC

[https://github.com/jitsi/jitsi-videobridge](https://github.com/jitsi/jitsi-
videobridge) \- Java video conferencing

[https://github.com/Kurento/kurento-media-
server](https://github.com/Kurento/kurento-media-server) |
[https://github.com/OpenVidu/openvidu](https://github.com/OpenVidu/openvidu)
\- Node.js media server transitioning after Twilio hired key devs

[https://www.wowza.com/products/capabilities/webrtc-
streaming...](https://www.wowza.com/products/capabilities/webrtc-streaming-
software) \- commercial; in preview

2) What is the best minimal WebRTC server-side option just for UDP?

[https://github.com/js-platform/node-webrtc](https://github.com/js-
platform/node-webrtc) \- Node.js native module with mystical pre-built
binaries

[https://github.com/HumbleNet/HumbleNet/](https://github.com/HumbleNet/HumbleNet/)
\- C++ Mozilla + Humble Bundle code drop that does signalling via WebSockets
(instead of STUN/TURN/ICE?)

[https://github.com/rawrtc/rawrtc](https://github.com/rawrtc/rawrtc) \- C with
CLI examples; media someday?
[https://github.com/rawrtc/rawrtc/issues/4](https://github.com/rawrtc/rawrtc/issues/4)

[https://github.com/seemk/WebUdp](https://github.com/seemk/WebUdp) \-
prototype C++ WebRTC datachannel server for Linux looking for help

[https://github.com/brkho/client-server-webrtc-
example](https://github.com/brkho/client-server-webrtc-example) \- C++ MVP
using Chromium WebRTC [http://blog.brkho.com/2017/03/15/dive-into-client-
server-web...](http://blog.brkho.com/2017/03/15/dive-into-client-server-web-
games-webrtc/)

\--

[1] A real world guide to WebRTC |
[https://news.ycombinator.com/item?id=14787285](https://news.ycombinator.com/item?id=14787285)
(Jul 2017, 59 comments)

~~~
Klathmon
Sadly, while WebRTC is "supported" by iOS 11, it is disabled in web apps added
to the home screen, as well as any embedded web views like UIWebView or
WKWebView.

Which leads to the wonderful UX that if a user adds your website that uses
WebRTC to the homescreen, you need to catch a TypeError from getUserMedia
being undefined, and display a modal to them telling them to delete the
homescreen shortcut and always type in the URL if they want to use the
website.

~~~
Alacart
Whoever allowed that decision to be made should be ashamed of themselves and
embarrassed. Safari really is the new IE.

~~~
Klathmon
The cynical part of me thinks it's to keep "alternate" browser apps like
Chrome and Firefox on iOS from having the feature, but i'm really hoping that
it's something much less nefarious.

But either way it's a really shitty move in my opinion.

