chenqiyang
2024-07-17 be56723cce4cd60ddc144ebe6ac20607675b3006
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
/*
 * Copyright (c) 2010-2019 Belledonne Communications SARL.
 *
 * This file is part of Liblinphone.
 *
 * This program is free software: you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation, either version 3 of the License, or
 * (at your option) any later version.
 *
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License
 * along with this program. If not, see <http://www.gnu.org/licenses/>.
 */
 
/*
 * That file declares functions that are used by automatic API wrapper generators. These
 * should not be used by C API users.
 */
 
#ifndef _WRAPPER_UTILS_H
#define _WRAPPER_UTILS_H
 
#include <bctoolbox/list.h>
#include "linphone/defs.h"
#include "linphone/types.h"
 
#ifdef __cplusplus
extern "C" {
#endif
 
/**
 * @addtogroup wrapper
 * @{
 */
 
/**
 * @brief Gets the list of listener in the core.
 * @param core The #LinphoneCore. @notnil
 * @return The list of #LinphoneCoreCbs. @maybenil
 * @donotwrap
 */
LINPHONE_PUBLIC bctbx_list_t *linphone_core_get_callbacks_list(const LinphoneCore *core);
 
/**
 * @brief Gets the list of listener in the call.
 * @param call #LinphoneCall object. @notnil
 * @return The list of #LinphoneCallCbs. @maybenil
 * @donotwrap
 */
LINPHONE_PUBLIC const bctbx_list_t *linphone_call_get_callbacks_list(const LinphoneCall *call);
 
/**
 * @brief Gets the list of listener in the chat room.
 * @param chat_room #LinphoneChatRoom object. @notnil
 * @return The list of #LinphoneChatRoomCbs. @maybenil
 * @donotwrap
 */
LINPHONE_PUBLIC const bctbx_list_t *linphone_chat_room_get_callbacks_list(const LinphoneChatRoom *chat_room);
 
/**
 * Gets the list of listener in the conference.
 * @param[in] conference LinphoneConference object
 * @return The attached listeners. \bctbx_list{LinphoneConferenceCbs}
 * @donotwrap
 */
LINPHONE_PUBLIC const bctbx_list_t *linphone_conference_get_callbacks_list(const LinphoneConference *conference);
 
/**
 * Sets the current LinphoneChatRoomCbs.
 * @param chat_room LinphoneChatRoom object
 * @param cbs LinphoneChatRoomCbs object
 * @donotwrap
 */
LINPHONE_PUBLIC void linphone_chat_room_set_current_callbacks(LinphoneChatRoom *chat_room, LinphoneChatRoomCbs *cbs);
 
/**
 * @brief Gets the list of listener in the chat mesasge.
 * @param message #LinphoneChatMessage object.
 * @return The list of #LinphoneChatMessageCbs.
 * @donotwrap
 */
LINPHONE_PUBLIC const bctbx_list_t *linphone_chat_message_get_callbacks_list(const LinphoneChatMessage *message);
 
/**
 * Sets the current LinphoneChatMessageCbs.
 * @param message LinphoneChatMessage object
 * @param cbs LinphoneChatMessageCbs object
 * @donotwrap
 */
LINPHONE_PUBLIC void linphone_chat_message_set_current_callbacks(LinphoneChatMessage *message, LinphoneChatMessageCbs *cbs);
 
/**
 * Accessor for the shared_ptr&lt;BelCard&gt; stored by a #LinphoneVcard
 * @param vcard a #LinphoneVcard
 * @return a shared_ptr<BelCard>
 * @donotwrap
 */
LINPHONE_PUBLIC void *linphone_vcard_get_belcard(LinphoneVcard *vcard);
 
/**
 * Allow multipart on a basic chat room
 * @donotwrap
 */
LINPHONE_PUBLIC void linphone_chat_room_allow_multipart(LinphoneChatRoom *room);
 
/**
 * Allow cpim on a basic chat room
 * @donotwrap
 */
LINPHONE_PUBLIC void linphone_chat_room_allow_cpim(LinphoneChatRoom *room);
 
/************ */
/* DEPRECATED */
/* ********** */
 
/**
 * Send a message to peer member of this chat room.
 *
 * The state of the sending message will be notified via the callbacks defined in the #LinphoneChatMessageCbs object that can be obtained
 * by calling linphone_chat_message_get_callbacks().
 * @note Unlike linphone_chat_room_send_chat_message(), that function only takes a reference on the #LinphoneChatMessage
 * instead of totaly takes ownership on it. Thus, the #LinphoneChatMessage object must be released by the API user after calling
 * that function.
 *
 * @param chat_room A chat room. @notnil
 * @param message The message to send. @notnil
 * @deprecated 08/07/2020 Use linphone_chat_message_send() instead.
 * @donotwrap It doesn't says what the doc says it does
 */
LINPHONE_DEPRECATED LINPHONE_PUBLIC void linphone_chat_room_send_chat_message_2(LinphoneChatRoom *chat_room, LinphoneChatMessage *message);
 
/**
 * Resend a chat message if it is in the 'not delivered' state for whatever reason.
 * @note Unlike linphone_chat_message_resend(), that function only takes a reference on the #LinphoneChatMessage
 * instead of totaly takes ownership on it. Thus, the #LinphoneChatMessage object must be released by the API user after calling
 * that function.
 *
 * @param message #LinphoneChatMessage object @notnil
 * @deprecated 08/07/2020 Use linphone_chat_message_send instead.
 * @donotwrap It doesn't says what the doc says it does
 */
LINPHONE_DEPRECATED LINPHONE_PUBLIC void linphone_chat_message_resend_2(LinphoneChatMessage *message);
 
/**
 * @}
 */
 
#ifdef __cplusplus
}
#endif
 
#endif // _WRAPPER_UTILS_H