chenqiyang
2022-09-02 6a99d9bf65aa5878cb409945ed2bdbdcb916d047
Shared.IOS.HDLLinphoneSDK/Shared.IOS.HDLLinphoneSDK/Library/linphone.framework/Headers/error_info.h
old mode 100644 new mode 100755
@@ -40,135 +40,137 @@
 * - the "phrase", a text phrase describing the error
 * - the "warning", the content of warning headers if any
 * - a sub "LinphoneErrorInfo" may be provided if a SIP response includes a Reason header (RFC3326).
 * @return a new #LinphoneErrorInfo object @notnil
**/
LINPHONE_PUBLIC LinphoneErrorInfo *linphone_error_info_new(void);
/**
 * Increment refcount.
 * @param[in] ei ErrorInfo object
 * @param error_info #LinphoneErrorInfo object @notnil
 * @return the same #LinphoneErrorInfo object @notnil
**/
LINPHONE_PUBLIC LinphoneErrorInfo *linphone_error_info_ref(LinphoneErrorInfo *ei);
LINPHONE_PUBLIC LinphoneErrorInfo *linphone_error_info_ref(LinphoneErrorInfo *error_info);
/**
 * Decrement refcount and possibly free the object.
 * @param[in] ei ErrorInfo object
 * @param error_info #LinphoneErrorInfo object @notnil
**/
LINPHONE_PUBLIC void linphone_error_info_unref(LinphoneErrorInfo *ei);
LINPHONE_PUBLIC void linphone_error_info_unref(LinphoneErrorInfo *error_info);
/**
* Get Retry-After delay second from the error info.
* @param[in] ei ErrorInfo object
* @param error_info #LinphoneErrorInfo object @notnil
* @return The Retry-After delay second
**/
LINPHONE_PUBLIC int linphone_error_info_get_retry_after(const LinphoneErrorInfo *ei);
LINPHONE_PUBLIC int linphone_error_info_get_retry_after(const LinphoneErrorInfo *error_info);
/**
 * Get reason code from the error info.
 * @param[in] ei ErrorInfo object
 * @return A #LinphoneReason
 * @param error_info #LinphoneErrorInfo object @notnil
 * @return A #LinphoneReason object
**/
LINPHONE_PUBLIC LinphoneReason linphone_error_info_get_reason(const LinphoneErrorInfo *ei);
LINPHONE_PUBLIC LinphoneReason linphone_error_info_get_reason(const LinphoneErrorInfo *error_info);
/**
 * Get pointer to chained #LinphoneErrorInfo set in sub_ei.
 * It corresponds to a Reason header in a received SIP response.
 * @param  ei ErrorInfo object
 * @return    #LinphoneErrorInfo pointer defined in the ei object.
 * @param error_info #LinphoneErrorInfo object @notnil
 * @return #LinphoneErrorInfo pointer defined in the ei object. @maybenil
 */
LINPHONE_PUBLIC LinphoneErrorInfo* linphone_error_info_get_sub_error_info(const LinphoneErrorInfo *ei);
LINPHONE_PUBLIC LinphoneErrorInfo* linphone_error_info_get_sub_error_info(const LinphoneErrorInfo *error_info);
/**
 * Get textual phrase from the error info.
 * This is the text that is provided by the peer in the protocol (SIP).
 * @param[in] ei ErrorInfo object
 * @return The error phrase
 * @param error_info #LinphoneErrorInfo object @notnil
 * @return The error phrase @maybenil
**/
LINPHONE_PUBLIC const char * linphone_error_info_get_phrase(const LinphoneErrorInfo *ei);
LINPHONE_PUBLIC const char * linphone_error_info_get_phrase(const LinphoneErrorInfo *error_info);
   
/**
 * Get protocol from the error info.
 * @param[in]  ei ErrorInfo object
 * @return    The protocol
 * @param error_info #LinphoneErrorInfo object @notnil
 * @return The protocol. @maybenil
 */
LINPHONE_PUBLIC const char *linphone_error_info_get_protocol(const LinphoneErrorInfo *ei);
LINPHONE_PUBLIC const char *linphone_error_info_get_protocol(const LinphoneErrorInfo *error_info);
/**
 * Provides additional information regarding the failure.
 * With SIP protocol, the content of "Warning" headers are returned.
 * @param[in] ei ErrorInfo object
 * @return More details about the failure
 * @param error_info #LinphoneErrorInfo object @notnil
 * @return More details about the failure. @maybenil
**/
LINPHONE_PUBLIC const char * linphone_error_info_get_warnings(const LinphoneErrorInfo *ei);
LINPHONE_PUBLIC const char * linphone_error_info_get_warnings(const LinphoneErrorInfo *error_info);
/**
 * Get the status code from the low level protocol (ex a SIP status code).
 * @param[in] ei ErrorInfo object
 * @param error_info #LinphoneErrorInfo object @notnil
 * @return The status code
**/
LINPHONE_PUBLIC int linphone_error_info_get_protocol_code(const LinphoneErrorInfo *ei);
LINPHONE_PUBLIC int linphone_error_info_get_protocol_code(const LinphoneErrorInfo *error_info);
/**
 * Assign information to a #LinphoneErrorInfo object.
 * @param[in] ei          ErrorInfo object
 * @param[in] protocol      protocol name
 * @param[in] reason        reason  from #LinphoneReason enum
 * @param[in] code          protocol code
 * @param[in] status_string description of the reason
 * @param[in] warning       warning message
 * @param error_info    #LinphoneErrorInfo object @notnil
 * @param protocol      protocol name @maybenil
 * @param reason        reason  from #LinphoneReason enum
 * @param code          protocol code
 * @param status        description of the reason @maybenil
 * @param warning       warning message @maybenil
 */
LINPHONE_PUBLIC void linphone_error_info_set(LinphoneErrorInfo *ei, const char *protocol, LinphoneReason reason, int code, const char *status_string, const char *warning);
LINPHONE_PUBLIC void linphone_error_info_set(LinphoneErrorInfo *error_info, const char *protocol, LinphoneReason reason, int code, const char *status, const char *warning);
   
/**
 * Set the sub_ei in #LinphoneErrorInfo to another LinphoneErrorInfo.
 * Set the sub_ei in #LinphoneErrorInfo to another #LinphoneErrorInfo.
 * Used when a reason header is to be added in a SIP response. The first level #LinphoneErrorInfo defines the SIP response code and phrase,
 * the second (sub) #LinphoneErroInfo defining the content of the Reason header.
 * @param[in] ei         #LinphoneErrorInfo object to which the other #LinphoneErrorInfo will be appended as ei->sub_ei.
 * @param[in] appended_ei #LinphoneErrorInfo to append
 * @param error_info #LinphoneErrorInfo object to which the other #LinphoneErrorInfo will be appended as ei->sub_ei. @notnil
 * @param appended_error_info #LinphoneErrorInfo to append @maybenil
 */
LINPHONE_PUBLIC void linphone_error_info_set_sub_error_info(LinphoneErrorInfo *ei, LinphoneErrorInfo *appended_ei);
LINPHONE_PUBLIC void linphone_error_info_set_sub_error_info(LinphoneErrorInfo *error_info, LinphoneErrorInfo *appended_error_info);
/**
* Assign retry-after value to a #LinphoneErrorInfo object.
* @param[in] ei     ErrorInfo object
* @param[in] retry_after the retry-after value
* @param error_info #LinphoneErrorInfo object @notnil
* @param retry_after the retry-after value
*/
LINPHONE_PUBLIC void linphone_error_info_set_retry_after(LinphoneErrorInfo *ei, int retry_after);
LINPHONE_PUBLIC void linphone_error_info_set_retry_after(LinphoneErrorInfo *error_info, int retry_after);
/**
 * Assign reason #LinphoneReason to a #LinphoneErrorInfo object.
 * @param[in] ei     ErrorInfo object
 * @param[in] reason reason  from #LinphoneReason enum
 * @param error_info #LinphoneErrorInfo object @notnil
 * @param reason reason from #LinphoneReason enum
 */
LINPHONE_PUBLIC void linphone_error_info_set_reason(LinphoneErrorInfo *ei, LinphoneReason reason);
LINPHONE_PUBLIC void linphone_error_info_set_reason(LinphoneErrorInfo *error_info, LinphoneReason reason);
/**
 * Assign protocol name to a #LinphoneErrorInfo object.
 * @param[in] ei     ErrorInfo object
 * @param[in] proto the protocol name
 * @param error_info #LinphoneErrorInfo object @notnil
 * @param protocol the protocol name @maybenil
 */
LINPHONE_PUBLIC void linphone_error_info_set_protocol(LinphoneErrorInfo *ei, const char *proto);
LINPHONE_PUBLIC void linphone_error_info_set_protocol(LinphoneErrorInfo *error_info, const char *protocol);
/**
 * Assign protocol code to a #LinphoneErrorInfo object.
 * @param[in] ei     ErrorInfo object
 * @param[in] code the protocol code
 * @param error_info #LinphoneErrorInfo object @notnil
 * @param code the protocol code
 */
LINPHONE_PUBLIC void linphone_error_info_set_protocol_code(LinphoneErrorInfo *ei, int code);
LINPHONE_PUBLIC void linphone_error_info_set_protocol_code(LinphoneErrorInfo *error_info, int code);
/**
 * Assign phrase to a #LinphoneErrorInfo object.
 * @param[in] ei     ErrorInfo object
 * @param[in] phrase the phrase explaining the error
 * @param error_info #LinphoneErrorInfo object @notnil
 * @param phrase the phrase explaining the error @maybenil
 */
LINPHONE_PUBLIC void linphone_error_info_set_phrase(LinphoneErrorInfo *ei, const char *phrase);
LINPHONE_PUBLIC void linphone_error_info_set_phrase(LinphoneErrorInfo *error_info, const char *phrase);
/**
 * Assign warnings to a #LinphoneErrorInfo object.
 * @param[in] ei     ErrorInfo object
 * @param[in] phrase the warnings
 * @param error_info #LinphoneErrorInfo object @notnil
 * @param warnings the warnings @maybenil
 */
LINPHONE_PUBLIC void linphone_error_info_set_warnings(LinphoneErrorInfo *ei, const char *warnings);
LINPHONE_PUBLIC void linphone_error_info_set_warnings(LinphoneErrorInfo *error_info, const char *warnings);
/**
 * @}