Fork me on GitHub
Data Fields
janus_ice_handle Struct Reference

Janus ICE handle. More...

#include <ice.h>

Collaboration diagram for janus_ice_handle:
Collaboration graph
[legend]

Data Fields

void * session
 Opaque pointer to the gateway/peer session. More...
 
guint64 handle_id
 Handle identifier, guaranteed to be non-zero. More...
 
char * opaque_id
 Opaque identifier, e.g., to provide inter-handle relationships to external tools. More...
 
gint64 created
 Monotonic time of when the handle has been created. More...
 
void * app
 Opaque application (plugin) pointer. More...
 
janus_plugin_sessionapp_handle
 Opaque gateway/plugin session pointer. More...
 
janus_flags webrtc_flags
 Mask of WebRTC-related flags for this handle. More...
 
gboolean force_bundle
 Whether we have to force BUNDLE when negotiating (if true, overrides global configuration) More...
 
gboolean force_rtcp_mux
 Whether we have to force rtcp-mux when negotiating (if true, overrides global configuration) More...
 
gint cdone
 Number of gathered candidates. More...
 
GMainContext * icectx
 GLib context for libnice. More...
 
GMainLoop * iceloop
 GLib loop for libnice. More...
 
GThread * icethread
 GLib thread for libnice. More...
 
NiceAgent * agent
 libnice ICE agent More...
 
gint64 agent_created
 Monotonic time of when the ICE agent has been created. More...
 
gboolean controlling
 ICE role (controlling or controlled) More...
 
guint audio_id
 libnice ICE audio ID More...
 
guint video_id
 libnice ICE video ID More...
 
guint data_id
 libnice ICE DataChannels ID More...
 
gchar * audio_mid
 Audio mid (media ID) More...
 
gchar * video_mid
 Video mid (media ID) More...
 
gchar * data_mid
 Data channel mid (media ID) More...
 
gint streams_num
 Number of streams. More...
 
GHashTable * streams
 GLib hash table of streams (IDs are the keys) More...
 
janus_ice_streamaudio_stream
 Audio stream. More...
 
janus_ice_streamvideo_stream
 Video stream. More...
 
janus_ice_streamdata_stream
 SCTP/DataChannel stream. More...
 
gchar * rtp_profile
 RTP profile set by caller (so that we can match it) More...
 
gchar * local_sdp
 SDP generated locally (just for debugging purposes) More...
 
gchar * remote_sdp
 SDP received by the peer (just for debugging purposes) More...
 
const gchar * hangup_reason
 Reason this handle has been hung up. More...
 
GList * pending_trickles
 List of pending trickle candidates (those we received before getting the JSEP offer) More...
 
GAsyncQueue * queued_packets
 Queue of outgoing packets to send. More...
 
GThread * send_thread
 GLib thread for sending outgoing packets. More...
 
volatile gint send_thread_created
 Atomic flag to make sure we only create the thread once. More...
 
guint srtp_errors_count
 Count of the recent SRTP replay errors, in order to avoid spamming the logs. More...
 
gint last_srtp_error
 Count of the recent SRTP replay errors, in order to avoid spamming the logs. More...
 
volatile gint dump_packets
 Flag to decide whether or not packets need to be dumped to a text2pcap file. More...
 
janus_text2pcaptext2pcap
 In case this session must be saved to text2pcap, the instance to dump packets to. More...
 
janus_mutex mutex
 Mutex to lock/unlock the ICE session. More...
 

Detailed Description

Janus ICE handle.

Field Documentation

◆ agent

NiceAgent* janus_ice_handle::agent

libnice ICE agent

◆ agent_created

gint64 janus_ice_handle::agent_created

Monotonic time of when the ICE agent has been created.

◆ app

void* janus_ice_handle::app

Opaque application (plugin) pointer.

◆ app_handle

janus_plugin_session* janus_ice_handle::app_handle

Opaque gateway/plugin session pointer.

◆ audio_id

guint janus_ice_handle::audio_id

libnice ICE audio ID

◆ audio_mid

gchar* janus_ice_handle::audio_mid

Audio mid (media ID)

◆ audio_stream

janus_ice_stream* janus_ice_handle::audio_stream

Audio stream.

◆ cdone

gint janus_ice_handle::cdone

Number of gathered candidates.

◆ controlling

gboolean janus_ice_handle::controlling

ICE role (controlling or controlled)

◆ created

gint64 janus_ice_handle::created

Monotonic time of when the handle has been created.

◆ data_id

guint janus_ice_handle::data_id

libnice ICE DataChannels ID

◆ data_mid

gchar* janus_ice_handle::data_mid

Data channel mid (media ID)

◆ data_stream

janus_ice_stream* janus_ice_handle::data_stream

SCTP/DataChannel stream.

◆ dump_packets

volatile gint janus_ice_handle::dump_packets

Flag to decide whether or not packets need to be dumped to a text2pcap file.

◆ force_bundle

gboolean janus_ice_handle::force_bundle

Whether we have to force BUNDLE when negotiating (if true, overrides global configuration)

◆ force_rtcp_mux

gboolean janus_ice_handle::force_rtcp_mux

Whether we have to force rtcp-mux when negotiating (if true, overrides global configuration)

◆ handle_id

guint64 janus_ice_handle::handle_id

Handle identifier, guaranteed to be non-zero.

◆ hangup_reason

const gchar* janus_ice_handle::hangup_reason

Reason this handle has been hung up.

◆ icectx

GMainContext* janus_ice_handle::icectx

GLib context for libnice.

◆ iceloop

GMainLoop* janus_ice_handle::iceloop

GLib loop for libnice.

◆ icethread

GThread* janus_ice_handle::icethread

GLib thread for libnice.

◆ last_srtp_error

gint janus_ice_handle::last_srtp_error

Count of the recent SRTP replay errors, in order to avoid spamming the logs.

◆ local_sdp

gchar* janus_ice_handle::local_sdp

SDP generated locally (just for debugging purposes)

◆ mutex

janus_mutex janus_ice_handle::mutex

Mutex to lock/unlock the ICE session.

◆ opaque_id

char* janus_ice_handle::opaque_id

Opaque identifier, e.g., to provide inter-handle relationships to external tools.

◆ pending_trickles

GList* janus_ice_handle::pending_trickles

List of pending trickle candidates (those we received before getting the JSEP offer)

◆ queued_packets

GAsyncQueue* janus_ice_handle::queued_packets

Queue of outgoing packets to send.

◆ remote_sdp

gchar* janus_ice_handle::remote_sdp

SDP received by the peer (just for debugging purposes)

◆ rtp_profile

gchar* janus_ice_handle::rtp_profile

RTP profile set by caller (so that we can match it)

◆ send_thread

GThread* janus_ice_handle::send_thread

GLib thread for sending outgoing packets.

◆ send_thread_created

volatile gint janus_ice_handle::send_thread_created

Atomic flag to make sure we only create the thread once.

◆ session

void* janus_ice_handle::session

Opaque pointer to the gateway/peer session.

◆ srtp_errors_count

guint janus_ice_handle::srtp_errors_count

Count of the recent SRTP replay errors, in order to avoid spamming the logs.

◆ streams

GHashTable* janus_ice_handle::streams

GLib hash table of streams (IDs are the keys)

◆ streams_num

gint janus_ice_handle::streams_num

Number of streams.

◆ text2pcap

janus_text2pcap* janus_ice_handle::text2pcap

In case this session must be saved to text2pcap, the instance to dump packets to.

◆ video_id

guint janus_ice_handle::video_id

libnice ICE video ID

◆ video_mid

gchar* janus_ice_handle::video_mid

Video mid (media ID)

◆ video_stream

janus_ice_stream* janus_ice_handle::video_stream

Video stream.

◆ webrtc_flags

janus_flags janus_ice_handle::webrtc_flags

Mask of WebRTC-related flags for this handle.


The documentation for this struct was generated from the following file: