Liblinphone  3.11.2
Macros | Typedefs | Enumerations | Functions
Buddy list

Managing Buddies and buddy list and presence. More...

Macros

#define linphone_friend_new_with_addr   linphone_friend_new_with_address
 Contructor same as linphone_friend_new() + linphone_friend_set_address() More...
 
#define linphone_friend_set_addr   linphone_friend_set_address
 Set LinphoneAddress for this friend. More...
 
#define linphone_friend_get_send_subscribe   linphone_friend_subscribes_enabled
 
#define linphone_friend_send_subscribe   linphone_friend_enable_subscribes
 

Typedefs

typedef void(* LinphoneFriendListCbsContactCreatedCb )(LinphoneFriendList *list, LinphoneFriend *lf)
 Callback used to notify a new contact has been created on the CardDAV server and downloaded locally. More...
 
typedef void(* LinphoneFriendListCbsContactDeletedCb )(LinphoneFriendList *list, LinphoneFriend *lf)
 Callback used to notify a contact has been deleted on the CardDAV server. More...
 
typedef void(* LinphoneFriendListCbsContactUpdatedCb )(LinphoneFriendList *list, LinphoneFriend *new_friend, LinphoneFriend *old_friend)
 Callback used to notify a contact has been updated on the CardDAV server. More...
 
typedef void(* LinphoneFriendListCbsSyncStateChangedCb )(LinphoneFriendList *list, LinphoneFriendListSyncStatus status, const char *msg)
 Callback used to notify the status of the synchronization has changed. More...
 
typedef enum
_LinphoneConsolidatedPresence 
LinphoneConsolidatedPresence
 Consolidated presence information: 'online' means the user is open for communication, 'busy' means the user is open for communication but involved in an other activity, 'do not disturb' means the user is not open for communication, and 'offline' means that no presence information is available.
 
typedef struct _LinphoneFriend LinphoneFriend
 Represents a buddy, all presence actions like subscription and status change notification are performed on this object.
 
typedef struct _LinphoneFriendList LinphoneFriendList
 The LinphoneFriendList object representing a list of friends.
 
typedef struct
_LinphoneFriendListCbs 
LinphoneFriendListCbs
 An object to handle the callbacks for LinphoneFriend synchronization.
 
typedef enum
_LinphoneFriendListStatus 
LinphoneFriendListStatus
 Enum describing the status of a LinphoneFriendList operation.
 
typedef enum
_LinphoneFriendListSyncStatus 
LinphoneFriendListSyncStatus
 Enum describing the status of a CardDAV synchronization.
 
typedef struct
_LinphonePresenceActivity 
LinphonePresenceActivity
 Presence activity type holding information about a presence activity.
 
typedef enum
LinphonePresenceActivityType 
LinphonePresenceActivityType
 Activities as defined in section 3.2 of RFC 4480.
 
typedef enum
LinphonePresenceBasicStatus 
LinphonePresenceBasicStatus
 Basic status as defined in section 4.1.4 of RFC 3863.
 
typedef struct
_LinphonePresenceModel 
LinphonePresenceModel
 Presence model type holding information about the presence of a person.
 
typedef struct
_LinphonePresenceNote 
LinphonePresenceNote
 Presence note type holding information about a presence note.
 
typedef struct
_LinphonePresencePerson 
LinphonePresencePerson
 Presence person holding information about a presence person.
 
typedef struct
_LinphonePresenceService 
LinphonePresenceService
 Presence service type holding information about a presence service.
 
typedef enum
_LinphoneSubscribePolicy 
LinphoneSubscribePolicy
 Enum controlling behavior for incoming subscription request. More...
 

Enumerations

enum  _LinphoneConsolidatedPresence {
  LinphoneConsolidatedPresenceOnline,
  LinphoneConsolidatedPresenceBusy,
  LinphoneConsolidatedPresenceDoNotDisturb,
  LinphoneConsolidatedPresenceOffline
}
 Consolidated presence information: 'online' means the user is open for communication, 'busy' means the user is open for communication but involved in an other activity, 'do not disturb' means the user is not open for communication, and 'offline' means that no presence information is available.
 
enum  _LinphoneFriendListStatus {
  LinphoneFriendListOK,
  LinphoneFriendListNonExistentFriend,
  LinphoneFriendListInvalidFriend
}
 Enum describing the status of a LinphoneFriendList operation.
 
enum  _LinphoneFriendListSyncStatus {
  LinphoneFriendListSyncStarted,
  LinphoneFriendListSyncSuccessful,
  LinphoneFriendListSyncFailure
}
 Enum describing the status of a CardDAV synchronization.
 
enum  LinphonePresenceActivityType {
  LinphonePresenceActivityAppointment,
  LinphonePresenceActivityAway,
  LinphonePresenceActivityBreakfast,
  LinphonePresenceActivityBusy,
  LinphonePresenceActivityDinner,
  LinphonePresenceActivityHoliday,
  LinphonePresenceActivityInTransit,
  LinphonePresenceActivityLookingForWork,
  LinphonePresenceActivityLunch,
  LinphonePresenceActivityMeal,
  LinphonePresenceActivityMeeting,
  LinphonePresenceActivityOnThePhone,
  LinphonePresenceActivityOther,
  LinphonePresenceActivityPerformance,
  LinphonePresenceActivityPermanentAbsence,
  LinphonePresenceActivityPlaying,
  LinphonePresenceActivityPresentation,
  LinphonePresenceActivityShopping,
  LinphonePresenceActivitySleeping,
  LinphonePresenceActivitySpectator,
  LinphonePresenceActivitySteering,
  LinphonePresenceActivityTravel,
  LinphonePresenceActivityTV,
  LinphonePresenceActivityUnknown,
  LinphonePresenceActivityVacation,
  LinphonePresenceActivityWorking,
  LinphonePresenceActivityWorship
}
 Activities as defined in section 3.2 of RFC 4480. More...
 
enum  LinphonePresenceBasicStatus {
  LinphonePresenceBasicStatusOpen,
  LinphonePresenceBasicStatusClosed
}
 Basic status as defined in section 4.1.4 of RFC 3863. More...
 
enum  _LinphoneSubscribePolicy {
  LinphoneSPWait,
  LinphoneSPDeny,
  LinphoneSPAccept
}
 Enum controlling behavior for incoming subscription request. More...
 

Functions

LinphoneFriendlinphone_core_create_friend (LinphoneCore *lc)
 Create a default LinphoneFriend. More...
 
LinphoneFriendlinphone_core_create_friend_with_address (LinphoneCore *lc, const char *address)
 Create a LinphoneFriend from the given address. More...
 
LINPHONE_DEPRECATED void linphone_core_set_presence_info (LinphoneCore *lc, int minutes_away, const char *alternative_contact, LinphoneOnlineStatus os)
 Set my presence status. More...
 
void linphone_core_set_presence_model (LinphoneCore *lc, LinphonePresenceModel *presence)
 Set my presence model. More...
 
LINPHONE_DEPRECATED
LinphoneOnlineStatus 
linphone_core_get_presence_info (const LinphoneCore *lc)
 Get my presence status. More...
 
LinphonePresenceModellinphone_core_get_presence_model (const LinphoneCore *lc)
 Get my presence model. More...
 
LinphoneConsolidatedPresence linphone_core_get_consolidated_presence (const LinphoneCore *lc)
 Get my consolidated presence. More...
 
void linphone_core_set_consolidated_presence (LinphoneCore *lc, LinphoneConsolidatedPresence presence)
 Set my consolidated presence. More...
 
LINPHONE_DEPRECATED void linphone_core_interpret_friend_uri (LinphoneCore *lc, const char *uri, char **result)
 
void linphone_core_add_friend (LinphoneCore *lc, LinphoneFriend *fr)
 Add a friend to the current buddy list, if subscription attribute is set, a SIP SUBSCRIBE message is sent. More...
 
LINPHONE_DEPRECATED void linphone_core_remove_friend (LinphoneCore *lc, LinphoneFriend *fr)
 Removes a friend from the buddy list. More...
 
void linphone_core_reject_subscriber (LinphoneCore *lc, LinphoneFriend *lf)
 Black list a friend. More...
 
LINPHONE_DEPRECATED const
bctbx_list_t * 
linphone_core_get_friend_list (const LinphoneCore *lc)
 Get Buddy list of LinphoneFriend. More...
 
void linphone_core_notify_all_friends (LinphoneCore *lc, LinphonePresenceModel *presence)
 Notify all friends that have subscribed. More...
 
LINPHONE_DEPRECATED
LinphoneFriend
linphone_core_get_friend_by_address (const LinphoneCore *lc, const char *addr)
 Search a LinphoneFriend by its address. More...
 
LinphoneFriendlinphone_core_find_friend (const LinphoneCore *lc, const LinphoneAddress *addr)
 Search a LinphoneFriend by its address. More...
 
LinphoneFriendlinphone_core_get_friend_by_ref_key (const LinphoneCore *lc, const char *key)
 Search a LinphoneFriend by its reference key. More...
 
LinphoneFriendListlinphone_core_create_friend_list (LinphoneCore *lc)
 Create a new empty LinphoneFriendList object. More...
 
void linphone_core_add_friend_list (LinphoneCore *lc, LinphoneFriendList *list)
 Add a friend list. More...
 
void linphone_core_remove_friend_list (LinphoneCore *lc, LinphoneFriendList *list)
 Removes a friend list. More...
 
const bctbx_list_t * linphone_core_get_friends_lists (const LinphoneCore *lc)
 Retrieves the list of LinphoneFriendList from the core. More...
 
LinphoneFriendListlinphone_core_get_default_friend_list (const LinphoneCore *lc)
 Retrieves the first list of LinphoneFriend from the core. More...
 
LinphonePresenceActivitylinphone_core_create_presence_activity (LinphoneCore *lc, LinphonePresenceActivityType acttype, const char *description)
 Create a LinphonePresenceActivity with the given type and description. More...
 
LinphonePresenceModellinphone_core_create_presence_model (LinphoneCore *lc)
 Create a default LinphonePresenceModel. More...
 
LinphonePresenceModellinphone_core_create_presence_model_with_activity (LinphoneCore *lc, LinphonePresenceActivityType acttype, const char *description)
 Create a LinphonePresenceModel with the given activity type and activity description. More...
 
LinphonePresenceModellinphone_core_create_presence_model_with_activity_and_note (LinphoneCore *lc, LinphonePresenceActivityType acttype, const char *description, const char *note, const char *lang)
 Create a LinphonePresenceModel with the given activity type, activity description, note content and note language. More...
 
LinphonePresenceNotelinphone_core_create_presence_note (LinphoneCore *lc, const char *content, const char *lang)
 Create a LinphonePresenceNote with the given content and language. More...
 
LinphonePresencePersonlinphone_core_create_presence_person (LinphoneCore *lc, const char *id)
 Create a LinphonePresencePerson with the given id. More...
 
LinphonePresenceServicelinphone_core_create_presence_service (LinphoneCore *lc, const char *id, LinphonePresenceBasicStatus basic_status, const char *contact)
 Create a LinphonePresenceService with the given id, basic status and contact. More...
 
void linphone_core_notify_notify_presence_received (LinphoneCore *lc, LinphoneFriend *lf)
 Notifies the upper layer that a presence status has been received by calling the appropriate callback if one has been set. More...
 
void linphone_core_notify_notify_presence_received_for_uri_or_tel (LinphoneCore *lc, LinphoneFriend *lf, const char *uri_or_tel, const LinphonePresenceModel *presence_model)
 Notifies the upper layer that a presence model change has been received for the uri or telephone number given as a parameter, by calling the appropriate callback if one has been set. More...
 
LINPHONE_DEPRECATED
LinphoneFriend
linphone_friend_new (void)
 Contructor. More...
 
LINPHONE_DEPRECATED
LinphoneFriend
linphone_friend_new_with_address (const char *addr)
 Contructor same as linphone_friend_new() + linphone_friend_set_address() More...
 
LINPHONE_DEPRECATED void linphone_friend_destroy (LinphoneFriend *lf)
 Destroy a LinphoneFriend. More...
 
LinphoneStatus linphone_friend_set_address (LinphoneFriend *fr, const LinphoneAddress *address)
 Set LinphoneAddress for this friend. More...
 
const LinphoneAddresslinphone_friend_get_address (const LinphoneFriend *lf)
 Get address of this friend. More...
 
void linphone_friend_add_address (LinphoneFriend *lf, const LinphoneAddress *addr)
 Adds an address in this friend. More...
 
const bctbx_list_t * linphone_friend_get_addresses (const LinphoneFriend *lf)
 Returns a list of LinphoneAddress for this friend. More...
 
void linphone_friend_remove_address (LinphoneFriend *lf, const LinphoneAddress *addr)
 Removes an address in this friend. More...
 
void linphone_friend_add_phone_number (LinphoneFriend *lf, const char *phone)
 Adds a phone number in this friend. More...
 
bctbx_list_t * linphone_friend_get_phone_numbers (LinphoneFriend *lf)
 Returns a list of phone numbers for this friend. More...
 
void linphone_friend_remove_phone_number (LinphoneFriend *lf, const char *phone)
 Removes a phone number in this friend. More...
 
LinphoneStatus linphone_friend_set_name (LinphoneFriend *lf, const char *name)
 Set the display name for this friend. More...
 
const char * linphone_friend_get_name (const LinphoneFriend *lf)
 Get the display name for this friend. More...
 
bool_t linphone_friend_subscribes_enabled (const LinphoneFriend *lf)
 get subscription flag value More...
 
LinphoneStatus linphone_friend_enable_subscribes (LinphoneFriend *fr, bool_t val)
 Configure LinphoneFriend to subscribe to presence information. More...
 
LinphoneStatus linphone_friend_set_inc_subscribe_policy (LinphoneFriend *fr, LinphoneSubscribePolicy pol)
 Configure incoming subscription policy for this friend. More...
 
LinphoneSubscribePolicy linphone_friend_get_inc_subscribe_policy (const LinphoneFriend *lf)
 get current subscription policy for this LinphoneFriend More...
 
void linphone_friend_edit (LinphoneFriend *fr)
 Starts editing a friend configuration. More...
 
void linphone_friend_done (LinphoneFriend *fr)
 Commits modification made to the friend configuration. More...
 
LINPHONE_DEPRECATED
LinphoneOnlineStatus 
linphone_friend_get_status (const LinphoneFriend *lf)
 Get the status of a friend. More...
 
LinphoneSubscriptionState linphone_friend_get_subscription_state (const LinphoneFriend *lf)
 Get subscription state of a friend. More...
 
const LinphonePresenceModellinphone_friend_get_presence_model (const LinphoneFriend *lf)
 Get the presence model of a friend. More...
 
LinphoneConsolidatedPresence linphone_friend_get_consolidated_presence (const LinphoneFriend *lf)
 Get the consolidated presence of a friend. More...
 
const LinphonePresenceModellinphone_friend_get_presence_model_for_uri_or_tel (const LinphoneFriend *lf, const char *uri_or_tel)
 Get the presence model for a specific SIP URI or phone number of a friend. More...
 
void linphone_friend_set_presence_model (LinphoneFriend *lf, LinphonePresenceModel *presence)
 Set the presence model of a friend. More...
 
void linphone_friend_set_presence_model_for_uri_or_tel (LinphoneFriend *lf, const char *uri_or_tel, LinphonePresenceModel *presence)
 Set the presence model for a specific SIP URI or phone number of a friend. More...
 
bool_t linphone_friend_is_presence_received (const LinphoneFriend *lf)
 Tells whether we already received presence information for a friend. More...
 
void linphone_friend_set_user_data (LinphoneFriend *lf, void *data)
 Store user pointer to friend object.
 
void * linphone_friend_get_user_data (const LinphoneFriend *lf)
 Retrieve user data associated with friend.
 
BuddyInfolinphone_friend_get_info (const LinphoneFriend *lf)
 
void linphone_friend_set_ref_key (LinphoneFriend *lf, const char *key)
 Set the reference key of a friend. More...
 
const char * linphone_friend_get_ref_key (const LinphoneFriend *lf)
 Get the reference key of a friend. More...
 
bool_t linphone_friend_in_list (const LinphoneFriend *lf)
 Check that the given friend is in a friend list. More...
 
LinphoneFriendlinphone_friend_ref (LinphoneFriend *lf)
 Acquire a reference to the linphone friend. More...
 
void linphone_friend_unref (LinphoneFriend *lf)
 Release a reference to the linphone friend. More...
 
LinphoneCorelinphone_friend_get_core (const LinphoneFriend *fr)
 Returns the LinphoneCore object managing this friend, if any. More...
 
LinphoneVcardlinphone_friend_get_vcard (LinphoneFriend *fr)
 Returns the vCard object associated to this friend, if any. More...
 
void linphone_friend_set_vcard (LinphoneFriend *fr, LinphoneVcard *vcard)
 Binds a vCard object to a friend. More...
 
bool_t linphone_friend_create_vcard (LinphoneFriend *fr, const char *name)
 Creates a vCard object associated to this friend if there isn't one yet and if the full name is available, either by the parameter or the one in the friend's SIP URI. More...
 
LinphoneFriendlinphone_friend_new_from_vcard (LinphoneVcard *vcard)
 Contructor same as linphone_friend_new() + linphone_friend_set_address() More...
 
void linphone_friend_save (LinphoneFriend *fr, LinphoneCore *lc)
 Saves a friend either in database if configured, otherwise in linphonerc. More...
 
LinphoneFriendListlinphone_friend_list_ref (LinphoneFriendList *list)
 Acquire a reference to the friend list. More...
 
void linphone_friend_list_unref (LinphoneFriendList *list)
 Release reference to the friend list. More...
 
void * linphone_friend_list_get_user_data (const LinphoneFriendList *list)
 Retrieve the user pointer associated with the friend list. More...
 
void linphone_friend_list_set_user_data (LinphoneFriendList *list, void *ud)
 Assign a user pointer to the friend list. More...
 
const char * linphone_friend_list_get_display_name (const LinphoneFriendList *list)
 Get the display name of the friend list. More...
 
void linphone_friend_list_set_display_name (LinphoneFriendList *list, const char *display_name)
 Set the display name of the friend list. More...
 
const char * linphone_friend_list_get_rls_uri (const LinphoneFriendList *list)
 Get the RLS (Resource List Server) URI associated with the friend list to subscribe to these friends presence. More...
 
void linphone_friend_list_set_rls_uri (LinphoneFriendList *list, const char *rls_uri)
 Set the RLS (Resource List Server) URI associated with the friend list to subscribe to these friends presence. More...
 
const LinphoneAddresslinphone_friend_list_get_rls_address (const LinphoneFriendList *list)
 Get the RLS (Resource List Server) URI associated with the friend list to subscribe to these friends presence. More...
 
void linphone_friend_list_set_rls_address (LinphoneFriendList *list, const LinphoneAddress *rls_addr)
 Set the RLS (Resource List Server) URI associated with the friend list to subscribe to these friends presence. More...
 
LinphoneFriendListStatus linphone_friend_list_add_friend (LinphoneFriendList *list, LinphoneFriend *lf)
 Add a friend to a friend list. More...
 
LinphoneFriendListStatus linphone_friend_list_add_local_friend (LinphoneFriendList *list, LinphoneFriend *lf)
 Add a friend to a friend list. More...
 
LinphoneFriendListStatus linphone_friend_list_remove_friend (LinphoneFriendList *list, LinphoneFriend *lf)
 Remove a friend from a friend list. More...
 
const bctbx_list_t * linphone_friend_list_get_friends (const LinphoneFriendList *list)
 Retrieves the list of LinphoneFriend from this LinphoneFriendList. More...
 
LinphoneFriendlinphone_friend_list_find_friend_by_address (const LinphoneFriendList *list, const LinphoneAddress *address)
 Find a friend in the friend list using a LinphoneAddress. More...
 
LinphoneFriendlinphone_friend_list_find_friend_by_uri (const LinphoneFriendList *list, const char *uri)
 Find a friend in the friend list using an URI string. More...
 
LinphoneFriendlinphone_friend_list_find_friend_by_ref_key (const LinphoneFriendList *list, const char *ref_key)
 Find a friend in the friend list using a ref key. More...
 
void linphone_friend_list_update_subscriptions (LinphoneFriendList *list)
 Update presence subscriptions for the entire list. More...
 
void linphone_friend_list_notify_presence (LinphoneFriendList *list, LinphonePresenceModel *presence)
 Notify our presence to all the friends in the friend list that have subscribed to our presence directly (not using a RLS). More...
 
const char * linphone_friend_list_get_uri (const LinphoneFriendList *list)
 Get the URI associated with the friend list. More...
 
void linphone_friend_list_set_uri (LinphoneFriendList *list, const char *uri)
 Set the URI associated with the friend list. More...
 
void linphone_friend_list_update_revision (LinphoneFriendList *list, int rev)
 Sets the revision from the last synchronization. More...
 
LinphoneFriendListCbslinphone_friend_list_get_callbacks (const LinphoneFriendList *list)
 Get the LinphoneFriendListCbs object associated with a LinphoneFriendList. More...
 
LinphoneFriendListCbslinphone_friend_list_cbs_ref (LinphoneFriendListCbs *cbs)
 Acquire a reference to a LinphoneFriendListCbs object. More...
 
void linphone_friend_list_cbs_unref (LinphoneFriendListCbs *cbs)
 Release a reference to a LinphoneFriendListCbs object. More...
 
void * linphone_friend_list_cbs_get_user_data (const LinphoneFriendListCbs *cbs)
 Retrieve the user pointer associated with a LinphoneFriendListCbs object. More...
 
void linphone_friend_list_cbs_set_user_data (LinphoneFriendListCbs *cbs, void *ud)
 Assign a user pointer to a LinphoneFriendListCbs object. More...
 
LinphoneFriendListCbsContactCreatedCb linphone_friend_list_cbs_get_contact_created (const LinphoneFriendListCbs *cbs)
 Get the contact created callback. More...
 
void linphone_friend_list_cbs_set_contact_created (LinphoneFriendListCbs *cbs, LinphoneFriendListCbsContactCreatedCb cb)
 Set the contact created callback. More...
 
LinphoneFriendListCbsContactDeletedCb linphone_friend_list_cbs_get_contact_deleted (const LinphoneFriendListCbs *cbs)
 Get the contact deleted callback. More...
 
void linphone_friend_list_cbs_set_contact_deleted (LinphoneFriendListCbs *cbs, LinphoneFriendListCbsContactDeletedCb cb)
 Set the contact deleted callback. More...
 
LinphoneFriendListCbsContactUpdatedCb linphone_friend_list_cbs_get_contact_updated (const LinphoneFriendListCbs *cbs)
 Get the contact updated callback. More...
 
void linphone_friend_list_cbs_set_contact_updated (LinphoneFriendListCbs *cbs, LinphoneFriendListCbsContactUpdatedCb cb)
 Set the contact updated callback. More...
 
LinphoneFriendListCbsSyncStateChangedCb linphone_friend_list_cbs_get_sync_status_changed (const LinphoneFriendListCbs *cbs)
 Get the sync status changed callback. More...
 
void linphone_friend_list_cbs_set_sync_status_changed (LinphoneFriendListCbs *cbs, LinphoneFriendListCbsSyncStateChangedCb cb)
 Set the contact updated callback. More...
 
void linphone_friend_list_synchronize_friends_from_server (LinphoneFriendList *list)
 Starts a CardDAV synchronization using value set using linphone_friend_list_set_uri. More...
 
void linphone_friend_list_update_dirty_friends (LinphoneFriendList *list)
 Goes through all the LinphoneFriend that are dirty and does a CardDAV PUT to update the server. More...
 
LinphoneCorelinphone_friend_list_get_core (const LinphoneFriendList *list)
 Returns the LinphoneCore object attached to this LinphoneFriendList. More...
 
LinphoneStatus linphone_friend_list_import_friends_from_vcard4_file (LinphoneFriendList *list, const char *vcard_file)
 Creates and adds LinphoneFriend objects to LinphoneFriendList from a file that contains the vCard(s) to parse. More...
 
LinphoneStatus linphone_friend_list_import_friends_from_vcard4_buffer (LinphoneFriendList *list, const char *vcard_buffer)
 Creates and adds LinphoneFriend objects to LinphoneFriendList from a buffer that contains the vCard(s) to parse. More...
 
void linphone_friend_list_export_friends_as_vcard4_file (LinphoneFriendList *list, const char *vcard_file)
 Creates and export LinphoneFriend objects from LinphoneFriendList to a file using vCard 4 format. More...
 
void linphone_friend_list_enable_subscriptions (LinphoneFriendList *list, bool_t enabled)
 Enable subscription to NOTIFYes of all friends list. More...
 
bool_t linphone_friend_list_subscriptions_enabled (LinphoneFriendList *list)
 Gets whether subscription to NOTIFYes of all friends list are enabled or not. More...
 
LinphonePresenceModellinphone_presence_model_new_with_activity (LinphonePresenceActivityType activity, const char *description)
 Creates a presence model specifying an activity. More...
 
LinphonePresenceModellinphone_presence_model_new_with_activity_and_note (LinphonePresenceActivityType activity, const char *description, const char *note, const char *lang)
 Creates a presence model specifying an activity and adding a note. More...
 
LinphonePresenceBasicStatus linphone_presence_model_get_basic_status (const LinphonePresenceModel *model)
 Gets the basic status of a presence model. More...
 
LinphoneStatus linphone_presence_model_set_basic_status (LinphonePresenceModel *model, LinphonePresenceBasicStatus basic_status)
 Sets the basic status of a presence model. More...
 
time_t linphone_presence_model_get_timestamp (const LinphonePresenceModel *model)
 Gets the timestamp of a presence model. More...
 
char * linphone_presence_model_get_contact (const LinphonePresenceModel *model)
 Gets the contact of a presence model. More...
 
LinphoneStatus linphone_presence_model_set_contact (LinphonePresenceModel *model, const char *contact)
 Sets the contact of a presence model. More...
 
LinphoneStatus linphone_presence_model_set_presentity (LinphonePresenceModel *model, const LinphoneAddress *presentity)
 Sets the presentity of a presence model. More...
 
const LinphoneAddresslinphone_presence_model_get_presentity (const LinphonePresenceModel *model)
 Gets the presentity of a presence model. More...
 
LinphonePresenceActivitylinphone_presence_model_get_activity (const LinphonePresenceModel *model)
 Gets the first activity of a presence model (there is usually only one). More...
 
LinphoneStatus linphone_presence_model_set_activity (LinphonePresenceModel *model, LinphonePresenceActivityType activity, const char *description)
 Sets the activity of a presence model (limits to only one activity). More...
 
unsigned int linphone_presence_model_get_nb_activities (const LinphonePresenceModel *model)
 Gets the number of activities included in the presence model. More...
 
LinphonePresenceActivitylinphone_presence_model_get_nth_activity (const LinphonePresenceModel *model, unsigned int idx)
 Gets the nth activity of a presence model. More...
 
LinphoneStatus linphone_presence_model_add_activity (LinphonePresenceModel *model, LinphonePresenceActivity *activity)
 Adds an activity to a presence model. More...
 
LinphoneStatus linphone_presence_model_clear_activities (LinphonePresenceModel *model)
 Clears the activities of a presence model. More...
 
LinphonePresenceNotelinphone_presence_model_get_note (const LinphonePresenceModel *model, const char *lang)
 Gets the first note of a presence model (there is usually only one). More...
 
LinphoneStatus linphone_presence_model_add_note (LinphonePresenceModel *model, const char *note_content, const char *lang)
 Adds a note to a presence model. More...
 
LinphoneStatus linphone_presence_model_clear_notes (LinphonePresenceModel *model)
 Clears all the notes of a presence model. More...
 
LinphoneConsolidatedPresence linphone_presence_model_get_consolidated_presence (const LinphonePresenceModel *model)
 Get the consolidated presence from a presence model. More...
 
LinphonePresenceModellinphone_presence_model_new (void)
 Creates a default presence model. More...
 
unsigned int linphone_presence_model_get_nb_services (const LinphonePresenceModel *model)
 Gets the number of services included in the presence model. More...
 
LinphonePresenceServicelinphone_presence_model_get_nth_service (const LinphonePresenceModel *model, unsigned int idx)
 Gets the nth service of a presence model. More...
 
LinphoneStatus linphone_presence_model_add_service (LinphonePresenceModel *model, LinphonePresenceService *service)
 Adds a service to a presence model. More...
 
LinphoneStatus linphone_presence_model_clear_services (LinphonePresenceModel *model)
 Clears the services of a presence model. More...
 
unsigned int linphone_presence_model_get_nb_persons (const LinphonePresenceModel *model)
 Gets the number of persons included in the presence model. More...
 
LinphonePresencePersonlinphone_presence_model_get_nth_person (const LinphonePresenceModel *model, unsigned int idx)
 Gets the nth person of a presence model. More...
 
LinphoneStatus linphone_presence_model_add_person (LinphonePresenceModel *model, LinphonePresencePerson *person)
 Adds a person to a presence model. More...
 
LinphoneStatus linphone_presence_model_clear_persons (LinphonePresenceModel *model)
 Clears the persons of a presence model. More...
 
bool_t linphone_presence_model_is_online (const LinphonePresenceModel *model)
 Tells whether a presence model is considered online. More...
 
char * linphone_presence_basic_status_to_string (LinphonePresenceBasicStatus basic_status)
 Gets the string representation of a presence basic status. More...
 
LinphonePresenceServicelinphone_presence_service_new (const char *id, LinphonePresenceBasicStatus basic_status, const char *contact)
 Creates a presence service. More...
 
char * linphone_presence_service_get_id (const LinphonePresenceService *service)
 Gets the id of a presence service. More...
 
LinphoneStatus linphone_presence_service_set_id (LinphonePresenceService *service, const char *id)
 Sets the id of a presence service. More...
 
LinphonePresenceBasicStatus linphone_presence_service_get_basic_status (const LinphonePresenceService *service)
 Gets the basic status of a presence service. More...
 
LinphoneStatus linphone_presence_service_set_basic_status (LinphonePresenceService *service, LinphonePresenceBasicStatus basic_status)
 Sets the basic status of a presence service. More...
 
char * linphone_presence_service_get_contact (const LinphonePresenceService *service)
 Gets the contact of a presence service. More...
 
LinphoneStatus linphone_presence_service_set_contact (LinphonePresenceService *service, const char *contact)
 Sets the contact of a presence service. More...
 
unsigned int linphone_presence_service_get_nb_notes (const LinphonePresenceService *service)
 Gets the number of notes included in the presence service. More...
 
LinphonePresenceNotelinphone_presence_service_get_nth_note (const LinphonePresenceService *service, unsigned int idx)
 Gets the nth note of a presence service. More...
 
LinphoneStatus linphone_presence_service_add_note (LinphonePresenceService *service, LinphonePresenceNote *note)
 Adds a note to a presence service. More...
 
LinphoneStatus linphone_presence_service_clear_notes (LinphonePresenceService *service)
 Clears the notes of a presence service. More...
 
LinphonePresencePersonlinphone_presence_person_new (const char *id)
 Creates a presence person. More...
 
char * linphone_presence_person_get_id (const LinphonePresencePerson *person)
 Gets the id of a presence person. More...
 
LinphoneStatus linphone_presence_person_set_id (LinphonePresencePerson *person, const char *id)
 Sets the id of a presence person. More...
 
unsigned int linphone_presence_person_get_nb_activities (const LinphonePresencePerson *person)
 Gets the number of activities included in the presence person. More...
 
LinphonePresenceActivitylinphone_presence_person_get_nth_activity (const LinphonePresencePerson *person, unsigned int idx)
 Gets the nth activity of a presence person. More...
 
LinphoneStatus linphone_presence_person_add_activity (LinphonePresencePerson *person, LinphonePresenceActivity *activity)
 Adds an activity to a presence person. More...
 
LinphoneStatus linphone_presence_person_clear_activities (LinphonePresencePerson *person)
 Clears the activities of a presence person. More...
 
unsigned int linphone_presence_person_get_nb_notes (const LinphonePresencePerson *person)
 Gets the number of notes included in the presence person. More...
 
LinphonePresenceNotelinphone_presence_person_get_nth_note (const LinphonePresencePerson *person, unsigned int idx)
 Gets the nth note of a presence person. More...
 
LinphoneStatus linphone_presence_person_add_note (LinphonePresencePerson *person, LinphonePresenceNote *note)
 Adds a note to a presence person. More...
 
LinphoneStatus linphone_presence_person_clear_notes (LinphonePresencePerson *person)
 Clears the notes of a presence person. More...
 
unsigned int linphone_presence_person_get_nb_activities_notes (const LinphonePresencePerson *person)
 Gets the number of activities notes included in the presence person. More...
 
LinphonePresenceNotelinphone_presence_person_get_nth_activities_note (const LinphonePresencePerson *person, unsigned int idx)
 Gets the nth activities note of a presence person. More...
 
LinphoneStatus linphone_presence_person_add_activities_note (LinphonePresencePerson *person, LinphonePresenceNote *note)
 Adds an activities note to a presence person. More...
 
LinphoneStatus linphone_presence_person_clear_activities_notes (LinphonePresencePerson *person)
 Clears the activities notes of a presence person. More...
 
LinphonePresenceActivitylinphone_presence_activity_new (LinphonePresenceActivityType acttype, const char *description)
 Creates a presence activity. More...
 
char * linphone_presence_activity_to_string (const LinphonePresenceActivity *activity)
 Gets the string representation of a presence activity. More...
 
LinphonePresenceActivityType linphone_presence_activity_get_type (const LinphonePresenceActivity *activity)
 Gets the activity type of a presence activity. More...
 
LinphoneStatus linphone_presence_activity_set_type (LinphonePresenceActivity *activity, LinphonePresenceActivityType acttype)
 Sets the type of activity of a presence activity. More...
 
const char * linphone_presence_activity_get_description (const LinphonePresenceActivity *activity)
 Gets the description of a presence activity. More...
 
LinphoneStatus linphone_presence_activity_set_description (LinphonePresenceActivity *activity, const char *description)
 Sets the description of a presence activity. More...
 
LinphonePresenceNotelinphone_presence_note_new (const char *content, const char *lang)
 Creates a presence note. More...
 
const char * linphone_presence_note_get_content (const LinphonePresenceNote *note)
 Gets the content of a presence note. More...
 
LinphoneStatus linphone_presence_note_set_content (LinphonePresenceNote *note, const char *content)
 Sets the content of a presence note. More...
 
const char * linphone_presence_note_get_lang (const LinphonePresenceNote *note)
 Gets the language of a presence note. More...
 
LinphoneStatus linphone_presence_note_set_lang (LinphonePresenceNote *note, const char *lang)
 Sets the language of a presence note. More...
 
LinphonePresenceModellinphone_presence_model_ref (LinphonePresenceModel *model)
 Increase the reference count of the LinphonePresenceModel object. More...
 
LinphonePresenceModellinphone_presence_model_unref (LinphonePresenceModel *model)
 Decrease the reference count of the LinphonePresenceModel object and destroy it if it reaches 0. More...
 
void linphone_presence_model_set_user_data (LinphonePresenceModel *model, void *user_data)
 Sets the user data of a LinphonePresenceModel object. More...
 
void * linphone_presence_model_get_user_data (const LinphonePresenceModel *model)
 Gets the user data of a LinphonePresenceModel object. More...
 
LinphonePresenceServicelinphone_presence_service_ref (LinphonePresenceService *service)
 Increase the reference count of the LinphonePresenceService object. More...
 
LinphonePresenceServicelinphone_presence_service_unref (LinphonePresenceService *service)
 Decrease the reference count of the LinphonePresenceService object and destroy it if it reaches 0. More...
 
void linphone_presence_service_set_user_data (LinphonePresenceService *service, void *user_data)
 Sets the user data of a LinphonePresenceService object. More...
 
void * linphone_presence_service_get_user_data (const LinphonePresenceService *service)
 Gets the user data of a LinphonePresenceService object. More...
 
LinphonePresencePersonlinphone_presence_person_ref (LinphonePresencePerson *person)
 Increase the reference count of the LinphonePresencePerson object. More...
 
LinphonePresencePersonlinphone_presence_person_unref (LinphonePresencePerson *person)
 Decrease the reference count of the LinphonePresencePerson object and destroy it if it reaches 0. More...
 
void linphone_presence_person_set_user_data (LinphonePresencePerson *person, void *user_data)
 Sets the user data of a LinphonePresencePerson object. More...
 
void * linphone_presence_person_get_user_data (const LinphonePresencePerson *person)
 Gets the user data of a LinphonePresencePerson object. More...
 
LinphonePresenceActivitylinphone_presence_activity_ref (LinphonePresenceActivity *activity)
 Increase the reference count of the LinphonePresenceActivity object. More...
 
LinphonePresenceActivitylinphone_presence_activity_unref (LinphonePresenceActivity *activity)
 Decrease the reference count of the LinphonePresenceActivity object and destroy it if it reaches 0. More...
 
void linphone_presence_activity_set_user_data (LinphonePresenceActivity *activity, void *user_data)
 Sets the user data of a LinphonePresenceActivity object. More...
 
void * linphone_presence_activity_get_user_data (const LinphonePresenceActivity *activity)
 Gets the user data of a LinphonePresenceActivity object. More...
 
LinphonePresenceNotelinphone_presence_note_ref (LinphonePresenceNote *note)
 Increase the reference count of the LinphonePresenceNote object. More...
 
LinphonePresenceNotelinphone_presence_note_unref (LinphonePresenceNote *note)
 Decrease the reference count of the LinphonePresenceNote object and destroy it if it reaches 0. More...
 
void linphone_presence_note_set_user_data (LinphonePresenceNote *note, void *user_data)
 Sets the user data of a LinphonePresenceNote object. More...
 
void * linphone_presence_note_get_user_data (const LinphonePresenceNote *note)
 Gets the user data of a LinphonePresenceNote object. More...
 

Detailed Description

Managing Buddies and buddy list and presence.

Buddies and buddy list
Each buddy is represented by a LinphoneFriend object created by function linphone_friend_new(). Buddy configuration parameters like sip uri or status publication policy for this * friend are configurable for each buddy.
Here under a typical buddy creation:

LinphoneFriend* my_friend=linphone_friend_new_with_addr("sip:joe@sip.linphone.org"); /*creates friend object for buddy joe*/
linphone_friend_enable_subscribes(my_friend,TRUE); /*configure this friend to emit SUBSCRIBE message after being added to LinphoneCore*/
linphone_friend_set_inc_subscribe_policy(my_friend,LinphoneSPAccept); /* accept Incoming subscription request for this friend*/

friends status changes are reported by callback LinphoneCoreVTable.notify_presence_recv

static void notify_presence_recv_updated (struct _LinphoneCore *lc, LinphoneFriend *friend) {
const LinphoneAddress* friend_address = linphone_friend_get_address(friend);
printf("New state state [%s] for user id [%s] \n"
,linphone_online_status_to_string(linphone_friend_get_status(friend))
,linphone_address_as_string (friend_address));
}


Once created a buddy can be added to the buddy list using function linphone_core_add_friend() . Added friends will be notified about local status changes
Any subsequente modifications to LinphoneFriend must be first started by a call to function linphone_friend_edit() and validated by function linphone_friend_done()

linphone_friend_edit(my_friend); /* start editing friend */
linphone_friend_enable_subscribes(my_friend,FALSE); /*disable subscription for this friend*/
linphone_friend_done(my_friend); /*commit changes triggering an UNSUBSCRIBE message*/

Publishing presence status
Local presence status can be changed using function linphone_core_set_presence_model() .New status is propagated to all friends previously added to LinphoneCore.

Handling incoming subscription request
New incoming subscription requests are process according to the incoming subscription policy state for subscription initiated by members of the buddy list.
For incoming request comming from an unknown buddy, the call back LinphoneCoreVTable.new_subscription_request is invoked.


A complete tutorial can be found at : Registration tutorial

Macro Definition Documentation

#define linphone_friend_new_with_addr   linphone_friend_new_with_address
#define linphone_friend_set_addr   linphone_friend_set_address

Set LinphoneAddress for this friend.

Deprecated:
Use linphone_friend_set_address instead

Typedef Documentation

typedef void(* LinphoneFriendListCbsContactCreatedCb)(LinphoneFriendList *list, LinphoneFriend *lf)

Callback used to notify a new contact has been created on the CardDAV server and downloaded locally.

Parameters
listThe LinphoneFriendList object the new contact is added to
lfThe LinphoneFriend object that has been created
typedef void(* LinphoneFriendListCbsContactDeletedCb)(LinphoneFriendList *list, LinphoneFriend *lf)

Callback used to notify a contact has been deleted on the CardDAV server.

Parameters
listThe LinphoneFriendList object a contact has been removed from
lfThe LinphoneFriend object that has been deleted
typedef void(* LinphoneFriendListCbsContactUpdatedCb)(LinphoneFriendList *list, LinphoneFriend *new_friend, LinphoneFriend *old_friend)

Callback used to notify a contact has been updated on the CardDAV server.

Parameters
listThe LinphoneFriendList object in which a contact has been updated
new_friendThe new LinphoneFriend object corresponding to the updated contact
old_friendThe old LinphoneFriend object before update
typedef void(* LinphoneFriendListCbsSyncStateChangedCb)(LinphoneFriendList *list, LinphoneFriendListSyncStatus status, const char *msg)

Callback used to notify the status of the synchronization has changed.

Parameters
listThe LinphoneFriendList object for which the status has changed
statusThe new synchronisation status
msgAn additional information on the status update

Enum controlling behavior for incoming subscription request.

Use by linphone_friend_set_inc_subscribe_policy()

Enumeration Type Documentation

Enum controlling behavior for incoming subscription request.

Use by linphone_friend_set_inc_subscribe_policy()

Enumerator
LinphoneSPWait 

Does not automatically accept an incoming subscription request.

This policy implies that a decision has to be taken for each incoming subscription request notified by callback LinphoneCoreVTable.new_subscription_requested

LinphoneSPDeny 

Rejects incoming subscription request.

LinphoneSPAccept 

Automatically accepts a subscription request.

Activities as defined in section 3.2 of RFC 4480.

Enumerator
LinphonePresenceActivityAppointment 

The person has a calendar appointment, without specifying exactly of what type.

This activity is indicated if more detailed information is not available or the person chooses not to reveal more information.

LinphonePresenceActivityAway 

The person is physically away from all interactive communication devices.

LinphonePresenceActivityBreakfast 

The person is eating the first meal of the day, usually eaten in the morning.

LinphonePresenceActivityBusy 

The person is busy, without further details.

LinphonePresenceActivityDinner 

The person is having his or her main meal of the day, eaten in the evening or at midday.

LinphonePresenceActivityHoliday 

This is a scheduled national or local holiday.

LinphonePresenceActivityInTransit 

The person is riding in a vehicle, such as a car, but not steering.

LinphonePresenceActivityLookingForWork 

The person is looking for (paid) work.

LinphonePresenceActivityLunch 

The person is eating his or her midday meal.

LinphonePresenceActivityMeal 

The person is scheduled for a meal, without specifying whether it is breakfast, lunch, or dinner, or some other meal.

LinphonePresenceActivityMeeting 

The person is in an assembly or gathering of people, as for a business, social, or religious purpose.

A meeting is a sub-class of an appointment.

LinphonePresenceActivityOnThePhone 

The person is talking on the telephone.

LinphonePresenceActivityOther 

The person is engaged in an activity with no defined representation.

A string describing the activity in plain text SHOULD be provided.

LinphonePresenceActivityPerformance 

A performance is a sub-class of an appointment and includes musical, theatrical, and cinematic performances as well as lectures.

It is distinguished from a meeting by the fact that the person may either be lecturing or be in the audience, with a potentially large number of other people, making interruptions particularly noticeable.

LinphonePresenceActivityPermanentAbsence 

The person will not return for the foreseeable future, e.g., because it is no longer working for the company.

LinphonePresenceActivityPlaying 

The person is occupying himself or herself in amusement, sport, or other recreation.

LinphonePresenceActivityPresentation 

The person is giving a presentation, lecture, or participating in a formal round-table discussion.

LinphonePresenceActivityShopping 

The person is visiting stores in search of goods or services.

LinphonePresenceActivitySleeping 

The person is sleeping.

LinphonePresenceActivitySpectator 

The person is observing an event, such as a sports event.

LinphonePresenceActivitySteering 

The person is controlling a vehicle, watercraft, or plane.

LinphonePresenceActivityTravel 

The person is on a business or personal trip, but not necessarily in-transit.

LinphonePresenceActivityTV 

The person is watching television.

LinphonePresenceActivityUnknown 

The activity of the person is unknown.

LinphonePresenceActivityVacation 

A period of time devoted to pleasure, rest, or relaxation.

LinphonePresenceActivityWorking 

The person is engaged in, typically paid, labor, as part of a profession or job.

LinphonePresenceActivityWorship 

The person is participating in religious rites.

Basic status as defined in section 4.1.4 of RFC 3863.

Enumerator
LinphonePresenceBasicStatusOpen 

This value means that the associated contact element, if any, is ready to accept communication.

LinphonePresenceBasicStatusClosed 

This value means that the associated contact element, if any, is unable to accept communication.

Function Documentation

void linphone_core_add_friend ( LinphoneCore lc,
LinphoneFriend fr 
)

Add a friend to the current buddy list, if subscription attribute is set, a SIP SUBSCRIBE message is sent.

Parameters
lcLinphoneCore object
frLinphoneFriend to add
Deprecated:
use linphone_friend_list_add_friend() instead.
void linphone_core_add_friend_list ( LinphoneCore lc,
LinphoneFriendList list 
)

Add a friend list.

Parameters
[in]lcLinphoneCore object
[in]listLinphoneFriendList object
LinphoneFriend* linphone_core_create_friend ( LinphoneCore lc)

Create a default LinphoneFriend.

Parameters
[in]lcLinphoneCore object
Returns
The created LinphoneFriend object
LinphoneFriendList* linphone_core_create_friend_list ( LinphoneCore lc)

Create a new empty LinphoneFriendList object.

Parameters
[in]lcLinphoneCore object.
Returns
A new LinphoneFriendList object.
LinphoneFriend* linphone_core_create_friend_with_address ( LinphoneCore lc,
const char *  address 
)

Create a LinphoneFriend from the given address.

Parameters
[in]lcLinphoneCore object
[in]addressA string containing the address to create the LinphoneFriend from
Returns
The created LinphoneFriend object
LinphonePresenceActivity* linphone_core_create_presence_activity ( LinphoneCore lc,
LinphonePresenceActivityType  acttype,
const char *  description 
)

Create a LinphonePresenceActivity with the given type and description.

Parameters
[in]lcLinphoneCore object.
[in]acttypeThe LinphonePresenceActivityType to set for the activity.
[in]descriptionAn additional description of the activity to set for the activity. Can be NULL if no additional description is to be added.
Returns
The created LinphonePresenceActivity object.
LinphonePresenceModel* linphone_core_create_presence_model ( LinphoneCore lc)

Create a default LinphonePresenceModel.

Parameters
[in]lcLinphoneCore object.
Returns
The created LinphonePresenceModel object.
LinphonePresenceModel* linphone_core_create_presence_model_with_activity ( LinphoneCore lc,
LinphonePresenceActivityType  acttype,
const char *  description 
)

Create a LinphonePresenceModel with the given activity type and activity description.

Parameters
[in]lcLinphoneCore object.
[in]acttypeThe LinphonePresenceActivityType to set for the activity of the created model.
[in]descriptionAn additional description of the activity to set for the activity. Can be NULL if no additional description is to be added.
Returns
The created LinphonePresenceModel object.
LinphonePresenceModel* linphone_core_create_presence_model_with_activity_and_note ( LinphoneCore lc,
LinphonePresenceActivityType  acttype,
const char *  description,
const char *  note,
const char *  lang 
)

Create a LinphonePresenceModel with the given activity type, activity description, note content and note language.

Parameters
[in]lcLinphoneCore object.
[in]acttypeThe LinphonePresenceActivityType to set for the activity of the created model.
[in]descriptionAn additional description of the activity to set for the activity. Can be NULL if no additional description is to be added.
[in]noteThe content of the note to be added to the created model.
[in]langThe language of the note to be added to the created model.
Returns
The created LinphonePresenceModel object.
LinphonePresenceNote* linphone_core_create_presence_note ( LinphoneCore lc,
const char *  content,
const char *  lang 
)

Create a LinphonePresenceNote with the given content and language.

Parameters
[in]lcLinphoneCore object.
[in]contentThe content of the note to be created.
[in]langThe language of the note to be created.
Returns
The created LinphonePresenceNote object.
LinphonePresencePerson* linphone_core_create_presence_person ( LinphoneCore lc,
const char *  id 
)

Create a LinphonePresencePerson with the given id.

Parameters
[in]lcLinphoneCore object
[in]idThe id of the person to be created.
Returns
The created LinphonePresencePerson object.
LinphonePresenceService* linphone_core_create_presence_service ( LinphoneCore lc,
const char *  id,
LinphonePresenceBasicStatus  basic_status,
const char *  contact 
)

Create a LinphonePresenceService with the given id, basic status and contact.

Parameters
[in]lcLinphoneCore object.
[in]idThe id of the service to be created.
[in]basic_statusThe basic status of the service to be created.
[in]contactA string containing a contact information corresponding to the service to be created.
Returns
The created LinphonePresenceService object.
LinphoneFriend* linphone_core_find_friend ( const LinphoneCore lc,
const LinphoneAddress addr 
)

Search a LinphoneFriend by its address.

Parameters
[in]lcLinphoneCore object.
[in]addrThe address to use to search the friend.
Returns
The LinphoneFriend object corresponding to the given address.
LinphoneConsolidatedPresence linphone_core_get_consolidated_presence ( const LinphoneCore lc)

Get my consolidated presence.

Parameters
[in]lcLinphoneCore object
Returns
My consolidated presence
LinphoneFriendList* linphone_core_get_default_friend_list ( const LinphoneCore lc)

Retrieves the first list of LinphoneFriend from the core.

Parameters
[in]lcLinphoneCore object
Returns
the first LinphoneFriendList object or NULL
LINPHONE_DEPRECATED LinphoneFriend* linphone_core_get_friend_by_address ( const LinphoneCore lc,
const char *  addr 
)

Search a LinphoneFriend by its address.

Parameters
[in]lcLinphoneCore object.
[in]addrThe address to use to search the friend.
Returns
The LinphoneFriend object corresponding to the given address.
Deprecated:
use linphone_core_find_friend() instead.
LinphoneFriend* linphone_core_get_friend_by_ref_key ( const LinphoneCore lc,
const char *  key 
)

Search a LinphoneFriend by its reference key.

Parameters
[in]lcLinphoneCore object.
[in]keyThe reference key to use to search the friend.
Returns
The LinphoneFriend object corresponding to the given reference key.
LINPHONE_DEPRECATED const bctbx_list_t* linphone_core_get_friend_list ( const LinphoneCore lc)

Get Buddy list of LinphoneFriend.

Parameters
[in]lcLinphoneCore object
Returns
A list of LinphoneFriend objects.
Deprecated:
use linphone_core_get_friends_lists() or linphone_friend_list_get_friends() instead.
const bctbx_list_t* linphone_core_get_friends_lists ( const LinphoneCore lc)

Retrieves the list of LinphoneFriendList from the core.

Parameters
[in]lcLinphoneCore object
Returns
A list of LinphoneFriendList objects. a list of LinphoneFriendList
LINPHONE_DEPRECATED LinphoneOnlineStatus linphone_core_get_presence_info ( const LinphoneCore lc)

Get my presence status.

Parameters
[in]lcLinphoneCore object
Returns
#LinphoneOnlineStatus
Deprecated:
Use linphone_core_get_presence_model() instead
LinphonePresenceModel* linphone_core_get_presence_model ( const LinphoneCore lc)

Get my presence model.

Parameters
[in]lcLinphoneCore object
Returns
A LinphonePresenceModel object, or NULL if no presence model has been set.
LINPHONE_DEPRECATED void linphone_core_interpret_friend_uri ( LinphoneCore lc,
const char *  uri,
char **  result 
)
void linphone_core_notify_all_friends ( LinphoneCore lc,
LinphonePresenceModel presence 
)

Notify all friends that have subscribed.

Parameters
lcLinphoneCore object
presenceLinphonePresenceModel to notify
void linphone_core_notify_notify_presence_received ( LinphoneCore lc,
LinphoneFriend lf 
)

Notifies the upper layer that a presence status has been received by calling the appropriate callback if one has been set.

This method is for advanced usage, where customization of the liblinphone's internal behavior is required.

Parameters
[in]lcthe LinphoneCore object.
[in]lfthe LinphoneFriend whose presence information has been received.
void linphone_core_notify_notify_presence_received_for_uri_or_tel ( LinphoneCore lc,
LinphoneFriend lf,
const char *  uri_or_tel,
const LinphonePresenceModel presence_model 
)

Notifies the upper layer that a presence model change has been received for the uri or telephone number given as a parameter, by calling the appropriate callback if one has been set.

This method is for advanced usage, where customization of the liblinphone's internal behavior is required.

Parameters
[in]lcthe LinphoneCore object.
[in]lfthe LinphoneFriend whose presence information has been received.
[in]uri_or_teltelephone number or sip uri
[in]presence_modelthe LinphonePresenceModel that has been modified
void linphone_core_reject_subscriber ( LinphoneCore lc,
LinphoneFriend lf 
)

Black list a friend.

same as linphone_friend_set_inc_subscribe_policy() with LinphoneSPDeny policy;

Parameters
lcLinphoneCore object
lfLinphoneFriend to add
LINPHONE_DEPRECATED void linphone_core_remove_friend ( LinphoneCore lc,
LinphoneFriend fr 
)

Removes a friend from the buddy list.

Parameters
lcLinphoneCore object
frLinphoneFriend to remove
Deprecated:
use linphone_friend_list_remove_friend() instead.
void linphone_core_remove_friend_list ( LinphoneCore lc,
LinphoneFriendList list 
)

Removes a friend list.

Parameters
[in]lcLinphoneCore object
[in]listLinphoneFriendList object
void linphone_core_set_consolidated_presence ( LinphoneCore lc,
LinphoneConsolidatedPresence  presence 
)

Set my consolidated presence.

Parameters
[in]lcLinphoneCore object
[in]presenceLinphoneConsolidatedPresence value
LINPHONE_DEPRECATED void linphone_core_set_presence_info ( LinphoneCore lc,
int  minutes_away,
const char *  alternative_contact,
LinphoneOnlineStatus  os 
)

Set my presence status.

Parameters
[in]lcLinphoneCore object
[in]minutes_awayhow long in away
[in]alternative_contactsip uri used to redirect call in state #LinphoneStatusMoved
[in]os#LinphoneOnlineStatus
Deprecated:
Use linphone_core_set_presence_model() instead
void linphone_core_set_presence_model ( LinphoneCore lc,
LinphonePresenceModel presence 
)

Set my presence model.

Parameters
[in]lcLinphoneCore object
[in]presenceLinphonePresenceModel
void linphone_friend_add_address ( LinphoneFriend lf,
const LinphoneAddress addr 
)

Adds an address in this friend.

Parameters
lfLinphoneFriend object
addrLinphoneAddress object
void linphone_friend_add_phone_number ( LinphoneFriend lf,
const char *  phone 
)

Adds a phone number in this friend.

Parameters
lfLinphoneFriend object
phonenumber to add
bool_t linphone_friend_create_vcard ( LinphoneFriend fr,
const char *  name 
)

Creates a vCard object associated to this friend if there isn't one yet and if the full name is available, either by the parameter or the one in the friend's SIP URI.

Parameters
[in]frLinphoneFriend object
[in]nameThe full name of the friend or NULL to use the one from the friend's SIP URI
Returns
true if the vCard has been created, false if it wasn't possible (for exemple if name and the friend's SIP URI are null or if the friend's SIP URI doesn't have a display name), or if there is already one vcard
LINPHONE_DEPRECATED void linphone_friend_destroy ( LinphoneFriend lf)

Destroy a LinphoneFriend.

Parameters
lfLinphoneFriend object
Deprecated:
Use linphone_friend_unref() instead.
void linphone_friend_done ( LinphoneFriend fr)

Commits modification made to the friend configuration.

Parameters
frLinphoneFriend object
void linphone_friend_edit ( LinphoneFriend fr)

Starts editing a friend configuration.

Because friend configuration must be consistent, applications MUST call linphone_friend_edit() before doing any attempts to modify friend configuration (such as address or subscription policy and so on). Once the modifications are done, then the application must call linphone_friend_done() to commit the changes.

LinphoneStatus linphone_friend_enable_subscribes ( LinphoneFriend fr,
bool_t  val 
)

Configure LinphoneFriend to subscribe to presence information.

Parameters
frLinphoneFriend object
valif TRUE this friend will receive subscription message
const LinphoneAddress* linphone_friend_get_address ( const LinphoneFriend lf)

Get address of this friend.

Note
the LinphoneAddress object returned is hold by the LinphoneFriend, however calling several time this function may return different objects.
Parameters
lfLinphoneFriend object
Returns
LinphoneAddress
const bctbx_list_t* linphone_friend_get_addresses ( const LinphoneFriend lf)

Returns a list of LinphoneAddress for this friend.

Parameters
lfLinphoneFriend object
Returns
A list of LinphoneAddress objects.
LinphoneConsolidatedPresence linphone_friend_get_consolidated_presence ( const LinphoneFriend lf)

Get the consolidated presence of a friend.

Parameters
[in]lfLinphoneFriend object
Returns
The consolidated presence of the friend
LinphoneCore* linphone_friend_get_core ( const LinphoneFriend fr)

Returns the LinphoneCore object managing this friend, if any.

Parameters
[in]frLinphoneFriend object
LinphoneSubscribePolicy linphone_friend_get_inc_subscribe_policy ( const LinphoneFriend lf)

get current subscription policy for this LinphoneFriend

Parameters
lfLinphoneFriend object
Returns
LinphoneSubscribePolicy
const char* linphone_friend_get_name ( const LinphoneFriend lf)

Get the display name for this friend.

Parameters
lfLinphoneFriend object
Returns
The display name of this friend
bctbx_list_t* linphone_friend_get_phone_numbers ( LinphoneFriend lf)

Returns a list of phone numbers for this friend.

Parameters
lfLinphoneFriend object
Returns
A list of const char * objects.
const LinphonePresenceModel* linphone_friend_get_presence_model ( const LinphoneFriend lf)

Get the presence model of a friend.

Parameters
[in]lfA LinphoneFriend object
Returns
A LinphonePresenceModel object, or NULL if the friend do not have presence information (in which case he is considered offline)
const LinphonePresenceModel* linphone_friend_get_presence_model_for_uri_or_tel ( const LinphoneFriend lf,
const char *  uri_or_tel 
)

Get the presence model for a specific SIP URI or phone number of a friend.

Parameters
[in]lfA LinphoneFriend object
[in]uri_or_telThe SIP URI or phone number for which to get the presence model
Returns
A LinphonePresenceModel object, or NULL if the friend do not have presence information for this SIP URI or phone number
const char* linphone_friend_get_ref_key ( const LinphoneFriend lf)

Get the reference key of a friend.

Parameters
[in]lfLinphoneFriend object.
Returns
The reference key of the friend.
LINPHONE_DEPRECATED LinphoneOnlineStatus linphone_friend_get_status ( const LinphoneFriend lf)

Get the status of a friend.

Parameters
[in]lfA LinphoneFriend object
Returns
#LinphoneOnlineStatus
Deprecated:
Use linphone_friend_get_presence_model() instead
LinphoneSubscriptionState linphone_friend_get_subscription_state ( const LinphoneFriend lf)

Get subscription state of a friend.

Parameters
[in]lfA LinphoneFriend object
Returns
LinphoneSubscriptionState
LinphoneVcard* linphone_friend_get_vcard ( LinphoneFriend fr)

Returns the vCard object associated to this friend, if any.

Parameters
[in]frLinphoneFriend object
bool_t linphone_friend_in_list ( const LinphoneFriend lf)

Check that the given friend is in a friend list.

Parameters
[in]lfLinphoneFriend object.
Returns
TRUE if the friend is in a friend list, FALSE otherwise.
bool_t linphone_friend_is_presence_received ( const LinphoneFriend lf)

Tells whether we already received presence information for a friend.

Parameters
[in]lfA LinphoneFriend object
Returns
TRUE if presence information has been received for the friend, FALSE otherwise.
LinphoneFriendListStatus linphone_friend_list_add_friend ( LinphoneFriendList list,
LinphoneFriend lf 
)

Add a friend to a friend list.

If or when a remote CardDAV server will be attached to the list, the friend will be sent to the server.

Parameters
[in]listLinphoneFriendList object.
[in]lfLinphoneFriend object to add to the friend list.
Returns
LinphoneFriendListOK if successfully added, LinphoneFriendListInvalidFriend if the friend is not valid.
LinphoneFriendListStatus linphone_friend_list_add_local_friend ( LinphoneFriendList list,
LinphoneFriend lf 
)

Add a friend to a friend list.

The friend will never be sent to a remote CardDAV server. Warning! LinphoneFriends added this way will be removed on the next synchronization, and the callback contact_deleted will be called.

Parameters
[in]listLinphoneFriendList object.
[in]lfLinphoneFriend object to add to the friend list.
Returns
LinphoneFriendListOK if successfully added, LinphoneFriendListInvalidFriend if the friend is not valid.
LinphoneFriendListCbsContactCreatedCb linphone_friend_list_cbs_get_contact_created ( const LinphoneFriendListCbs cbs)

Get the contact created callback.

Parameters
[in]cbsLinphoneFriendListCbs object.
Returns
The current contact created callback.
LinphoneFriendListCbsContactDeletedCb linphone_friend_list_cbs_get_contact_deleted ( const LinphoneFriendListCbs cbs)

Get the contact deleted callback.

Parameters
[in]cbsLinphoneFriendListCbs object.
Returns
The current contact deleted callback.
LinphoneFriendListCbsContactUpdatedCb linphone_friend_list_cbs_get_contact_updated ( const LinphoneFriendListCbs cbs)

Get the contact updated callback.

Parameters
[in]cbsLinphoneFriendListCbs object.
Returns
The current contact updated callback.
LinphoneFriendListCbsSyncStateChangedCb linphone_friend_list_cbs_get_sync_status_changed ( const LinphoneFriendListCbs cbs)

Get the sync status changed callback.

Parameters
[in]cbsLinphoneFriendListCbs object.
Returns
The current sync status changedcallback.
void* linphone_friend_list_cbs_get_user_data ( const LinphoneFriendListCbs cbs)

Retrieve the user pointer associated with a LinphoneFriendListCbs object.

Parameters
[in]cbsLinphoneFriendListCbs object.
Returns
The user pointer associated with the LinphoneFriendListCbs object.
LinphoneFriendListCbs* linphone_friend_list_cbs_ref ( LinphoneFriendListCbs cbs)

Acquire a reference to a LinphoneFriendListCbs object.

Parameters
[in]cbsLinphoneFriendListCbs object.
Returns
The same LinphoneFriendListCbs object.
void linphone_friend_list_cbs_set_contact_created ( LinphoneFriendListCbs cbs,
LinphoneFriendListCbsContactCreatedCb  cb 
)

Set the contact created callback.

Parameters
[in]cbsLinphoneFriendListCbs object.
[in]cbThe contact created to be used.
void linphone_friend_list_cbs_set_contact_deleted ( LinphoneFriendListCbs cbs,
LinphoneFriendListCbsContactDeletedCb  cb 
)

Set the contact deleted callback.

Parameters
[in]cbsLinphoneFriendListCbs object.
[in]cbThe contact deleted to be used.
void linphone_friend_list_cbs_set_contact_updated ( LinphoneFriendListCbs cbs,
LinphoneFriendListCbsContactUpdatedCb  cb 
)

Set the contact updated callback.

Parameters
[in]cbsLinphoneFriendListCbs object.
[in]cbThe contact updated to be used.
void linphone_friend_list_cbs_set_sync_status_changed ( LinphoneFriendListCbs cbs,
LinphoneFriendListCbsSyncStateChangedCb  cb 
)

Set the contact updated callback.

Parameters
[in]cbsLinphoneFriendListCbs object.
[in]cbThe sync status changed to be used.
void linphone_friend_list_cbs_set_user_data ( LinphoneFriendListCbs cbs,
void *  ud 
)

Assign a user pointer to a LinphoneFriendListCbs object.

Parameters
[in]cbsLinphoneFriendListCbs object.
[in]udThe user pointer to associate with the LinphoneFriendListCbs object.
void linphone_friend_list_cbs_unref ( LinphoneFriendListCbs cbs)

Release a reference to a LinphoneFriendListCbs object.

Parameters
[in]cbsLinphoneFriendListCbs object.
void linphone_friend_list_enable_subscriptions ( LinphoneFriendList list,
bool_t  enabled 
)

Enable subscription to NOTIFYes of all friends list.

Parameters
[in]listthe LinphoneFriendList object
[in]enabledshould subscription be enabled or not
void linphone_friend_list_export_friends_as_vcard4_file ( LinphoneFriendList list,
const char *  vcard_file 
)

Creates and export LinphoneFriend objects from LinphoneFriendList to a file using vCard 4 format.

Parameters
[in]listthe LinphoneFriendList object
[in]vcard_filethe path to a file that will contain the vCards
LinphoneFriend* linphone_friend_list_find_friend_by_address ( const LinphoneFriendList list,
const LinphoneAddress address 
)

Find a friend in the friend list using a LinphoneAddress.

Parameters
[in]listLinphoneFriendList object.
[in]addressLinphoneAddress object of the friend we want to search for.
Returns
A LinphoneFriend if found, NULL otherwise.
LinphoneFriend* linphone_friend_list_find_friend_by_ref_key ( const LinphoneFriendList list,
const char *  ref_key 
)

Find a friend in the friend list using a ref key.

Parameters
[in]listLinphoneFriendList object.
[in]ref_keyThe ref key string of the friend we want to search for.
Returns
A LinphoneFriend if found, NULL otherwise.
LinphoneFriend* linphone_friend_list_find_friend_by_uri ( const LinphoneFriendList list,
const char *  uri 
)

Find a friend in the friend list using an URI string.

Parameters
[in]listLinphoneFriendList object.
[in]uriA string containing the URI of the friend we want to search for.
Returns
A LinphoneFriend if found, NULL otherwise.
LinphoneFriendListCbs* linphone_friend_list_get_callbacks ( const LinphoneFriendList list)

Get the LinphoneFriendListCbs object associated with a LinphoneFriendList.

Parameters
[in]listLinphoneFriendList object
Returns
The LinphoneFriendListCbs object associated with the LinphoneFriendList.
LinphoneCore* linphone_friend_list_get_core ( const LinphoneFriendList list)

Returns the LinphoneCore object attached to this LinphoneFriendList.

Parameters
[in]listLinphoneFriendList object.
Returns
a LinphoneCore object
const char* linphone_friend_list_get_display_name ( const LinphoneFriendList list)

Get the display name of the friend list.

Parameters
[in]listLinphoneFriendList object.
Returns
The display name of the friend list.
const bctbx_list_t* linphone_friend_list_get_friends ( const LinphoneFriendList list)

Retrieves the list of LinphoneFriend from this LinphoneFriendList.

Parameters
[in]listLinphoneFriendList object
Returns
A list of LinphoneFriend objects. a list of LinphoneFriend
const LinphoneAddress* linphone_friend_list_get_rls_address ( const LinphoneFriendList list)

Get the RLS (Resource List Server) URI associated with the friend list to subscribe to these friends presence.

Parameters
[in]listLinphoneFriendList object.
Returns
The RLS URI associated with the friend list.
const char* linphone_friend_list_get_rls_uri ( const LinphoneFriendList list)

Get the RLS (Resource List Server) URI associated with the friend list to subscribe to these friends presence.

Parameters
[in]listLinphoneFriendList object.
Returns
The RLS URI associated with the friend list.
const char* linphone_friend_list_get_uri ( const LinphoneFriendList list)

Get the URI associated with the friend list.

Parameters
[in]listLinphoneFriendList object.
Returns
The URI associated with the friend list.
void* linphone_friend_list_get_user_data ( const LinphoneFriendList list)

Retrieve the user pointer associated with the friend list.

Parameters
[in]listLinphoneFriendList object.
Returns
The user pointer associated with the friend list.
LinphoneStatus linphone_friend_list_import_friends_from_vcard4_buffer ( LinphoneFriendList list,
const char *  vcard_buffer 
)

Creates and adds LinphoneFriend objects to LinphoneFriendList from a buffer that contains the vCard(s) to parse.

Parameters
[in]listthe LinphoneFriendList object
[in]vcard_bufferthe buffer that contains the vCard(s) to parse
Returns
the amount of linphone friends created
LinphoneStatus linphone_friend_list_import_friends_from_vcard4_file ( LinphoneFriendList list,
const char *  vcard_file 
)

Creates and adds LinphoneFriend objects to LinphoneFriendList from a file that contains the vCard(s) to parse.

Parameters
[in]listthe LinphoneFriendList object
[in]vcard_filethe path to a file that contains the vCard(s) to parse
Returns
the amount of linphone friends created
void linphone_friend_list_notify_presence ( LinphoneFriendList list,
LinphonePresenceModel presence 
)

Notify our presence to all the friends in the friend list that have subscribed to our presence directly (not using a RLS).

Parameters
[in]listLinphoneFriendList object.
[in]presenceLinphonePresenceModel object.
LinphoneFriendList* linphone_friend_list_ref ( LinphoneFriendList list)

Acquire a reference to the friend list.

Parameters
[in]listLinphoneFriendList object.
Returns
The same LinphoneFriendList object.
LinphoneFriendListStatus linphone_friend_list_remove_friend ( LinphoneFriendList list,
LinphoneFriend lf 
)

Remove a friend from a friend list.

Parameters
[in]listLinphoneFriendList object.
[in]lfLinphoneFriend object to remove from the friend list.
Returns
LinphoneFriendListOK if removed successfully, LinphoneFriendListNonExistentFriend if the friend is not in the list.
void linphone_friend_list_set_display_name ( LinphoneFriendList list,
const char *  display_name 
)

Set the display name of the friend list.

Parameters
[in]listLinphoneFriendList object.
[in]display_nameThe new display name of the friend list.
void linphone_friend_list_set_rls_address ( LinphoneFriendList list,
const LinphoneAddress rls_addr 
)

Set the RLS (Resource List Server) URI associated with the friend list to subscribe to these friends presence.

Parameters
[in]listLinphoneFriendList object.
[in]rls_addrThe RLS URI to associate with the friend list.
void linphone_friend_list_set_rls_uri ( LinphoneFriendList list,
const char *  rls_uri 
)

Set the RLS (Resource List Server) URI associated with the friend list to subscribe to these friends presence.

Parameters
[in]listLinphoneFriendList object.
[in]rls_uriThe RLS URI to associate with the friend list.
void linphone_friend_list_set_uri ( LinphoneFriendList list,
const char *  uri 
)

Set the URI associated with the friend list.

Parameters
[in]listLinphoneFriendList object.
[in]uriThe URI to associate with the friend list.
void linphone_friend_list_set_user_data ( LinphoneFriendList list,
void *  ud 
)

Assign a user pointer to the friend list.

Parameters
[in]listLinphoneFriendList object.
[in]udThe user pointer to associate with the friend list.
bool_t linphone_friend_list_subscriptions_enabled ( LinphoneFriendList list)

Gets whether subscription to NOTIFYes of all friends list are enabled or not.

Parameters
[in]listthe LinphoneFriendList object
Returns
Whether subscriptions are enabled or not
void linphone_friend_list_synchronize_friends_from_server ( LinphoneFriendList list)

Starts a CardDAV synchronization using value set using linphone_friend_list_set_uri.

Parameters
[in]listLinphoneFriendList object.
void linphone_friend_list_unref ( LinphoneFriendList list)

Release reference to the friend list.

Parameters
[in]listLinphoneFriendList object.
void linphone_friend_list_update_dirty_friends ( LinphoneFriendList list)

Goes through all the LinphoneFriend that are dirty and does a CardDAV PUT to update the server.

Parameters
[in]listLinphoneFriendList object.
void linphone_friend_list_update_revision ( LinphoneFriendList list,
int  rev 
)

Sets the revision from the last synchronization.

Parameters
[in]listLinphoneFriendList object.
[in]revThe revision
void linphone_friend_list_update_subscriptions ( LinphoneFriendList list)

Update presence subscriptions for the entire list.

Calling this function is necessary when list subscriptions are enabled, ie when a RLS presence server is used.

Parameters
[in]listthe friend list
LINPHONE_DEPRECATED LinphoneFriend* linphone_friend_new ( void  )

Contructor.

Returns
a new empty LinphoneFriend
Deprecated:
use linphone_core_create_friend instead
LinphoneFriend* linphone_friend_new_from_vcard ( LinphoneVcard vcard)

Contructor same as linphone_friend_new() + linphone_friend_set_address()

Parameters
vcarda vCard object
Returns
a new LinphoneFriend with vCard initialized
LINPHONE_DEPRECATED LinphoneFriend* linphone_friend_new_with_address ( const char *  addr)
LinphoneFriend* linphone_friend_ref ( LinphoneFriend lf)

Acquire a reference to the linphone friend.

Parameters
[in]lfLinphoneFriend object
Returns
The same LinphoneFriend object
void linphone_friend_remove_address ( LinphoneFriend lf,
const LinphoneAddress addr 
)

Removes an address in this friend.

Parameters
lfLinphoneFriend object
addrLinphoneAddress object
void linphone_friend_remove_phone_number ( LinphoneFriend lf,
const char *  phone 
)

Removes a phone number in this friend.

Parameters
lfLinphoneFriend object
phonenumber to remove
void linphone_friend_save ( LinphoneFriend fr,
LinphoneCore lc 
)

Saves a friend either in database if configured, otherwise in linphonerc.

Parameters
frthe linphone friend to save
lcthe linphone core
LinphoneStatus linphone_friend_set_address ( LinphoneFriend fr,
const LinphoneAddress address 
)

Set LinphoneAddress for this friend.

Parameters
frLinphoneFriend object
addressLinphoneAddress
LinphoneStatus linphone_friend_set_inc_subscribe_policy ( LinphoneFriend fr,
LinphoneSubscribePolicy  pol 
)

Configure incoming subscription policy for this friend.

Parameters
frLinphoneFriend object
polLinphoneSubscribePolicy policy to apply.
LinphoneStatus linphone_friend_set_name ( LinphoneFriend lf,
const char *  name 
)

Set the display name for this friend.

Parameters
lfLinphoneFriend object
name
void linphone_friend_set_presence_model ( LinphoneFriend lf,
LinphonePresenceModel presence 
)

Set the presence model of a friend.

Parameters
[in]lfA LinphoneFriend object
[in]presenceThe LinphonePresenceModel object to set for the friend
void linphone_friend_set_presence_model_for_uri_or_tel ( LinphoneFriend lf,
const char *  uri_or_tel,
LinphonePresenceModel presence 
)

Set the presence model for a specific SIP URI or phone number of a friend.

Parameters
[in]lfA LinphoneFriend object
[in]uri_or_telThe SIP URI or phone number for which to set the presence model
[in]presenceThe LinphonePresenceModel object to set
void linphone_friend_set_ref_key ( LinphoneFriend lf,
const char *  key 
)

Set the reference key of a friend.

Parameters
[in]lfLinphoneFriend object.
[in]keyThe reference key to use for the friend.
void linphone_friend_set_vcard ( LinphoneFriend fr,
LinphoneVcard vcard 
)

Binds a vCard object to a friend.

Parameters
[in]frLinphoneFriend object
[in]vcardThe vCard object to bind
bool_t linphone_friend_subscribes_enabled ( const LinphoneFriend lf)

get subscription flag value

Parameters
lfLinphoneFriend object
Returns
returns true is subscription is activated for this friend
void linphone_friend_unref ( LinphoneFriend lf)

Release a reference to the linphone friend.

Parameters
[in]lfLinphoneFriend object
const char* linphone_presence_activity_get_description ( const LinphonePresenceActivity activity)

Gets the description of a presence activity.

Parameters
[in]activityA pointer to the LinphonePresenceActivity for which to get the description.
Returns
A pointer to the description string of the presence activity, or NULL if no description is specified.
LinphonePresenceActivityType linphone_presence_activity_get_type ( const LinphonePresenceActivity activity)

Gets the activity type of a presence activity.

Parameters
[in]activityA pointer to the LinphonePresenceActivity for which to get the type.
Returns
The LinphonePresenceActivityType of the activity.
void* linphone_presence_activity_get_user_data ( const LinphonePresenceActivity activity)

Gets the user data of a LinphonePresenceActivity object.

Parameters
[in]activityThe LinphonePresenceActivity object for which to get the user data.
Returns
A pointer to the user data.
LinphonePresenceActivity* linphone_presence_activity_new ( LinphonePresenceActivityType  acttype,
const char *  description 
)

Creates a presence activity.

Parameters
[in]acttypeThe LinphonePresenceActivityType to set for the activity.
[in]descriptionAn additional description of the activity to set for the activity. Can be NULL if no additional description is to be added.
Returns
The created presence activity, NULL on error.
LinphonePresenceActivity* linphone_presence_activity_ref ( LinphonePresenceActivity activity)

Increase the reference count of the LinphonePresenceActivity object.

Parameters
[in]activityThe LinphonePresenceActivity object for which the reference count is to be increased.
Returns
The LinphonePresenceActivity object with the increased reference count.
LinphoneStatus linphone_presence_activity_set_description ( LinphonePresenceActivity activity,
const char *  description 
)

Sets the description of a presence activity.

Parameters
[in]activityThe LinphonePresenceActivity object for which to set the description.
[in]descriptionAn additional description of the activity. Can be NULL if no additional description is to be added.
Returns
0 if successful, a value < 0 in case of error.
LinphoneStatus linphone_presence_activity_set_type ( LinphonePresenceActivity activity,
LinphonePresenceActivityType  acttype 
)

Sets the type of activity of a presence activity.

Parameters
[in]activityThe LinphonePresenceActivity for which to set for the activity type.
[in]acttypeThe activity type to set for the activity.
Returns
0 if successful, a value < 0 in case of error.
void linphone_presence_activity_set_user_data ( LinphonePresenceActivity activity,
void *  user_data 
)

Sets the user data of a LinphonePresenceActivity object.

Parameters
[in]activityThe LinphonePresenceActivity object for which to set the user data.
[in]user_dataA pointer to the user data to set.
char* linphone_presence_activity_to_string ( const LinphonePresenceActivity activity)

Gets the string representation of a presence activity.

Parameters
[in]activityA pointer to the LinphonePresenceActivity object for which to get a string representation.
Returns
A pointer a dynamically allocated string representing the given activity.

The returned string is to be freed by calling ms_free().

LinphonePresenceActivity* linphone_presence_activity_unref ( LinphonePresenceActivity activity)

Decrease the reference count of the LinphonePresenceActivity object and destroy it if it reaches 0.

Parameters
[in]activityThe LinphonePresenceActivity object for which the reference count is to be decreased.
Returns
The LinphonePresenceActivity object if the reference count is still positive, NULL if the object has been destroyed.
char* linphone_presence_basic_status_to_string ( LinphonePresenceBasicStatus  basic_status)

Gets the string representation of a presence basic status.

Parameters
[in]basic_statusA LinphonePresenceBasicStatus for which to get a string representation.
Returns
A pointer a dynamically allocated string representing the given basic status.

The returned string is to be freed by calling ms_free().

LinphoneStatus linphone_presence_model_add_activity ( LinphonePresenceModel model,
LinphonePresenceActivity activity 
)

Adds an activity to a presence model.

Parameters
[in]modelThe LinphonePresenceModel object for which to add an activity.
[in]activityThe LinphonePresenceActivity object to add to the model.
Returns
0 if successful, a value < 0 in case of error.
LinphoneStatus linphone_presence_model_add_note ( LinphonePresenceModel model,
const char *  note_content,
const char *  lang 
)

Adds a note to a presence model.

Parameters
[in]modelThe LinphonePresenceModel object to add a note to.
[in]note_contentThe note to be added to the presence model.
[in]langThe language of the note to be added. Can be NULL if no language is to be specified for the note.
Returns
0 if successful, a value < 0 in case of error.

Only one note for each language can be set, so e.g. setting a note for the 'fr' language if there is only one will replace the existing one.

LinphoneStatus linphone_presence_model_add_person ( LinphonePresenceModel model,
LinphonePresencePerson person 
)

Adds a person to a presence model.

Parameters
[in]modelThe LinphonePresenceModel object for which to add a person.
[in]personThe LinphonePresencePerson object to add to the model.
Returns
0 if successful, a value < 0 in case of error.
LinphoneStatus linphone_presence_model_add_service ( LinphonePresenceModel model,
LinphonePresenceService service 
)

Adds a service to a presence model.

Parameters
[in]modelThe LinphonePresenceModel object for which to add a service.
[in]serviceThe LinphonePresenceService object to add to the model.
Returns
0 if successful, a value < 0 in case of error.
LinphoneStatus linphone_presence_model_clear_activities ( LinphonePresenceModel model)

Clears the activities of a presence model.

Parameters
[in]modelThe LinphonePresenceModel object for which to clear the activities.
Returns
0 if successful, a value < 0 in case of error.
LinphoneStatus linphone_presence_model_clear_notes ( LinphonePresenceModel model)

Clears all the notes of a presence model.

Parameters
[in]modelThe LinphonePresenceModel for which to clear notes.
Returns
0 if successful, a value < 0 in case of error.
LinphoneStatus linphone_presence_model_clear_persons ( LinphonePresenceModel model)

Clears the persons of a presence model.

Parameters
[in]modelThe LinphonePresenceModel object for which to clear the persons.
Returns
0 if successful, a value < 0 in case of error.
LinphoneStatus linphone_presence_model_clear_services ( LinphonePresenceModel model)

Clears the services of a presence model.

Parameters
[in]modelThe LinphonePresenceModel object for which to clear the services.
Returns
0 if successful, a value < 0 in case of error.
LinphonePresenceActivity* linphone_presence_model_get_activity ( const LinphonePresenceModel model)

Gets the first activity of a presence model (there is usually only one).

Parameters
[in]modelThe LinphonePresenceModel object to get the activity from.
Returns
A LinphonePresenceActivity object if successful, NULL otherwise.
LinphonePresenceBasicStatus linphone_presence_model_get_basic_status ( const LinphonePresenceModel model)

Gets the basic status of a presence model.

Parameters
[in]modelThe LinphonePresenceModel object to get the basic status from.
Returns
The LinphonePresenceBasicStatus of the LinphonePresenceModel object given as parameter.
LinphoneConsolidatedPresence linphone_presence_model_get_consolidated_presence ( const LinphonePresenceModel model)

Get the consolidated presence from a presence model.

Parameters
[in]modelLinphonePresenceModel object
Returns
The LinphoneConsolidatedPresence corresponding to the presence model
char* linphone_presence_model_get_contact ( const LinphonePresenceModel model)

Gets the contact of a presence model.

Parameters
[in]modelThe LinphonePresenceModel object to get the contact from.
Returns
A pointer to a dynamically allocated string containing the contact, or NULL if no contact is found.

The returned string is to be freed by calling ms_free().

unsigned int linphone_presence_model_get_nb_activities ( const LinphonePresenceModel model)

Gets the number of activities included in the presence model.

Parameters
[in]modelThe LinphonePresenceModel object to get the number of activities from.
Returns
The number of activities included in the LinphonePresenceModel object.
unsigned int linphone_presence_model_get_nb_persons ( const LinphonePresenceModel model)

Gets the number of persons included in the presence model.

Parameters
[in]modelThe LinphonePresenceModel object to get the number of persons from.
Returns
The number of persons included in the LinphonePresenceModel object.
unsigned int linphone_presence_model_get_nb_services ( const LinphonePresenceModel model)

Gets the number of services included in the presence model.

Parameters
[in]modelThe LinphonePresenceModel object to get the number of services from.
Returns
The number of services included in the LinphonePresenceModel object.
LinphonePresenceNote* linphone_presence_model_get_note ( const LinphonePresenceModel model,
const char *  lang 
)

Gets the first note of a presence model (there is usually only one).

Parameters
[in]modelThe LinphonePresenceModel object to get the note from.
[in]langThe language of the note to get. Can be NULL to get a note that has no language specified or to get the first note whatever language it is written into.
Returns
A pointer to a LinphonePresenceNote object if successful, NULL otherwise.
LinphonePresenceActivity* linphone_presence_model_get_nth_activity ( const LinphonePresenceModel model,
unsigned int  idx 
)

Gets the nth activity of a presence model.

Parameters
[in]modelThe LinphonePresenceModel object to get the activity from.
[in]idxThe index of the activity to get (the first activity having the index 0).
Returns
A pointer to a LinphonePresenceActivity object if successful, NULL otherwise.
LinphonePresencePerson* linphone_presence_model_get_nth_person ( const LinphonePresenceModel model,
unsigned int  idx 
)

Gets the nth person of a presence model.

Parameters
[in]modelThe LinphonePresenceModel object to get the person from.
[in]idxThe index of the person to get (the first person having the index 0).
Returns
A pointer to a LinphonePresencePerson object if successful, NULL otherwise.
LinphonePresenceService* linphone_presence_model_get_nth_service ( const LinphonePresenceModel model,
unsigned int  idx 
)

Gets the nth service of a presence model.

Parameters
[in]modelThe LinphonePresenceModel object to get the service from.
[in]idxThe index of the service to get (the first service having the index 0).
Returns
A pointer to a LinphonePresenceService object if successful, NULL otherwise.
const LinphoneAddress* linphone_presence_model_get_presentity ( const LinphonePresenceModel model)

Gets the presentity of a presence model.

Parameters
[in]modelThe LinphonePresenceModel object to get the contact from.
Returns
A pointer to a const LinphoneAddress, or NULL if no contact is found.
time_t linphone_presence_model_get_timestamp ( const LinphonePresenceModel model)

Gets the timestamp of a presence model.

Parameters
[in]modelThe LinphonePresenceModel object to get the timestamp from.
Returns
The timestamp of the LinphonePresenceModel object or -1 on error.
void* linphone_presence_model_get_user_data ( const LinphonePresenceModel model)

Gets the user data of a LinphonePresenceModel object.

Parameters
[in]modelThe LinphonePresenceModel object for which to get the user data.
Returns
A pointer to the user data.
bool_t linphone_presence_model_is_online ( const LinphonePresenceModel model)

Tells whether a presence model is considered online.

It is any of theses cases:

  • basic status is'open' and no activities
  • explicit 'online' tag in the status
    Parameters
    [in]modelLinphonePresenceModel object
    Returns
    A boolean value telling whether the presence model is considered online or not.
LinphonePresenceModel* linphone_presence_model_new ( void  )

Creates a default presence model.

Returns
The created presence model, NULL on error.
See also
linphone_presence_model_new_with_activity
linphone_presence_model_new_with_activity_and_note

The created presence model is considered 'offline'.

LinphonePresenceModel* linphone_presence_model_new_with_activity ( LinphonePresenceActivityType  activity,
const char *  description 
)

Creates a presence model specifying an activity.

Parameters
[in]activityThe activity to set for the created presence model.
[in]descriptionAn additional description of the activity (mainly useful for the 'other' activity). Set it to NULL to not add a description.
Returns
The created presence model, or NULL if an error occured.
See also
linphone_presence_model_new
linphone_presence_model_new_with_activity_and_note

The created presence model has the activity specified in the parameters.

LinphonePresenceModel* linphone_presence_model_new_with_activity_and_note ( LinphonePresenceActivityType  activity,
const char *  description,
const char *  note,
const char *  lang 
)

Creates a presence model specifying an activity and adding a note.

Parameters
[in]activityThe activity to set for the created presence model.
[in]descriptionAn additional description of the activity (mainly useful for the 'other' activity). Set it to NULL to not add a description.
[in]noteAn additional note giving additional information about the contact presence.
[in]langThe language the note is written in. It can be set to NULL in order to not specify the language of the note.
Returns
The created presence model, or NULL if an error occured.
See also
linphone_presence_model_new_with_activity
linphone_presence_model_new_with_activity_and_note

The created presence model has the activity and the note specified in the parameters.

LinphonePresenceModel* linphone_presence_model_ref ( LinphonePresenceModel model)

Increase the reference count of the LinphonePresenceModel object.

Parameters
[in]modelThe LinphonePresenceModel object for which the reference count is to be increased.
Returns
The LinphonePresenceModel object with the increased reference count.
LinphoneStatus linphone_presence_model_set_activity ( LinphonePresenceModel model,
LinphonePresenceActivityType  activity,
const char *  description 
)

Sets the activity of a presence model (limits to only one activity).

Parameters
[in]modelThe LinphonePresenceModel object for which to set the activity.
[in]activityThe LinphonePresenceActivityType to set for the model.
[in]descriptionAn additional description of the activity to set for the model. Can be NULL if no additional description is to be added.
Returns
0 if successful, a value < 0 in case of error.

WARNING: This function will modify the basic status of the model according to the activity being set. If you don't want the basic status to be modified automatically, you can use the combination of linphone_presence_model_set_basic_status(), linphone_presence_model_clear_activities() and linphone_presence_model_add_activity().

LinphoneStatus linphone_presence_model_set_basic_status ( LinphonePresenceModel model,
LinphonePresenceBasicStatus  basic_status 
)

Sets the basic status of a presence model.

Parameters
[in]modelThe LinphonePresenceModel object for which to set the basic status.
[in]basic_statusThe LinphonePresenceBasicStatus to set for the LinphonePresenceModel object.
Returns
0 if successful, a value < 0 in case of error.
LinphoneStatus linphone_presence_model_set_contact ( LinphonePresenceModel model,
const char *  contact 
)

Sets the contact of a presence model.

Parameters
[in]modelThe LinphonePresenceModel object for which to set the contact.
[in]contactThe contact string to set.
Returns
0 if successful, a value < 0 in case of error.
LinphoneStatus linphone_presence_model_set_presentity ( LinphonePresenceModel model,
const LinphoneAddress presentity 
)

Sets the presentity of a presence model.

Parameters
[in]modelThe LinphonePresenceModel object for which to set the contact.
[in]presentityThe presentity address to set (presentity is copied).
Returns
0 if successful, a value < 0 in case of error.
void linphone_presence_model_set_user_data ( LinphonePresenceModel model,
void *  user_data 
)

Sets the user data of a LinphonePresenceModel object.

Parameters
[in]modelThe LinphonePresenceModel object for which to set the user data.
[in]user_dataA pointer to the user data to set.
LinphonePresenceModel* linphone_presence_model_unref ( LinphonePresenceModel model)

Decrease the reference count of the LinphonePresenceModel object and destroy it if it reaches 0.

Parameters
[in]modelThe LinphonePresenceModel object for which the reference count is to be decreased.
Returns
The LinphonePresenceModel object if the reference count is still positive, NULL if the object has been destroyed.
const char* linphone_presence_note_get_content ( const LinphonePresenceNote note)

Gets the content of a presence note.

Parameters
[in]noteA pointer to the LinphonePresenceNote for which to get the content.
Returns
A pointer to the content of the presence note.
const char* linphone_presence_note_get_lang ( const LinphonePresenceNote note)

Gets the language of a presence note.

Parameters
[in]noteA pointer to the LinphonePresenceNote for which to get the language.
Returns
A pointer to the language string of the presence note, or NULL if no language is specified.
void* linphone_presence_note_get_user_data ( const LinphonePresenceNote note)

Gets the user data of a LinphonePresenceNote object.

Parameters
[in]noteThe LinphonePresenceNote object for which to get the user data.
Returns
A pointer to the user data.
LinphonePresenceNote* linphone_presence_note_new ( const char *  content,
const char *  lang 
)

Creates a presence note.

Parameters
[in]contentThe content of the note to be created.
[in]langThe language of the note to be created. Can be NULL if no language is to be specified for the note.
Returns
The created presence note, NULL on error.
LinphonePresenceNote* linphone_presence_note_ref ( LinphonePresenceNote note)

Increase the reference count of the LinphonePresenceNote object.

Parameters
[in]noteThe LinphonePresenceNote object for which the reference count is to be increased.
Returns
The LinphonePresenceNote object with the increased reference count.
LinphoneStatus linphone_presence_note_set_content ( LinphonePresenceNote note,
const char *  content 
)

Sets the content of a presence note.

Parameters
[in]noteThe LinphonePresenceNote object for which to set the content.
[in]contentThe content of the note.
Returns
0 if successful, a value < 0 in case of error.
LinphoneStatus linphone_presence_note_set_lang ( LinphonePresenceNote note,
const char *  lang 
)

Sets the language of a presence note.

Parameters
[in]noteThe LinphonePresenceNote object for which to set the language.
[in]langThe language of the note.
Returns
0 if successful, a value < 0 in case of error.
void linphone_presence_note_set_user_data ( LinphonePresenceNote note,
void *  user_data 
)

Sets the user data of a LinphonePresenceNote object.

Parameters
[in]noteThe LinphonePresenceNote object for which to set the user data.
[in]user_dataA pointer to the user data to set.
LinphonePresenceNote* linphone_presence_note_unref ( LinphonePresenceNote note)

Decrease the reference count of the LinphonePresenceNote object and destroy it if it reaches 0.

Parameters
[in]noteThe LinphonePresenceNote object for which the reference count is to be decreased.
Returns
The LinphonePresenceNote object if the reference count is still positive, NULL if the object has been destroyed.
LinphoneStatus linphone_presence_person_add_activities_note ( LinphonePresencePerson person,
LinphonePresenceNote note 
)

Adds an activities note to a presence person.

Parameters
[in]personThe LinphonePresencePerson object for which to add an activities note.
[in]noteThe LinphonePresenceNote object to add to the person.
Returns
0 if successful, a value < 0 in case of error.
LinphoneStatus linphone_presence_person_add_activity ( LinphonePresencePerson person,
LinphonePresenceActivity activity 
)

Adds an activity to a presence person.

Parameters
[in]personThe LinphonePresencePerson object for which to add an activity.
[in]activityThe LinphonePresenceActivity object to add to the person.
Returns
0 if successful, a value < 0 in case of error.
LinphoneStatus linphone_presence_person_add_note ( LinphonePresencePerson person,
LinphonePresenceNote note 
)

Adds a note to a presence person.

Parameters
[in]personThe LinphonePresencePerson object for which to add a note.
[in]noteThe LinphonePresenceNote object to add to the person.
Returns
0 if successful, a value < 0 in case of error.
LinphoneStatus linphone_presence_person_clear_activities ( LinphonePresencePerson person)

Clears the activities of a presence person.

Parameters
[in]personThe LinphonePresencePerson object for which to clear the activities.
Returns
0 if successful, a value < 0 in case of error.
LinphoneStatus linphone_presence_person_clear_activities_notes ( LinphonePresencePerson person)

Clears the activities notes of a presence person.

Parameters
[in]personThe LinphonePresencePerson object for which to clear the activities notes.
Returns
0 if successful, a value < 0 in case of error.
LinphoneStatus linphone_presence_person_clear_notes ( LinphonePresencePerson person)

Clears the notes of a presence person.

Parameters
[in]personThe LinphonePresencePerson object for which to clear the notes.
Returns
0 if successful, a value < 0 in case of error.
char* linphone_presence_person_get_id ( const LinphonePresencePerson person)

Gets the id of a presence person.

Parameters
[in]personThe LinphonePresencePerson object to get the id from.
Returns
A pointer to a dynamically allocated string containing the id, or NULL in case of error.

The returned string is to be freed by calling ms_free().

unsigned int linphone_presence_person_get_nb_activities ( const LinphonePresencePerson person)

Gets the number of activities included in the presence person.

Parameters
[in]personThe LinphonePresencePerson object to get the number of activities from.
Returns
The number of activities included in the LinphonePresencePerson object.
unsigned int linphone_presence_person_get_nb_activities_notes ( const LinphonePresencePerson person)

Gets the number of activities notes included in the presence person.

Parameters
[in]personThe LinphonePresencePerson object to get the number of activities notes from.
Returns
The number of activities notes included in the LinphonePresencePerson object.
unsigned int linphone_presence_person_get_nb_notes ( const LinphonePresencePerson person)

Gets the number of notes included in the presence person.

Parameters
[in]personThe LinphonePresencePerson object to get the number of notes from.
Returns
The number of notes included in the LinphonePresencePerson object.
LinphonePresenceNote* linphone_presence_person_get_nth_activities_note ( const LinphonePresencePerson person,
unsigned int  idx 
)

Gets the nth activities note of a presence person.

Parameters
[in]personThe LinphonePresencePerson object to get the activities note from.
[in]idxThe index of the activities note to get (the first note having the index 0).
Returns
A pointer to a LinphonePresenceNote object if successful, NULL otherwise.
LinphonePresenceActivity* linphone_presence_person_get_nth_activity ( const LinphonePresencePerson person,
unsigned int  idx 
)

Gets the nth activity of a presence person.

Parameters
[in]personThe LinphonePresencePerson object to get the activity from.
[in]idxThe index of the activity to get (the first activity having the index 0).
Returns
A pointer to a LinphonePresenceActivity object if successful, NULL otherwise.
LinphonePresenceNote* linphone_presence_person_get_nth_note ( const LinphonePresencePerson person,
unsigned int  idx 
)

Gets the nth note of a presence person.

Parameters
[in]personThe LinphonePresencePerson object to get the note from.
[in]idxThe index of the note to get (the first note having the index 0).
Returns
A pointer to a LinphonePresenceNote object if successful, NULL otherwise.
void* linphone_presence_person_get_user_data ( const LinphonePresencePerson person)

Gets the user data of a LinphonePresencePerson object.

Parameters
[in]personThe LinphonePresencePerson object for which to get the user data.
Returns
A pointer to the user data.
LinphonePresencePerson* linphone_presence_person_new ( const char *  id)

Creates a presence person.

Parameters
[in]idThe id of the presence person to be created. Can be NULL to generate it automatically.
Returns
The created presence person, NULL on error.
LinphonePresencePerson* linphone_presence_person_ref ( LinphonePresencePerson person)

Increase the reference count of the LinphonePresencePerson object.

Parameters
[in]personThe LinphonePresencePerson object for which the reference count is to be increased.
Returns
The LinphonePresencePerson object with the increased reference count.
LinphoneStatus linphone_presence_person_set_id ( LinphonePresencePerson person,
const char *  id 
)

Sets the id of a presence person.

Parameters
[in]personThe LinphonePresencePerson object for which to set the id.
[in]idThe id string to set. Can be NULL to generate it automatically.
Returns
0 if successful, a value < 0 in case of error.
void linphone_presence_person_set_user_data ( LinphonePresencePerson person,
void *  user_data 
)

Sets the user data of a LinphonePresencePerson object.

Parameters
[in]personThe LinphonePresencePerson object for which to set the user data.
[in]user_dataA pointer to the user data to set.
LinphonePresencePerson* linphone_presence_person_unref ( LinphonePresencePerson person)

Decrease the reference count of the LinphonePresencePerson object and destroy it if it reaches 0.

Parameters
[in]personThe LinphonePresencePerson object for which the reference count is to be decreased.
Returns
The LinphonePresencePerson object if the reference count is still positive, NULL if the object has been destroyed.
LinphoneStatus linphone_presence_service_add_note ( LinphonePresenceService service,
LinphonePresenceNote note 
)

Adds a note to a presence service.

Parameters
[in]serviceThe LinphonePresenceService object for which to add a note.
[in]noteThe LinphonePresenceNote object to add to the service.
Returns
0 if successful, a value < 0 in case of error.
LinphoneStatus linphone_presence_service_clear_notes ( LinphonePresenceService service)

Clears the notes of a presence service.

Parameters
[in]serviceThe LinphonePresenceService object for which to clear the notes.
Returns
0 if successful, a value < 0 in case of error.
LinphonePresenceBasicStatus linphone_presence_service_get_basic_status ( const LinphonePresenceService service)

Gets the basic status of a presence service.

Parameters
[in]serviceThe LinphonePresenceService object to get the basic status from.
Returns
The LinphonePresenceBasicStatus of the LinphonePresenceService object given as parameter.
char* linphone_presence_service_get_contact ( const LinphonePresenceService service)

Gets the contact of a presence service.

Parameters
[in]serviceThe LinphonePresenceService object to get the contact from.
Returns
A pointer to a dynamically allocated string containing the contact, or NULL if no contact is found.

The returned string is to be freed by calling ms_free().

char* linphone_presence_service_get_id ( const LinphonePresenceService service)

Gets the id of a presence service.

Parameters
[in]serviceThe LinphonePresenceService object to get the id from.
Returns
A pointer to a dynamically allocated string containing the id, or NULL in case of error.

The returned string is to be freed by calling ms_free().

unsigned int linphone_presence_service_get_nb_notes ( const LinphonePresenceService service)

Gets the number of notes included in the presence service.

Parameters
[in]serviceThe LinphonePresenceService object to get the number of notes from.
Returns
The number of notes included in the LinphonePresenceService object.
LinphonePresenceNote* linphone_presence_service_get_nth_note ( const LinphonePresenceService service,
unsigned int  idx 
)

Gets the nth note of a presence service.

Parameters
[in]serviceThe LinphonePresenceService object to get the note from.
[in]idxThe index of the note to get (the first note having the index 0).
Returns
A pointer to a LinphonePresenceNote object if successful, NULL otherwise.
void* linphone_presence_service_get_user_data ( const LinphonePresenceService service)

Gets the user data of a LinphonePresenceService object.

Parameters
[in]serviceThe LinphonePresenceService object for which to get the user data.
Returns
A pointer to the user data.
LinphonePresenceService* linphone_presence_service_new ( const char *  id,
LinphonePresenceBasicStatus  basic_status,
const char *  contact 
)

Creates a presence service.

Parameters
[in]idThe id of the presence service to be created. Can be NULL to generate it automatically.
[in]basic_statusThe LinphonePresenceBasicStatus to set for the LinphonePresenceService object.
[in]contactThe contact string to set.
Returns
The created presence service, NULL on error.

The created presence service has the basic status 'closed'.

LinphonePresenceService* linphone_presence_service_ref ( LinphonePresenceService service)

Increase the reference count of the LinphonePresenceService object.

Parameters
[in]serviceThe LinphonePresenceService object for which the reference count is to be increased.
Returns
The LinphonePresenceService object with the increased reference count.
LinphoneStatus linphone_presence_service_set_basic_status ( LinphonePresenceService service,
LinphonePresenceBasicStatus  basic_status 
)

Sets the basic status of a presence service.

Parameters
[in]serviceThe LinphonePresenceService object for which to set the basic status.
[in]basic_statusThe LinphonePresenceBasicStatus to set for the LinphonePresenceService object.
Returns
0 if successful, a value < 0 in case of error.
LinphoneStatus linphone_presence_service_set_contact ( LinphonePresenceService service,
const char *  contact 
)

Sets the contact of a presence service.

Parameters
[in]serviceThe LinphonePresenceService object for which to set the contact.
[in]contactThe contact string to set.
Returns
0 if successful, a value < 0 in case of error.
LinphoneStatus linphone_presence_service_set_id ( LinphonePresenceService service,
const char *  id 
)

Sets the id of a presence service.

Parameters
[in]serviceThe LinphonePresenceService object for which to set the id.
[in]idThe id string to set. Can be NULL to generate it automatically.
Returns
0 if successful, a value < 0 in case of error.
void linphone_presence_service_set_user_data ( LinphonePresenceService service,
void *  user_data 
)

Sets the user data of a LinphonePresenceService object.

Parameters
[in]serviceThe LinphonePresenceService object for which to set the user data.
[in]user_dataA pointer to the user data to set.
LinphonePresenceService* linphone_presence_service_unref ( LinphonePresenceService service)

Decrease the reference count of the LinphonePresenceService object and destroy it if it reaches 0.

Parameters
[in]serviceThe LinphonePresenceService object for which the reference count is to be decreased.
Returns
The LinphonePresenceService object if the reference count is still positive, NULL if the object has been destroyed.