FsConference

FsConference — Interface for farsight conference elements

Synopsis




                    FsConference;
FsSession*          fs_conference_new_session           (FsConference *conference,
                                                         FsMediaType media_type,
                                                         GError **error);
FsParticipant*      fs_conference_new_participant       (FsConference *conference,
                                                         gchar *cname,
                                                         GError **error);
#define             FS_ERROR
enum                FsError;

Object Hierarchy


  GInterface
   +----FsConference

Prerequisites

FsConference requires GstObject, GstImplementsInterface and GstElement.

Known Implementations

FsConference is implemented by FsBaseConference.

Description

This interface is implemented by the FsBaseConference base class element. A Farsight conference is a conversation space that takes place between 2 or more participants. Each conference must have one or more Farsight sessions that are associated to the conference participants. Different protocols simply need to derive from the FsBaseConference class and don't need to implement this interface directly.

Details

FsConference

typedef struct _FsConference FsConference;

Opaque FsConference data structure.


fs_conference_new_session ()

FsSession*          fs_conference_new_session           (FsConference *conference,
                                                         FsMediaType media_type,
                                                         GError **error);

Create a new Farsight session for the given conference.

conference :

FsConference interface of a GstElement

media_type :

FsMediaType of the new session

error :

location of a GError, or NULL if no error occured

Returns :

the new FsSession that has been created. The FsSession must be unref'd by the user when closing the session.

fs_conference_new_participant ()

FsParticipant*      fs_conference_new_participant       (FsConference *conference,
                                                         gchar *cname,
                                                         GError **error);

Create a new Farsight Participant for the type of the given conference.

conference :

FsConference interface of a GstElement

cname :

The cname of the participant

error :

location of a GError, or NULL if no error occured

Returns :

the new FsParticipant that has been created. The FsParticipant is owned by the user and he must unref it when he is done with it.

FS_ERROR

#define FS_ERROR (fs_error_quark ())

This quark is used to denote errors coming from Farsight objects


enum FsError

typedef enum {
  FS_ERROR_CONSTRUCTION,
  FS_ERROR_INVALID_ARGUMENTS,
  FS_ERROR_INTERNAL,
  FS_ERROR_NETWORK,
  FS_ERROR_NOT_IMPLEMENTED,
  FS_ERROR_NEGOTIATION_FAILED,
  FS_ERROR_UNKNOWN_CODEC,
  FS_ERROR_UNKNOWN_CNAME
} FsError;

This is the enum of error numbers that will come either on the "error" signal or from the Gst Bus.

FS_ERROR_CONSTRUCTION

Error constructing some of the sub-elements

FS_ERROR_INVALID_ARGUMENTS

Invalid arguments to the function

FS_ERROR_INTERNAL

An internal error happened in Farsight

FS_ERROR_NETWORK

A network related error

FS_ERROR_NOT_IMPLEMENTED

This functionality is not implemented by this plugins

FS_ERROR_NEGOTIATION_FAILED

The codec negotiation has failed

FS_ERROR_UNKNOWN_CODEC

The codec is unknown

FS_ERROR_UNKNOWN_CNAME

Data was received for an unknown cname