Asterisk - The Open Source Telephony Project  18.5.0
Public Member Functions | Data Fields
ast_rtp_glue Struct Reference

#include <rtp_engine.h>

Collaboration diagram for ast_rtp_glue:
Collaboration graph
[legend]

Public Member Functions

 AST_LIST_ENTRY (ast_rtp_glue) entry
 

Data Fields

int(* allow_rtp_remote )(struct ast_channel *chan1, struct ast_rtp_instance *instance)
 Used to prevent two channels from remotely bridging audio rtp if the channel tech has a reason for prohibiting it based on qualities that need to be compared from both channels. More...
 
int(* allow_vrtp_remote )(struct ast_channel *chan1, struct ast_rtp_instance *instance)
 Used to prevent two channels from remotely bridging video rtp if the channel tech has a reason for prohibiting it based on qualities that need to be compared from both channels. More...
 
void(* get_codec )(struct ast_channel *chan, struct ast_format_cap *result_cap)
 Callback for retrieving codecs that the channel can do. Result returned in result_cap. More...
 
enum ast_rtp_glue_result(* get_rtp_info )(struct ast_channel *chan, struct ast_rtp_instance **instance)
 Callback for retrieving the RTP instance carrying audio. More...
 
enum ast_rtp_glue_result(* get_trtp_info )(struct ast_channel *chan, struct ast_rtp_instance **instance)
 Callback for retrieving the RTP instance carrying text. More...
 
enum ast_rtp_glue_result(* get_vrtp_info )(struct ast_channel *chan, struct ast_rtp_instance **instance)
 Callback for retrieving the RTP instance carrying video. More...
 
struct ast_modulemod
 
const char * type
 
int(* update_peer )(struct ast_channel *chan, struct ast_rtp_instance *instance, struct ast_rtp_instance *vinstance, struct ast_rtp_instance *tinstance, const struct ast_format_cap *cap, int nat_active)
 

Detailed Description

Structure that represents the glue that binds an RTP instance to a channel

Definition at line 720 of file rtp_engine.h.

Member Function Documentation

◆ AST_LIST_ENTRY()

AST_LIST_ENTRY ( ast_rtp_glue  )

Linked list information

Field Documentation

◆ allow_rtp_remote

int(* allow_rtp_remote) (struct ast_channel *chan1, struct ast_rtp_instance *instance)

Used to prevent two channels from remotely bridging audio rtp if the channel tech has a reason for prohibiting it based on qualities that need to be compared from both channels.

Note
This function may be NULL for a given channel driver. This should be accounted for and if that is the case, this function is not used.

Definition at line 735 of file rtp_engine.h.

Referenced by rtp_glue_data_get().

◆ allow_vrtp_remote

int(* allow_vrtp_remote) (struct ast_channel *chan1, struct ast_rtp_instance *instance)

Used to prevent two channels from remotely bridging video rtp if the channel tech has a reason for prohibiting it based on qualities that need to be compared from both channels.

Note
This function may be NULL for a given channel driver. This should be accounted for and if that is the case, this function is not used.

Definition at line 747 of file rtp_engine.h.

Referenced by rtp_glue_data_get().

◆ get_codec

void(* get_codec) (struct ast_channel *chan, struct ast_format_cap *result_cap)

Callback for retrieving codecs that the channel can do. Result returned in result_cap.

Note
This function may be NULL for a given channel driver. This should be accounted for and if that is the case, this function is not used.

Definition at line 761 of file rtp_engine.h.

Referenced by ast_rtp_instance_early_bridge(), ast_rtp_instance_early_bridge_make_compatible(), and native_rtp_bridge_start().

◆ get_rtp_info

enum ast_rtp_glue_result(* get_rtp_info) (struct ast_channel *chan, struct ast_rtp_instance **instance)

Callback for retrieving the RTP instance carrying audio.

Note
This function increases the reference count on the returned RTP instance.

Definition at line 729 of file rtp_engine.h.

Referenced by ast_ari_channels_rtpstatistics(), ast_rtp_instance_early_bridge(), ast_rtp_instance_early_bridge_make_compatible(), ast_rtp_instance_make_compatible(), and rtp_glue_data_get().

◆ get_trtp_info

enum ast_rtp_glue_result(* get_trtp_info) (struct ast_channel *chan, struct ast_rtp_instance **instance)

Callback for retrieving the RTP instance carrying text.

Note
This function increases the reference count on the returned RTP instance.
This function may be NULL for a given channel driver. This should be accounted for and if that is the case, this function is not used.

Definition at line 754 of file rtp_engine.h.

◆ get_vrtp_info

enum ast_rtp_glue_result(* get_vrtp_info) (struct ast_channel *chan, struct ast_rtp_instance **instance)

Callback for retrieving the RTP instance carrying video.

Note
This function increases the reference count on the returned RTP instance.
This function may be NULL for a given channel driver. This should be accounted for and if that is the case, this function is not used.

Definition at line 741 of file rtp_engine.h.

Referenced by ast_rtp_instance_early_bridge(), ast_rtp_instance_early_bridge_make_compatible(), and rtp_glue_data_get().

◆ mod

struct ast_module* mod

Module that the RTP glue came from

Definition at line 724 of file rtp_engine.h.

Referenced by ast_rtp_glue_register2().

◆ type

const char* type

Name of the channel driver that this glue is responsible for

Definition at line 722 of file rtp_engine.h.

Referenced by ast_rtp_glue_register2(), ast_rtp_glue_unregister(), ast_rtp_instance_get_glue(), ast_rtp_instance_make_compatible(), and Property::load().

◆ update_peer

int(* update_peer) (struct ast_channel *chan, struct ast_rtp_instance *instance, struct ast_rtp_instance *vinstance, struct ast_rtp_instance *tinstance, const struct ast_format_cap *cap, int nat_active)

Callback for updating the destination that the remote side should send RTP to

Definition at line 756 of file rtp_engine.h.

Referenced by ast_rtp_instance_early_bridge(), ast_rtp_instance_early_bridge_make_compatible(), native_rtp_bridge_start(), and native_rtp_bridge_stop().


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