Loading...
Searching...
No Matches
janus_nosip.c File Reference
Plugins

Janus NoSIP plugin. More...

`#include "plugin.h"`
`#include <arpa/inet.h>`
`#include <net/if.h>`
`#include <sys/socket.h>`
`#include <netdb.h>`
`#include <poll.h>`
`#include <jansson.h>`
`#include "../debug.h"`
`#include "../apierror.h"`
`#include "../config.h"`
`#include "../mutex.h"`
`#include "../record.h"`
`#include "../rtp.h"`
`#include "../rtpsrtp.h"`
`#include "../rtcp.h"`
`#include "../rtpfwd.h"`
`#include "../ip-utils.h"`
`#include "../sdp-utils.h"`
`#include "../utils.h"`
Include dependency graph for janus_nosip.c:

## Data Structures

struct | janus_nosip_message
struct | janus_nosip_media
struct | janus_nosip_session

## Macros

#define | JANUS_NOSIP_VERSION 2
#define | JANUS_NOSIP_VERSION_STRING "0.0.2"
#define | JANUS_NOSIP_DESCRIPTION "This is a simple RTP bridging plugin that leaves signalling details (e.g., SIP) up to the application."
#define | JANUS_NOSIP_NAME "JANUS NoSIP plugin"
#define | JANUS_NOSIP_AUTHOR "Meetecho s.r.l."
#define | JANUS_NOSIP_PACKAGE "janus.plugin.nosip"
#define | DEFAULT_RTP_RANGE_MIN 10000
#define | DEFAULT_RTP_RANGE_MAX 60000
#define | JANUS_NOSIP_ERROR_UNKNOWN_ERROR 499
#define | JANUS_NOSIP_ERROR_NO_MESSAGE 440
#define | JANUS_NOSIP_ERROR_INVALID_JSON 441
#define | JANUS_NOSIP_ERROR_INVALID_REQUEST 442
#define | JANUS_NOSIP_ERROR_MISSING_ELEMENT 443
#define | JANUS_NOSIP_ERROR_INVALID_ELEMENT 444
#define | JANUS_NOSIP_ERROR_WRONG_STATE 445
#define | JANUS_NOSIP_ERROR_MISSING_SDP 446
#define | JANUS_NOSIP_ERROR_INVALID_SDP 447
#define | JANUS_NOSIP_ERROR_IO_ERROR 448
#define | JANUS_NOSIP_ERROR_RECORDING_ERROR 449
#define | JANUS_NOSIP_ERROR_TOO_STRICT 450
#define | JANUS_NOSIP_ERROR_NO_SUCH_STREAM 451

## Typedefs

typedef struct janus_nosip_message | janus_nosip_message
typedef struct janus_nosip_media | janus_nosip_media
typedef struct janus_nosip_session | janus_nosip_session

## Functions

janus_plugin * | create (void)
int | janus_nosip_init (janus_callbacks *callback, const char *config_path)
void | janus_nosip_destroy (void)
int | janus_nosip_get_api_compatibility (void)
int | janus_nosip_get_version (void)
const char * | janus_nosip_get_version_string (void)
const char * | janus_nosip_get_description (void)
const char * | janus_nosip_get_name (void)
const char * | janus_nosip_get_author (void)
const char * | janus_nosip_get_package (void)
void | janus_nosip_create_session (janus_plugin_session *handle, int *error)
struct janus_plugin_result * | janus_nosip_handle_message (janus_plugin_session *handle, char *transaction, json_t *message, json_t *jsep)
void | janus_nosip_setup_media (janus_plugin_session *handle)
void | janus_nosip_incoming_rtp (janus_plugin_session *handle, janus_plugin_rtp *packet)
void | janus_nosip_incoming_rtcp (janus_plugin_session *handle, janus_plugin_rtcp *packet)
void | janus_nosip_hangup_media (janus_plugin_session *handle)
void | janus_nosip_destroy_session (janus_plugin_session *handle, int *error)
json_t * | janus_nosip_query_session (janus_plugin_session *handle)
void | janus_nosip_sdp_process (janus_nosip_session *session, janus_sdp *sdp, gboolean answer, gboolean update, gboolean *changed)
char * | janus_nosip_sdp_manipulate (janus_nosip_session *session, janus_sdp *sdp, gboolean answer)

## Detailed Description

Janus NoSIP plugin.

Author
  Lorenzo Miniero loren.nosp@m.zo@m.nosp@m.eetec.nosp@m.ho.c.nosp@m.om

Copyright
  GNU General Public License v3

Check the NoSIP plugin documentation for more details.

Plugins

## Macro Definition Documentation

## DEFAULT_RTP_RANGE_MAX

#define DEFAULT_RTP_RANGE_MAX 60000

## DEFAULT_RTP_RANGE_MIN

#define DEFAULT_RTP_RANGE_MIN 10000

## JANUS_NOSIP_AUTHOR

#define JANUS_NOSIP_AUTHOR "Meetecho s.r.l."

## JANUS_NOSIP_DESCRIPTION

#define JANUS_NOSIP_DESCRIPTION "This is a simple RTP bridging plugin that leaves signalling details (e.g., SIP) up to the application."

## JANUS_NOSIP_ERROR_INVALID_ELEMENT

#define JANUS_NOSIP_ERROR_INVALID_ELEMENT 444

## JANUS_NOSIP_ERROR_INVALID_JSON

#define JANUS_NOSIP_ERROR_INVALID_JSON 441

## JANUS_NOSIP_ERROR_INVALID_REQUEST

#define JANUS_NOSIP_ERROR_INVALID_REQUEST 442

## JANUS_NOSIP_ERROR_INVALID_SDP

#define JANUS_NOSIP_ERROR_INVALID_SDP 447

## JANUS_NOSIP_ERROR_IO_ERROR

#define JANUS_NOSIP_ERROR_IO_ERROR 448

## JANUS_NOSIP_ERROR_MISSING_ELEMENT

#define JANUS_NOSIP_ERROR_MISSING_ELEMENT 443

## JANUS_NOSIP_ERROR_MISSING_SDP

#define JANUS_NOSIP_ERROR_MISSING_SDP 446

## JANUS_NOSIP_ERROR_NO_MESSAGE

#define JANUS_NOSIP_ERROR_NO_MESSAGE 440

## JANUS_NOSIP_ERROR_NO_SUCH_STREAM

#define JANUS_NOSIP_ERROR_NO_SUCH_STREAM 451

## JANUS_NOSIP_ERROR_RECORDING_ERROR

#define JANUS_NOSIP_ERROR_RECORDING_ERROR 449

## JANUS_NOSIP_ERROR_TOO_STRICT

#define JANUS_NOSIP_ERROR_TOO_STRICT 450

## JANUS_NOSIP_ERROR_UNKNOWN_ERROR

#define JANUS_NOSIP_ERROR_UNKNOWN_ERROR 499

## JANUS_NOSIP_ERROR_WRONG_STATE

#define JANUS_NOSIP_ERROR_WRONG_STATE 445

## JANUS_NOSIP_NAME

#define JANUS_NOSIP_NAME "JANUS NoSIP plugin"

## JANUS_NOSIP_PACKAGE

#define JANUS_NOSIP_PACKAGE "janus.plugin.nosip"

## JANUS_NOSIP_VERSION

#define JANUS_NOSIP_VERSION 2

## JANUS_NOSIP_VERSION_STRING

#define JANUS_NOSIP_VERSION_STRING "0.0.2"

## Typedef Documentation

## janus_nosip_media

typedef struct janus_nosip_media janus_nosip_media

## janus_nosip_message

typedef struct janus_nosip_message janus_nosip_message

## janus_nosip_session

typedef struct janus_nosip_session janus_nosip_session

## Function Documentation

## create()

janus_plugin * create | ( | void |  | ) |

## janus_nosip_create_session()

void janus_nosip_create_session | ( | janus_plugin_session * | handle,
|  | int * | error )

## janus_nosip_destroy()

void janus_nosip_destroy | ( | void |  | ) |

## janus_nosip_destroy_session()

void janus_nosip_destroy_session | ( | janus_plugin_session * | handle,
|  | int * | error )

## janus_nosip_get_api_compatibility()

int janus_nosip_get_api_compatibility | ( | void |  | ) |

## janus_nosip_get_author()

const char * janus_nosip_get_author | ( | void |  | ) |

## janus_nosip_get_description()

const char * janus_nosip_get_description | ( | void |  | ) |

## janus_nosip_get_name()

const char * janus_nosip_get_name | ( | void |  | ) |

## janus_nosip_get_package()

const char * janus_nosip_get_package | ( | void |  | ) |

## janus_nosip_get_version()

int janus_nosip_get_version | ( | void |  | ) |

## janus_nosip_get_version_string()

const char * janus_nosip_get_version_string | ( | void |  | ) |

## janus_nosip_handle_message()

struct janus_plugin_result * janus_nosip_handle_message | ( | janus_plugin_session * | handle,
|  | char * | transaction,
|  | json_t * | message,
|  | json_t * | jsep )

## janus_nosip_hangup_media()

void janus_nosip_hangup_media | ( | janus_plugin_session * | handle | ) |

## janus_nosip_incoming_rtcp()

void janus_nosip_incoming_rtcp | ( | janus_plugin_session * | handle,
|  | janus_plugin_rtcp * | packet )

## janus_nosip_incoming_rtp()

void janus_nosip_incoming_rtp | ( | janus_plugin_session * | handle,
|  | janus_plugin_rtp * | packet )

## janus_nosip_init()

int janus_nosip_init | ( | janus_callbacks * | callback,
|  | const char * | config_path )

## janus_nosip_query_session()

json_t * janus_nosip_query_session | ( | janus_plugin_session * | handle | ) |

## janus_nosip_sdp_manipulate()

char * janus_nosip_sdp_manipulate | ( | janus_nosip_session * | session,
|  | janus_sdp * | sdp,
|  | gboolean | answer )

## janus_nosip_sdp_process()

void janus_nosip_sdp_process | ( | janus_nosip_session * | session,
|  | janus_sdp * | sdp,
|  | gboolean | answer,
|  | gboolean | update,
|  | gboolean * | changed )

## janus_nosip_setup_media()

void janus_nosip_setup_media | ( | janus_plugin_session * | handle | ) |