Example #1
0
        /// <summary>
        /// 音视频网络探测接口
        /// </summary>
        /// <param name="json_extension"></param>
        /// <param name="cb">
        /// 回调函数json_extension keys:
        /// "task_id":uint64 任务id
        /// "loss":int 丢包率百分比
        /// "rttmax":int rtt 最大值
        /// "rttmin":int rtt 最小值
        /// "rttavg":int rtt 平均值
        /// "rttmdev":int rtt 偏差值 mdev
        /// "detailinfo":string 扩展信息
        /// </param>
        /// <param name="user_data"></param>
        /// <returns>探测任务id
        /// 200:成功
        /// 0:流程错误
        /// 400:非法请求格式
        /// 417:请求数据不对
        /// 606:ip为内网ip
        /// 607:频率超限
        /// 20001:探测类型错误
        /// 20002:ip错误
        /// 20003:sock错误
        /// </returns>
        public static ulong DetectNetwork(string json_extension, nim_vchat_opt_cb_func cb, IntPtr user_data)
        {
            var ptr = NimUtility.DelegateConverter.ConvertToIntPtr(cb);
            var ret = VChatNativeMethods.nim_vchat_net_detect(json_extension, VChatNormalOptCb, ptr);

            return(ret);
        }
Example #2
0
        /// <summary>
        /// 音视频网络探测接口,需要在sdk初始化时带上app key
        /// </summary>
        /// <param name="json_extension">扩展参数,允许用户设置探测时间限制kNIMNetDetectTimeLimit,及探测类型kNIMNetDetectType</param>
        /// <param name="cb">操作结果的回调函数</param>
        /// <returns>探测任务id</returns>
        /// 回调函数json_extension keys:
        /// "task_id":uint64 任务id
        /// "loss":int 丢包率百分比
        /// "rttmax":int rtt 最大值
        /// "rttmin":int rtt 最小值
        /// "rttavg":int rtt 平均值
        /// "rttmdev":int rtt 偏差值 mdev
        /// "detailinfo":string 扩展信息
        /// </param>
        /// <param name="user_data"></param>
        /// <returns>探测任务id
        /// 200:成功
        /// 0:流程错误
        /// 400:非法请求格式
        /// 417:请求数据不对
        /// 606:ip为内网ip
        /// 607:频率超限
        /// 20001:探测类型错误
        /// 20002:ip错误
        /// 20003:sock错误
        /// </returns>
        public static ulong DetectNetwork(NIMVChatNetDetectJsonEx json, NIMVChatOptHandler cb)
        {
            string json_str = "";

            if (json != null)
            {
                json_str = json.Serialize();
            }
            var ptr = NimUtility.DelegateConverter.ConvertToIntPtr(cb);
            var ret = VChatNativeMethods.nim_vchat_net_detect(json_str, VChatNormalOptCb, ptr);

            return(ret);
        }