Liblinphone  5.1.0
Typedefs | Enumerations | Functions
Chatroom

Chat room and Messaging. More...

Typedefs

typedef struct _LinphoneImNotifPolicy LinphoneImNotifPolicy
 Policy to use to send/receive instant messaging composing/delivery/display notifications. More...
 
typedef void(* LinphoneChatMessageCbsMsgStateChangedCb) (LinphoneChatMessage *message, LinphoneChatMessageState state)
 Call back used to notify message delivery status. More...
 
typedef void(* LinphoneChatMessageCbsParticipantImdnStateChangedCb) (LinphoneChatMessage *message, const LinphoneParticipantImdnState *state)
 Call back used to notify participant IMDN state. More...
 
typedef void(* LinphoneChatMessageCbsFileTransferRecvCb) (LinphoneChatMessage *message, LinphoneContent *content, const LinphoneBuffer *buffer)
 File transfer receive callback prototype. More...
 
typedef LinphoneBuffer *(* LinphoneChatMessageCbsFileTransferSendCb) (LinphoneChatMessage *message, LinphoneContent *content, size_t offset, size_t size)
 File transfer send callback prototype. More...
 
typedef void(* LinphoneChatMessageCbsFileTransferSendChunkCb) (LinphoneChatMessage *message, LinphoneContent *content, size_t offset, size_t size, LinphoneBuffer *buffer)
 File transfer send callback prototype. More...
 
typedef void(* LinphoneChatMessageCbsFileTransferProgressIndicationCb) (LinphoneChatMessage *message, LinphoneContent *content, size_t offset, size_t total)
 File transfer progress indication callback prototype. More...
 
typedef void(* LinphoneChatMessageCbsEphemeralMessageTimerStartedCb) (LinphoneChatMessage *message)
 Callback used to notify an ephemeral message that its lifespan before disappearing has started to decrease. More...
 
typedef void(* LinphoneChatMessageCbsEphemeralMessageDeletedCb) (LinphoneChatMessage *message)
 Call back used to notify ephemeral message is deleted. More...
 
typedef void(* LinphoneChatRoomCbsIsComposingReceivedCb) (LinphoneChatRoom *chat_room, const LinphoneAddress *remote_address, bool_t is_composing)
 Is composing notification callback prototype. More...
 
typedef void(* LinphoneChatRoomCbsMessageReceivedCb) (LinphoneChatRoom *chat_room, LinphoneChatMessage *message)
 Callback used to notify a chat room that a message has been received. More...
 
typedef void(* LinphoneChatRoomCbsNewEventCb) (LinphoneChatRoom *chat_room, const LinphoneEventLog *event_log)
 Callback used to notify a chat room that an event log has been created. More...
 
typedef void(* LinphoneChatRoomCbsChatMessageReceivedCb) (LinphoneChatRoom *chat_room, const LinphoneEventLog *event_log)
 Callback used to notify a chat room that a chat message has been received. More...
 
typedef void(* LinphoneChatRoomCbsChatMessageSendingCb) (LinphoneChatRoom *chat_room, const LinphoneEventLog *event_log)
 Callback used to notify a chat room that a chat message is being sent. More...
 
typedef void(* LinphoneChatRoomCbsChatMessageSentCb) (LinphoneChatRoom *chat_room, const LinphoneEventLog *event_log)
 Callback used to notify a chat room that a chat message has been sent. More...
 
typedef void(* LinphoneChatRoomCbsParticipantAddedCb) (LinphoneChatRoom *chat_room, const LinphoneEventLog *event_log)
 Callback used to notify a chat room that a participant has been added. More...
 
typedef void(* LinphoneChatRoomCbsParticipantRemovedCb) (LinphoneChatRoom *chat_room, const LinphoneEventLog *event_log)
 Callback used to notify a chat room that a participant has been removed. More...
 
typedef void(* LinphoneChatRoomCbsParticipantAdminStatusChangedCb) (LinphoneChatRoom *chat_room, const LinphoneEventLog *event_log)
 Callback used to notify a chat room that the admin status of a participant has been changed. More...
 
typedef void(* LinphoneChatRoomCbsStateChangedCb) (LinphoneChatRoom *chat_room, LinphoneChatRoomState newState)
 Callback used to notify a chat room state has changed. More...
 
typedef void(* LinphoneChatRoomCbsSecurityEventCb) (LinphoneChatRoom *chat_room, const LinphoneEventLog *event_log)
 Callback used to notify a security event in the chat room. More...
 
typedef void(* LinphoneChatRoomCbsSubjectChangedCb) (LinphoneChatRoom *chat_room, const LinphoneEventLog *event_log)
 Callback used to notify that the subject of a chat room has changed. More...
 
typedef void(* LinphoneChatRoomCbsUndecryptableMessageReceivedCb) (LinphoneChatRoom *chat_room, LinphoneChatMessage *message)
 Callback used to notify a chat room that a message has been received but we were unable to decrypt it. More...
 
typedef void(* LinphoneChatRoomCbsParticipantDeviceAddedCb) (LinphoneChatRoom *chat_room, const LinphoneEventLog *event_log)
 Callback used to notify a chat room that a participant has been added. More...
 
typedef void(* LinphoneChatRoomCbsParticipantDeviceRemovedCb) (LinphoneChatRoom *chat_room, const LinphoneEventLog *event_log)
 Callback used to notify a chat room that a participant has been removed. More...
 
typedef void(* LinphoneChatRoomCbsConferenceJoinedCb) (LinphoneChatRoom *chat_room, const LinphoneEventLog *event_log)
 Callback used to notify a chat room has been joined. More...
 
typedef void(* LinphoneChatRoomCbsConferenceLeftCb) (LinphoneChatRoom *chat_room, const LinphoneEventLog *event_log)
 Callback used to notify a chat room has been left. More...
 
typedef void(* LinphoneChatRoomCbsEphemeralEventCb) (LinphoneChatRoom *chat_room, const LinphoneEventLog *event_log)
 Callback used to notify a chat room that an ephemeral related event has been generated. More...
 
typedef void(* LinphoneChatRoomCbsEphemeralMessageTimerStartedCb) (LinphoneChatRoom *chat_room, const LinphoneEventLog *event_log)
 Callback used to notify a chat room that the lifespan of an ephemeral message before disappearing has started to decrease. More...
 
typedef void(* LinphoneChatRoomCbsEphemeralMessageDeletedCb) (LinphoneChatRoom *chat_room, const LinphoneEventLog *event_log)
 Callback used to notify a chat room that an ephemeral message has been deleted. More...
 
typedef void(* LinphoneChatRoomCbsConferenceAddressGenerationCb) (LinphoneChatRoom *chat_room)
 Callback used when a group chat room is created server-side to generate the address of the chat room. More...
 
typedef void(* LinphoneChatRoomCbsParticipantRegistrationSubscriptionRequestedCb) (LinphoneChatRoom *chat_room, const LinphoneAddress *participant_address)
 Callback used when a group chat room server is subscribing to registration state of a participant. More...
 
typedef void(* LinphoneChatRoomCbsParticipantRegistrationUnsubscriptionRequestedCb) (LinphoneChatRoom *chat_room, const LinphoneAddress *participant_address)
 Callback used when a group chat room server is unsubscribing to registration state of a participant. More...
 
typedef void(* LinphoneChatRoomCbsShouldChatMessageBeStoredCb) (LinphoneChatRoom *chat_room, LinphoneChatMessage *message)
 Callback used to tell the core whether or not to store the incoming message in db or not using linphone_chat_message_set_to_be_stored(). More...
 
typedef void(* LinphoneChatRoomCbsChatMessageParticipantImdnStateChangedCb) (LinphoneChatRoom *chat_room, LinphoneChatMessage *message, const LinphoneParticipantImdnState *state)
 Callback used to notify a participant state has changed in a message of this chat room. More...
 
typedef void(* LinphoneChatMessageStateChangedCb) (LinphoneChatMessage *message, LinphoneChatMessageState state, void *user_data)
 Call back used to notify message delivery status. More...
 
typedef struct _LinphoneChatMessage LinphoneChatMessage
 An chat message is the object that is sent or received through a LinphoneChatRoom. More...
 
typedef struct _LinphoneChatMessageCbs LinphoneChatMessageCbs
 An object to handle the callbacks for the handling a LinphoneChatMessage objects.
 
typedef struct _LinphoneChatRoom LinphoneChatRoom
 A chat room is the place where LinphoneChatMessage are exchanged. More...
 
typedef struct _LinphoneChatRoomParams LinphoneChatRoomParams
 Object defining parameters for a LinphoneChatRoom. More...
 
typedef int LinphoneChatRoomCapabilitiesMask
 A mask of LinphoneChatRoomCapabilities.
 
typedef struct _LinphoneChatRoomCbs LinphoneChatRoomCbs
 An object to handle the callbacks for the handling a LinphoneChatRoom objects.
 
typedef enum _LinphoneChatMessageState LinphoneChatMessageState
 LinphoneChatMessageState is used to notify if messages have been successfully delivered or not.
 
typedef enum _LinphoneChatMessageDirection LinphoneChatMessageDirection
 LinphoneChatMessageDirection is used to indicate if a message is outgoing or incoming.
 
typedef enum _LinphoneChatRoomState LinphoneChatRoomState
 LinphoneChatRoomState is used to indicate the current state of a chat room.
 
typedef enum _LinphoneChatRoomCapabilities LinphoneChatRoomCapabilities
 LinphoneChatRoomCapabilities is used to indicate the capabilities of a chat room.
 
typedef enum _LinphoneChatRoomBackend LinphoneChatRoomBackend
 LinphoneChatRoomBackend is used to indicate the backend implementation of a chat room.
 
typedef enum _LinphoneChatRoomEncryptionBackend LinphoneChatRoomEncryptionBackend
 LinphoneChatRoomEncryptionBackend is used to indicate the encryption engine used by a chat room.
 
typedef enum _LinphoneChatRoomEphemeralMode LinphoneChatRoomEphemeralMode
 LinphoneChatRoomEphemeralMode is used to the ephemeral message mode used by a chat room.
 
typedef enum _LinphoneChatRoomSecurityLevel LinphoneChatRoomSecurityLevel
 TODO move to encryption engine object when available LinphoneChatRoomSecurityLevel is used to indicate the encryption security level of a chat room.
 

Enumerations

enum  _LinphoneChatMessageState {
  LinphoneChatMessageStateIdle = 0,
  LinphoneChatMessageStateInProgress = 1,
  LinphoneChatMessageStateDelivered = 2,
  LinphoneChatMessageStateNotDelivered = 3,
  LinphoneChatMessageStateFileTransferError = 4,
  LinphoneChatMessageStateFileTransferDone = 5,
  LinphoneChatMessageStateDeliveredToUser = 6,
  LinphoneChatMessageStateDisplayed = 7,
  LinphoneChatMessageStateFileTransferInProgress = 8
}
 LinphoneChatMessageState is used to notify if messages have been successfully delivered or not. More...
 
enum  _LinphoneChatMessageDirection {
  LinphoneChatMessageDirectionIncoming = 0,
  LinphoneChatMessageDirectionOutgoing = 1
}
 LinphoneChatMessageDirection is used to indicate if a message is outgoing or incoming. More...
 
enum  _LinphoneChatRoomState {
  LinphoneChatRoomStateNone = 0,
  LinphoneChatRoomStateInstantiated = 1,
  LinphoneChatRoomStateCreationPending = 2,
  LinphoneChatRoomStateCreated = 3,
  LinphoneChatRoomStateCreationFailed = 4,
  LinphoneChatRoomStateTerminationPending = 5,
  LinphoneChatRoomStateTerminated = 6,
  LinphoneChatRoomStateTerminationFailed = 7,
  LinphoneChatRoomStateDeleted = 8
}
 LinphoneChatRoomState is used to indicate the current state of a chat room. More...
 
enum  _LinphoneChatRoomCapabilities {
  LinphoneChatRoomCapabilitiesNone = 0,
  LinphoneChatRoomCapabilitiesBasic = 1 << 0,
  LinphoneChatRoomCapabilitiesRealTimeText = 1 << 1,
  LinphoneChatRoomCapabilitiesConference = 1 << 2,
  LinphoneChatRoomCapabilitiesProxy = 1 << 3,
  LinphoneChatRoomCapabilitiesMigratable = 1 << 4,
  LinphoneChatRoomCapabilitiesOneToOne = 1 << 5,
  LinphoneChatRoomCapabilitiesEncrypted = 1 << 6,
  LinphoneChatRoomCapabilitiesEphemeral = 1 << 7
}
 LinphoneChatRoomCapabilities is used to indicate the capabilities of a chat room. More...
 
enum  _LinphoneChatRoomBackend {
  LinphoneChatRoomBackendBasic = 1 << 0,
  LinphoneChatRoomBackendFlexisipChat = 1 << 1
}
 LinphoneChatRoomBackend is used to indicate the backend implementation of a chat room. More...
 
enum  _LinphoneChatRoomEncryptionBackend {
  LinphoneChatRoomEncryptionBackendNone = 0,
  LinphoneChatRoomEncryptionBackendLime = 1 << 0
}
 LinphoneChatRoomEncryptionBackend is used to indicate the encryption engine used by a chat room. More...
 
enum  _LinphoneChatRoomEphemeralMode {
  LinphoneChatRoomEphemeralModeDeviceManaged = 0,
  LinphoneChatRoomEphemeralModeAdminManaged = 1
}
 LinphoneChatRoomEphemeralMode is used to the ephemeral message mode used by a chat room. More...
 
enum  _LinphoneChatRoomSecurityLevel {
  LinphoneChatRoomSecurityLevelUnsafe = 0,
  LinphoneChatRoomSecurityLevelClearText = 1,
  LinphoneChatRoomSecurityLevelEncrypted = 2,
  LinphoneChatRoomSecurityLevelSafe = 3
}
 TODO move to encryption engine object when available LinphoneChatRoomSecurityLevel is used to indicate the encryption security level of a chat room. More...
 

Functions

const bctbx_list_t * linphone_core_get_chat_rooms (LinphoneCore *core)
 Returns a list of chat rooms. More...
 
LinphoneChatRoomParamslinphone_core_create_default_chat_room_params (LinphoneCore *core)
 Creates and returns the default chat room parameters. More...
 
void linphone_core_set_im_encryption_engine (LinphoneCore *core, LinphoneImEncryptionEngine *imee)
 Sets an IM Encryption Engine in the core. More...
 
LinphoneImEncryptionEnginelinphone_core_get_im_encryption_engine (const LinphoneCore *core)
 Gets the IM Encryption Engine in the core if possible. More...
 
bool_t linphone_core_is_content_type_supported (const LinphoneCore *core, const char *content_type)
 Tells whether a content type is supported. More...
 
void linphone_core_add_content_type_support (LinphoneCore *core, const char *content_type)
 Add support for the specified content type. More...
 
void linphone_core_remove_content_type_support (LinphoneCore *core, const char *content_type)
 Remove support for the specified content type. More...
 
LinphoneChatRoomlinphone_core_create_chat_room_6 (LinphoneCore *core, const LinphoneChatRoomParams *params, const LinphoneAddress *localAddr, const bctbx_list_t *participants)
 Create a chat room. More...
 
LinphoneChatRoomlinphone_core_search_chat_room (const LinphoneCore *core, const LinphoneChatRoomParams *params, const LinphoneAddress *localAddr, const LinphoneAddress *remoteAddr, const bctbx_list_t *participants)
 Find a chat room. More...
 
void linphone_core_delete_chat_room (LinphoneCore *core, LinphoneChatRoom *chat_room)
 Removes a chatroom including all message history from the LinphoneCore. More...
 
void linphone_core_disable_chat (LinphoneCore *core, LinphoneReason deny_reason)
 Inconditionnaly disable incoming chat messages. More...
 
void linphone_core_enable_chat (LinphoneCore *core)
 Enable reception of incoming chat messages. More...
 
bool_t linphone_core_chat_enabled (const LinphoneCore *core)
 Returns whether chat is enabled. More...
 
LinphoneImNotifPolicylinphone_core_get_im_notif_policy (const LinphoneCore *core)
 Get the LinphoneImNotifPolicy object controlling the instant messaging notifications. More...
 
void linphone_core_chat_room_set_default_ephemeral_mode (LinphoneCore *core, LinphoneChatRoomEphemeralMode mode)
 Sets the default ephemeral message mode. More...
 
LinphoneChatRoomEphemeralMode linphone_core_chat_room_get_default_ephemeral_mode (const LinphoneCore *core)
 Gets the default ephemeral message mode core the linphone core. More...
 
void linphone_core_set_default_ephemeral_lifetime (LinphoneCore *lc, long value)
 Set the default ephemeral lifetime in seconds. More...
 
long linphone_core_get_default_ephemeral_lifetime (const LinphoneCore *lc)
 Gets the default lifetime of ephemeral messages in seconds core the linphone core. More...
 
MS2_DEPRECATED LinphoneChatRoomlinphone_core_create_client_group_chat_room (LinphoneCore *core, const char *subject, bool_t fallback)
 Create a client-side group chat room. More...
 
MS2_DEPRECATED LinphoneChatRoomlinphone_core_create_client_group_chat_room_2 (LinphoneCore *core, const char *subject, bool_t fallback, bool_t encrypted)
 Create a client-side group chat room. More...
 
MS2_DEPRECATED LinphoneChatRoomlinphone_core_create_chat_room (LinphoneCore *core, const LinphoneChatRoomParams *params, const LinphoneAddress *localAddr, const char *subject, const bctbx_list_t *participants)
 Create a chat room. More...
 
MS2_DEPRECATED LinphoneChatRoomlinphone_core_create_chat_room_2 (LinphoneCore *core, const LinphoneChatRoomParams *params, const char *subject, const bctbx_list_t *participants)
 Create a chat room. More...
 
MS2_DEPRECATED LinphoneChatRoomlinphone_core_create_chat_room_3 (LinphoneCore *core, const char *subject, const bctbx_list_t *participants)
 
MS2_DEPRECATED LinphoneChatRoomlinphone_core_create_chat_room_4 (LinphoneCore *core, const LinphoneChatRoomParams *params, const LinphoneAddress *localAddr, const LinphoneAddress *participant)
 
MS2_DEPRECATED LinphoneChatRoomlinphone_core_create_chat_room_5 (LinphoneCore *core, const LinphoneAddress *participant)
 
MS2_DEPRECATED LinphoneChatRoomlinphone_core_get_chat_room (LinphoneCore *core, const LinphoneAddress *addr)
 Get a chat room whose peer is the supplied address. More...
 
MS2_DEPRECATED LinphoneChatRoomlinphone_core_get_chat_room_2 (LinphoneCore *core, const LinphoneAddress *peer_addr, const LinphoneAddress *local_addr)
 Get a chat room. More...
 
MS2_DEPRECATED LinphoneChatRoomlinphone_core_get_chat_room_from_uri (LinphoneCore *core, const char *to)
 Get a chat room for messaging from a sip uri like sip:joe@s.nosp@m.ip.l.nosp@m.inpho.nosp@m.ne.o.nosp@m.rg. More...
 
MS2_DEPRECATED LinphoneChatRoomlinphone_core_find_chat_room (const LinphoneCore *core, const LinphoneAddress *peer_addr, const LinphoneAddress *local_addr)
 Find a chat room. More...
 
MS2_DEPRECATED LinphoneChatRoomlinphone_core_find_one_to_one_chat_room (const LinphoneCore *core, const LinphoneAddress *local_addr, const LinphoneAddress *participant_addr)
 Find a one to one chat room. More...
 
MS2_DEPRECATED LinphoneChatRoomlinphone_core_find_one_to_one_chat_room_2 (const LinphoneCore *core, const LinphoneAddress *local_addr, const LinphoneAddress *participant_addr, bool_t encrypted)
 Find a one to one chat room. More...
 
LinphoneImNotifPolicylinphone_im_notif_policy_ref (LinphoneImNotifPolicy *policy)
 Acquire a reference to the LinphoneImNotifPolicy object. More...
 
void linphone_im_notif_policy_unref (LinphoneImNotifPolicy *policy)
 Release reference to the LinphoneImNotifPolicy object. More...
 
void * linphone_im_notif_policy_get_user_data (const LinphoneImNotifPolicy *policy)
 Retrieve the user pointer associated with the LinphoneImNotifPolicy object. More...
 
void linphone_im_notif_policy_set_user_data (LinphoneImNotifPolicy *policy, void *user_data)
 Assign a user pointer to the LinphoneImNotifPolicy object. More...
 
void linphone_im_notif_policy_clear (LinphoneImNotifPolicy *policy)
 Clear an IM notif policy (deactivate all receiving and sending of notifications). More...
 
void linphone_im_notif_policy_enable_all (LinphoneImNotifPolicy *policy)
 Enable all receiving and sending of notifications. More...
 
bool_t linphone_im_notif_policy_get_send_is_composing (const LinphoneImNotifPolicy *policy)
 Tell whether is_composing notifications are being sent. More...
 
void linphone_im_notif_policy_set_send_is_composing (LinphoneImNotifPolicy *policy, bool_t enable)
 Enable is_composing notifications sending. More...
 
bool_t linphone_im_notif_policy_get_recv_is_composing (const LinphoneImNotifPolicy *policy)
 Tell whether is_composing notifications are being notified when received. More...
 
void linphone_im_notif_policy_set_recv_is_composing (LinphoneImNotifPolicy *policy, bool_t enable)
 Enable is_composing notifications receiving. More...
 
bool_t linphone_im_notif_policy_get_send_imdn_delivered (const LinphoneImNotifPolicy *policy)
 Tell whether imdn delivered notifications are being sent. More...
 
void linphone_im_notif_policy_set_send_imdn_delivered (LinphoneImNotifPolicy *policy, bool_t enable)
 Enable imdn delivered notifications sending. More...
 
bool_t linphone_im_notif_policy_get_recv_imdn_delivered (const LinphoneImNotifPolicy *policy)
 Tell whether imdn delivered notifications are being notified when received. More...
 
void linphone_im_notif_policy_set_recv_imdn_delivered (LinphoneImNotifPolicy *policy, bool_t enable)
 Enable imdn delivered notifications receiving. More...
 
bool_t linphone_im_notif_policy_get_send_imdn_displayed (const LinphoneImNotifPolicy *policy)
 Tell whether imdn displayed notifications are being sent. More...
 
void linphone_im_notif_policy_set_send_imdn_displayed (LinphoneImNotifPolicy *policy, bool_t enable)
 Enable imdn displayed notifications sending. More...
 
bool_t linphone_im_notif_policy_get_recv_imdn_displayed (const LinphoneImNotifPolicy *policy)
 Tell whether imdn displayed notifications are being notified when received. More...
 
void linphone_im_notif_policy_set_recv_imdn_displayed (LinphoneImNotifPolicy *policy, bool_t enable)
 Enable imdn displayed notifications receiving. More...
 
LinphoneChatMessageCbslinphone_chat_message_cbs_new (void)
 
LinphoneChatMessageCbslinphone_chat_message_cbs_ref (LinphoneChatMessageCbs *cbs)
 Acquire a reference to the chat message callbacks object. More...
 
void linphone_chat_message_cbs_unref (LinphoneChatMessageCbs *cbs)
 Release reference to the chat message callbacks object. More...
 
void * linphone_chat_message_cbs_get_user_data (const LinphoneChatMessageCbs *cbs)
 Retrieve the user pointer associated with the chat message callbacks object. More...
 
void linphone_chat_message_cbs_set_user_data (LinphoneChatMessageCbs *cbs, void *user_data)
 Assign a user pointer to the chat message callbacks object. More...
 
LinphoneChatMessageCbsMsgStateChangedCb linphone_chat_message_cbs_get_msg_state_changed (const LinphoneChatMessageCbs *cbs)
 Get the message state changed callback. More...
 
void linphone_chat_message_cbs_set_msg_state_changed (LinphoneChatMessageCbs *cbs, LinphoneChatMessageCbsMsgStateChangedCb cb)
 Set the message state changed callback. More...
 
LinphoneChatMessageCbsFileTransferRecvCb linphone_chat_message_cbs_get_file_transfer_recv (const LinphoneChatMessageCbs *cbs)
 Get the file transfer receive callback. More...
 
void linphone_chat_message_cbs_set_file_transfer_recv (LinphoneChatMessageCbs *cbs, LinphoneChatMessageCbsFileTransferRecvCb cb)
 Set the file transfer receive callback. More...
 
LinphoneChatMessageCbsFileTransferSendCb linphone_chat_message_cbs_get_file_transfer_send (const LinphoneChatMessageCbs *cbs)
 Get the file transfer send callback. More...
 
void linphone_chat_message_cbs_set_file_transfer_send (LinphoneChatMessageCbs *cbs, LinphoneChatMessageCbsFileTransferSendCb cb)
 Set the file transfer send callback. More...
 
LinphoneChatMessageCbsFileTransferSendChunkCb linphone_chat_message_cbs_get_file_transfer_send_chunk (const LinphoneChatMessageCbs *cbs)
 Get the file transfer send callback. More...
 
void linphone_chat_message_cbs_set_file_transfer_send_chunk (LinphoneChatMessageCbs *cbs, LinphoneChatMessageCbsFileTransferSendChunkCb cb)
 Set the file transfer send callback. More...
 
LinphoneChatMessageCbsFileTransferProgressIndicationCb linphone_chat_message_cbs_get_file_transfer_progress_indication (const LinphoneChatMessageCbs *cbs)
 Get the file transfer progress indication callback. More...
 
void linphone_chat_message_cbs_set_file_transfer_progress_indication (LinphoneChatMessageCbs *cbs, LinphoneChatMessageCbsFileTransferProgressIndicationCb cb)
 Set the file transfer progress indication callback. More...
 
LinphoneChatMessageCbsParticipantImdnStateChangedCb linphone_chat_message_cbs_get_participant_imdn_state_changed (const LinphoneChatMessageCbs *cbs)
 Get the participant IMDN state changed callback. More...
 
void linphone_chat_message_cbs_set_participant_imdn_state_changed (LinphoneChatMessageCbs *cbs, LinphoneChatMessageCbsParticipantImdnStateChangedCb cb)
 Set the participant IMDN state changed callback. More...
 
LinphoneChatMessageCbsEphemeralMessageTimerStartedCb linphone_chat_message_cbs_get_ephemeral_message_timer_started (const LinphoneChatMessageCbs *cbs)
 Get the current "ephemeral message timer started" callback. More...
 
void linphone_chat_message_cbs_set_ephemeral_message_timer_started (LinphoneChatMessageCbs *cbs, LinphoneChatMessageCbsEphemeralMessageTimerStartedCb cb)
 Set the ephemeral message timer started callback. More...
 
LinphoneChatMessageCbsEphemeralMessageDeletedCb linphone_chat_message_cbs_get_ephemeral_message_deleted (const LinphoneChatMessageCbs *cbs)
 Get the ephemeral message deleted callback. More...
 
void linphone_chat_message_cbs_set_ephemeral_message_deleted (LinphoneChatMessageCbs *cbs, LinphoneChatMessageCbsEphemeralMessageDeletedCb cb)
 Set the ephemeral message deleted callback. More...
 
LinphoneChatRoomCbslinphone_chat_room_cbs_ref (LinphoneChatRoomCbs *cbs)
 Acquire a reference to the chat room callbacks object. More...
 
void linphone_chat_room_cbs_unref (LinphoneChatRoomCbs *cbs)
 Release reference to the chat room callbacks object. More...
 
void * linphone_chat_room_cbs_get_user_data (const LinphoneChatRoomCbs *cbs)
 Retrieve the user pointer associated with the chat room callbacks object. More...
 
void linphone_chat_room_cbs_set_user_data (LinphoneChatRoomCbs *cbs, void *user_data)
 Assign a user pointer to the chat room callbacks object. More...
 
LinphoneChatRoomCbsIsComposingReceivedCb linphone_chat_room_cbs_get_is_composing_received (const LinphoneChatRoomCbs *cbs)
 Get the is-composing received callback. More...
 
void linphone_chat_room_cbs_set_is_composing_received (LinphoneChatRoomCbs *cbs, LinphoneChatRoomCbsIsComposingReceivedCb cb)
 Set the is-composing received callback. More...
 
LinphoneChatRoomCbsMessageReceivedCb linphone_chat_room_cbs_get_message_received (const LinphoneChatRoomCbs *cbs)
 Get the message received callback. More...
 
void linphone_chat_room_cbs_set_message_received (LinphoneChatRoomCbs *cbs, LinphoneChatRoomCbsMessageReceivedCb cb)
 Set the message received callback. More...
 
LinphoneChatRoomCbsNewEventCb linphone_chat_room_cbs_get_new_event (const LinphoneChatRoomCbs *cbs)
 Get the new event log callback. More...
 
void linphone_chat_room_cbs_set_new_event (LinphoneChatRoomCbs *cbs, LinphoneChatRoomCbsNewEventCb cb)
 Set the new event log callback. More...
 
LinphoneChatRoomCbsChatMessageReceivedCb linphone_chat_room_cbs_get_chat_message_received (const LinphoneChatRoomCbs *cbs)
 Get the chat message received callback. More...
 
void linphone_chat_room_cbs_set_chat_message_received (LinphoneChatRoomCbs *cbs, LinphoneChatRoomCbsChatMessageReceivedCb cb)
 Set the chat message received callback. More...
 
LinphoneChatRoomCbsChatMessageSendingCb linphone_chat_room_cbs_get_chat_message_sending (const LinphoneChatRoomCbs *cbs)
 Get the chat message sending callback. More...
 
void linphone_chat_room_cbs_set_chat_message_sending (LinphoneChatRoomCbs *cbs, LinphoneChatRoomCbsChatMessageSendingCb cb)
 Set the chat message sending callback. More...
 
LinphoneChatRoomCbsChatMessageSentCb linphone_chat_room_cbs_get_chat_message_sent (const LinphoneChatRoomCbs *cbs)
 Get the chat message sent callback. More...
 
void linphone_chat_room_cbs_set_chat_message_sent (LinphoneChatRoomCbs *cbs, LinphoneChatRoomCbsChatMessageSentCb cb)
 Set the chat message sent callback. More...
 
LinphoneChatRoomCbsParticipantAddedCb linphone_chat_room_cbs_get_participant_added (const LinphoneChatRoomCbs *cbs)
 Get the participant added callback. More...
 
void linphone_chat_room_cbs_set_participant_added (LinphoneChatRoomCbs *cbs, LinphoneChatRoomCbsParticipantAddedCb cb)
 Set the participant added callback. More...
 
LinphoneChatRoomCbsParticipantRemovedCb linphone_chat_room_cbs_get_participant_removed (const LinphoneChatRoomCbs *cbs)
 Get the participant removed callback. More...
 
void linphone_chat_room_cbs_set_participant_removed (LinphoneChatRoomCbs *cbs, LinphoneChatRoomCbsParticipantRemovedCb cb)
 Set the participant removed callback. More...
 
LinphoneChatRoomCbsParticipantAdminStatusChangedCb linphone_chat_room_cbs_get_participant_admin_status_changed (const LinphoneChatRoomCbs *cbs)
 Get the participant admin status changed callback. More...
 
void linphone_chat_room_cbs_set_participant_admin_status_changed (LinphoneChatRoomCbs *cbs, LinphoneChatRoomCbsParticipantAdminStatusChangedCb cb)
 Set the participant admin status changed callback. More...
 
LinphoneChatRoomCbsStateChangedCb linphone_chat_room_cbs_get_state_changed (const LinphoneChatRoomCbs *cbs)
 Get the state changed callback. More...
 
void linphone_chat_room_cbs_set_state_changed (LinphoneChatRoomCbs *cbs, LinphoneChatRoomCbsStateChangedCb cb)
 Set the state changed callback. More...
 
LinphoneChatRoomCbsSecurityEventCb linphone_chat_room_cbs_get_security_event (const LinphoneChatRoomCbs *cbs)
 Get the security event callback. More...
 
void linphone_chat_room_cbs_set_security_event (LinphoneChatRoomCbs *cbs, LinphoneChatRoomCbsSecurityEventCb cb)
 Set the security event callback. More...
 
LinphoneChatRoomCbsSubjectChangedCb linphone_chat_room_cbs_get_subject_changed (const LinphoneChatRoomCbs *cbs)
 Get the subject changed callback. More...
 
void linphone_chat_room_cbs_set_subject_changed (LinphoneChatRoomCbs *cbs, LinphoneChatRoomCbsSubjectChangedCb cb)
 Set the subject changed callback. More...
 
LinphoneChatRoomCbsUndecryptableMessageReceivedCb linphone_chat_room_cbs_get_undecryptable_message_received (const LinphoneChatRoomCbs *cbs)
 Get the undecryptable message received callback. More...
 
void linphone_chat_room_cbs_set_undecryptable_message_received (LinphoneChatRoomCbs *cbs, LinphoneChatRoomCbsUndecryptableMessageReceivedCb cb)
 Set the undecryptable message received callback. More...
 
LinphoneChatRoomCbsParticipantDeviceAddedCb linphone_chat_room_cbs_get_participant_device_added (const LinphoneChatRoomCbs *cbs)
 Get the participant device added callback. More...
 
void linphone_chat_room_cbs_set_participant_device_added (LinphoneChatRoomCbs *cbs, LinphoneChatRoomCbsParticipantDeviceAddedCb cb)
 Set the participant device added callback. More...
 
LinphoneChatRoomCbsParticipantDeviceRemovedCb linphone_chat_room_cbs_get_participant_device_removed (const LinphoneChatRoomCbs *cbs)
 Get the participant device removed callback. More...
 
void linphone_chat_room_cbs_set_participant_device_removed (LinphoneChatRoomCbs *cbs, LinphoneChatRoomCbsParticipantDeviceRemovedCb cb)
 Set the participant device removed callback. More...
 
LinphoneChatRoomCbsConferenceJoinedCb linphone_chat_room_cbs_get_conference_joined (const LinphoneChatRoomCbs *cbs)
 Get the conference joined callback. More...
 
void linphone_chat_room_cbs_set_conference_joined (LinphoneChatRoomCbs *cbs, LinphoneChatRoomCbsConferenceJoinedCb cb)
 Set the conference joined callback. More...
 
LinphoneChatRoomCbsConferenceLeftCb linphone_chat_room_cbs_get_conference_left (const LinphoneChatRoomCbs *cbs)
 Get the conference left callback. More...
 
void linphone_chat_room_cbs_set_conference_left (LinphoneChatRoomCbs *cbs, LinphoneChatRoomCbsConferenceLeftCb cb)
 Set the conference left callback. More...
 
LinphoneChatRoomCbsEphemeralEventCb linphone_chat_room_cbs_get_ephemeral_event (const LinphoneChatRoomCbs *cbs)
 Get the ephemeral event callback. More...
 
void linphone_chat_room_cbs_set_ephemeral_event (LinphoneChatRoomCbs *cbs, LinphoneChatRoomCbsEphemeralEventCb cb)
 Set the ephemeral event callback. More...
 
LinphoneChatRoomCbsEphemeralMessageTimerStartedCb linphone_chat_room_cbs_get_ephemeral_message_timer_started (const LinphoneChatRoomCbs *cbs)
 Get the current "ephemeral message timer started" callback. More...
 
void linphone_chat_room_cbs_set_ephemeral_message_timer_started (LinphoneChatRoomCbs *cbs, LinphoneChatRoomCbsEphemeralMessageTimerStartedCb cb)
 Set the ephemeral message timer started callback. More...
 
LinphoneChatRoomCbsEphemeralMessageDeletedCb linphone_chat_room_cbs_get_ephemeral_message_deleted (const LinphoneChatRoomCbs *cbs)
 Get the ephemeral message deleted callback. More...
 
void linphone_chat_room_cbs_set_ephemeral_message_deleted (LinphoneChatRoomCbs *cbs, LinphoneChatRoomCbsEphemeralMessageDeletedCb cb)
 Set the ephemeral message deleted callback. More...
 
LinphoneChatRoomCbsConferenceAddressGenerationCb linphone_chat_room_cbs_get_conference_address_generation (const LinphoneChatRoomCbs *cbs)
 Get the conference address generation callback. More...
 
void linphone_chat_room_cbs_set_conference_address_generation (LinphoneChatRoomCbs *cbs, LinphoneChatRoomCbsConferenceAddressGenerationCb cb)
 Set the conference address generation callback. More...
 
LinphoneChatRoomCbsParticipantRegistrationSubscriptionRequestedCb linphone_chat_room_cbs_get_participant_registration_subscription_requested (const LinphoneChatRoomCbs *cbs)
 Get the participant registration subscription callback. More...
 
void linphone_chat_room_cbs_set_participant_registration_subscription_requested (LinphoneChatRoomCbs *cbs, LinphoneChatRoomCbsParticipantRegistrationSubscriptionRequestedCb cb)
 Set the participant registration subscription callback. More...
 
LinphoneChatRoomCbsParticipantRegistrationUnsubscriptionRequestedCb linphone_chat_room_cbs_get_participant_registration_unsubscription_requested (const LinphoneChatRoomCbs *cbs)
 Get the participant registration unsubscription callback. More...
 
void linphone_chat_room_cbs_set_participant_registration_unsubscription_requested (LinphoneChatRoomCbs *cbs, LinphoneChatRoomCbsParticipantRegistrationUnsubscriptionRequestedCb cb)
 Set the participant registration unsubscription callback. More...
 
LinphoneChatRoomCbsShouldChatMessageBeStoredCb linphone_chat_room_cbs_get_chat_message_should_be_stored (LinphoneChatRoomCbs *cbs)
 Get the message should be stored callback. More...
 
void linphone_chat_room_cbs_set_chat_message_should_be_stored (LinphoneChatRoomCbs *cbs, LinphoneChatRoomCbsShouldChatMessageBeStoredCb cb)
 Set the message should be stored callback. More...
 
LinphoneChatRoomCbsChatMessageParticipantImdnStateChangedCb linphone_chat_room_cbs_get_chat_message_participant_imdn_state_changed (LinphoneChatRoomCbs *cbs)
 Get the message's participant state changed callback. More...
 
void linphone_chat_room_cbs_set_chat_message_participant_imdn_state_changed (LinphoneChatRoomCbs *cbs, LinphoneChatRoomCbsChatMessageParticipantImdnStateChangedCb cb)
 Set the message's participant state changed callback callback. More...
 
LinphoneChatRoomlinphone_chat_room_ref (LinphoneChatRoom *chat_room)
 Acquire a reference to the chat room. More...
 
void linphone_chat_room_unref (LinphoneChatRoom *chat_room)
 Release reference to the chat room. More...
 
void * linphone_chat_room_get_user_data (const LinphoneChatRoom *chat_room)
 Retrieve the user pointer associated with the chat room. More...
 
void linphone_chat_room_set_user_data (LinphoneChatRoom *chat_room, void *user_data)
 Assign a user pointer to the chat room. More...
 
LinphoneChatMessagelinphone_chat_room_create_empty_message (LinphoneChatRoom *chat_room)
 Creates an empty message attached to the given chat room. More...
 
LinphoneChatMessagelinphone_chat_room_create_message_from_utf8 (LinphoneChatRoom *chat_room, const char *message)
 Creates a message attached to the given chat room with a plain text content filled with the given message. More...
 
LinphoneChatMessagelinphone_chat_room_create_file_transfer_message (LinphoneChatRoom *chat_room, LinphoneContent *initial_content)
 Creates a message attached to the given chat room with a particular content. More...
 
LinphoneChatMessagelinphone_chat_room_create_forward_message (LinphoneChatRoom *chat_room, LinphoneChatMessage *message)
 Creates a forward message attached to the given chat room with a particular message. More...
 
LinphoneChatMessagelinphone_chat_room_create_reply_message (LinphoneChatRoom *chat_room, LinphoneChatMessage *message)
 Creates a reply message attached to the given chat room with a particular message. More...
 
LinphoneChatMessagelinphone_chat_room_create_voice_recording_message (LinphoneChatRoom *chat_room, LinphoneRecorder *recorder)
 Creates a chat message with a voice recording attached to the given chat room. More...
 
const LinphoneAddresslinphone_chat_room_get_peer_address (LinphoneChatRoom *chat_room)
 Get the peer address associated to this chat room. More...
 
const LinphoneAddresslinphone_chat_room_get_local_address (LinphoneChatRoom *chat_room)
 Get the local address associated to this chat room. More...
 
void linphone_chat_room_receive_chat_message (LinphoneChatRoom *chat_room, LinphoneChatMessage *message)
 Used to receive a chat message when using async mechanism with IM enchat_roomyption engine. More...
 
void linphone_chat_room_mark_as_read (LinphoneChatRoom *chat_room)
 Mark all messages of the conversation as read. More...
 
void linphone_chat_room_enable_ephemeral (LinphoneChatRoom *chat_room, bool_t enable)
 Enable or disable the ephemeral message feature in the chat room. More...
 
bool_t linphone_chat_room_ephemeral_enabled (const LinphoneChatRoom *chat_room)
 Returns whether or not the ephemeral message feature is enabled in the chat room. More...
 
void linphone_chat_room_set_ephemeral_lifetime (LinphoneChatRoom *chat_room, long time)
 Set lifetime (in seconds) for all new ephemeral messages in the chat room. More...
 
long linphone_chat_room_get_ephemeral_lifetime (const LinphoneChatRoom *chat_room)
 Get lifetime (in seconds) for all new ephemeral messages in the chat room. More...
 
void linphone_chat_room_set_ephemeral_mode (LinphoneChatRoom *chat_room, LinphoneChatRoomEphemeralMode mode)
 Set the ephemeral mode of the chat room. More...
 
LinphoneChatRoomEphemeralMode linphone_chat_room_get_ephemeral_mode (const LinphoneChatRoom *chat_room)
 Get the ephemeral mode of the chat room. More...
 
bool_t linphone_chat_room_ephemeral_supported_by_all_participants (const LinphoneChatRoom *chat_room)
 Uses linphone spec to check if all participants support ephemeral messages. More...
 
void linphone_chat_room_delete_message (LinphoneChatRoom *chat_room, LinphoneChatMessage *message)
 Delete a message from the chat room history. More...
 
void linphone_chat_room_delete_history (LinphoneChatRoom *chat_room)
 Delete all messages from the history. More...
 
int linphone_chat_room_get_history_size (LinphoneChatRoom *chat_room)
 Gets the number of messages in a chat room. More...
 
bool_t linphone_chat_room_is_empty (LinphoneChatRoom *chat_room)
 Returns whether or not a LinphoneChatRoom has at least one LinphoneChatMessage or not. More...
 
bctbx_list_t * linphone_chat_room_get_history (LinphoneChatRoom *chat_room, int nb_message)
 Gets nb_message most recent messages from chat_room chat room, sorted from oldest to most recent. More...
 
bctbx_list_t * linphone_chat_room_get_history_range (LinphoneChatRoom *chat_room, int begin, int end)
 Gets the partial list of messages in the given range, sorted from oldest to most recent. More...
 
bctbx_list_t * linphone_chat_room_get_unread_history (LinphoneChatRoom *chat_room)
 Gets all unread messages for this chat room, sorted from oldest to most recent. More...
 
bctbx_list_t * linphone_chat_room_get_history_message_events (LinphoneChatRoom *chat_room, int nb_events)
 Gets nb_events most recent chat message events from chat_room chat room, sorted from oldest to most recent. More...
 
bctbx_list_t * linphone_chat_room_get_history_range_message_events (LinphoneChatRoom *chat_room, int begin, int end)
 Gets the partial list of chat message events in the given range, sorted from oldest to most recent. More...
 
bctbx_list_t * linphone_chat_room_get_history_events (LinphoneChatRoom *chat_room, int nb_events)
 Gets nb_events most recent events from chat_room chat room, sorted from oldest to most recent. More...
 
bctbx_list_t * linphone_chat_room_get_history_range_events (LinphoneChatRoom *chat_room, int begin, int end)
 Gets the partial list of events in the given range, sorted from oldest to most recent. More...
 
int linphone_chat_room_get_history_events_size (LinphoneChatRoom *chat_room)
 Gets the number of events in a chat room. More...
 
LinphoneChatMessagelinphone_chat_room_get_last_message_in_history (LinphoneChatRoom *chat_room)
 Gets the last chat message sent or received in this chat room. More...
 
LinphoneChatMessagelinphone_chat_room_find_message (LinphoneChatRoom *chat_room, const char *message_id)
 Gets the chat message sent or received in this chat room that matches the message_id. More...
 
void linphone_chat_room_compose (LinphoneChatRoom *chat_room)
 Notifies the destination of the chat message being composed that the user is typing a new message. More...
 
bool_t linphone_chat_room_is_remote_composing (const LinphoneChatRoom *chat_room)
 Tells whether the remote is currently composing a message. More...
 
int linphone_chat_room_get_unread_messages_count (LinphoneChatRoom *chat_room)
 Gets the number of unread messages in the chatroom. More...
 
LinphoneCorelinphone_chat_room_get_core (const LinphoneChatRoom *chat_room)
 Returns back pointer to LinphoneCore object. More...
 
uint32_t linphone_chat_room_get_char (LinphoneChatRoom *chat_room)
 When realtime text is enabled linphone_call_params_realtime_text_enabled(), LinphoneCoreIsComposingReceivedCb is call everytime a char is received from peer. More...
 
bool_t linphone_chat_room_lime_available (LinphoneChatRoom *chat_room)
 Returns wether lime is available for given peer or not. More...
 
LinphoneCalllinphone_chat_room_get_call (const LinphoneChatRoom *chat_room)
 Gets the current call associated to this chatroom if any To commit a message, use linphone_chat_room_send_message() More...
 
void linphone_chat_room_add_callbacks (LinphoneChatRoom *chat_room, LinphoneChatRoomCbs *cbs)
 Add a listener in order to be notified of LinphoneChatRoom events. More...
 
void linphone_chat_room_remove_callbacks (LinphoneChatRoom *chat_room, LinphoneChatRoomCbs *cbs)
 Remove a listener from a LinphoneChatRoom. More...
 
LinphoneChatRoomCbslinphone_chat_room_get_current_callbacks (const LinphoneChatRoom *chat_room)
 Gets the current LinphoneChatRoomCbs. More...
 
LinphoneChatRoomState linphone_chat_room_get_state (const LinphoneChatRoom *chat_room)
 Get the state of the chat room. More...
 
bool_t linphone_chat_room_has_been_left (const LinphoneChatRoom *chat_room)
 Return whether or not the chat room has been left. More...
 
bool_t linphone_chat_room_is_read_only (const LinphoneChatRoom *chat_room)
 Return whether or not a message can be sent using this chat room. More...
 
time_t linphone_chat_room_get_creation_time (const LinphoneChatRoom *chat_room)
 Return the creation time for the chat room. More...
 
time_t linphone_chat_room_get_last_update_time (const LinphoneChatRoom *chat_room)
 Return the last updated time for the chat room. More...
 
void linphone_chat_room_add_participant (LinphoneChatRoom *chat_room, const LinphoneAddress *addr)
 Add a participant to a chat room. More...
 
bool_t linphone_chat_room_add_participants (LinphoneChatRoom *chat_room, const bctbx_list_t *addresses)
 Add several participants to a chat room at once. More...
 
bool_t linphone_chat_room_can_handle_participants (const LinphoneChatRoom *chat_room)
 Tells whether a chat room is able to handle participants. More...
 
LinphoneParticipantlinphone_chat_room_find_participant (const LinphoneChatRoom *chat_room, const LinphoneAddress *address)
 Find a participant of a chat room from its address. More...
 
LinphoneChatRoomCapabilitiesMask linphone_chat_room_get_capabilities (const LinphoneChatRoom *chat_room)
 Get the capabilities of a chat room. More...
 
bool_t linphone_chat_room_has_capability (const LinphoneChatRoom *chat_room, int mask)
 Check if a chat room has given capabilities. More...
 
const LinphoneAddresslinphone_chat_room_get_conference_address (const LinphoneChatRoom *chat_room)
 Get the conference address of the chat room. More...
 
LinphoneParticipantlinphone_chat_room_get_me (const LinphoneChatRoom *chat_room)
 Get the participant representing myself in the chat room. More...
 
int linphone_chat_room_get_nb_participants (const LinphoneChatRoom *chat_room)
 Get the number of participants in the chat room (that is without ourselves). More...
 
bctbx_list_t * linphone_chat_room_get_participants (const LinphoneChatRoom *chat_room)
 Get the list of participants of a chat room. More...
 
const char * linphone_chat_room_get_subject (const LinphoneChatRoom *chat_room)
 Get the subject of a chat room. More...
 
LinphoneChatRoomSecurityLevel linphone_chat_room_get_security_level (LinphoneChatRoom *chat_room)
 Get the security level of a chat room. More...
 
void linphone_chat_room_leave (LinphoneChatRoom *chat_room)
 Leave a chat room. More...
 
void linphone_chat_room_remove_participant (LinphoneChatRoom *chat_room, LinphoneParticipant *participant)
 Remove a participant of a chat room. More...
 
void linphone_chat_room_remove_participants (LinphoneChatRoom *chat_room, const bctbx_list_t *participants)
 Remove several participants of a chat room at once. More...
 
void linphone_chat_room_set_participant_admin_status (LinphoneChatRoom *chat_room, LinphoneParticipant *participant, bool_t is_admin)
 Change the admin status of a participant of a chat room (you need to be an admin yourself to do this). More...
 
void linphone_chat_room_set_subject (LinphoneChatRoom *chat_room, const char *subject)
 Set the subject of a chat room. More...
 
const bctbx_list_t * linphone_chat_room_get_composing_addresses (LinphoneChatRoom *chat_room)
 Gets the list of participants that are currently composing. More...
 
void linphone_chat_room_set_conference_address (LinphoneChatRoom *chat_room, const LinphoneAddress *conference_address)
 Set the conference address of a group chat room. More...
 
void linphone_chat_room_set_participant_devices (LinphoneChatRoom *chat_room, const LinphoneAddress *participant_address, const bctbx_list_t *device_identities)
 Set the list of participant devices in the form of SIP URIs with GRUUs for a given participant. More...
 
void linphone_chat_room_notify_participant_device_registration (LinphoneChatRoom *chat_room, const LinphoneAddress *participant_device)
 Notify the chatroom that a participant device has just registered. More...
 
const LinphoneChatRoomParamslinphone_chat_room_get_current_params (const LinphoneChatRoom *chat_room)
 Returns current parameters associated with the chat room. More...
 
MS2_DEPRECATED LinphoneChatMessagelinphone_chat_room_create_message_2 (LinphoneChatRoom *chat_room, const char *message, const char *external_body_url, LinphoneChatMessageState state, time_t time, bool_t is_read, bool_t is_incoming)
 Creates a message attached to the given chat room. More...
 
MS2_DEPRECATED LinphoneCorelinphone_chat_room_get_lc (const LinphoneChatRoom *chat_room)
 Returns back pointer to LinphoneCore object. More...
 
MS2_DEPRECATED void linphone_chat_room_send_message (LinphoneChatRoom *chat_room, const char *msg)
 Send a message to peer member of this chat room. More...
 
MS2_DEPRECATED void linphone_chat_room_send_chat_message (LinphoneChatRoom *chat_room, LinphoneChatMessage *message)
 Send a message to peer member of this chat room. More...
 
MS2_DEPRECATED LinphoneChatMessagelinphone_chat_room_create_message (LinphoneChatRoom *chat_room, const char *message)
 Creates a message attached to the given chat room with a plain text content filled with the given message. More...
 
const char * linphone_chat_room_state_to_string (const LinphoneChatRoomState state)
 Converts a LinphoneChatRoomState enum to a string. More...
 
LinphoneChatRoomParamslinphone_chat_room_params_new (void)
 Returns new chat room parameters. More...
 
LinphoneChatRoomParamslinphone_chat_room_params_new_and_init (LinphoneCore *core)
 
LinphoneChatRoomParamslinphone_chat_room_params_clone (const LinphoneChatRoomParams *params)
 
LinphoneChatRoomParamslinphone_chat_room_params_ref (LinphoneChatRoomParams *params)
 Acquire a reference to the chat room parameters. More...
 
void linphone_chat_room_params_unref (LinphoneChatRoomParams *params)
 Release reference to the chat room params. More...
 
bool_t linphone_chat_room_params_is_valid (const LinphoneChatRoomParams *params)
 Returns whether the given parameters are valid or not. More...
 
LinphoneChatRoomBackend linphone_chat_room_params_get_backend (const LinphoneChatRoomParams *params)
 Get the backend implementation of the chat room associated with the given parameters. More...
 
LinphoneChatRoomEncryptionBackend linphone_chat_room_params_get_encryption_backend (const LinphoneChatRoomParams *params)
 Get the encryption implementation of the chat room associated with the given parameters. More...
 
bool_t linphone_chat_room_params_group_enabled (const LinphoneChatRoomParams *params)
 Get the group chat status of the chat room associated with the given parameters. More...
 
LinphoneChatRoomEphemeralMode linphone_chat_room_params_get_ephemeral_mode (const LinphoneChatRoomParams *params)
 Get the ephemeral message mode of the chat room associated with the given parameters. More...
 
void linphone_chat_room_params_set_ephemeral_lifetime (LinphoneChatRoomParams *params, long time)
 Set lifetime (in seconds) for all new ephemral messages in the chat room. More...
 
long linphone_chat_room_params_get_ephemeral_lifetime (const LinphoneChatRoomParams *params)
 Get lifetime (in seconds) for all new ephemeral messages in the chat room. More...
 
bool_t linphone_chat_room_params_encryption_enabled (const LinphoneChatRoomParams *params)
 Get the encryption status of the chat room associated with the given parameters. More...
 
bool_t linphone_chat_room_params_rtt_enabled (const LinphoneChatRoomParams *params)
 Get the real time text status of the chat room associated with the given parameters. More...
 
void linphone_chat_room_params_set_backend (LinphoneChatRoomParams *params, LinphoneChatRoomBackend backend)
 Set the backend implementation of these chat room parameters. More...
 
void linphone_chat_room_params_set_encryption_backend (LinphoneChatRoomParams *params, LinphoneChatRoomEncryptionBackend backend)
 Set the encryption backend implementation of these chat room parameters. More...
 
void linphone_chat_room_params_enable_group (LinphoneChatRoomParams *params, bool_t group)
 Enables or disables group chat for the chat room associated with the given parameters. More...
 
void linphone_chat_room_params_set_ephemeral_mode (LinphoneChatRoomParams *params, LinphoneChatRoomEphemeralMode mode)
 Enables or disables forcing of ephemeral messages for the chat room associated with the given parameters. More...
 
void linphone_chat_room_params_enable_encryption (LinphoneChatRoomParams *params, bool_t encrypted)
 Enables or disables encryption for the chat room associated with the given parameters. More...
 
void linphone_chat_room_params_enable_rtt (LinphoneChatRoomParams *params, bool_t rtt)
 Enables or disables real time text for the chat room associated with the given parameters. More...
 
const char * linphone_chat_room_params_get_subject (const LinphoneChatRoomParams *params)
 Get the subject of the chat room. More...
 
void linphone_chat_room_params_set_subject (LinphoneChatRoomParams *params, const char *subject)
 Set the subject of the chat room. More...
 

Detailed Description

Chat room and Messaging.

Exchanging text messages
Messages are sent using LinphoneChatRoom object. First step is to create a chat room from a peer sip uri.

LinphoneChatRoom* chat_room = linphone_core_get_chat_room(lc,"sip:joe@sip.linphone.org");


Once created, messages are sent using function linphone_chat_room_send_message().

linphone_chat_room_send_message(chat_room,"Hello world"); /*sending message*/


Incoming message are received from call back LinphoneCoreVTable.text_received

void text_received(LinphoneCore *lc, LinphoneChatRoom *room, const LinphoneAddress *from, const char *message) {
printf(" Message [%s] received from [%s] \n",message,linphone_address_as_string (from));
}


A complete tutorial can be found at : Chat room tutorial

Typedef Documentation

◆ LinphoneChatMessage

typedef struct _LinphoneChatMessage LinphoneChatMessage

An chat message is the object that is sent or received through a LinphoneChatRoom.

To create a LinphoneChatMessage, use linphone_chat_room_create_empty_message(), then either add text using linphone_chat_message_add_utf8_text_content() or a LinphoneContent with file informations using linphone_chat_message_add_file_content(). A valid LinphoneContent for file transfer must contain a type and subtype, the name of the file and it's size. Finally call linphone_chat_message_send() to send it.

To send files through a LinphoneChatMessage, you need to have configured a file transfer server URL with linphone_core_set_file_transfer_server(). On the receiving side, either use linphone_chat_message_download_content() to download received files or enable auto-download in the LinphoneCore using linphone_core_set_max_size_for_auto_download_incoming_files(), -1 disabling the feature and 0 always downloading files no matter it's size.

Keep in mind a LinphoneChatMessage created by a LinphoneChatRoomBackendBasic LinphoneChatRoom can only contain one LinphoneContent, either text or file.

◆ LinphoneChatMessageCbsEphemeralMessageDeletedCb

typedef void(* LinphoneChatMessageCbsEphemeralMessageDeletedCb) (LinphoneChatMessage *message)

Call back used to notify ephemeral message is deleted.

Parameters
messageLinphoneChatMessage object

◆ LinphoneChatMessageCbsEphemeralMessageTimerStartedCb

typedef void(* LinphoneChatMessageCbsEphemeralMessageTimerStartedCb) (LinphoneChatMessage *message)

Callback used to notify an ephemeral message that its lifespan before disappearing has started to decrease.

This callback is called when the ephemeral message is read by the receiver.

Parameters
messageLinphoneChatMessage object

◆ LinphoneChatMessageCbsFileTransferProgressIndicationCb

typedef void(* LinphoneChatMessageCbsFileTransferProgressIndicationCb) (LinphoneChatMessage *message, LinphoneContent *content, size_t offset, size_t total)

File transfer progress indication callback prototype.

Parameters
messageLinphoneChatMessage message from which the body is received.
contentLinphoneContent incoming content information
offsetThe number of bytes sent/received since the beginning of the transfer.
totalThe total number of bytes to be sent/received.

◆ LinphoneChatMessageCbsFileTransferRecvCb

typedef void(* LinphoneChatMessageCbsFileTransferRecvCb) (LinphoneChatMessage *message, LinphoneContent *content, const LinphoneBuffer *buffer)

File transfer receive callback prototype.

This function is called by the core upon an incoming File transfer is started. This function may be call several time for the same file in case of large file.

Parameters
messageLinphoneChatMessage message from which the body is received.
contentLinphoneContent incoming content information
bufferLinphoneBuffer holding the received data. Empty buffer means end of file.

◆ LinphoneChatMessageCbsFileTransferSendCb

typedef LinphoneBuffer*(* LinphoneChatMessageCbsFileTransferSendCb) (LinphoneChatMessage *message, LinphoneContent *content, size_t offset, size_t size)

File transfer send callback prototype.

This function is called by the core when an outgoing file transfer is started. This function is called until size is set to 0.

Parameters
messageLinphoneChatMessage message from which the body is received.
contentLinphoneContent outgoing content
offsetthe offset in the file from where to get the data to be sent
sizethe number of bytes expected by the framework
Returns
A LinphoneBuffer object holding the data written by the application. An empty buffer means end of file.
Warning
The returned value isn't used, hence the deprecation!
Deprecated:
17/08/2020 Use LinphoneChatMessageCbsFileTransferSendChunkCb instead.

◆ LinphoneChatMessageCbsFileTransferSendChunkCb

typedef void(* LinphoneChatMessageCbsFileTransferSendChunkCb) (LinphoneChatMessage *message, LinphoneContent *content, size_t offset, size_t size, LinphoneBuffer *buffer)

File transfer send callback prototype.

This function is called by the core when an outgoing file transfer is started. This function is called until size is set to 0.

Parameters
messageLinphoneChatMessage message from which the body is received.
contentLinphoneContent outgoing content
offsetthe offset in the file from where to get the data to be sent
sizethe number of bytes expected by the framework
bufferA LinphoneBuffer to be filled. Leave it empty when end of file has been reached.

◆ LinphoneChatMessageCbsMsgStateChangedCb

typedef void(* LinphoneChatMessageCbsMsgStateChangedCb) (LinphoneChatMessage *message, LinphoneChatMessageState state)

Call back used to notify message delivery status.

Parameters
messageLinphoneChatMessage object
stateLinphoneChatMessageState

◆ LinphoneChatMessageCbsParticipantImdnStateChangedCb

typedef void(* LinphoneChatMessageCbsParticipantImdnStateChangedCb) (LinphoneChatMessage *message, const LinphoneParticipantImdnState *state)

Call back used to notify participant IMDN state.

Parameters
messageLinphoneChatMessage object
stateLinphoneParticipantImdnState

◆ LinphoneChatMessageStateChangedCb

typedef void(* LinphoneChatMessageStateChangedCb) (LinphoneChatMessage *message, LinphoneChatMessageState state, void *user_data)

Call back used to notify message delivery status.

Parameters
messageLinphoneChatMessage object
stateLinphoneChatMessageState
user_dataapplication user data
Deprecated:
03/07/2018 Use LinphoneChatMessageCbsMsgStateChangedCb instead.

◆ LinphoneChatRoom

typedef struct _LinphoneChatRoom LinphoneChatRoom

A chat room is the place where LinphoneChatMessage are exchanged.

To create (or find) a LinphoneChatRoom, you first need a LinphoneChatRoomParams object. A chat room is uniquely identified by it's local and remote SIP addresses, meaning you can only have one chat room between two accounts (unless the backend is LinphoneChatRoomBackendFlexisipChat). Then you can call linphone_core_search_chat_room() or linphone_core_create_chat_room_6().

Be careful as a LinphoneChatRoomBackendFlexisipChat backend LinphoneChatRoom will be created asynchronously, so make sure you add a LinphoneChatRoomCbs to the returned object to be notified when it will be in state LinphoneChatRoomStateCreated.

All chat rooms are loaded from database when the LinphoneCore starts, and you can get them using linphone_core_get_chat_rooms(). This method doesn't return empty chat rooms nor ones for which the local address doesn't match an existing LinphoneProxyConfig identity, unless you specify otherwise in the [misc] section of your configuration file by setting hide_empty_chat_rooms=0 and/or hide_chat_rooms_from_removed_proxies=0.

◆ LinphoneChatRoomCbsChatMessageParticipantImdnStateChangedCb

typedef void(* LinphoneChatRoomCbsChatMessageParticipantImdnStateChangedCb) (LinphoneChatRoom *chat_room, LinphoneChatMessage *message, const LinphoneParticipantImdnState *state)

Callback used to notify a participant state has changed in a message of this chat room.

Parameters
chat_roomLinphoneChatRoom object
messageThe LinphoneChatMessage for which a participant has it's state changed
stateThe LinphoneParticipantImdnState

◆ LinphoneChatRoomCbsChatMessageReceivedCb

typedef void(* LinphoneChatRoomCbsChatMessageReceivedCb) (LinphoneChatRoom *chat_room, const LinphoneEventLog *event_log)

Callback used to notify a chat room that a chat message has been received.

Parameters
chat_roomLinphoneChatRoom object
event_logLinphoneEventLog The event to be notified

◆ LinphoneChatRoomCbsChatMessageSendingCb

typedef void(* LinphoneChatRoomCbsChatMessageSendingCb) (LinphoneChatRoom *chat_room, const LinphoneEventLog *event_log)

Callback used to notify a chat room that a chat message is being sent.

Parameters
chat_roomLinphoneChatRoom object
event_logLinphoneEventLog The event to be notified

◆ LinphoneChatRoomCbsChatMessageSentCb

typedef void(* LinphoneChatRoomCbsChatMessageSentCb) (LinphoneChatRoom *chat_room, const LinphoneEventLog *event_log)

Callback used to notify a chat room that a chat message has been sent.

Parameters
chat_roomLinphoneChatRoom object
event_logLinphoneEventLog The event to be notified

◆ LinphoneChatRoomCbsConferenceAddressGenerationCb

typedef void(* LinphoneChatRoomCbsConferenceAddressGenerationCb) (LinphoneChatRoom *chat_room)

Callback used when a group chat room is created server-side to generate the address of the chat room.

The function linphone_chat_room_set_conference_address() needs to be called by this callback.

Parameters
chat_roomLinphoneChatRoom object

◆ LinphoneChatRoomCbsConferenceJoinedCb

typedef void(* LinphoneChatRoomCbsConferenceJoinedCb) (LinphoneChatRoom *chat_room, const LinphoneEventLog *event_log)

Callback used to notify a chat room has been joined.

Parameters
chat_roomLinphoneChatRoom object
event_logLinphoneEventLog The event to be notified

◆ LinphoneChatRoomCbsConferenceLeftCb

typedef void(* LinphoneChatRoomCbsConferenceLeftCb) (LinphoneChatRoom *chat_room, const LinphoneEventLog *event_log)

Callback used to notify a chat room has been left.

Parameters
chat_roomLinphoneChatRoom object
event_logLinphoneEventLog The event to be notified

◆ LinphoneChatRoomCbsEphemeralEventCb

typedef void(* LinphoneChatRoomCbsEphemeralEventCb) (LinphoneChatRoom *chat_room, const LinphoneEventLog *event_log)

Callback used to notify a chat room that an ephemeral related event has been generated.

Parameters
chat_roomLinphoneChatRoom object
event_logLinphoneEventLog The event to be notified

◆ LinphoneChatRoomCbsEphemeralMessageDeletedCb

typedef void(* LinphoneChatRoomCbsEphemeralMessageDeletedCb) (LinphoneChatRoom *chat_room, const LinphoneEventLog *event_log)

Callback used to notify a chat room that an ephemeral message has been deleted.

Parameters
chat_roomLinphoneChatRoom object
event_logLinphoneEventLog The event to be notified

◆ LinphoneChatRoomCbsEphemeralMessageTimerStartedCb

typedef void(* LinphoneChatRoomCbsEphemeralMessageTimerStartedCb) (LinphoneChatRoom *chat_room, const LinphoneEventLog *event_log)

Callback used to notify a chat room that the lifespan of an ephemeral message before disappearing has started to decrease.

This callback is called when the ephemeral message is read by the receiver.

Parameters
chat_roomLinphoneChatRoom object
event_logLinphoneEventLog The event to be notified

◆ LinphoneChatRoomCbsIsComposingReceivedCb

typedef void(* LinphoneChatRoomCbsIsComposingReceivedCb) (LinphoneChatRoom *chat_room, const LinphoneAddress *remote_address, bool_t is_composing)

Is composing notification callback prototype.

Parameters
chat_roomLinphoneChatRoom involved in the conversation
remote_addressThe LinphoneAddress that has sent the is-composing notification
is_composingA boolean value telling whether the remote is composing or not

◆ LinphoneChatRoomCbsMessageReceivedCb

typedef void(* LinphoneChatRoomCbsMessageReceivedCb) (LinphoneChatRoom *chat_room, LinphoneChatMessage *message)

Callback used to notify a chat room that a message has been received.

Parameters
chat_roomLinphoneChatRoom object
messageThe LinphoneChatMessage that has been received

◆ LinphoneChatRoomCbsNewEventCb

typedef void(* LinphoneChatRoomCbsNewEventCb) (LinphoneChatRoom *chat_room, const LinphoneEventLog *event_log)

Callback used to notify a chat room that an event log has been created.

Parameters
chat_roomLinphoneChatRoom object
event_logLinphoneEventLog The event to be notified

◆ LinphoneChatRoomCbsParticipantAddedCb

typedef void(* LinphoneChatRoomCbsParticipantAddedCb) (LinphoneChatRoom *chat_room, const LinphoneEventLog *event_log)

Callback used to notify a chat room that a participant has been added.

Parameters
chat_roomLinphoneChatRoom object
event_logLinphoneEventLog The event to be notified

◆ LinphoneChatRoomCbsParticipantAdminStatusChangedCb

typedef void(* LinphoneChatRoomCbsParticipantAdminStatusChangedCb) (LinphoneChatRoom *chat_room, const LinphoneEventLog *event_log)

Callback used to notify a chat room that the admin status of a participant has been changed.

Parameters
chat_roomLinphoneChatRoom object
event_logLinphoneEventLog The event to be notified

◆ LinphoneChatRoomCbsParticipantDeviceAddedCb

typedef void(* LinphoneChatRoomCbsParticipantDeviceAddedCb) (LinphoneChatRoom *chat_room, const LinphoneEventLog *event_log)

Callback used to notify a chat room that a participant has been added.

Parameters
chat_roomLinphoneChatRoom object
event_logLinphoneEventLog The event to be notified

◆ LinphoneChatRoomCbsParticipantDeviceRemovedCb

typedef void(* LinphoneChatRoomCbsParticipantDeviceRemovedCb) (LinphoneChatRoom *chat_room, const LinphoneEventLog *event_log)

Callback used to notify a chat room that a participant has been removed.

Parameters
chat_roomLinphoneChatRoom object
event_logLinphoneEventLog The event to be notified

◆ LinphoneChatRoomCbsParticipantRegistrationSubscriptionRequestedCb

typedef void(* LinphoneChatRoomCbsParticipantRegistrationSubscriptionRequestedCb) (LinphoneChatRoom *chat_room, const LinphoneAddress *participant_address)

Callback used when a group chat room server is subscribing to registration state of a participant.

Parameters
chat_roomLinphoneChatRoom object
participant_addressLinphoneAddress object

◆ LinphoneChatRoomCbsParticipantRegistrationUnsubscriptionRequestedCb

typedef void(* LinphoneChatRoomCbsParticipantRegistrationUnsubscriptionRequestedCb) (LinphoneChatRoom *chat_room, const LinphoneAddress *participant_address)

Callback used when a group chat room server is unsubscribing to registration state of a participant.

Parameters
chat_roomLinphoneChatRoom object
participant_addressLinphoneAddress object

◆ LinphoneChatRoomCbsParticipantRemovedCb

typedef void(* LinphoneChatRoomCbsParticipantRemovedCb) (LinphoneChatRoom *chat_room, const LinphoneEventLog *event_log)

Callback used to notify a chat room that a participant has been removed.

Parameters
chat_roomLinphoneChatRoom object
event_logLinphoneEventLog The event to be notified

◆ LinphoneChatRoomCbsSecurityEventCb

typedef void(* LinphoneChatRoomCbsSecurityEventCb) (LinphoneChatRoom *chat_room, const LinphoneEventLog *event_log)

Callback used to notify a security event in the chat room.

Parameters
chat_roomLinphoneChatRoom object
event_logLinphoneEventLog The event to be notified

◆ LinphoneChatRoomCbsShouldChatMessageBeStoredCb

typedef void(* LinphoneChatRoomCbsShouldChatMessageBeStoredCb) (LinphoneChatRoom *chat_room, LinphoneChatMessage *message)

Callback used to tell the core whether or not to store the incoming message in db or not using linphone_chat_message_set_to_be_stored().

Parameters
chat_roomLinphoneChatRoom object
messageThe LinphoneChatMessage that is being received

◆ LinphoneChatRoomCbsStateChangedCb

typedef void(* LinphoneChatRoomCbsStateChangedCb) (LinphoneChatRoom *chat_room, LinphoneChatRoomState newState)

Callback used to notify a chat room state has changed.

Parameters
chat_roomLinphoneChatRoom object
newStateThe new LinphoneChatRoomState of the chat room

◆ LinphoneChatRoomCbsSubjectChangedCb

typedef void(* LinphoneChatRoomCbsSubjectChangedCb) (LinphoneChatRoom *chat_room, const LinphoneEventLog *event_log)

Callback used to notify that the subject of a chat room has changed.

Parameters
chat_roomLinphoneChatRoom object
event_logLinphoneEventLog The event to be notified

◆ LinphoneChatRoomCbsUndecryptableMessageReceivedCb

typedef void(* LinphoneChatRoomCbsUndecryptableMessageReceivedCb) (LinphoneChatRoom *chat_room, LinphoneChatMessage *message)

Callback used to notify a chat room that a message has been received but we were unable to decrypt it.

Parameters
chat_roomLinphoneChatRoom involved in this conversation
messageThe LinphoneChatMessage that has been received

◆ LinphoneChatRoomParams

typedef struct _LinphoneChatRoomParams LinphoneChatRoomParams

Object defining parameters for a LinphoneChatRoom.

Can be created with linphone_core_create_default_chat_room_params(). You can use linphone_chat_room_params_is_valid() to check if your configuration is valid or not.

If the LinphoneChatRoom backend is LinphoneChatRoomBackendBasic, then no other parameter is required, but LinphoneChatMessage sent and received won't benefit from all features a LinphoneChatRoomBackendFlexisipChat can offer like conversation with multiple participants and a subject, end-to-end encryption, ephemeral messages, etc... but this type is the only one that can interoperate with other SIP clients or with non-flexisip SIP proxies.

◆ LinphoneImNotifPolicy

typedef struct _LinphoneImNotifPolicy LinphoneImNotifPolicy

Policy to use to send/receive instant messaging composing/delivery/display notifications.

The sending of this information is done as in the RFCs 3994 (is_composing) and 5438 (imdn delivered/displayed).

Enumeration Type Documentation

◆ _LinphoneChatMessageDirection

LinphoneChatMessageDirection is used to indicate if a message is outgoing or incoming.

Enumerator
LinphoneChatMessageDirectionIncoming 

Incoming message.

LinphoneChatMessageDirectionOutgoing 

Outgoing message.

◆ _LinphoneChatMessageState

LinphoneChatMessageState is used to notify if messages have been successfully delivered or not.

Enumerator
LinphoneChatMessageStateIdle 

Initial state.

LinphoneChatMessageStateInProgress 

Delivery in progress.

LinphoneChatMessageStateDelivered 

Message successfully delivered and acknowledged by the server.

LinphoneChatMessageStateNotDelivered 

Message was not delivered.

LinphoneChatMessageStateFileTransferError 

Message was received and acknowledged but cannot get file from server.

LinphoneChatMessageStateFileTransferDone 

File transfer has been completed successfully.

LinphoneChatMessageStateDeliveredToUser 

Message successfully delivered an acknowledged by the remote user.

LinphoneChatMessageStateDisplayed 

Message successfully displayed to the remote user.

◆ _LinphoneChatRoomBackend

LinphoneChatRoomBackend is used to indicate the backend implementation of a chat room.

Enumerator
LinphoneChatRoomBackendBasic 

Basic (client-to-client) chat room.

LinphoneChatRoomBackendFlexisipChat 

Server-based chat room.

◆ _LinphoneChatRoomCapabilities

LinphoneChatRoomCapabilities is used to indicate the capabilities of a chat room.

Enumerator
LinphoneChatRoomCapabilitiesNone 

No capabilities.

LinphoneChatRoomCapabilitiesBasic 

No server.

It's a direct communication

LinphoneChatRoomCapabilitiesRealTimeText 

Supports RTT.

LinphoneChatRoomCapabilitiesConference 

Use server (supports group chat)

LinphoneChatRoomCapabilitiesProxy 

Special proxy chat room flag.

LinphoneChatRoomCapabilitiesMigratable 

Chat room migratable from Basic to Conference.

LinphoneChatRoomCapabilitiesOneToOne 

A communication between two participants (can be Basic or Conference)

LinphoneChatRoomCapabilitiesEncrypted 

Chat room is encrypted.

LinphoneChatRoomCapabilitiesEphemeral 

Chat room can enable ephemeral messages.

◆ _LinphoneChatRoomEncryptionBackend

LinphoneChatRoomEncryptionBackend is used to indicate the encryption engine used by a chat room.

Enumerator
LinphoneChatRoomEncryptionBackendNone 

No encryption.

LinphoneChatRoomEncryptionBackendLime 

Lime x3dh encryption.

◆ _LinphoneChatRoomEphemeralMode

LinphoneChatRoomEphemeralMode is used to the ephemeral message mode used by a chat room.

Enumerator
LinphoneChatRoomEphemeralModeDeviceManaged 

Each device manages its own ephemeral settings.

LinphoneChatRoomEphemeralModeAdminManaged 

Ephemeral settings are chatroom wide and only admins can change them.

◆ _LinphoneChatRoomSecurityLevel

TODO move to encryption engine object when available LinphoneChatRoomSecurityLevel is used to indicate the encryption security level of a chat room.

Enumerator
LinphoneChatRoomSecurityLevelUnsafe 

Security failure.

LinphoneChatRoomSecurityLevelClearText 

No encryption.

LinphoneChatRoomSecurityLevelEncrypted 

Encrypted.

LinphoneChatRoomSecurityLevelSafe 

Encrypted and verified.

◆ _LinphoneChatRoomState

LinphoneChatRoomState is used to indicate the current state of a chat room.

Enumerator
LinphoneChatRoomStateNone 

Initial state.

LinphoneChatRoomStateInstantiated 

Chat room is now instantiated on local.

LinphoneChatRoomStateCreationPending 

One creation request was sent to the server.

LinphoneChatRoomStateCreated 

Chat room was created on the server.

LinphoneChatRoomStateCreationFailed 

Chat room creation failed.

LinphoneChatRoomStateTerminationPending 

Wait for chat room termination.

LinphoneChatRoomStateTerminated 

Chat room exists on server but not in local.

LinphoneChatRoomStateTerminationFailed 

The chat room termination failed.

LinphoneChatRoomStateDeleted 

Chat room was deleted on the server.

Function Documentation

◆ linphone_chat_message_cbs_get_ephemeral_message_deleted()

LinphoneChatMessageCbsEphemeralMessageDeletedCb linphone_chat_message_cbs_get_ephemeral_message_deleted ( const LinphoneChatMessageCbs cbs)

Get the ephemeral message deleted callback.

This callback is used when a message deletion timer runs out (message is deleted).

Parameters
cbsLinphoneChatMessageCbs object.
Returns
The current ephemeral message deleted callback.

◆ linphone_chat_message_cbs_get_ephemeral_message_timer_started()

LinphoneChatMessageCbsEphemeralMessageTimerStartedCb linphone_chat_message_cbs_get_ephemeral_message_timer_started ( const LinphoneChatMessageCbs cbs)

Get the current "ephemeral message timer started" callback.

This callback is called when the message deletion timer starts (the message has been viewed).

Parameters
cbsLinphoneChatMessageCbs object.
Returns
The current ephemeral message timer started callback.

◆ linphone_chat_message_cbs_get_file_transfer_progress_indication()

LinphoneChatMessageCbsFileTransferProgressIndicationCb linphone_chat_message_cbs_get_file_transfer_progress_indication ( const LinphoneChatMessageCbs cbs)

Get the file transfer progress indication callback.

Parameters
cbsLinphoneChatMessageCbs object.
Returns
The current file transfer progress indication callback.

◆ linphone_chat_message_cbs_get_file_transfer_recv()

LinphoneChatMessageCbsFileTransferRecvCb linphone_chat_message_cbs_get_file_transfer_recv ( const LinphoneChatMessageCbs cbs)

Get the file transfer receive callback.

Parameters
cbsLinphoneChatMessageCbs object.
Returns
The current file transfer receive callback.

◆ linphone_chat_message_cbs_get_file_transfer_send()

LinphoneChatMessageCbsFileTransferSendCb linphone_chat_message_cbs_get_file_transfer_send ( const LinphoneChatMessageCbs cbs)

Get the file transfer send callback.

Parameters
cbsLinphoneChatMessageCbs object.
Returns
The current file transfer send callback.
Deprecated:
17/08/2020 Use linphone_chat_message_cbs_get_file_transfer_send_chunk() instead.

◆ linphone_chat_message_cbs_get_file_transfer_send_chunk()

LinphoneChatMessageCbsFileTransferSendChunkCb linphone_chat_message_cbs_get_file_transfer_send_chunk ( const LinphoneChatMessageCbs cbs)

Get the file transfer send callback.

Parameters
cbsLinphoneChatMessageCbs object.
Returns
The current file transfer send callback.

◆ linphone_chat_message_cbs_get_msg_state_changed()

LinphoneChatMessageCbsMsgStateChangedCb linphone_chat_message_cbs_get_msg_state_changed ( const LinphoneChatMessageCbs cbs)

Get the message state changed callback.

Parameters
cbsLinphoneChatMessageCbs object.
Returns
The current message state changed callback.

◆ linphone_chat_message_cbs_get_participant_imdn_state_changed()

LinphoneChatMessageCbsParticipantImdnStateChangedCb linphone_chat_message_cbs_get_participant_imdn_state_changed ( const LinphoneChatMessageCbs cbs)

Get the participant IMDN state changed callback.

Parameters
cbsLinphoneChatMessageCbs object.
Returns
The current participant IMDN state changed callback.

◆ linphone_chat_message_cbs_get_user_data()

void* linphone_chat_message_cbs_get_user_data ( const LinphoneChatMessageCbs cbs)

Retrieve the user pointer associated with the chat message callbacks object.

Parameters
cbsThe LinphoneChatMessageCbs object
Returns
The user pointer associated with the chat message callbacks object.

◆ linphone_chat_message_cbs_ref()

LinphoneChatMessageCbs* linphone_chat_message_cbs_ref ( LinphoneChatMessageCbs cbs)

Acquire a reference to the chat message callbacks object.

Parameters
cbsThe LinphoneChatMessageCbs object
Returns
The same chat message callbacks object

◆ linphone_chat_message_cbs_set_ephemeral_message_deleted()

void linphone_chat_message_cbs_set_ephemeral_message_deleted ( LinphoneChatMessageCbs cbs,
LinphoneChatMessageCbsEphemeralMessageDeletedCb  cb 
)

Set the ephemeral message deleted callback.

This callback is used when new message deletion timer runs out (message is deleted).

Parameters
cbsLinphoneChatMessageCbs object.
cbThe ephemeral message deleted callback to be used.

◆ linphone_chat_message_cbs_set_ephemeral_message_timer_started()

void linphone_chat_message_cbs_set_ephemeral_message_timer_started ( LinphoneChatMessageCbs cbs,
LinphoneChatMessageCbsEphemeralMessageTimerStartedCb  cb 
)

Set the ephemeral message timer started callback.

This callback will be used when new message deletion timer starts (the message has been viewed).

Parameters
cbsLinphoneChatMessageCbs object.
cbThe ephemeral message timer started callback to be used.

◆ linphone_chat_message_cbs_set_file_transfer_progress_indication()

void linphone_chat_message_cbs_set_file_transfer_progress_indication ( LinphoneChatMessageCbs cbs,
LinphoneChatMessageCbsFileTransferProgressIndicationCb  cb 
)

Set the file transfer progress indication callback.

Parameters
cbsLinphoneChatMessageCbs object.
cbThe file transfer progress indication callback to be used.

◆ linphone_chat_message_cbs_set_file_transfer_recv()

void linphone_chat_message_cbs_set_file_transfer_recv ( LinphoneChatMessageCbs cbs,
LinphoneChatMessageCbsFileTransferRecvCb  cb 
)

Set the file transfer receive callback.

Parameters
cbsLinphoneChatMessageCbs object.
cbThe file transfer receive callback to be used.

◆ linphone_chat_message_cbs_set_file_transfer_send()

void linphone_chat_message_cbs_set_file_transfer_send ( LinphoneChatMessageCbs cbs,
LinphoneChatMessageCbsFileTransferSendCb  cb 
)

Set the file transfer send callback.

Parameters
cbsLinphoneChatMessageCbs object.
cbThe file transfer send callback to be used.
Deprecated:
17/08/2020 Use linphone_chat_message_cbs_set_file_transfer_send_chunk() instead.

◆ linphone_chat_message_cbs_set_file_transfer_send_chunk()

void linphone_chat_message_cbs_set_file_transfer_send_chunk ( LinphoneChatMessageCbs cbs,
LinphoneChatMessageCbsFileTransferSendChunkCb  cb 
)

Set the file transfer send callback.

Parameters
cbsLinphoneChatMessageCbs object.
cbThe file transfer send callback to be used.

◆ linphone_chat_message_cbs_set_msg_state_changed()

void linphone_chat_message_cbs_set_msg_state_changed ( LinphoneChatMessageCbs cbs,
LinphoneChatMessageCbsMsgStateChangedCb  cb 
)

Set the message state changed callback.

Parameters
cbsLinphoneChatMessageCbs object.
cbThe message state changed callback to be used.

◆ linphone_chat_message_cbs_set_participant_imdn_state_changed()

void linphone_chat_message_cbs_set_participant_imdn_state_changed ( LinphoneChatMessageCbs cbs,
LinphoneChatMessageCbsParticipantImdnStateChangedCb  cb 
)

Set the participant IMDN state changed callback.

Parameters
cbsLinphoneChatMessageCbs object.
cbThe participant IMDN state changed callback to be used.

◆ linphone_chat_message_cbs_set_user_data()

void linphone_chat_message_cbs_set_user_data ( LinphoneChatMessageCbs cbs,
void *  user_data 
)

Assign a user pointer to the chat message callbacks object.

Parameters
cbsThe LinphoneChatMessageCbs object
user_dataThe user pointer to associate with the chat message callbacks object.

◆ linphone_chat_message_cbs_unref()

void linphone_chat_message_cbs_unref ( LinphoneChatMessageCbs cbs)

Release reference to the chat message callbacks object.

Parameters
cbsThe LinphoneChatMessageCbs object

◆ linphone_chat_room_add_callbacks()

void linphone_chat_room_add_callbacks ( LinphoneChatRoom chat_room,
LinphoneChatRoomCbs cbs 
)

Add a listener in order to be notified of LinphoneChatRoom events.

Once an event is received, registred LinphoneChatRoomCbs are invoked sequencially.

Parameters
chat_roomLinphoneChatRoom object to monitor.
cbsA LinphoneChatRoomCbs object holding the callbacks you need. A reference is taken by the LinphoneChatRoom until you invoke linphone_call_remove_callbacks().

◆ linphone_chat_room_add_participant()

void linphone_chat_room_add_participant ( LinphoneChatRoom chat_room,
const LinphoneAddress addr 
)

Add a participant to a chat room.

This may fail if this type of chat room does not handle participants. Use linphone_chat_room_can_handle_participants() to know if this chat room handles participants.

Parameters
chat_roomA LinphoneChatRoom object
addrThe address of the participant to add to the chat room

◆ linphone_chat_room_add_participants()

bool_t linphone_chat_room_add_participants ( LinphoneChatRoom chat_room,
const bctbx_list_t *  addresses 
)

Add several participants to a chat room at once.

This may fail if this type of chat room does not handle participants. Use linphone_chat_room_can_handle_participants() to know if this chat room handles participants.

Parameters
chat_roomA LinphoneChatRoom object
addressesThe participants to add.
Returns
TRUE if everything is OK, FALSE otherwise

◆ linphone_chat_room_can_handle_participants()

bool_t linphone_chat_room_can_handle_participants ( const LinphoneChatRoom chat_room)

Tells whether a chat room is able to handle participants.

Parameters
chat_roomA LinphoneChatRoom object
Returns
TRUE if the chat room can handle participants, FALSE otherwise

◆ linphone_chat_room_cbs_get_chat_message_participant_imdn_state_changed()

LinphoneChatRoomCbsChatMessageParticipantImdnStateChangedCb linphone_chat_room_cbs_get_chat_message_participant_imdn_state_changed ( LinphoneChatRoomCbs cbs)

Get the message's participant state changed callback.

Parameters
cbsLinphoneChatRoomCbs object
Returns
The message's participant state changed callback callback

◆ linphone_chat_room_cbs_get_chat_message_received()

LinphoneChatRoomCbsChatMessageReceivedCb linphone_chat_room_cbs_get_chat_message_received ( const LinphoneChatRoomCbs cbs)

Get the chat message received callback.

Parameters
cbsLinphoneChatRoomCbs object.
Returns
The current chat message received callback.

◆ linphone_chat_room_cbs_get_chat_message_sending()

LinphoneChatRoomCbsChatMessageSendingCb linphone_chat_room_cbs_get_chat_message_sending ( const LinphoneChatRoomCbs cbs)

Get the chat message sending callback.

Parameters
cbsLinphoneChatRoomCbs object.
Returns
The current chat message being sent callback.

◆ linphone_chat_room_cbs_get_chat_message_sent()

LinphoneChatRoomCbsChatMessageSentCb linphone_chat_room_cbs_get_chat_message_sent ( const LinphoneChatRoomCbs cbs)

Get the chat message sent callback.

Parameters
cbsLinphoneChatRoomCbs object.
Returns
The current chat message sent callback.

◆ linphone_chat_room_cbs_get_chat_message_should_be_stored()

LinphoneChatRoomCbsShouldChatMessageBeStoredCb linphone_chat_room_cbs_get_chat_message_should_be_stored ( LinphoneChatRoomCbs cbs)

Get the message should be stored callback.

Parameters
cbsLinphoneChatRoomCbs object
Returns
The message should be stored callback

◆ linphone_chat_room_cbs_get_conference_address_generation()

LinphoneChatRoomCbsConferenceAddressGenerationCb linphone_chat_room_cbs_get_conference_address_generation ( const LinphoneChatRoomCbs cbs)

Get the conference address generation callback.

Parameters
cbsLinphoneChatRoomCbs object
Returns
The current conference address generation callback

◆ linphone_chat_room_cbs_get_conference_joined()

LinphoneChatRoomCbsConferenceJoinedCb linphone_chat_room_cbs_get_conference_joined ( const LinphoneChatRoomCbs cbs)

Get the conference joined callback.

Parameters
cbsLinphoneChatRoomCbs object.
Returns
The current conference joined callback.

◆ linphone_chat_room_cbs_get_conference_left()

LinphoneChatRoomCbsConferenceLeftCb linphone_chat_room_cbs_get_conference_left ( const LinphoneChatRoomCbs cbs)

Get the conference left callback.

Parameters
cbsLinphoneChatRoomCbs object.
Returns
The current conference left callback.

◆ linphone_chat_room_cbs_get_ephemeral_event()

LinphoneChatRoomCbsEphemeralEventCb linphone_chat_room_cbs_get_ephemeral_event ( const LinphoneChatRoomCbs cbs)

Get the ephemeral event callback.

Parameters
cbsLinphoneChatRoomCbs object.
Returns
The ephemeral event callback to be used.

◆ linphone_chat_room_cbs_get_ephemeral_message_deleted()

LinphoneChatRoomCbsEphemeralMessageDeletedCb linphone_chat_room_cbs_get_ephemeral_message_deleted ( const LinphoneChatRoomCbs cbs)

Get the ephemeral message deleted callback.

This callback is used when a message deletion timer runs out (message is deleted).

Parameters
cbsLinphoneChatRoomCbs object.
Returns
The current ephemeral message deleted callback.

◆ linphone_chat_room_cbs_get_ephemeral_message_timer_started()

LinphoneChatRoomCbsEphemeralMessageTimerStartedCb linphone_chat_room_cbs_get_ephemeral_message_timer_started ( const LinphoneChatRoomCbs cbs)

Get the current "ephemeral message timer started" callback.

This callback is called when a message deletion timer starts (the message has been viewed).

Parameters
cbsLinphoneChatRoomCbs object.
Returns
The current ephemeral message "timer started" callback.

◆ linphone_chat_room_cbs_get_is_composing_received()

LinphoneChatRoomCbsIsComposingReceivedCb linphone_chat_room_cbs_get_is_composing_received ( const LinphoneChatRoomCbs cbs)

Get the is-composing received callback.

Parameters
cbsLinphoneChatRoomCbs object.
Returns
The current is-composing received callback.

◆ linphone_chat_room_cbs_get_message_received()

LinphoneChatRoomCbsMessageReceivedCb linphone_chat_room_cbs_get_message_received ( const LinphoneChatRoomCbs cbs)

Get the message received callback.

Parameters
cbsLinphoneChatRoomCbs object.
Returns
The current message received callback.

◆ linphone_chat_room_cbs_get_new_event()

LinphoneChatRoomCbsNewEventCb linphone_chat_room_cbs_get_new_event ( const LinphoneChatRoomCbs cbs)

Get the new event log callback.

This callback will be called before every other LinphoneEventLog related callback.

Parameters
cbsLinphoneChatRoomCbs object.
Returns
The current event log created callback.

◆ linphone_chat_room_cbs_get_participant_added()

LinphoneChatRoomCbsParticipantAddedCb linphone_chat_room_cbs_get_participant_added ( const LinphoneChatRoomCbs cbs)

Get the participant added callback.

Parameters
cbsLinphoneChatRoomCbs object.
Returns
The current participant added callback.

◆ linphone_chat_room_cbs_get_participant_admin_status_changed()

LinphoneChatRoomCbsParticipantAdminStatusChangedCb linphone_chat_room_cbs_get_participant_admin_status_changed ( const LinphoneChatRoomCbs cbs)

Get the participant admin status changed callback.

Parameters
cbsLinphoneChatRoomCbs object.
Returns
The current participant admin status changed callback.

◆ linphone_chat_room_cbs_get_participant_device_added()

LinphoneChatRoomCbsParticipantDeviceAddedCb linphone_chat_room_cbs_get_participant_device_added ( const LinphoneChatRoomCbs cbs)

Get the participant device added callback.

Parameters
cbsLinphoneChatRoomCbs object.
Returns
The current participant device added callback.

◆ linphone_chat_room_cbs_get_participant_device_removed()

LinphoneChatRoomCbsParticipantDeviceRemovedCb linphone_chat_room_cbs_get_participant_device_removed ( const LinphoneChatRoomCbs cbs)

Get the participant device removed callback.

Parameters
cbsLinphoneChatRoomCbs object.
Returns
The current participant device removed callback.

◆ linphone_chat_room_cbs_get_participant_registration_subscription_requested()

LinphoneChatRoomCbsParticipantRegistrationSubscriptionRequestedCb linphone_chat_room_cbs_get_participant_registration_subscription_requested ( const LinphoneChatRoomCbs cbs)

Get the participant registration subscription callback.

Parameters
cbsLinphoneChatRoomCbs object
Returns
The participant registration subscription callback

◆ linphone_chat_room_cbs_get_participant_registration_unsubscription_requested()

LinphoneChatRoomCbsParticipantRegistrationUnsubscriptionRequestedCb linphone_chat_room_cbs_get_participant_registration_unsubscription_requested ( const LinphoneChatRoomCbs cbs)

Get the participant registration unsubscription callback.

Parameters
cbsLinphoneChatRoomCbs object
Returns
The participant registration unsubscription callback

◆ linphone_chat_room_cbs_get_participant_removed()

LinphoneChatRoomCbsParticipantRemovedCb linphone_chat_room_cbs_get_participant_removed ( const LinphoneChatRoomCbs cbs)

Get the participant removed callback.

Parameters
cbsLinphoneChatRoomCbs object.
Returns
The current participant removed callback.

◆ linphone_chat_room_cbs_get_security_event()

LinphoneChatRoomCbsSecurityEventCb linphone_chat_room_cbs_get_security_event ( const LinphoneChatRoomCbs cbs)

Get the security event callback.

Parameters
cbsLinphoneChatRoomCbs object.
Returns
The security event callback to be used.

◆ linphone_chat_room_cbs_get_state_changed()

LinphoneChatRoomCbsStateChangedCb linphone_chat_room_cbs_get_state_changed ( const LinphoneChatRoomCbs cbs)

Get the state changed callback.

Parameters
cbsLinphoneChatRoomCbs object.
Returns
The current state changed callback.

◆ linphone_chat_room_cbs_get_subject_changed()

LinphoneChatRoomCbsSubjectChangedCb linphone_chat_room_cbs_get_subject_changed ( const LinphoneChatRoomCbs cbs)

Get the subject changed callback.

Parameters
cbsLinphoneChatRoomCbs object.
Returns
The current subject changed callback.

◆ linphone_chat_room_cbs_get_undecryptable_message_received()

LinphoneChatRoomCbsUndecryptableMessageReceivedCb linphone_chat_room_cbs_get_undecryptable_message_received ( const LinphoneChatRoomCbs cbs)

Get the undecryptable message received callback.

Parameters
cbsLinphoneChatRoomCbs object.
Returns
The current undecryptable message received callback.

◆ linphone_chat_room_cbs_get_user_data()

void* linphone_chat_room_cbs_get_user_data ( const LinphoneChatRoomCbs cbs)

Retrieve the user pointer associated with the chat room callbacks object.

Parameters
cbsThe chat room callbacks object
Returns
The user pointer associated with the chat room callbacks object.

◆ linphone_chat_room_cbs_ref()

LinphoneChatRoomCbs* linphone_chat_room_cbs_ref ( LinphoneChatRoomCbs cbs)

Acquire a reference to the chat room callbacks object.

Parameters
cbsThe LinphoneChatRoomCbs object
Returns
The same LinphoneChatRoomCbs object

◆ linphone_chat_room_cbs_set_chat_message_participant_imdn_state_changed()

void linphone_chat_room_cbs_set_chat_message_participant_imdn_state_changed ( LinphoneChatRoomCbs cbs,
LinphoneChatRoomCbsChatMessageParticipantImdnStateChangedCb  cb 
)

Set the message's participant state changed callback callback.

Parameters
cbsLinphoneChatRoomCbs object
cbThe message's participant state changed callback to be used

◆ linphone_chat_room_cbs_set_chat_message_received()

void linphone_chat_room_cbs_set_chat_message_received ( LinphoneChatRoomCbs cbs,
LinphoneChatRoomCbsChatMessageReceivedCb  cb 
)

Set the chat message received callback.

Parameters
cbsLinphoneChatRoomCbs object.
cbThe chat message received callback to be used.

◆ linphone_chat_room_cbs_set_chat_message_sending()

void linphone_chat_room_cbs_set_chat_message_sending ( LinphoneChatRoomCbs cbs,
LinphoneChatRoomCbsChatMessageSendingCb  cb 
)

Set the chat message sending callback.

Parameters
cbsLinphoneChatRoomCbs object.
cbThe chat message being sent callback to be used.

◆ linphone_chat_room_cbs_set_chat_message_sent()

void linphone_chat_room_cbs_set_chat_message_sent ( LinphoneChatRoomCbs cbs,
LinphoneChatRoomCbsChatMessageSentCb  cb 
)

Set the chat message sent callback.

Parameters
cbsLinphoneChatRoomCbs object.
cbThe chat message sent callback to be used.

◆ linphone_chat_room_cbs_set_chat_message_should_be_stored()

void linphone_chat_room_cbs_set_chat_message_should_be_stored ( LinphoneChatRoomCbs cbs,
LinphoneChatRoomCbsShouldChatMessageBeStoredCb  cb 
)

Set the message should be stored callback.

Parameters
cbsLinphoneChatRoomCbs object
cbThe message should be stored callback to be used

◆ linphone_chat_room_cbs_set_conference_address_generation()

void linphone_chat_room_cbs_set_conference_address_generation ( LinphoneChatRoomCbs cbs,
LinphoneChatRoomCbsConferenceAddressGenerationCb  cb 
)

Set the conference address generation callback.

Parameters
cbsLinphoneChatRoomCbs object
cbThe conference address generation callback to be used

◆ linphone_chat_room_cbs_set_conference_joined()

void linphone_chat_room_cbs_set_conference_joined ( LinphoneChatRoomCbs cbs,
LinphoneChatRoomCbsConferenceJoinedCb  cb 
)

Set the conference joined callback.

Parameters
cbsLinphoneChatRoomCbs object.
cbThe conference joined callback to be used.

◆ linphone_chat_room_cbs_set_conference_left()

void linphone_chat_room_cbs_set_conference_left ( LinphoneChatRoomCbs cbs,
LinphoneChatRoomCbsConferenceLeftCb  cb 
)

Set the conference left callback.

Parameters
cbsLinphoneChatRoomCbs object.
cbThe conference left callback to be used.

◆ linphone_chat_room_cbs_set_ephemeral_event()

void linphone_chat_room_cbs_set_ephemeral_event ( LinphoneChatRoomCbs cbs,
LinphoneChatRoomCbsEphemeralEventCb  cb 
)

Set the ephemeral event callback.

Parameters
cbsLinphoneChatRoomCbs object.
cbThe ephemeral event callback to be used.

◆ linphone_chat_room_cbs_set_ephemeral_message_deleted()

void linphone_chat_room_cbs_set_ephemeral_message_deleted ( LinphoneChatRoomCbs cbs,
LinphoneChatRoomCbsEphemeralMessageDeletedCb  cb 
)

Set the ephemeral message deleted callback.

This callback is used when new message deletion timer runs out (message is deleted).

Parameters
cbsLinphoneChatRoomCbs object.
cbThe ephemeral message deleted callback to be used.

◆ linphone_chat_room_cbs_set_ephemeral_message_timer_started()

void linphone_chat_room_cbs_set_ephemeral_message_timer_started ( LinphoneChatRoomCbs cbs,
LinphoneChatRoomCbsEphemeralMessageTimerStartedCb  cb 
)

Set the ephemeral message timer started callback.

This callback will be used when new message deletion timer starts (the message has been viewed).

Parameters
cbsLinphoneChatRoomCbs object.
cbThe ephemeral message timer started callback to be used.

◆ linphone_chat_room_cbs_set_is_composing_received()

void linphone_chat_room_cbs_set_is_composing_received ( LinphoneChatRoomCbs cbs,
LinphoneChatRoomCbsIsComposingReceivedCb  cb 
)

Set the is-composing received callback.

Parameters
cbsLinphoneChatRoomCbs object.
cbThe is-composing received callback to be used.

◆ linphone_chat_room_cbs_set_message_received()

void linphone_chat_room_cbs_set_message_received ( LinphoneChatRoomCbs cbs,
LinphoneChatRoomCbsMessageReceivedCb  cb 
)

Set the message received callback.

Parameters
cbsLinphoneChatRoomCbs object.
cbThe message received callback to be used.

◆ linphone_chat_room_cbs_set_new_event()

void linphone_chat_room_cbs_set_new_event ( LinphoneChatRoomCbs cbs,
LinphoneChatRoomCbsNewEventCb  cb 
)

Set the new event log callback.

This callback will be called before every other LinphoneEventLog related callback.

Parameters
cbsLinphoneChatRoomCbs object.
cbThe event log created callback to be used.

◆ linphone_chat_room_cbs_set_participant_added()

void linphone_chat_room_cbs_set_participant_added ( LinphoneChatRoomCbs cbs,
LinphoneChatRoomCbsParticipantAddedCb  cb 
)

Set the participant added callback.

Parameters
cbsLinphoneChatRoomCbs object.
cbThe participant added callback to be used.

◆ linphone_chat_room_cbs_set_participant_admin_status_changed()

void linphone_chat_room_cbs_set_participant_admin_status_changed ( LinphoneChatRoomCbs cbs,
LinphoneChatRoomCbsParticipantAdminStatusChangedCb  cb 
)

Set the participant admin status changed callback.

Parameters
cbsLinphoneChatRoomCbs object.
cbThe participant admin status changed callback to be used.

◆ linphone_chat_room_cbs_set_participant_device_added()

void linphone_chat_room_cbs_set_participant_device_added ( LinphoneChatRoomCbs cbs,
LinphoneChatRoomCbsParticipantDeviceAddedCb  cb 
)

Set the participant device added callback.

Parameters
cbsLinphoneChatRoomCbs object.
cbThe participant device added callback to be used.

◆ linphone_chat_room_cbs_set_participant_device_removed()

void linphone_chat_room_cbs_set_participant_device_removed ( LinphoneChatRoomCbs cbs,
LinphoneChatRoomCbsParticipantDeviceRemovedCb  cb 
)

Set the participant device removed callback.

Parameters
cbsLinphoneChatRoomCbs object.
cbThe participant device removed callback to be used.

◆ linphone_chat_room_cbs_set_participant_registration_subscription_requested()

void linphone_chat_room_cbs_set_participant_registration_subscription_requested ( LinphoneChatRoomCbs cbs,
LinphoneChatRoomCbsParticipantRegistrationSubscriptionRequestedCb  cb 
)

Set the participant registration subscription callback.

Parameters
cbsLinphoneChatRoomCbs object
cbThe participant registration subscription callback to be used

◆ linphone_chat_room_cbs_set_participant_registration_unsubscription_requested()

void linphone_chat_room_cbs_set_participant_registration_unsubscription_requested ( LinphoneChatRoomCbs cbs,
LinphoneChatRoomCbsParticipantRegistrationUnsubscriptionRequestedCb  cb 
)

Set the participant registration unsubscription callback.

Parameters
cbsLinphoneChatRoomCbs object
cbThe participant registration unsubscription callback to be used

◆ linphone_chat_room_cbs_set_participant_removed()

void linphone_chat_room_cbs_set_participant_removed ( LinphoneChatRoomCbs cbs,
LinphoneChatRoomCbsParticipantRemovedCb  cb 
)

Set the participant removed callback.

Parameters
cbsLinphoneChatRoomCbs object.
cbThe participant removed callback to be used.

◆ linphone_chat_room_cbs_set_security_event()

void linphone_chat_room_cbs_set_security_event ( LinphoneChatRoomCbs cbs,
LinphoneChatRoomCbsSecurityEventCb  cb 
)

Set the security event callback.

Parameters
cbsLinphoneChatRoomCbs object.
cbThe security event callback to be used.

◆ linphone_chat_room_cbs_set_state_changed()

void linphone_chat_room_cbs_set_state_changed ( LinphoneChatRoomCbs cbs,
LinphoneChatRoomCbsStateChangedCb  cb 
)

Set the state changed callback.

Parameters
cbsLinphoneChatRoomCbs object.
cbThe state changed callback to be used.

◆ linphone_chat_room_cbs_set_subject_changed()

void linphone_chat_room_cbs_set_subject_changed ( LinphoneChatRoomCbs cbs,
LinphoneChatRoomCbsSubjectChangedCb  cb 
)

Set the subject changed callback.

Parameters
cbsLinphoneChatRoomCbs object.
cbThe subject changed callback to be used.

◆ linphone_chat_room_cbs_set_undecryptable_message_received()

void linphone_chat_room_cbs_set_undecryptable_message_received ( LinphoneChatRoomCbs cbs,
LinphoneChatRoomCbsUndecryptableMessageReceivedCb  cb 
)

Set the undecryptable message received callback.

Parameters
cbsLinphoneChatRoomCbs object.
cbThe undecryptable message received callback to be used.

◆ linphone_chat_room_cbs_set_user_data()

void linphone_chat_room_cbs_set_user_data ( LinphoneChatRoomCbs cbs,
void *  user_data 
)

Assign a user pointer to the chat room callbacks object.

Parameters
cbsThe chat room callbacks object
user_dataThe user pointer to associate with the chat room callbacks object.

◆ linphone_chat_room_cbs_unref()

void linphone_chat_room_cbs_unref ( LinphoneChatRoomCbs cbs)

Release reference to the chat room callbacks object.

Parameters
cbsThe chat room callbacks object

◆ linphone_chat_room_compose()

void linphone_chat_room_compose ( LinphoneChatRoom chat_room)

Notifies the destination of the chat message being composed that the user is typing a new message.

Parameters
chat_roomThe LinphoneChatRoom object corresponding to the conversation for which a new message is being typed.

◆ linphone_chat_room_create_empty_message()

LinphoneChatMessage* linphone_chat_room_create_empty_message ( LinphoneChatRoom chat_room)

Creates an empty message attached to the given chat room.

Parameters
chat_roomthe LinphoneChatRoom object.
Returns
a new LinphoneChatMessage

◆ linphone_chat_room_create_file_transfer_message()

LinphoneChatMessage* linphone_chat_room_create_file_transfer_message ( LinphoneChatRoom chat_room,
LinphoneContent initial_content 
)

Creates a message attached to the given chat room with a particular content.

Use linphone_chat_room_send_message() to initiate the transfer

Parameters
chat_roomthe LinphoneChatRoom object.
initial_contentLinphoneContent initial content.
Returns
a new LinphoneChatMessage

◆ linphone_chat_room_create_forward_message()

LinphoneChatMessage* linphone_chat_room_create_forward_message ( LinphoneChatRoom chat_room,
LinphoneChatMessage message 
)

Creates a forward message attached to the given chat room with a particular message.

Parameters
chat_roomthe LinphoneChatRoom object.
messageLinphoneChatMessage message to be forwarded.
Returns
a new LinphoneChatMessage

◆ linphone_chat_room_create_message()

MS2_DEPRECATED LinphoneChatMessage* linphone_chat_room_create_message ( LinphoneChatRoom chat_room,
const char *  message 
)

Creates a message attached to the given chat room with a plain text content filled with the given message.

Parameters
chat_roomthe LinphoneChatRoom object.
messagetext message, NULL if absent.
Returns
a new LinphoneChatMessage
Deprecated:
01/07/2020. Use linphone_chat_room_create_message_from_utf8() instead.

◆ linphone_chat_room_create_message_2()

MS2_DEPRECATED LinphoneChatMessage* linphone_chat_room_create_message_2 ( LinphoneChatRoom chat_room,
const char *  message,
const char *  external_body_url,
LinphoneChatMessageState  state,
time_t  time,
bool_t  is_read,
bool_t  is_incoming 
)

Creates a message attached to the given chat room.

Parameters
chat_roomthe LinphoneChatRoom object.
messagetext message, NULL if absent.
external_body_urlthe URL given in external body or NULL.
statethe LinphoneChatMessage. State of the message.
timethe time_t at which the message has been received/sent.
is_readTRUE if the message should be flagged as read, FALSE otherwise.
is_incomingTRUE if the message has been received, FALSE otherwise.
Returns
a new LinphoneChatMessage
Deprecated:
14/11/2017 Use linphone_chat_room_create_message_from_utf8() instead.

◆ linphone_chat_room_create_message_from_utf8()

LinphoneChatMessage* linphone_chat_room_create_message_from_utf8 ( LinphoneChatRoom chat_room,
const char *  message 
)

Creates a message attached to the given chat room with a plain text content filled with the given message.

Introduced in 01/07/2020

Parameters
chat_roomthe LinphoneChatRoom object.
messagetext message in UTF8, NULL if absent.
Returns
a new LinphoneChatMessage

◆ linphone_chat_room_create_reply_message()

LinphoneChatMessage* linphone_chat_room_create_reply_message ( LinphoneChatRoom chat_room,
LinphoneChatMessage message 
)

Creates a reply message attached to the given chat room with a particular message.

Parameters
chat_roomthe LinphoneChatRoom object.
messageLinphoneChatMessage message to reply to.
Returns
a new LinphoneChatMessage

◆ linphone_chat_room_create_voice_recording_message()

LinphoneChatMessage* linphone_chat_room_create_voice_recording_message ( LinphoneChatRoom chat_room,
LinphoneRecorder recorder 
)

Creates a chat message with a voice recording attached to the given chat room.

Warning
If the recorder isn't in Closed state, it will return an empty message!
Parameters
chat_roomthe LinphoneChatRoom object.
recorderthe LinphoneRecorder object used to record the voice message.
Returns
a new LinphoneChatMessage

◆ linphone_chat_room_delete_history()

void linphone_chat_room_delete_history ( LinphoneChatRoom chat_room)

Delete all messages from the history.

Parameters
chat_roomThe LinphoneChatRoom object corresponding to the conversation.

◆ linphone_chat_room_delete_message()

void linphone_chat_room_delete_message ( LinphoneChatRoom chat_room,
LinphoneChatMessage message 
)

Delete a message from the chat room history.

Parameters
chat_roomThe LinphoneChatRoom object corresponding to the conversation.
messageThe LinphoneChatMessage object to remove.

◆ linphone_chat_room_enable_ephemeral()

void linphone_chat_room_enable_ephemeral ( LinphoneChatRoom chat_room,
bool_t  enable 
)

Enable or disable the ephemeral message feature in the chat room.

Works only for flexisip-based chat room. An ephemeral message will automatically disappear from the sender and recipient's chatrooms after a specified timeout configurable with linphone_chat_room_set_ephemeral_lifetime(). The timer starts when the message has been displayed at the recipent, which means:

  • at recipient side when linphone_chat_room_mark_as_read() is called.
  • at sender side, when the message enters the state LinphoneChatMessageStateDisplayed (when receiving the displayed IMDN).
Parameters
chat_roomLinphoneChatRoom object
enableTRUE if the ephemeral message feature is enabled, FALSE otherwise.

◆ linphone_chat_room_ephemeral_enabled()

bool_t linphone_chat_room_ephemeral_enabled ( const LinphoneChatRoom chat_room)

Returns whether or not the ephemeral message feature is enabled in the chat room.

Parameters
chat_roomThe LinphoneChatRoom object corresponding to the conversation
Returns
TRUE if ephemeral is enabled, FALSE otherwise.

◆ linphone_chat_room_ephemeral_supported_by_all_participants()

bool_t linphone_chat_room_ephemeral_supported_by_all_participants ( const LinphoneChatRoom chat_room)

Uses linphone spec to check if all participants support ephemeral messages.

It doesn't prevent to send ephemeral messages in the room but those who don't support it won't delete messages after lifetime has expired.

See also
linphone_chat_room_ephemeral_enabled()
Parameters
chat_roomLinphoneChatRoom object
Returns
TRUE if all participants in the chat room support ephemeral messages, FALSE otherwise

◆ linphone_chat_room_find_message()

LinphoneChatMessage* linphone_chat_room_find_message ( LinphoneChatRoom chat_room,
const char *  message_id 
)

Gets the chat message sent or received in this chat room that matches the message_id.

Parameters
chat_roomThe LinphoneChatRoom object corresponding to the conversation for which the message should be retrieved
message_idThe id of the message to find
Returns
the LinphoneChatMessage if found or NULL.

◆ linphone_chat_room_find_participant()

LinphoneParticipant* linphone_chat_room_find_participant ( const LinphoneChatRoom chat_room,
const LinphoneAddress address 
)

Find a participant of a chat room from its address.

Parameters
chat_roomA LinphoneChatRoom object
addressThe LinphoneAddress to search in the list of participants of the chat room
Returns
The participant if found, NULL otherwise.

◆ linphone_chat_room_get_call()

LinphoneCall* linphone_chat_room_get_call ( const LinphoneChatRoom chat_room)

Gets the current call associated to this chatroom if any To commit a message, use linphone_chat_room_send_message()

Parameters
chat_roomthe #LinphoneChatRomm object
Returns
LinphoneCall or NULL.

◆ linphone_chat_room_get_capabilities()

LinphoneChatRoomCapabilitiesMask linphone_chat_room_get_capabilities ( const LinphoneChatRoom chat_room)

Get the capabilities of a chat room.

Parameters
chat_roomA LinphoneChatRoom object
Returns
The capabilities of the chat room (as a LinphoneChatRoomCapabilitiesMask)

◆ linphone_chat_room_get_char()

uint32_t linphone_chat_room_get_char ( LinphoneChatRoom chat_room)

When realtime text is enabled linphone_call_params_realtime_text_enabled(), LinphoneCoreIsComposingReceivedCb is call everytime a char is received from peer.

At the end of remote typing a regular LinphoneChatMessage is received with committed data from LinphoneCoreMessageReceivedCb.

Parameters
chat_roomLinphoneChatRoom object
Returns
RFC 4103/T.140 char

◆ linphone_chat_room_get_composing_addresses()

const bctbx_list_t* linphone_chat_room_get_composing_addresses ( LinphoneChatRoom chat_room)

Gets the list of participants that are currently composing.

Parameters
chat_roomA LinphoneChatRoom object
Returns
List of addresses that are in the is_composing state.

◆ linphone_chat_room_get_conference_address()

const LinphoneAddress* linphone_chat_room_get_conference_address ( const LinphoneChatRoom chat_room)

Get the conference address of the chat room.

Parameters
chat_roomA LinphoneChatRoom object
Returns
The conference address of the chat room or NULL if this type of chat room is not conference based.

◆ linphone_chat_room_get_core()

LinphoneCore* linphone_chat_room_get_core ( const LinphoneChatRoom chat_room)

Returns back pointer to LinphoneCore object.

Parameters
chat_roomthe LinphoneChatRoom object.
Returns
the LinphoneCore object this chat room is attached to.

◆ linphone_chat_room_get_creation_time()

time_t linphone_chat_room_get_creation_time ( const LinphoneChatRoom chat_room)

Return the creation time for the chat room.

Parameters
chat_roomLinphoneChatRoom object
Returns
the time at which the chat room was created

◆ linphone_chat_room_get_current_callbacks()

LinphoneChatRoomCbs* linphone_chat_room_get_current_callbacks ( const LinphoneChatRoom chat_room)

Gets the current LinphoneChatRoomCbs.

This is meant only to be called from a callback to be able to get the user_data associated with the LinphoneChatRoomCbs that is calling the callback.

Parameters
chat_roomLinphoneChatRoom object
Returns
The LinphoneChatRoomCbs that has called the last callback

◆ linphone_chat_room_get_current_params()

const LinphoneChatRoomParams* linphone_chat_room_get_current_params ( const LinphoneChatRoom chat_room)

Returns current parameters associated with the chat room.

This is typically the parameters passed at chat room chat_roomeation to linphone_core_chat_roomeate_chat_room() or some default parameters if no LinphoneChatRoomParams was explicitely passed during chat room chat_roomeation.

Parameters
chat_roomthe LinphoneChatRoom object
Returns
the current LinphoneChatRoomParams parameters.

◆ linphone_chat_room_get_ephemeral_lifetime()

long linphone_chat_room_get_ephemeral_lifetime ( const LinphoneChatRoom chat_room)

Get lifetime (in seconds) for all new ephemeral messages in the chat room.

After the message is read, it will be deleted after "time" seconds.

See also
linphone_chat_room_ephemeral_enabled()
Parameters
chat_roomLinphoneChatRoom object
Returns
the ephemeral lifetime (in secoonds)

◆ linphone_chat_room_get_ephemeral_mode()

LinphoneChatRoomEphemeralMode linphone_chat_room_get_ephemeral_mode ( const LinphoneChatRoom chat_room)

Get the ephemeral mode of the chat room.

See also
linphone_chat_room_ephemeral_enabled()
Parameters
chat_roomLinphoneChatRoom object
Returns
the ephemeral mode LinphoneChatRoomEphemeralMode

◆ linphone_chat_room_get_history()

bctbx_list_t* linphone_chat_room_get_history ( LinphoneChatRoom chat_room,
int  nb_message 
)

Gets nb_message most recent messages from chat_room chat room, sorted from oldest to most recent.

Parameters
chat_roomThe LinphoneChatRoom object corresponding to the conversation for which messages should be retrieved
nb_messageNumber of message to retrieve. 0 means everything.
Returns
A list of chat messages.

◆ linphone_chat_room_get_history_events()

bctbx_list_t* linphone_chat_room_get_history_events ( LinphoneChatRoom chat_room,
int  nb_events 
)

Gets nb_events most recent events from chat_room chat room, sorted from oldest to most recent.

Parameters
chat_roomThe LinphoneChatRoom object corresponding to the conversation for which events should be retrieved
nb_eventsNumber of events to retrieve. 0 means everything.
Returns
The list of the most recent events.

◆ linphone_chat_room_get_history_events_size()

int linphone_chat_room_get_history_events_size ( LinphoneChatRoom chat_room)

Gets the number of events in a chat room.

Parameters
chat_roomThe LinphoneChatRoom object corresponding to the conversation for which size has to be computed
Returns
the number of events.

◆ linphone_chat_room_get_history_message_events()

bctbx_list_t* linphone_chat_room_get_history_message_events ( LinphoneChatRoom chat_room,
int  nb_events 
)

Gets nb_events most recent chat message events from chat_room chat room, sorted from oldest to most recent.

Parameters
chat_roomThe LinphoneChatRoom object corresponding to the conversation for which events should be retrieved
nb_eventsNumber of events to retrieve. 0 means everything.
Returns
A list

◆ linphone_chat_room_get_history_range()

bctbx_list_t* linphone_chat_room_get_history_range ( LinphoneChatRoom chat_room,
int  begin,
int  end 
)

Gets the partial list of messages in the given range, sorted from oldest to most recent.

Parameters
chat_roomThe LinphoneChatRoom object corresponding to the conversation for which messages should be retrieved
beginThe first message of the range to be retrieved. History most recent message has index 0.
endThe last message of the range to be retrieved. History oldest message has index of history size - 1 (use linphone_chat_room_get_history_size() to retrieve history size)
Returns
A list of chat messages.

◆ linphone_chat_room_get_history_range_events()

bctbx_list_t* linphone_chat_room_get_history_range_events ( LinphoneChatRoom chat_room,
int  begin,
int  end 
)

Gets the partial list of events in the given range, sorted from oldest to most recent.

Parameters
chat_roomThe LinphoneChatRoom object corresponding to the conversation for which events should be retrieved
beginThe first event of the range to be retrieved. History most recent event has index 0.
endThe last event of the range to be retrieved. History oldest event has index of history size - 1
Returns
The list of the found events.

◆ linphone_chat_room_get_history_range_message_events()

bctbx_list_t* linphone_chat_room_get_history_range_message_events ( LinphoneChatRoom chat_room,
int  begin,
int  end 
)

Gets the partial list of chat message events in the given range, sorted from oldest to most recent.

Parameters
chat_roomThe LinphoneChatRoom object corresponding to the conversation for which events should be retrieved
beginThe first event of the range to be retrieved. History most recent event has index 0.
endThe last event of the range to be retrieved. History oldest event has index of history size - 1
Returns
The list of chat message events.

◆ linphone_chat_room_get_history_size()

int linphone_chat_room_get_history_size ( LinphoneChatRoom chat_room)

Gets the number of messages in a chat room.

Parameters
chat_roomThe LinphoneChatRoom object corresponding to the conversation for which size has to be computed
Returns
the number of messages.

◆ linphone_chat_room_get_last_message_in_history()

LinphoneChatMessage* linphone_chat_room_get_last_message_in_history ( LinphoneChatRoom chat_room)

Gets the last chat message sent or received in this chat room.

Parameters
chat_roomThe LinphoneChatRoom object corresponding to the conversation for which last message should be retrieved
Returns
the latest LinphoneChatMessage or NULL if no message.

◆ linphone_chat_room_get_last_update_time()

time_t linphone_chat_room_get_last_update_time ( const LinphoneChatRoom chat_room)

Return the last updated time for the chat room.

Parameters
chat_roomLinphoneChatRoom object
Returns
the last updated time

◆ linphone_chat_room_get_lc()

MS2_DEPRECATED LinphoneCore* linphone_chat_room_get_lc ( const LinphoneChatRoom chat_room)

Returns back pointer to LinphoneCore object.

Deprecated:
15/09/2017 use linphone_chat_room_get_core()

◆ linphone_chat_room_get_local_address()

const LinphoneAddress* linphone_chat_room_get_local_address ( LinphoneChatRoom chat_room)

Get the local address associated to this chat room.

Parameters
chat_roomLinphoneChatRoom object.
Returns
The local address.

◆ linphone_chat_room_get_me()

LinphoneParticipant* linphone_chat_room_get_me ( const LinphoneChatRoom chat_room)

Get the participant representing myself in the chat room.

Parameters
chat_roomA LinphoneChatRoom object
Returns
The participant representing myself in the conference or NULL if me is not set.

◆ linphone_chat_room_get_nb_participants()

int linphone_chat_room_get_nb_participants ( const LinphoneChatRoom chat_room)

Get the number of participants in the chat room (that is without ourselves).

Parameters
chat_roomA LinphoneChatRoom object
Returns
The number of participants in the chat room

◆ linphone_chat_room_get_participants()

bctbx_list_t* linphone_chat_room_get_participants ( const LinphoneChatRoom chat_room)

Get the list of participants of a chat room.

Parameters
chat_roomA LinphoneChatRoom object
Returns
A of the participants

◆ linphone_chat_room_get_peer_address()

const LinphoneAddress* linphone_chat_room_get_peer_address ( LinphoneChatRoom chat_room)

Get the peer address associated to this chat room.

Parameters
chat_roomLinphoneChatRoom object.
Returns
The peer address.

◆ linphone_chat_room_get_security_level()

LinphoneChatRoomSecurityLevel linphone_chat_room_get_security_level ( LinphoneChatRoom chat_room)

Get the security level of a chat room.

Parameters
chat_roomA LinphoneChatRoom object
Returns
The current LinphoneChatRoomSecurityLevel of the chat room

◆ linphone_chat_room_get_state()

LinphoneChatRoomState linphone_chat_room_get_state ( const LinphoneChatRoom chat_room)

Get the state of the chat room.

Parameters
chat_roomLinphoneChatRoom object
Returns
The current LinphoneChatRoomState of the chat room

◆ linphone_chat_room_get_subject()

const char* linphone_chat_room_get_subject ( const LinphoneChatRoom chat_room)

Get the subject of a chat room.

Parameters
chat_roomA LinphoneChatRoom object
Returns
The subject of the chat room.

◆ linphone_chat_room_get_unread_history()

bctbx_list_t* linphone_chat_room_get_unread_history ( LinphoneChatRoom chat_room)

Gets all unread messages for this chat room, sorted from oldest to most recent.

Parameters
chat_roomThe LinphoneChatRoom object corresponding to the conversation for which messages should be retrieved
Returns
A list of unread chat messages.

◆ linphone_chat_room_get_unread_messages_count()

int linphone_chat_room_get_unread_messages_count ( LinphoneChatRoom chat_room)

Gets the number of unread messages in the chatroom.

Parameters
chat_roomThe LinphoneChatRoom object corresponding to the conversation.
Returns
the number of unread messages.

◆ linphone_chat_room_get_user_data()

void* linphone_chat_room_get_user_data ( const LinphoneChatRoom chat_room)

Retrieve the user pointer associated with the chat room.

Parameters
chat_roomthe LinphoneChatRoom object.
Returns
The user pointer associated with the chat room.

◆ linphone_chat_room_has_been_left()

bool_t linphone_chat_room_has_been_left ( const LinphoneChatRoom chat_room)

Return whether or not the chat room has been left.

Parameters
chat_roomLinphoneChatRoom object
Returns
TRUE if the chat room has been left, FALSE otherwise.
Deprecated:
16/03/2022 use linphone_chat_room_is_read_only() instead.

◆ linphone_chat_room_has_capability()

bool_t linphone_chat_room_has_capability ( const LinphoneChatRoom chat_room,
int  mask 
)

Check if a chat room has given capabilities.

Parameters
chat_roomA LinphoneChatRoom object
maska LinphoneChatRoomCapabilitiesMask mask
Returns
TRUE if the mask matches, FALSE otherwise

◆ linphone_chat_room_is_empty()

bool_t linphone_chat_room_is_empty ( LinphoneChatRoom chat_room)

Returns whether or not a LinphoneChatRoom has at least one LinphoneChatMessage or not.

Parameters
chat_roomThe LinphoneChatRoom object corresponding to the conversation
Returns
TRUE if there are no LinphoneChatMessage, FALSE otherwise.

◆ linphone_chat_room_is_read_only()

bool_t linphone_chat_room_is_read_only ( const LinphoneChatRoom chat_room)

Return whether or not a message can be sent using this chat room.

A chat room may be read only until it's created, or when it's a group you have left.

Parameters
chat_roomLinphoneChatRoom object
Returns
TRUE if a chat message can't be sent in it, FALSE otherwise.

◆ linphone_chat_room_is_remote_composing()

bool_t linphone_chat_room_is_remote_composing ( const LinphoneChatRoom chat_room)

Tells whether the remote is currently composing a message.

Parameters
chat_roomThe LinphoneChatRoom object corresponding to the conversation.
Returns
TRUE if the remote is currently composing a message, FALSE otherwise.

◆ linphone_chat_room_leave()

void linphone_chat_room_leave ( LinphoneChatRoom chat_room)

Leave a chat room.

Parameters
chat_roomA LinphoneChatRoom object

◆ linphone_chat_room_lime_available()

bool_t linphone_chat_room_lime_available ( LinphoneChatRoom chat_room)

Returns wether lime is available for given peer or not.

  • Returns
    TRUE if zrtp secrets have already been shared and ready to use, FALSE otherwise.

◆ linphone_chat_room_mark_as_read()

void linphone_chat_room_mark_as_read ( LinphoneChatRoom chat_room)

Mark all messages of the conversation as read.

Parameters
chat_roomThe LinphoneChatRoom object corresponding to the conversation.

◆ linphone_chat_room_notify_participant_device_registration()

void linphone_chat_room_notify_participant_device_registration ( LinphoneChatRoom chat_room,
const LinphoneAddress participant_device 
)

Notify the chatroom that a participant device has just registered.

This function is meaningful only for server implementation of chatroom, and shall not by used by client applications.

Parameters
chat_roomA LinphoneChatRoom object
participant_devicelist of the participant devices to be used by the group chat room

◆ linphone_chat_room_params_enable_encryption()

void linphone_chat_room_params_enable_encryption ( LinphoneChatRoomParams params,
bool_t  encrypted 
)

Enables or disables encryption for the chat room associated with the given parameters.

Parameters
paramsThe LinphoneChatRoomParams object.
encrypted.TRUE to enable encryption, FALSE to disable.

◆ linphone_chat_room_params_enable_group()

void linphone_chat_room_params_enable_group ( LinphoneChatRoomParams params,
bool_t  group 
)

Enables or disables group chat for the chat room associated with the given parameters.

Parameters
paramsThe LinphoneChatRoomParams object.
group.TRUE to enable group chat, FALSE to disable (resulting in one-to-one chat room)

◆ linphone_chat_room_params_enable_rtt()

void linphone_chat_room_params_enable_rtt ( LinphoneChatRoomParams params,
bool_t  rtt 
)

Enables or disables real time text for the chat room associated with the given parameters.

Parameters
paramsThe LinphoneChatRoomParams object.
rtt.TRUE to enable real time text, FALSE to disable.

◆ linphone_chat_room_params_encryption_enabled()

bool_t linphone_chat_room_params_encryption_enabled ( const LinphoneChatRoomParams params)

Get the encryption status of the chat room associated with the given parameters.

Parameters
paramsThe LinphoneChatRoomParams object.
Returns
TRUE if encryption is enabled, FALSE otherwise

◆ linphone_chat_room_params_get_backend()

LinphoneChatRoomBackend linphone_chat_room_params_get_backend ( const LinphoneChatRoomParams params)

Get the backend implementation of the chat room associated with the given parameters.

Parameters
paramsThe LinphoneChatRoomParams object.
Returns
the LinphoneChatRoomBackend

◆ linphone_chat_room_params_get_encryption_backend()

LinphoneChatRoomEncryptionBackend linphone_chat_room_params_get_encryption_backend ( const LinphoneChatRoomParams params)

Get the encryption implementation of the chat room associated with the given parameters.

Parameters
paramsThe LinphoneChatRoomParams object.
Returns
the LinphoneChatRoomEncryptionBackend

◆ linphone_chat_room_params_get_ephemeral_lifetime()

long linphone_chat_room_params_get_ephemeral_lifetime ( const LinphoneChatRoomParams params)

Get lifetime (in seconds) for all new ephemeral messages in the chat room.

After the message is read, it will be deleted after "time" seconds.

See also
linphone_chat_room_params_ephemeral_enabled()
Parameters
paramsThe LinphoneChatRoomParams object.
Returns
the ephemeral lifetime (in seconds)

◆ linphone_chat_room_params_get_ephemeral_mode()

LinphoneChatRoomEphemeralMode linphone_chat_room_params_get_ephemeral_mode ( const LinphoneChatRoomParams params)

Get the ephemeral message mode of the chat room associated with the given parameters.

Parameters
paramsThe LinphoneChatRoomParams object.
Returns
the ephemeral message mode LinphoneChatRoomEphemeralMode

◆ linphone_chat_room_params_get_subject()

const char* linphone_chat_room_params_get_subject ( const LinphoneChatRoomParams params)

Get the subject of the chat room.

Parameters
paramsThe LinphoneChatRoomParams object.
Returns
The subject.

◆ linphone_chat_room_params_group_enabled()

bool_t linphone_chat_room_params_group_enabled ( const LinphoneChatRoomParams params)

Get the group chat status of the chat room associated with the given parameters.

Parameters
paramsThe LinphoneChatRoomParams object.
Returns
TRUE if group chat is enabled, FALSE if one-to-one

◆ linphone_chat_room_params_is_valid()

bool_t linphone_chat_room_params_is_valid ( const LinphoneChatRoomParams params)

Returns whether the given parameters are valid or not.

Parameters
paramsThe LinphoneChatRoomParams object.
Returns
TRUE if the given parameters are valid, FALSE otherwise

◆ linphone_chat_room_params_new()

LinphoneChatRoomParams* linphone_chat_room_params_new ( void  )

Returns new chat room parameters.

Returns
LinphoneChatRoomParams

◆ linphone_chat_room_params_ref()

LinphoneChatRoomParams* linphone_chat_room_params_ref ( LinphoneChatRoomParams params)

Acquire a reference to the chat room parameters.

Parameters
paramsThe LinphoneChatRoomParams object.
Returns
The same LinphoneChatRoomParams object.

◆ linphone_chat_room_params_rtt_enabled()

bool_t linphone_chat_room_params_rtt_enabled ( const LinphoneChatRoomParams params)

Get the real time text status of the chat room associated with the given parameters.

Parameters
paramsThe LinphoneChatRoomParams object.
Returns
TRUE if real time text is enabled, FALSE otherwise

◆ linphone_chat_room_params_set_backend()

void linphone_chat_room_params_set_backend ( LinphoneChatRoomParams params,
LinphoneChatRoomBackend  backend 
)

Set the backend implementation of these chat room parameters.

Parameters
paramsThe LinphoneChatRoomParams object.
backendThe LinphoneChatRoomBackend enum value

◆ linphone_chat_room_params_set_encryption_backend()

void linphone_chat_room_params_set_encryption_backend ( LinphoneChatRoomParams params,
LinphoneChatRoomEncryptionBackend  backend 
)

Set the encryption backend implementation of these chat room parameters.

Parameters
paramsThe LinphoneChatRoomParams object.
backendThe LinphoneChatRoomEncryptionBackend enum value

◆ linphone_chat_room_params_set_ephemeral_lifetime()

void linphone_chat_room_params_set_ephemeral_lifetime ( LinphoneChatRoomParams params,
long  time 
)

Set lifetime (in seconds) for all new ephemral messages in the chat room.

After the message is read, it will be deleted after "time" seconds.

See also
linphone_chat_room_params_ephemeral_enabled()
Parameters
paramsThe LinphoneChatRoomParams object.
timeThe ephemeral lifetime, default is disabled (0)

◆ linphone_chat_room_params_set_ephemeral_mode()

void linphone_chat_room_params_set_ephemeral_mode ( LinphoneChatRoomParams params,
LinphoneChatRoomEphemeralMode  mode 
)

Enables or disables forcing of ephemeral messages for the chat room associated with the given parameters.

Parameters
paramsThe LinphoneChatRoomParams object.
modeEphemeral message mode LinphoneChatRoomEphemeralMode.

◆ linphone_chat_room_params_set_subject()

void linphone_chat_room_params_set_subject ( LinphoneChatRoomParams params,
const char *  subject 
)

Set the subject of the chat room.

Parameters
paramsThe LinphoneChatRoomParams object.
subjectThe subject to set.

◆ linphone_chat_room_params_unref()

void linphone_chat_room_params_unref ( LinphoneChatRoomParams params)

Release reference to the chat room params.

Parameters
paramsThe LinphoneChatRoomParams object.

◆ linphone_chat_room_receive_chat_message()

void linphone_chat_room_receive_chat_message ( LinphoneChatRoom chat_room,
LinphoneChatMessage message 
)

Used to receive a chat message when using async mechanism with IM enchat_roomyption engine.

Parameters
chat_roomLinphoneChatRoom object
messageLinphoneChatMessage object

◆ linphone_chat_room_ref()

LinphoneChatRoom* linphone_chat_room_ref ( LinphoneChatRoom chat_room)

Acquire a reference to the chat room.

Parameters
chat_roomThe LinphoneChatRoom object.
Returns
The same LinphoneChatRoom object.

◆ linphone_chat_room_remove_callbacks()

void linphone_chat_room_remove_callbacks ( LinphoneChatRoom chat_room,
LinphoneChatRoomCbs cbs 
)

Remove a listener from a LinphoneChatRoom.

Parameters
chat_roomLinphoneChatRoom object
cbsLinphoneChatRoomCbs object to remove.

◆ linphone_chat_room_remove_participant()

void linphone_chat_room_remove_participant ( LinphoneChatRoom chat_room,
LinphoneParticipant participant 
)

Remove a participant of a chat room.

Parameters
chat_roomA LinphoneChatRoom object
participantThe participant to remove from the chat room

◆ linphone_chat_room_remove_participants()

void linphone_chat_room_remove_participants ( LinphoneChatRoom chat_room,
const bctbx_list_t *  participants 
)

Remove several participants of a chat room at once.

Parameters
chat_roomA LinphoneChatRoom object
participantsThe participants to remove.

◆ linphone_chat_room_send_chat_message()

MS2_DEPRECATED void linphone_chat_room_send_chat_message ( LinphoneChatRoom chat_room,
LinphoneChatMessage message 
)

Send a message to peer member of this chat room.

Parameters
chat_roomLinphoneChatRoom object
messageLinphoneChatMessage object The state of the message sending will be notified via the callbacks defined in the LinphoneChatMessageCbs object that can be obtained by calling linphone_chat_message_get_callbacks(). The LinphoneChatMessage reference is transfered to the function and thus doesn't need to be unref'd by the application.
Deprecated:
13/10/2017 Use linphone_chat_message_send() instead.

◆ linphone_chat_room_send_message()

MS2_DEPRECATED void linphone_chat_room_send_message ( LinphoneChatRoom chat_room,
const char *  msg 
)

Send a message to peer member of this chat room.

Deprecated:
13/10/2017 Use linphone_chat_message_send() instead.
Parameters
chat_roomLinphoneChatRoom object
messagemessage to be sent

◆ linphone_chat_room_set_conference_address()

void linphone_chat_room_set_conference_address ( LinphoneChatRoom chat_room,
const LinphoneAddress conference_address 
)

Set the conference address of a group chat room.

This function needs to be called from the LinphoneChatRoomCbsConferenceAddressGenerationCb callback and only there. This function is meaningful only for server implementation of chatroom, and shall not by used by client applications.

Parameters
chat_roomA LinphoneChatRoom object
conference_addressThe conference LinphoneAddress to be used by the group chat room

◆ linphone_chat_room_set_ephemeral_lifetime()

void linphone_chat_room_set_ephemeral_lifetime ( LinphoneChatRoom chat_room,
long  time 
)

Set lifetime (in seconds) for all new ephemeral messages in the chat room.

After the message is read, it will be deleted after "time" seconds.

See also
linphone_chat_room_ephemeral_enabled()
Parameters
chat_roomLinphoneChatRoom object
timeThe ephemeral lifetime, default is 0 (disabled)
Warning
A value of "time" equal to 0 disables ephemeral messages

◆ linphone_chat_room_set_ephemeral_mode()

void linphone_chat_room_set_ephemeral_mode ( LinphoneChatRoom chat_room,
LinphoneChatRoomEphemeralMode  mode 
)

Set the ephemeral mode of the chat room.

See also
linphone_chat_room_ephemeral_enabled()
Parameters
chat_roomLinphoneChatRoom object
modeThe ephemeral mode LinphoneChatRoomEphemeralMode
Warning
This function only changes the mode of ephemeral messages LinphoneChatRoomEphemeralMode. It is required to manually enable ephemeral messages after setting the mode by calling linphone_chat_room_enable_ephemeral()

◆ linphone_chat_room_set_participant_admin_status()

void linphone_chat_room_set_participant_admin_status ( LinphoneChatRoom chat_room,
LinphoneParticipant participant,
bool_t  is_admin 
)

Change the admin status of a participant of a chat room (you need to be an admin yourself to do this).

Parameters
chat_roomA LinphoneChatRoom object
participantThe Participant for which to change the admin status
is_adminA boolean value telling whether the participant should now be an admin or not

◆ linphone_chat_room_set_participant_devices()

void linphone_chat_room_set_participant_devices ( LinphoneChatRoom chat_room,
const LinphoneAddress participant_address,
const bctbx_list_t *  device_identities 
)

Set the list of participant devices in the form of SIP URIs with GRUUs for a given participant.

This function is meaningful only for server implementation of chatroom, and shall not by used by client applications.

Parameters
chat_roomA LinphoneChatRoom object
participant_addressThe participant address
device_identitiesList of the participant devices to be used by the group chat room

◆ linphone_chat_room_set_subject()

void linphone_chat_room_set_subject ( LinphoneChatRoom chat_room,
const char *  subject 
)

Set the subject of a chat room.

Parameters
chat_roomA LinphoneChatRoom object
subjectThe new subject to set for the chat room

◆ linphone_chat_room_set_user_data()

void linphone_chat_room_set_user_data ( LinphoneChatRoom chat_room,
void *  user_data 
)

Assign a user pointer to the chat room.

Parameters
chat_roomthe LinphoneChatRoom object.
user_dataThe user pointer to associate with the chat room.

◆ linphone_chat_room_state_to_string()

const char* linphone_chat_room_state_to_string ( const LinphoneChatRoomState  state)

Converts a LinphoneChatRoomState enum to a string.

Parameters
statea LinphoneChatRoomState to convert to string
Returns
the string representation of the LinphoneChatRoomState

◆ linphone_chat_room_unref()

void linphone_chat_room_unref ( LinphoneChatRoom chat_room)

Release reference to the chat room.

Parameters
chat_roomThe LinphoneChatRoom object.

◆ linphone_core_add_content_type_support()

void linphone_core_add_content_type_support ( LinphoneCore core,
const char *  content_type 
)

Add support for the specified content type.

It is the application responsibility to handle it correctly afterwards.

Parameters
coreLinphoneCore object
content_typeThe content type to add support for

◆ linphone_core_chat_enabled()

bool_t linphone_core_chat_enabled ( const LinphoneCore core)

Returns whether chat is enabled.

Parameters
coreA LinphoneCore object
Returns
TRUE if chat is enabled, FALSE otherwise

◆ linphone_core_chat_room_get_default_ephemeral_mode()

LinphoneChatRoomEphemeralMode linphone_core_chat_room_get_default_ephemeral_mode ( const LinphoneCore core)

Gets the default ephemeral message mode core the linphone core.

Returns
the default ephemeral message mode LinphoneChatRoomEphemeralMode

◆ linphone_core_chat_room_set_default_ephemeral_mode()

void linphone_core_chat_room_set_default_ephemeral_mode ( LinphoneCore core,
LinphoneChatRoomEphemeralMode  mode 
)

Sets the default ephemeral message mode.

Parameters
corethe linphone core
modedefault ephemeral message mode LinphoneChatRoomEphemeralMode

◆ linphone_core_create_chat_room()

MS2_DEPRECATED LinphoneChatRoom* linphone_core_create_chat_room ( LinphoneCore core,
const LinphoneChatRoomParams params,
const LinphoneAddress localAddr,
const char *  subject,
const bctbx_list_t *  participants 
)

Create a chat room.

Parameters
coreA LinphoneCore object
paramsThe chat room creation parameters LinphoneChatRoomParams
localAddrLinphoneAddress representing the local proxy configuration to use for the chat room creation
subjectThe subject of the group chat room
participantsThe initial list of participants of the chat room
Returns
The newly created chat room.
Deprecated:
02/07/2020, use linphone_core_create_chat_room_6() instead

◆ linphone_core_create_chat_room_2()

MS2_DEPRECATED LinphoneChatRoom* linphone_core_create_chat_room_2 ( LinphoneCore core,
const LinphoneChatRoomParams params,
const char *  subject,
const bctbx_list_t *  participants 
)

Create a chat room.

Parameters
coreA LinphoneCore object
paramsThe chat room creation parameters LinphoneChatRoomParams
participantsThe initial list of participants of the chat room.
Returns
The newly created chat room.
Deprecated:
02/07/2020, use linphone_core_create_chat_room_6() instead

◆ linphone_core_create_chat_room_3()

MS2_DEPRECATED LinphoneChatRoom* linphone_core_create_chat_room_3 ( LinphoneCore core,
const char *  subject,
const bctbx_list_t *  participants 
)
Parameters
coreA LinphoneCore object
subjectThe subject of the group chat room
participantsThe initial list of participants of the chat room.
Returns
The newly created chat room.
Deprecated:
02/07/2020, use linphone_core_create_chat_room_6() instead

◆ linphone_core_create_chat_room_4()

MS2_DEPRECATED LinphoneChatRoom* linphone_core_create_chat_room_4 ( LinphoneCore core,
const LinphoneChatRoomParams params,
const LinphoneAddress localAddr,
const LinphoneAddress participant 
)
Parameters
coreA LinphoneCore object
paramsThe chat room creation parameters LinphoneChatRoomParams
localAddrLinphoneAddress representing the local proxy configuration to use for the chat room creation
participantLinphoneAddress representing the initial participant to add to the chat room
Returns
The newly created chat room.
Deprecated:
02/07/2020, use linphone_core_create_chat_room_6() instead

◆ linphone_core_create_chat_room_5()

MS2_DEPRECATED LinphoneChatRoom* linphone_core_create_chat_room_5 ( LinphoneCore core,
const LinphoneAddress participant 
)
Parameters
coreA LinphoneCore object
participantLinphoneAddress representing the initial participant to add to the chat room
Returns
The newly created chat room.
Deprecated:
02/07/2020, use linphone_core_create_chat_room_6() instead

◆ linphone_core_create_chat_room_6()

LinphoneChatRoom* linphone_core_create_chat_room_6 ( LinphoneCore core,
const LinphoneChatRoomParams params,
const LinphoneAddress localAddr,
const bctbx_list_t *  participants 
)

Create a chat room.

Parameters
coreA LinphoneCore object
paramsThe chat room creation parameters LinphoneChatRoomParams
localAddrLinphoneAddress representing the local proxy configuration to use for the chat room creation or NULL
participantsThe initial list of participants of the chat room.
Returns
The newly created chat room (can be an existing one if backend is Basic) or NULL.

◆ linphone_core_create_client_group_chat_room()

MS2_DEPRECATED LinphoneChatRoom* linphone_core_create_client_group_chat_room ( LinphoneCore core,
const char *  subject,
bool_t  fallback 
)

Create a client-side group chat room.

When calling this function the chat room is only created at the client-side and is empty. You need to call linphone_chat_room_add_participants() to create at the server side and add participants to it. Also, the created chat room will not be a one-to-one chat room even if linphone_chat_room_add_participants() is called with only one participant.

Parameters
coreA LinphoneCore object
subjectThe subject of the group chat room
fallbackBoolean value telling whether we should plan on being able to fallback to a basic chat room if the client-side group chat room creation fails
Returns
The newly created client-side group chat room.
Deprecated:
02/07/2020, use linphone_core_create_chat_room_6() instead

◆ linphone_core_create_client_group_chat_room_2()

MS2_DEPRECATED LinphoneChatRoom* linphone_core_create_client_group_chat_room_2 ( LinphoneCore core,
const char *  subject,
bool_t  fallback,
bool_t  encrypted 
)

Create a client-side group chat room.

When calling this function the chat room is only created at the client-side and is empty. You need to call linphone_chat_room_add_participants() to create at the server side and add participants to it. Also, the created chat room will not be a one-to-one chat room even if linphone_chat_room_add_participants() is called with only one participant.

Parameters
coreA LinphoneCore object
subjectThe subject of the group chat room
fallbackBoolean value telling whether we should plan on being able to fallback to a basic chat room if the client-side group chat room creation fails
encryptedBoolean value telling whether we should apply encryption or not on chat messages sent and received on this room.
Returns
The newly created client-side group chat room.
Deprecated:
02/07/2020, use linphone_core_create_chat_room_6() instead

◆ linphone_core_create_default_chat_room_params()

LinphoneChatRoomParams* linphone_core_create_default_chat_room_params ( LinphoneCore core)

Creates and returns the default chat room parameters.

Parameters
coreLinphoneCore object
Returns
A LinphoneChatRoomParams object

◆ linphone_core_delete_chat_room()

void linphone_core_delete_chat_room ( LinphoneCore core,
LinphoneChatRoom chat_room 
)

Removes a chatroom including all message history from the LinphoneCore.

Parameters
coreA LinphoneCore object
chat_roomA LinphoneChatRoom object

◆ linphone_core_disable_chat()

void linphone_core_disable_chat ( LinphoneCore core,
LinphoneReason  deny_reason 
)

Inconditionnaly disable incoming chat messages.

Parameters
coreA LinphoneCore object
deny_reasonthe deny reason (LinphoneReasonNone has no effect).

◆ linphone_core_enable_chat()

void linphone_core_enable_chat ( LinphoneCore core)

Enable reception of incoming chat messages.

By default it is enabled but it can be disabled with linphone_core_disable_chat().

Parameters
coreA LinphoneCore object

◆ linphone_core_find_chat_room()

MS2_DEPRECATED LinphoneChatRoom* linphone_core_find_chat_room ( const LinphoneCore core,
const LinphoneAddress peer_addr,
const LinphoneAddress local_addr 
)

Find a chat room.

No reference is transfered to the application. The LinphoneCore keeps a reference on the chat room.

Parameters
corethe linphone core
peer_addra linphone address.
local_addra linphone address.
Returns
LinphoneChatRoom where messaging can take place.
Deprecated:
02/07/2020, use linphone_core_search_chat_room() instead

◆ linphone_core_find_one_to_one_chat_room()

MS2_DEPRECATED LinphoneChatRoom* linphone_core_find_one_to_one_chat_room ( const LinphoneCore core,
const LinphoneAddress local_addr,
const LinphoneAddress participant_addr 
)

Find a one to one chat room.

No reference is transfered to the application. The LinphoneCore keeps a reference on the chat room.

Parameters
corethe linphone core
local_addra linphone address.
participant_addra linphone address.
Returns
LinphoneChatRoom where messaging can take place.
Deprecated:
12/12/2018, use linphone_core_find_one_to_one_chat_room_2 instead

◆ linphone_core_find_one_to_one_chat_room_2()

MS2_DEPRECATED LinphoneChatRoom* linphone_core_find_one_to_one_chat_room_2 ( const LinphoneCore core,
const LinphoneAddress local_addr,
const LinphoneAddress participant_addr,
bool_t  encrypted 
)

Find a one to one chat room.

No reference is transfered to the application. The LinphoneCore keeps a reference on the chat room.

Parameters
corethe linphone core
local_addra linphone address.
participant_addra linphone address.
encryptedwhether to look for an encrypted chat room or not
Returns
LinphoneChatRoom where messaging can take place.
Deprecated:
02/07/2020, use linphone_core_search_chat_room() instead

◆ linphone_core_get_chat_room()

MS2_DEPRECATED LinphoneChatRoom* linphone_core_get_chat_room ( LinphoneCore core,
const LinphoneAddress addr 
)

Get a chat room whose peer is the supplied address.

If it does not exist yet, it will be created as a basic chat room. No reference is transfered to the application. The LinphoneCore keeps a reference on the chat room.

Warning
This method is prone to errors, use linphone_core_search_chat_room() instead
Parameters
corethe linphone core
addra linphone address.
Returns
LinphoneChatRoom where messaging can take place.
Deprecated:
02/07/2020, use linphone_core_search_chat_room() instead

◆ linphone_core_get_chat_room_2()

MS2_DEPRECATED LinphoneChatRoom* linphone_core_get_chat_room_2 ( LinphoneCore core,
const LinphoneAddress peer_addr,
const LinphoneAddress local_addr 
)

Get a chat room.

If it does not exist yet, it will be created as a basic chat room. No reference is transfered to the application. The LinphoneCore keeps a reference on the chat room.

Warning
This method is prone to errors, use linphone_core_search_chat_room() instead
Parameters
corethe linphone core
peer_addra linphone address.
local_addra linphone address.
Returns
LinphoneChatRoom where messaging can take place.
Deprecated:
02/07/2020, use linphone_core_search_chat_room() instead

◆ linphone_core_get_chat_room_from_uri()

MS2_DEPRECATED LinphoneChatRoom* linphone_core_get_chat_room_from_uri ( LinphoneCore core,
const char *  to 
)

Get a chat room for messaging from a sip uri like sip:joe@s.nosp@m.ip.l.nosp@m.inpho.nosp@m.ne.o.nosp@m.rg.

If it does not exist yet, it will be created as a basic chat room. No reference is transfered to the application. The LinphoneCore keeps a reference on the chat room.

Warning
This method is prone to errors, use linphone_core_search_chat_room() instead
Parameters
coreA LinphoneCore object
toThe destination address for messages.
Returns
LinphoneChatRoom where messaging can take place.
Deprecated:
02/07/2020, use linphone_core_search_chat_room() instead

◆ linphone_core_get_chat_rooms()

const bctbx_list_t* linphone_core_get_chat_rooms ( LinphoneCore core)

Returns a list of chat rooms.

Parameters
coreLinphoneCore object
Returns
List of chat rooms.

◆ linphone_core_get_default_ephemeral_lifetime()

long linphone_core_get_default_ephemeral_lifetime ( const LinphoneCore lc)

Gets the default lifetime of ephemeral messages in seconds core the linphone core.

Returns
lifetime of ephemeral messages in seconds

◆ linphone_core_get_im_encryption_engine()

LinphoneImEncryptionEngine* linphone_core_get_im_encryption_engine ( const LinphoneCore core)

Gets the IM Encryption Engine in the core if possible.

Parameters
coreLinphoneCore object
Returns
the IM Encryption Engine in the core or NULL

◆ linphone_core_get_im_notif_policy()

LinphoneImNotifPolicy* linphone_core_get_im_notif_policy ( const LinphoneCore core)

Get the LinphoneImNotifPolicy object controlling the instant messaging notifications.

Parameters
coreLinphoneCore object
Returns
A LinphoneImNotifPolicy object.

◆ linphone_core_is_content_type_supported()

bool_t linphone_core_is_content_type_supported ( const LinphoneCore core,
const char *  content_type 
)

Tells whether a content type is supported.

Parameters
coreLinphoneCore object
content_typeThe content type to check
Returns
A boolean value telling whether the specified content type is supported or not.

◆ linphone_core_remove_content_type_support()

void linphone_core_remove_content_type_support ( LinphoneCore core,
const char *  content_type 
)

Remove support for the specified content type.

It is the application responsibility to handle it correctly afterwards.

Parameters
coreLinphoneCore object
content_typeThe content type to remove support for

◆ linphone_core_search_chat_room()

LinphoneChatRoom* linphone_core_search_chat_room ( const LinphoneCore core,
const LinphoneChatRoomParams params,
const LinphoneAddress localAddr,
const LinphoneAddress remoteAddr,
const bctbx_list_t *  participants 
)

Find a chat room.

Parameters
coreA LinphoneCore object
paramsThe chat room parameters to match LinphoneChatRoomParams or NULL
localAddrLinphoneAddress representing the local proxy configuration or NULL
remoteAddrLinphoneAddress to search for or NULL
participantsThe participants that must be present in the chat room to find.
Returns
A matching chat room or NULL if none matches.

◆ linphone_core_set_default_ephemeral_lifetime()

void linphone_core_set_default_ephemeral_lifetime ( LinphoneCore lc,
long  value 
)

Set the default ephemeral lifetime in seconds.

Parameters
corethe linphone core
valuelifetime of ephemeral messages in seconds

◆ linphone_core_set_im_encryption_engine()

void linphone_core_set_im_encryption_engine ( LinphoneCore core,
LinphoneImEncryptionEngine imee 
)

Sets an IM Encryption Engine in the core.

Parameters
coreLinphoneCore object
imeeLinphoneImEncryptionEngine object

◆ linphone_im_notif_policy_clear()

void linphone_im_notif_policy_clear ( LinphoneImNotifPolicy policy)

Clear an IM notif policy (deactivate all receiving and sending of notifications).

Parameters
policyLinphoneImNotifPolicy object.

◆ linphone_im_notif_policy_enable_all()

void linphone_im_notif_policy_enable_all ( LinphoneImNotifPolicy policy)

Enable all receiving and sending of notifications.

Parameters
policyLinphoneImNotifPolicy object.

◆ linphone_im_notif_policy_get_recv_imdn_delivered()

bool_t linphone_im_notif_policy_get_recv_imdn_delivered ( const LinphoneImNotifPolicy policy)

Tell whether imdn delivered notifications are being notified when received.

Parameters
policyLinphoneImNotifPolicy object
Returns
Boolean value telling whether imdn delivered notifications are being notified when received.

◆ linphone_im_notif_policy_get_recv_imdn_displayed()

bool_t linphone_im_notif_policy_get_recv_imdn_displayed ( const LinphoneImNotifPolicy policy)

Tell whether imdn displayed notifications are being notified when received.

Parameters
policyLinphoneImNotifPolicy object
Returns
Boolean value telling whether imdn displayed notifications are being notified when received.

◆ linphone_im_notif_policy_get_recv_is_composing()

bool_t linphone_im_notif_policy_get_recv_is_composing ( const LinphoneImNotifPolicy policy)

Tell whether is_composing notifications are being notified when received.

Parameters
policyLinphoneImNotifPolicy object
Returns
Boolean value telling whether is_composing notifications are being notified when received.

◆ linphone_im_notif_policy_get_send_imdn_delivered()

bool_t linphone_im_notif_policy_get_send_imdn_delivered ( const LinphoneImNotifPolicy policy)

Tell whether imdn delivered notifications are being sent.

Parameters
policyLinphoneImNotifPolicy object
Returns
Boolean value telling whether imdn delivered notifications are being sent.

◆ linphone_im_notif_policy_get_send_imdn_displayed()

bool_t linphone_im_notif_policy_get_send_imdn_displayed ( const LinphoneImNotifPolicy policy)

Tell whether imdn displayed notifications are being sent.

Parameters
policyLinphoneImNotifPolicy object
Returns
Boolean value telling whether imdn displayed notifications are being sent.

◆ linphone_im_notif_policy_get_send_is_composing()

bool_t linphone_im_notif_policy_get_send_is_composing ( const LinphoneImNotifPolicy policy)

Tell whether is_composing notifications are being sent.

Parameters
policyLinphoneImNotifPolicy object
Returns
Boolean value telling whether is_composing notifications are being sent.

◆ linphone_im_notif_policy_get_user_data()

void* linphone_im_notif_policy_get_user_data ( const LinphoneImNotifPolicy policy)

Retrieve the user pointer associated with the LinphoneImNotifPolicy object.

Parameters
policyLinphoneImNotifPolicy object.
Returns
The user pointer associated with the LinphoneImNotifPolicy object.

◆ linphone_im_notif_policy_ref()

LinphoneImNotifPolicy* linphone_im_notif_policy_ref ( LinphoneImNotifPolicy policy)

Acquire a reference to the LinphoneImNotifPolicy object.

Parameters
policyLinphoneImNotifPolicy object.
Returns
The same LinphoneImNotifPolicy object.

◆ linphone_im_notif_policy_set_recv_imdn_delivered()

void linphone_im_notif_policy_set_recv_imdn_delivered ( LinphoneImNotifPolicy policy,
bool_t  enable 
)

Enable imdn delivered notifications receiving.

Parameters
policyLinphoneImNotifPolicy object
enableBoolean value telling whether to notify received imdn delivered notifications.

◆ linphone_im_notif_policy_set_recv_imdn_displayed()

void linphone_im_notif_policy_set_recv_imdn_displayed ( LinphoneImNotifPolicy policy,
bool_t  enable 
)

Enable imdn displayed notifications receiving.

Parameters
policyLinphoneImNotifPolicy object
enableBoolean value telling whether to notify received imdn displayed notifications.

◆ linphone_im_notif_policy_set_recv_is_composing()

void linphone_im_notif_policy_set_recv_is_composing ( LinphoneImNotifPolicy policy,
bool_t  enable 
)

Enable is_composing notifications receiving.

Parameters
policyLinphoneImNotifPolicy object
enableBoolean value telling whether to notify received is_composing notifications.

◆ linphone_im_notif_policy_set_send_imdn_delivered()

void linphone_im_notif_policy_set_send_imdn_delivered ( LinphoneImNotifPolicy policy,
bool_t  enable 
)

Enable imdn delivered notifications sending.

Parameters
policyLinphoneImNotifPolicy object
enableBoolean value telling whether to send imdn delivered notifications.

◆ linphone_im_notif_policy_set_send_imdn_displayed()

void linphone_im_notif_policy_set_send_imdn_displayed ( LinphoneImNotifPolicy policy,
bool_t  enable 
)

Enable imdn displayed notifications sending.

Parameters
policyLinphoneImNotifPolicy object
enableBoolean value telling whether to send imdn displayed notifications.

◆ linphone_im_notif_policy_set_send_is_composing()

void linphone_im_notif_policy_set_send_is_composing ( LinphoneImNotifPolicy policy,
bool_t  enable 
)

Enable is_composing notifications sending.

Parameters
policyLinphoneImNotifPolicy object
enableBoolean value telling whether to send is_composing notifications.

◆ linphone_im_notif_policy_set_user_data()

void linphone_im_notif_policy_set_user_data ( LinphoneImNotifPolicy policy,
void *  user_data 
)

Assign a user pointer to the LinphoneImNotifPolicy object.

Parameters
policyLinphoneImNotifPolicy object.
user_dataThe user pointer to associate with the LinphoneImNotifPolicy object.

◆ linphone_im_notif_policy_unref()

void linphone_im_notif_policy_unref ( LinphoneImNotifPolicy policy)

Release reference to the LinphoneImNotifPolicy object.

Parameters
policyLinphoneImNotifPolicy object.