We're sorry but this page doesn't work properly without JavaScript enabled. Please enable it to continue.
Feedback

Asynchronous event/state notifications in the Janus WebRTC server

Formale Metadaten

Titel
Asynchronous event/state notifications in the Janus WebRTC server
Untertitel
Providing administrators and developers with more tools to manage a Janus instance
Serientitel
Anzahl der Teile
611
Autor
Lizenz
CC-Namensnennung 2.0 Belgien:
Sie dürfen das Werk bzw. den Inhalt zu jedem legalen Zweck nutzen, verändern und in unveränderter oder veränderter Form vervielfältigen, verbreiten und öffentlich zugänglich machen, sofern Sie den Namen des Autors/Rechteinhabers in der von ihm festgelegten Weise nennen.
Identifikatoren
Herausgeber
Erscheinungsjahr
Sprache
Produktionsjahr2017

Inhaltliche Metadaten

Fachgebiet
Genre
Abstract
This presentation introduces a new modular mechanism for implementing livestate and event notifications within the context of Janus WebRTC serverinstances, for the purpose of allowing administrators and developers tomonitor and handle WebRTC sessions more effectively. Janus is a general purpose open source WebRTC server and gateway. It allowsyou to implement heterogeneous and complex WebRTC multimedia applicationsusing the different functionality it provides as modules, and can interactwith legacy technologies as well in the process (e.g., SIP or RTSP). Anintroduction to Janus was made ad Fosdem '16. This new presentation is aimedto address a new feature recently added to Janus, and currently being workedon in a separate branch that will soon be merged. Specifically, a modular mechanism has been designed and implemented to allowmodules to receive asynchronous and live events of several different typesfrom Janus and its plugins, in order to then handle them accordingly.Notifications can be about whatever is happening in a Janus instance, e.g.,Janus sessions/handles and their states, PeerConnections and their lifecycle(SDP exchanges, ICE and DTLS state changes, etc.), application plugininternals and related events, and so on. These new modules can then decidewhether to just forward these events, or a subset of them, to an externalbackend for further processing, or process them themselves. Use case examplesare simple debugging, live monitoring, troubleshooting, storing on DBs orother systems in a structured way, CDRs, etc. Within the context of Janus,this is particularly useful as so far the only API available to administratorshas been a query/response API to monitor the WebRTC internals of Janus itselfand a few other aspects, which limited the scope of what admins could do toeffectively manage a Janus instance. At the time of writing, a single module implementing this mechanism exists,one we implemented ourselves as a proof of concept and that simply forwardsall events as JSON objects to an external web server. In the future moremodules will be implemented to cover more practical scenarios, hopefully bythird-party developers as well.