Events

## Typedefs

typedef struct _LinphoneEvent | LinphoneEvent
| Object representing an event state, which is subcribed or published.
typedef struct _LinphoneEventCbs | LinphoneEventCbs
| An object to handle the callbacks for handling the LinphoneEvent operations.
typedef struct _LinphoneEventLog | LinphoneEventLog
| Object that represents an event that must be stored in database.
typedef enum _EventLogType | LinphoneEventLogType
| LinphoneEventLogType is used to indicate the type of an event.
typedef enum _SecurityEventType | LinphoneSecurityEventType
| LinphoneSecurityEventType is used to indicate the type of security event.

## Enumerations

enum

_EventLogType {
LinphoneEventLogTypeNone = 0 ,
LinphoneEventLogTypeConferenceCreated = 1 ,
LinphoneEventLogTypeConferenceTerminated = 2 ,
LinphoneEventLogTypeConferenceCallStarted = 3 ,
LinphoneEventLogTypeConferenceConnected = 21 ,
LinphoneEventLogTypeConferenceCallEnded = 4 ,
LinphoneEventLogTypeConferenceChatMessage = 5 ,
LinphoneEventLogTypeConferenceParticipantAdded = 6 ,
LinphoneEventLogTypeConferenceParticipantRemoved = 7 ,
LinphoneEventLogTypeConferenceParticipantRoleUnknown = 25 ,
LinphoneEventLogTypeConferenceParticipantRoleSpeaker = 26 ,
LinphoneEventLogTypeConferenceParticipantRoleListener = 27 ,
LinphoneEventLogTypeConferenceParticipantSetAdmin = 8 ,
LinphoneEventLogTypeConferenceParticipantUnsetAdmin = 9 ,
LinphoneEventLogTypeConferenceParticipantDeviceAdded = 10 ,
LinphoneEventLogTypeConferenceParticipantDeviceRemoved = 11 ,
LinphoneEventLogTypeConferenceParticipantDeviceMediaCapabilityChanged ,
LinphoneEventLogTypeConferenceParticipantDeviceMediaAvailabilityChanged ,
LinphoneEventLogTypeConferenceParticipantDeviceStatusChanged ,
LinphoneEventLogTypeConferenceSubjectChanged = 12 ,
LinphoneEventLogTypeConferenceAvailableMediaChanged = 18 ,
LinphoneEventLogTypeConferenceSecurityEvent = 13 ,
LinphoneEventLogTypeConferenceEphemeralMessageLifetimeChanged ,
LinphoneEventLogTypeConferenceEphemeralMessageEnabled ,
LinphoneEventLogTypeConferenceEphemeralMessageDisabled ,
LinphoneEventLogTypeConferenceEphemeralMessageManagedByAdmin ,
LinphoneEventLogTypeConferenceEphemeralMessageManagedByParticipants ,
LinphoneEventLogTypeConferenceChatMessageReaction = 24
}

| LinphoneEventLogType is used to indicate the type of an event. More...
enum | _SecurityEventType { LinphoneSecurityEventTypeNone = 0 , LinphoneSecurityEventTypeSecurityLevelDowngraded = 1 , LinphoneSecurityEventTypeParticipantMaxDeviceCountExceeded , LinphoneSecurityEventTypeEncryptionIdentityKeyChanged , LinphoneSecurityEventTypeManInTheMiddleDetected = 4 }
| LinphoneSecurityEventType is used to indicate the type of security event. More...

## Functions

LinphoneEventLog * | linphone_event_log_ref (LinphoneEventLog *event_log)
| Increment reference count of LinphoneEventLog object.
void | linphone_event_log_unref (LinphoneEventLog *event_log)
| Decrement reference count of LinphoneEventLog object.
LinphoneEventLogType | linphone_event_log_get_type (const LinphoneEventLog *event_log)
| Returns the type of a event log.
time_t | linphone_event_log_get_creation_time (const LinphoneEventLog *event_log)
| Returns the creation time of a event log.
void | linphone_event_log_delete_from_database (LinphoneEventLog *event_log)
| Delete event log from database.
const LinphoneAddress * | linphone_event_log_get_peer_address (const LinphoneEventLog *event_log)
| Returns the peer address of a conference event.
const LinphoneAddress * | linphone_event_log_get_local_address (const LinphoneEventLog *event_log)
| Returns the local address of a conference event.
unsigned int | linphone_event_log_get_notify_id (const LinphoneEventLog *event_log)
| Returns the notify id of a conference notified event.
LinphoneCallLog * | linphone_event_log_get_call_log (const LinphoneEventLog *event_log)
| Returns the call log of a conference call event.
LinphoneConferenceInfo * | linphone_event_log_get_conference_info (const LinphoneEventLog *event_log)
| Returns the conference info of a conference call event.
LinphoneChatMessage * | linphone_event_log_get_chat_message (const LinphoneEventLog *event_log)
| Returns the chat message of a conference chat message event.
const LinphoneAddress * | linphone_event_log_get_participant_address (const LinphoneEventLog *event_log)
| Returns the participant address of a conference participant event.
const LinphoneAddress * | linphone_event_log_get_device_address (const LinphoneEventLog *event_log)
| Returns the device address of a conference participant device event.
LinphoneSecurityEventType | linphone_event_log_get_security_event_type (const LinphoneEventLog *event_log)
| Returns the type of security event.
const LinphoneAddress * | linphone_event_log_get_security_event_faulty_device_address (const LinphoneEventLog *event_log)
| Returns the faulty device address of a conference security event.
const char * | linphone_event_log_get_subject (const LinphoneEventLog *event_log)
| Returns the subject of a conference subject event.
long | linphone_event_log_get_ephemeral_message_lifetime (const LinphoneEventLog *event_log)
| Returns the ephemeral message lifetime of a conference ephemeral message event.

## Detailed Description

## Typedef Documentation

## LinphoneEvent

typedef struct _LinphoneEvent LinphoneEvent

Object representing an event state, which is subcribed or published.

See also
  linphone_core_publish()
  linphone_core_subscribe()

## LinphoneEventLog

typedef struct _LinphoneEventLog LinphoneEventLog

Object that represents an event that must be stored in database.

For example, all chat related events are wrapped in an LinphoneEventLog, and many callbacks use this kind of type as parameter.

Use linphone_event_log_get_type() to get the LinphoneEventLogType it refers to, and then you can use one of the accessor methods to get the underlying object, for example linphone_event_log_get_chat_message() for a LinphoneChatMessage.

## LinphoneEventLogType

typedef enum _EventLogType LinphoneEventLogType

LinphoneEventLogType is used to indicate the type of an event.

Useful for cast.

## Enumeration Type Documentation

## _EventLogType

enum _EventLogType

LinphoneEventLogType is used to indicate the type of an event.

Useful for cast.

Enumerator
LinphoneEventLogTypeNone | No defined event.
LinphoneEventLogTypeConferenceCreated | Conference (created) event.
LinphoneEventLogTypeConferenceTerminated | Conference (terminated) event.
LinphoneEventLogTypeConferenceCallStarted | Conference call (start) event.
LinphoneEventLogTypeConferenceConnected | Conference call (connected) event.
LinphoneEventLogTypeConferenceCallEnded | Conference call (end) event.
LinphoneEventLogTypeConferenceChatMessage | Conference chat message event.
LinphoneEventLogTypeConferenceParticipantAdded | Conference participant (added) event.
LinphoneEventLogTypeConferenceParticipantRemoved | Conference participant (removed) event.
LinphoneEventLogTypeConferenceParticipantRoleUnknown | Conference participant (role unknown) event.
LinphoneEventLogTypeConferenceParticipantRoleSpeaker | Conference participant (role speaker) event.
LinphoneEventLogTypeConferenceParticipantRoleListener | Conference participant (role listener) event.
LinphoneEventLogTypeConferenceParticipantSetAdmin | Conference participant (set admin) event.
LinphoneEventLogTypeConferenceParticipantUnsetAdmin | Conference participant (unset admin) event.
LinphoneEventLogTypeConferenceParticipantDeviceAdded | Conference participant device (added) event.
LinphoneEventLogTypeConferenceParticipantDeviceRemoved | Conference participant device (removed) event.
LinphoneEventLogTypeConferenceParticipantDeviceMediaCapabilityChanged | Conference participant device (media capability changed) event.
LinphoneEventLogTypeConferenceParticipantDeviceMediaAvailabilityChanged | Conference participant device (media availability changed) event.
LinphoneEventLogTypeConferenceParticipantDeviceStatusChanged | Conference participant device (left) event.
LinphoneEventLogTypeConferenceSubjectChanged | Conference subject event.
LinphoneEventLogTypeConferenceAvailableMediaChanged | Conference available media event.
LinphoneEventLogTypeConferenceSecurityEvent | Conference encryption security event.
LinphoneEventLogTypeConferenceEphemeralMessageLifetimeChanged | Conference ephemeral message (ephemeral message lifetime changed) event.
LinphoneEventLogTypeConferenceEphemeralMessageEnabled | Conference ephemeral message (ephemeral message enabled) event.
LinphoneEventLogTypeConferenceEphemeralMessageDisabled | Conference ephemeral message (ephemeral message disabled) event.
LinphoneEventLogTypeConferenceEphemeralMessageManagedByAdmin | Conference ephemeral message (ephemeral message settings managed by admin) event.
LinphoneEventLogTypeConferenceEphemeralMessageManagedByParticipants | Conference ephemeral message (ephemeral message settings managed by participants) event.
LinphoneEventLogTypeConferenceChatMessageReaction | Reaction event to a chat message.

## _SecurityEventType

enum _SecurityEventType

LinphoneSecurityEventType is used to indicate the type of security event.

Enumerator
LinphoneSecurityEventTypeNone | Event is not a security event.
LinphoneSecurityEventTypeSecurityLevelDowngraded | Chatroom security level downgraded event.
LinphoneSecurityEventTypeParticipantMaxDeviceCountExceeded | Participant has exceeded the maximum number of device event.
LinphoneSecurityEventTypeEncryptionIdentityKeyChanged | Peer device instant messaging encryption identity key has changed event.
LinphoneSecurityEventTypeManInTheMiddleDetected | Man in the middle detected event.

## Function Documentation

## linphone_event_log_delete_from_database()

void linphone_event_log_delete_from_database | ( | LinphoneEventLog * | event_log | ) |

Delete event log from database.

Parameters

  event_log | A LinphoneEventLog object

## linphone_event_log_get_call_log()

LinphoneCallLog * linphone_event_log_get_call_log | ( | const LinphoneEventLog * | event_log | ) |

Returns the call log of a conference call event.

Parameters

  event_log | A LinphoneEventLog object.

Returns
  The conference LinphoneCallLog.

## linphone_event_log_get_chat_message()

LinphoneChatMessage * linphone_event_log_get_chat_message | ( | const LinphoneEventLog * | event_log | ) |

Returns the chat message of a conference chat message event.

Parameters

  event_log | A LinphoneEventLog object.

Returns
  The conference LinphoneChatMessage.

## linphone_event_log_get_conference_info()

LinphoneConferenceInfo * linphone_event_log_get_conference_info | ( | const LinphoneEventLog * | event_log | ) |

Returns the conference info of a conference call event.

Parameters

  event_log | A LinphoneEventLog object.

Returns
  The conference LinphoneConferenceInfo.

## linphone_event_log_get_creation_time()

time_t linphone_event_log_get_creation_time | ( | const LinphoneEventLog * | event_log | ) |

Returns the creation time of a event log.

Parameters

  event_log | A LinphoneEventLog object

Returns
  The event creation time

## linphone_event_log_get_device_address()

const LinphoneAddress * linphone_event_log_get_device_address | ( | const LinphoneEventLog * | event_log | ) |

Returns the device address of a conference participant device event.

Parameters

  event_log | A LinphoneEventLog object.

Returns
  The conference device LinphoneAddress.

## linphone_event_log_get_ephemeral_message_lifetime()

long linphone_event_log_get_ephemeral_message_lifetime | ( | const LinphoneEventLog * | event_log | ) |

Returns the ephemeral message lifetime of a conference ephemeral message event.

Ephemeral lifetime means the time before an ephemeral message which has been viewed gets deleted.

Parameters

  event_log | A LinphoneEventLog object.

Returns
  The ephemeral message lifetime.

## linphone_event_log_get_local_address()

const LinphoneAddress * linphone_event_log_get_local_address | ( | const LinphoneEventLog * | event_log | ) |

Returns the local address of a conference event.

Parameters

  event_log | A LinphoneEventLog object.

Returns
  The local LinphoneAddress.

## linphone_event_log_get_notify_id()

unsigned int linphone_event_log_get_notify_id | ( | const LinphoneEventLog * | event_log | ) |

Returns the notify id of a conference notified event.

Parameters

  event_log | A LinphoneEventLog object.

Returns
  The conference notify id.

## linphone_event_log_get_participant_address()

const LinphoneAddress * linphone_event_log_get_participant_address | ( | const LinphoneEventLog * | event_log | ) |

Returns the participant address of a conference participant event.

Parameters

  event_log | A ConferenceParticipantEvent object.

Returns
  The conference participant LinphoneAddress.

## linphone_event_log_get_peer_address()

const LinphoneAddress * linphone_event_log_get_peer_address | ( | const LinphoneEventLog * | event_log | ) |

Returns the peer address of a conference event.

Parameters

  event_log | A LinphoneEventLog object.

Returns
  The peer LinphoneAddress.

## linphone_event_log_get_security_event_faulty_device_address()

const LinphoneAddress * linphone_event_log_get_security_event_faulty_device_address | ( | const LinphoneEventLog * | event_log | ) |

Returns the faulty device address of a conference security event.

Parameters

  event_log | A LinphoneEventLog object.

Returns
  The LinphoneAddress of the faulty device.

## linphone_event_log_get_security_event_type()

LinphoneSecurityEventType linphone_event_log_get_security_event_type | ( | const LinphoneEventLog * | event_log | ) |

Returns the type of security event.

Parameters

  event_log | A LinphoneEventLog object.

Returns
  The LinphoneSecurityEventType type.

## linphone_event_log_get_subject()

const char * linphone_event_log_get_subject | ( | const LinphoneEventLog * | event_log | ) |

Returns the subject of a conference subject event.

Parameters

  event_log | A LinphoneEventLog object.

Returns
  The conference subject.

## linphone_event_log_get_type()

LinphoneEventLogType linphone_event_log_get_type | ( | const LinphoneEventLog * | event_log | ) |

Returns the type of a event log.

Parameters

  event_log | A LinphoneEventLog object

Returns
  The LinphoneEventLogType type

## linphone_event_log_ref()

LinphoneEventLog * linphone_event_log_ref | ( | LinphoneEventLog * | event_log | ) |

Increment reference count of LinphoneEventLog object.

Parameters

  event_log | A LinphoneEventLog object

Returns
  the same LinphoneEventLog object

## linphone_event_log_unref()

void linphone_event_log_unref | ( | LinphoneEventLog * | event_log | ) |

Decrement reference count of LinphoneEventLog object.

When dropped to zero, memory is freed.

Parameters

  event_log | A LinphoneEventLog object