diff --git a/include/linphone/api/c-chat-message.h b/include/linphone/api/c-chat-message.h index e487a3b5f..b69cab0ba 100644 --- a/include/linphone/api/c-chat-message.h +++ b/include/linphone/api/c-chat-message.h @@ -375,6 +375,13 @@ LINPHONE_PUBLIC bool_t linphone_chat_message_has_file_transfer_content(const Lin */ LINPHONE_PUBLIC const char* linphone_chat_message_get_text_content(const LinphoneChatMessage *msg); +/** + * Gets the file transfer content if available as a string + * @param[in] msg LinphoneChatMessage object + * @return the file name if available, null otherwise + */ +LINPHONE_PUBLIC const char* linphone_chat_message_get_file_transfer_content_file_name(const LinphoneChatMessage *msg); + /** * @} */ diff --git a/src/c-wrapper/api/c-chat-message.cpp b/src/c-wrapper/api/c-chat-message.cpp index ce1b1cdf8..6402943fb 100644 --- a/src/c-wrapper/api/c-chat-message.cpp +++ b/src/c-wrapper/api/c-chat-message.cpp @@ -321,6 +321,14 @@ const char * linphone_chat_message_get_text_content(const LinphoneChatMessage *m return L_STRING_TO_C(content.getBodyAsString()); } +const char* linphone_chat_message_get_file_transfer_content_file_name(const LinphoneChatMessage *msg) { + LinphonePrivate::Content content = L_GET_CPP_PTR_FROM_C_OBJECT(msg)->getFileTransferContent(); + if (content == LinphonePrivate::Content::Empty) { + return NULL; + } + return L_STRING_TO_C(content.getContentDisposition()); +} + // ============================================================================= // Old listener // =============================================================================