From eed9ab3c8396e5bd4b37265b5d23fdd011b2f4a1 Mon Sep 17 00:00:00 2001 From: Sylvain Berfini Date: Tue, 30 Jan 2018 11:15:30 +0100 Subject: [PATCH] Added hasCapability method on C ChatRoom --- include/linphone/api/c-chat-room.h | 8 ++++++++ src/c-wrapper/api/c-chat-room.cpp | 5 +++++ 2 files changed, 13 insertions(+) diff --git a/include/linphone/api/c-chat-room.h b/include/linphone/api/c-chat-room.h index 8c2ca77af..9c24030bb 100644 --- a/include/linphone/api/c-chat-room.h +++ b/include/linphone/api/c-chat-room.h @@ -319,6 +319,14 @@ LINPHONE_PUBLIC LinphoneParticipant *linphone_chat_room_find_participant (const */ LINPHONE_PUBLIC LinphoneChatRoomCapabilitiesMask linphone_chat_room_get_capabilities (const LinphoneChatRoom *cr); +/** + * Check if a chat room has given capabilities. + * @param[in] cr A LinphoneChatRoom object + * @param[in] mask A Capabilities mask + * @return True if the mask matches, false otherwise + */ +LINPHONE_PUBLIC bool_t linphone_chat_room_has_capability(const LinphoneChatRoom *cr, LinphoneChatRoomCapabilitiesMask mask); + /** * Get the conference address of the chat room. * @param[in] cr A LinphoneChatRoom object diff --git a/src/c-wrapper/api/c-chat-room.cpp b/src/c-wrapper/api/c-chat-room.cpp index 0a030ac57..dd3f194bb 100644 --- a/src/c-wrapper/api/c-chat-room.cpp +++ b/src/c-wrapper/api/c-chat-room.cpp @@ -279,6 +279,11 @@ LinphoneChatRoomCapabilitiesMask linphone_chat_room_get_capabilities (const Linp return L_GET_CPP_PTR_FROM_C_OBJECT(cr)->getCapabilities(); } +bool_t linphone_chat_room_has_capability(const LinphoneChatRoom *cr, LinphoneChatRoomCapabilitiesMask mask) { + if (L_GET_CPP_PTR_FROM_C_OBJECT(cr)->getCapabilities() & mask) return true; + return false; +} + const LinphoneAddress *linphone_chat_room_get_conference_address (const LinphoneChatRoom *cr) { if (cr->conferenceAddressCache) linphone_address_unref(cr->conferenceAddressCache);