od xsouku04 » sob 15. črc 2017 12:17:11
RadimK píše:
Jasně řeknete, že můžete a budete používat webrtc backend od Kamailio, Asterisku, ale všechno je to neskutečně nesourodý a zatím cesta do pekel. Pravda vývojáři Asterisku, Kamailio na poslední konferenci v Berlíně říkali, že vize je WRTC, ale u toho to tak nějak zatím skončilo.
Pokud někdo chce řešit WS technologii doporučuji prvně WRTC GW a nad tím psát vše v Reactu/Redux, tak aby to bylo možno jednoduše, nativně portovat pod mobilní platformy. Vše ostatní je propálený čas.
Mluvím z vlastní zkušenosti.
My používám pro signalizaci Kamailio a jako WRTC GW freeswitch.
Samotné Kamailio jako GW použít nelze, protože to umí média jen přeposílat a ne měnit. Jde s pomocí rtpengine, protože se jedná jen o změnu ze SRTP (šifrování) na RTP odstranění jakéhosi ICE. Rtpengine umí přepsat i samotné SIP hlavičky popisující vlastnosti RTP, tedy netradičně jako gateway umí fungovat i samotné Kamailio s příšlušnými moduly. Pěkně to vysvětlují třeba zde.
http://asteriskfaqs.org/2015/02/26/aste ... phone.html
Že by implementace v Asterisku/Freeswitchi byla tak špatná, že to s některými prohlížeči funguje s jinými ne, se mi nezdá. Nikde jsem nenašel zmínku o tom, že by to bylo nějak nespolehlivé.
Zatím jsme opravili jednu chybu s certifikáty - tedy je to lepší, ale jsou tam ještě další, které, předpokládám, dělají to, že to občas někomu funguje a někomu ne.
Tak jsem to pochopil WebRTC není nic jiného než běžný RTP obalený ještě extra hlavičkami.
Singalizace je běžná SIP signalizace běžící na TCP a šifrovaná přes https, která běží na stejném portu jako běžný web tedy standardně 443 přes technologii, která se jmenuje Websockets. Aby mohl webový server odlišit HTTPS od paketu Websocet, má Websocket speciální hlavičky.
Co se týče RTP - tedy samotného zvuku videa, tam musí být vždy použito UDP, aby kvůli jednomu ztracenému paketu se to celé nezasekalo. Používají běžné kodeky - na zvuk ale zatím jen dva G711A a Opus. Tohle speciální RTP se jmenuje
WebRTP a má v sobě rovnou zahrnuto šifrování jakýsi ICE. A protože WebRTP rozumí jen málo který SIP telefon, je třeba použít onu Gateway, aby převedla WebRTP na běžné RTP.
Ale opět je to jen poměrně jednoduchá manipulace s hlavičkami, kodeky zůstávají většinou původní, manipuluje se jen s hlavičkami.
Tedy nezdá se mi, že by implementace v Asterisku nebo Freeswitchi byla nyní tak špatná, že by byla nepoužitelná. Jediné slabé místo mi připadá vyladit manýry jednotlivých internetových prohlížečů a jejich verzí.
Chceme, aby měl každý možnost si dát vlastní VoIP telefon na své vlastní webové stránky. Bude moci propojit jinou funkcionalitu svých vlastních stránek s voláním. Také by mělo být snadnější, aby si zavolali různí náhodní návštěvníci stránek, kteří nebudou nuceni kvůli tomu nic instalovat. Velká výhoda je i možný přenos videa, protože s kvalitními SIP klienty, co podporují video, je to fakt bída. Doufám, že jediným slabým místem zůstanou ony webové prohlížeče a funkčnost mikrofonu a kamery koncového uživatele. K tomu bychom poskytli nějaké tlačítko na snadné otestování.
[quote="RadimK"]
Jasně řeknete, že můžete a budete používat webrtc backend od Kamailio, Asterisku, ale všechno je to neskutečně nesourodý a zatím cesta do pekel. Pravda vývojáři Asterisku, Kamailio na poslední konferenci v Berlíně říkali, že vize je WRTC, ale u toho to tak nějak zatím skončilo.
Pokud někdo chce řešit WS technologii doporučuji prvně WRTC GW a nad tím psát vše v Reactu/Redux, tak aby to bylo možno jednoduše, nativně portovat pod mobilní platformy. Vše ostatní je propálený čas.
Mluvím z vlastní zkušenosti.[/quote]
My používám pro signalizaci Kamailio a jako WRTC GW freeswitch. [s]Samotné Kamailio jako GW použít nelze, protože to umí média jen přeposílat a ne měnit.[/s] Jde s pomocí rtpengine, protože se jedná jen o změnu ze SRTP (šifrování) na RTP odstranění jakéhosi ICE. Rtpengine umí přepsat i samotné SIP hlavičky popisující vlastnosti RTP, tedy netradičně jako gateway umí fungovat i samotné Kamailio s příšlušnými moduly. Pěkně to vysvětlují třeba zde.http://asteriskfaqs.org/2015/02/26/asterisk-users/webrtc-phone.html
[img]https://upload.wikimedia.org/wikipedia/en/2/2c/WebRTC2SIPt.png[/img]
Že by implementace v Asterisku/Freeswitchi byla tak špatná, že to s některými prohlížeči funguje s jinými ne, se mi nezdá. Nikde jsem nenašel zmínku o tom, že by to bylo nějak nespolehlivé.
Zatím jsme opravili jednu chybu s certifikáty - tedy je to lepší, ale jsou tam ještě další, které, předpokládám, dělají to, že to občas někomu funguje a někomu ne.
Tak jsem to pochopil WebRTC není nic jiného než běžný RTP obalený ještě extra hlavičkami.
Singalizace je běžná SIP signalizace běžící na TCP a šifrovaná přes https, která běží na stejném portu jako běžný web tedy standardně 443 přes technologii, která se jmenuje Websockets. Aby mohl webový server odlišit HTTPS od paketu Websocet, má Websocket speciální hlavičky.
Co se týče RTP - tedy samotného zvuku videa, tam musí být vždy použito UDP, aby kvůli jednomu ztracenému paketu se to celé nezasekalo. Používají běžné kodeky - na zvuk ale zatím jen dva G711A a Opus. Tohle speciální RTP se jmenuje [url=https://en.wikipedia.org/wiki/WebRTC_Gateway]WebRTP[/url] a má v sobě rovnou zahrnuto šifrování jakýsi ICE. A protože WebRTP rozumí jen málo který SIP telefon, je třeba použít onu Gateway, aby převedla WebRTP na běžné RTP.
Ale opět je to jen poměrně jednoduchá manipulace s hlavičkami, kodeky zůstávají většinou původní, manipuluje se jen s hlavičkami.
Tedy nezdá se mi, že by implementace v Asterisku nebo Freeswitchi byla nyní tak špatná, že by byla nepoužitelná. Jediné slabé místo mi připadá vyladit manýry jednotlivých internetových prohlížečů a jejich verzí.
Chceme, aby měl každý možnost si dát vlastní VoIP telefon na své vlastní webové stránky. Bude moci propojit jinou funkcionalitu svých vlastních stránek s voláním. Také by mělo být snadnější, aby si zavolali různí náhodní návštěvníci stránek, kteří nebudou nuceni kvůli tomu nic instalovat. Velká výhoda je i možný přenos videa, protože s kvalitními SIP klienty, co podporují video, je to fakt bída. Doufám, že jediným slabým místem zůstanou ony webové prohlížeče a funkčnost mikrofonu a kamery koncového uživatele. K tomu bychom poskytli nějaké tlačítko na snadné otestování.