NIM PC Cross Platform SDK
nim::NOS Class Reference

NIM SDK提供的NOS云存储服务接口 More...

#include <nim_cpp_nos.h>

Public Types

typedef std::function< void(const InitNosResult &)> InitNosResultCallback
 初始化结果回调模板
 
typedef std::function< void(NIMResCode res_code, const std::string &file_path, const std::string &call_id, const std::string &res_id)> DownloadMediaCallback
 下载回调模板
 
typedef std::function< void(NIMResCode res_code, const std::string &url)> UploadMediaCallback
 上传回调模板
 
typedef std::function< void(int64_t completed_size, int64_t file_size)> ProgressCallback
 过程回调模板
 
typedef std::function< void(NIMResCode res_code, const DownloadMediaResult &result)> DownloadMediaExCallback
 扩展下载回调模板
 
typedef std::function< void(NIMResCode res_code, const UploadMediaResult &result)> UploadMediaExCallback
 扩展上传回调模板
 
typedef std::function< void(const std::string &url, std::string &token)> CustomTokenCallback
 自定义token回调模板
 
typedef std::function< void(int64_t completed_size, int64_t file_size, const ProgressData &result)> ProgressExCallback
 扩展过程回调模板
 
typedef std::function< void(int64_t speed)> SpeedCallback
 速度回调模板
 
typedef std::function< void(int64_t actual_size, int64_t speed)> TransferInfoCallback
 最终传输信息回调模板
 
typedef std::function< void(NIMResCode res_code, const std::string &origin_url)> SafeURLToOriginURLCallback
 根据安全链接(短链)取得源链接
 

Static Public Member Functions

static void InitConfig (const InitNosConfigParam &param, const InitNosResultCallback &cb)
 
static void RegDownloadCb (const DownloadMediaCallback &cb)
 
static void RegUploadCb (const UploadMediaExCallback &cb)
 
static void RegCustomCustomTokenCb (const CustomTokenCallback &cb)
 
static bool FetchMedia (const IMMessage &msg, const DownloadMediaCallback &callback_result, const ProgressCallback &callback_progress)
 
static bool FetchMediaEx (const IMMessage &msg, const std::string &json_extension, const DownloadMediaCallback &callback_result, const ProgressCallback &callback_progress, const SpeedCallback &callback_speed=SpeedCallback(), const TransferInfoCallback &callback_transfer=TransferInfoCallback())
 
static bool StopFetchMedia (const IMMessage &msg)
 
static bool UploadResource (const std::string &local_file, const UploadMediaCallback &callback_result, const ProgressCallback &callback_progress=ProgressCallback())
 
static bool UploadResource2 (const std::string &local_file, const std::string &tag, const UploadMediaCallback &callback_result, const ProgressCallback &callback_progress=ProgressCallback())
 
static bool UploadResourceEx (const std::string &local_file, const std::string &json_extension, const UploadMediaExCallback &callback_result, const ProgressExCallback &callback_progress=ProgressExCallback(), const SpeedCallback &callback_speed=SpeedCallback(), const TransferInfoCallback &callback_transfer=TransferInfoCallback())
 
static bool UploadResourceEx2 (const std::string &local_file, const std::string &tag, const std::string &json_extension, const UploadMediaExCallback &callback_result, const ProgressExCallback &callback_progress=ProgressExCallback(), const SpeedCallback &callback_speed=SpeedCallback(), const TransferInfoCallback &callback_transfer=TransferInfoCallback())
 
static bool StopUploadResourceEx (const std::string &task_id, const std::string &json_extension="")
 
static bool DownloadResource (const std::string &nos_url, const DownloadMediaCallback &callback_result, const ProgressCallback &callback_progress=ProgressCallback())
 
static bool DownloadResourceEx (const std::string &nos_url, const std::string &json_extension, const DownloadMediaExCallback &callback_result, const ProgressExCallback &callback_progress=ProgressExCallback(), const SpeedCallback &callback_speed=SpeedCallback(), const TransferInfoCallback &callback_transfer=TransferInfoCallback())
 
static bool StopDownloadResourceEx (const std::string &task_id, const std::string &json_extension="")
 
static void SafeURLToOriginURL (const std::string &safe_url, const SafeURLToOriginURLCallback &cb, const std::string &json_extension="")
 
static void UnregNosCb ()
 
static void SetSupportQuickTrans (bool bquick)
 

Detailed Description

NIM SDK提供的NOS云存储服务接口

Member Function Documentation

◆ DownloadResource()

static bool nim::NOS::DownloadResource ( const std::string &  nos_url,
const DownloadMediaCallback callback_result,
const ProgressCallback callback_progress = ProgressCallback() 
)
static

下载资源

Parameters
[in]nos_url下载资源的URL
[in]callback_result下载的回调函数
[in]callback_progress下载进度的回调函数
Returns
bool 检查参数如果不符合要求则返回失败
Note
错误码 200:成功 408:请求过程超时 其他:参见HTTP协议或CURL错误码

◆ DownloadResourceEx()

static bool nim::NOS::DownloadResourceEx ( const std::string &  nos_url,
const std::string &  json_extension,
const DownloadMediaExCallback callback_result,
const ProgressExCallback callback_progress = ProgressExCallback(),
const SpeedCallback callback_speed = SpeedCallback(),
const TransferInfoCallback callback_transfer = TransferInfoCallback() 
)
static

下载资源

Parameters
[in]nos_url下载资源的URL
[in]json_extensionjson扩展参数,拼接字段见 nim_nos_def.h "NOS扩展上传\下载接口参数json_extension Json key for nim_nos_upload_ex && nim_nos_download_ex"
[in]callback_result扩展下载的回调函数
[in]callback_progress扩展下载进度的回调函数
[in]callback_speed下载速度的回调函数
[in]callback_transfer最终下载信息的回调函数
Returns
bool 检查参数如果不符合要求则返回失败
Note
错误码 200:成功 10206:下载暂停 408:请求过程超时 其他:参见HTTP协议或CURL错误码

◆ FetchMedia()

static bool nim::NOS::FetchMedia ( const IMMessage msg,
const DownloadMediaCallback callback_result,
const ProgressCallback callback_progress 
)
static

获取资源

Parameters
[in]msg消息内容
[in]callback_result下载的回调函数
[in]callback_progress下载进度的回调函数
Returns
bool 检查参数如果不符合要求则返回失败
Note
错误码 200:成功 10206:下载暂停 408:请求过程超时 其他:参见HTTP协议或CURL错误码

◆ FetchMediaEx()

static bool nim::NOS::FetchMediaEx ( const IMMessage msg,
const std::string &  json_extension,
const DownloadMediaCallback callback_result,
const ProgressCallback callback_progress,
const SpeedCallback callback_speed = SpeedCallback(),
const TransferInfoCallback callback_transfer = TransferInfoCallback() 
)
static

获取资源

Parameters
[in]msg消息内容
[in]json_extensionjson扩展参数
[in]callback_result下载的回调函数
[in]callback_progress下载进度的回调函数
[in]callback_speed下载速度的回调函数
[in]callback_transfer最终下载信息的回调函数
Returns
bool 检查参数如果不符合要求则返回失败
Note
错误码 200:成功 10206:下载暂停 408:请求过程超时 其他:参见HTTP协议或CURL错误码

◆ InitConfig()

void nim::NOS::InitConfig ( const InitNosConfigParam param,
const InitNosResultCallback cb 
)
static

Nos模块初始化接口,对上传资源时使用的各场景资源生命周期进行初始化,开发者最多可自定义10个场景,并指定场景资源的生命周期,并可以对缺省场景(kNIMNosDefaultTagResource、kNIMNosDefaultTagIM)进行覆盖(重新指定生命周期)

Parameters
[in]param初始化参数
[in]cb结果回调函数
Returns
void 无返回值

◆ RegCustomCustomTokenCb()

static void nim::NOS::RegCustomCustomTokenCb ( const CustomTokenCallback cb)
static

(全局回调)注册自定义token获取回调

Parameters
[in]cb回调函数
Returns
void 无返回值

◆ RegDownloadCb()

static void nim::NOS::RegDownloadCb ( const DownloadMediaCallback cb)
static

(全局回调)注册下载回调,通过注册回调获得HTTP下载结果通知(所有触发HTTP下载任务的接口的参数列表里无法设置通知回调处理函数的通知都走这个通知,比如收到图片语音会触发SDK自动下载等,开发者可以通过监听这个广播通知结果刷新UI资源)

Parameters
[in]cb下载的回调函数
Returns
void 无返回值

◆ RegUploadCb()

static void nim::NOS::RegUploadCb ( const UploadMediaExCallback cb)
static

(全局回调)注册上传回调,通过注册回调获得HTTP上传结果通知(所有触发HTTP上传任务的接口的参数列表里无法设置通知回调处理函数的通知都走这个通知,比如发送文件图片语音消息等)

Parameters
[in]cb回调函数
Returns
void 无返回值

◆ SafeURLToOriginURL()

static void nim::NOS::SafeURLToOriginURL ( const std::string &  safe_url,
const SafeURLToOriginURLCallback cb,
const std::string &  json_extension = "" 
)
static

根据安全链接(短链)换取源链接

Parameters
[in]safe_url安全链接(短链)
[in]cb结果回调
[in]json_extensionjson扩展参数
Returns
void
Note
错误码 200:成功 其他:404 不存在该短链或 safe_url 不是一个有效的短链

◆ SetSupportQuickTrans()

static void nim::NOS::SetSupportQuickTrans ( bool  bquick)
static

打开或关闭文件快传开关

Parameters
[in]bquick是否打开 true:打开 false:关闭
Returns
void

◆ StopDownloadResourceEx()

static bool nim::NOS::StopDownloadResourceEx ( const std::string &  task_id,
const std::string &  json_extension = "" 
)
static

停止下载资源(只能用于调用了DownloadResourceEx接口的下载任务)

Parameters
[in]task_id停止下载任务的ID
[in]json_extensionjson扩展参数
Returns
bool 检查参数如果不符合要求则返回失败
Note
错误码 10206:成功 其他:参见HTTP协议或CURL错误码

◆ StopFetchMedia()

static bool nim::NOS::StopFetchMedia ( const IMMessage msg)
static

停止获取资源(目前仅对文件消息类型有效)

Parameters
[in]msg消息内容
Returns
bool 检查参数如果不符合要求则返回失败
Note
错误码 10206:成功

◆ StopUploadResourceEx()

static bool nim::NOS::StopUploadResourceEx ( const std::string &  task_id,
const std::string &  json_extension = "" 
)
static

停止上传资源(只能用于调用了UploadResourceEx接口的上传任务)

Parameters
[in]task_id停止上传任务的ID
[in]json_extensionjson扩展参数
Returns
bool 检查参数如果不符合要求则返回失败
Note
错误码 10200:成功 其他:参见HTTP协议或CURL错误码

◆ UnregNosCb()

void nim::NOS::UnregNosCb ( )
static

反注册Nos提供的所有回调

Returns
void 无返回值

◆ UploadResource()

static bool nim::NOS::UploadResource ( const std::string &  local_file,
const UploadMediaCallback callback_result,
const ProgressCallback callback_progress = ProgressCallback() 
)
static

上传资源

Parameters
[in]local_file本地文件的完整路径,路径名必须是utf-8
[in]callback_result上传的回调函数
[in]callback_progress上传进度的回调函数
Returns
bool 检查参数如果不符合要求则返回失败
Note
错误码 200:成功 408:请求过程超时 其他:参见HTTP协议或CURL错误码

◆ UploadResource2()

static bool nim::NOS::UploadResource2 ( const std::string &  local_file,
const std::string &  tag,
const UploadMediaCallback callback_result,
const ProgressCallback callback_progress = ProgressCallback() 
)
static

上传资源

Parameters
[in]local_file本地文件的完整路径,路径名必须是utf-8
[in]tag场景标签,主要用于确定文件的保存时间
[in]callback_result上传的回调函数
[in]callback_progress上传进度的回调函数
Returns
bool 检查参数如果不符合要求则返回失败
Note
错误码 200:成功 408:请求过程超时 其他:参见HTTP协议或CURL错误码

◆ UploadResourceEx()

static bool nim::NOS::UploadResourceEx ( const std::string &  local_file,
const std::string &  json_extension,
const UploadMediaExCallback callback_result,
const ProgressExCallback callback_progress = ProgressExCallback(),
const SpeedCallback callback_speed = SpeedCallback(),
const TransferInfoCallback callback_transfer = TransferInfoCallback() 
)
static

上传资源

Parameters
[in]local_file本地文件的完整路径,路径名必须是utf-8
[in]json_extensionjson扩展参数,拼接字段见 nim_nos_def.h "NOS扩展上传\下载接口参数json_extension Json key for nim_nos_upload_ex && nim_nos_download_ex"
[in]callback_result扩展上传的回调函数
[in]callback_progress扩展上传进度的回调函数
[in]callback_speed上传速度的回调函数
[in]callback_transfer最终上传信息的回调函数
Returns
bool 检查参数如果不符合要求则返回失败
Note
错误码 200:成功 10200:上传暂停 408:请求过程超时 其他:参见HTTP协议或CURL错误码

◆ UploadResourceEx2()

static bool nim::NOS::UploadResourceEx2 ( const std::string &  local_file,
const std::string &  tag,
const std::string &  json_extension,
const UploadMediaExCallback callback_result,
const ProgressExCallback callback_progress = ProgressExCallback(),
const SpeedCallback callback_speed = SpeedCallback(),
const TransferInfoCallback callback_transfer = TransferInfoCallback() 
)
static

上传资源

Parameters
[in]local_file本地文件的完整路径,路径名必须是utf-8
[in]tag场景标签,主要用于确定文件的保存时间
[in]json_extensionjson扩展参数,拼接字段见 nim_nos_def.h "NOS扩展上传\下载接口参数json_extension Json key for nim_nos_upload_ex && nim_nos_download_ex"
[in]callback_result扩展上传的回调函数
[in]callback_progress扩展上传进度的回调函数
[in]callback_speed上传速度的回调函数
[in]callback_transfer最终上传信息的回调函数
Returns
bool 检查参数如果不符合要求则返回失败
Note
错误码 200:成功 10200:上传暂停 408:请求过程超时 其他:参见HTTP协议或CURL错误码

The documentation for this class was generated from the following files: