michael@0: /* This Source Code Form is subject to the terms of the Mozilla Public michael@0: * License, v. 2.0. If a copy of the MPL was not distributed with this michael@0: * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ michael@0: michael@0: #ifndef _CCAPI_CONF_ROSTER_H_ michael@0: #define _CCAPI_CONF_ROSTER_H_ michael@0: michael@0: #include "cpr_stdio.h" michael@0: #include "ccapi_call.h" michael@0: #include "CCProvider.h" michael@0: #include "phone_debug.h" michael@0: michael@0: // Basic type definitions for conferencing michael@0: typedef string_t cc_participant_ref_t; michael@0: michael@0: /** michael@0: * Get Conference Participants michael@0: * michael@0: * Returns list of conference participant information last received from the UCM. michael@0: * Note that the list may include conference participants in various states in addition to Connected. michael@0: * [ For exampke, a listed participant may be in the ringing state (not yet on conference), michael@0: * or disconnected state (leaving/left the conference).] Application should invoke michael@0: * getConferenceParticipantStatus for each participant in the list to query exact status. michael@0: * michael@0: * @param [in] handle - call handle michael@0: * @param [in/out] participantHandles - array of participant handles to be returned michael@0: * @param [in/out] count - in: size of array provided in participantHandles; out: number of entries populated (up to original value provided) michael@0: * @return void michael@0: */ michael@0: void CCAPI_CallInfo_getConfParticipants (cc_callinfo_ref_t handle, cc_participant_ref_t participantHandles[], int* count); michael@0: michael@0: michael@0: /** michael@0: * Get Maximum Number of Conference Participants ( in case gui wants to show %full conference info ) michael@0: * @param [in] handle - call handle michael@0: * @return maximum number of conference participants michael@0: */ michael@0: cc_uint16_t CCAPI_CallInfo_getConfParticipantMax (cc_callinfo_ref_t handle); michael@0: michael@0: michael@0: /** michael@0: * Get Participant Name michael@0: * @param [in] handle - call info handle michael@0: * @param [in] participantHandle - specific handle for conference participant michael@0: * @return display name of the conference participant michael@0: */ michael@0: cc_string_t CCAPI_CallInfo_getConfParticipantName (cc_callinfo_ref_t handle, cc_participant_ref_t participantHandle); michael@0: michael@0: /** michael@0: * Get Participant Number michael@0: * @param [in] handle - handle of call michael@0: * @param [in] participantHandle - handle of conference participant michael@0: * @return display number of the conference participant michael@0: */ michael@0: cc_string_t CCAPI_CallInfo_getConfParticipantNumber (cc_callinfo_ref_t handle, cc_participant_ref_t participantHandle); michael@0: michael@0: /** michael@0: * Get Conference Participant Status michael@0: * @param [in] handle - call handle michael@0: * @param [in] participantHandle - handle of conference participant michael@0: * @return conference status of specific participant michael@0: */ michael@0: cc_conf_participant_status_t CCAPI_CallInfo_getConfParticipantStatus (cc_callinfo_ref_t handle, cc_participant_ref_t participantHandleHandle); michael@0: michael@0: /** michael@0: * Get Participant Security michael@0: * @param [in] handle - call handle michael@0: * @param [in] participantHandle - handle of conference participant michael@0: * @return security setting of the specific conference participant michael@0: */ michael@0: cc_call_security_t CCAPI_CallInfo_getConfParticipantSecurity (cc_callinfo_ref_t handle, cc_participant_ref_t participantHandleHandle); michael@0: michael@0: /** michael@0: * Able To Remove Others? michael@0: * Find out whether this participant is capable of removing another participant michael@0: * @param [in] handle - call handle michael@0: * @return return code (0=indicates not capable, 1=indicates capable) michael@0: */ michael@0: cc_boolean CCAPI_CallInfo_selfHasRemoveConfParticipantCapability (cc_callinfo_ref_t handle); michael@0: michael@0: /** michael@0: * Check to see if a given conference participant reference is the one using this endpoint michael@0: * @param [in] handle - call handle michael@0: * @param [in] participantHandle - handle of a conference participant michael@0: * @returns cc_boolean (TRUE if yes, FALSE if no) michael@0: */ michael@0: cc_boolean CCAPI_CallInfo_isConfSelfParticipant (cc_callinfo_ref_t handle, cc_participant_ref_t participantHandle); michael@0: michael@0: /** michael@0: * Return our conference participant-id michael@0: * @param [in] handle - call handle michael@0: * @return participant id of self michael@0: */ michael@0: cc_participant_ref_t CCAPI_CallInfo_getConfSelfParticipant (cc_callinfo_ref_t handle); michael@0: michael@0: michael@0: #endif /* _CCAPI_CONF_ROSTER_H_ */