码迷,mamicode.com
首页 > Windows程序 > 详细

C# 调用腾讯即时通信 IM

时间:2019-11-13 13:07:54      阅读:281      评论:0      收藏:0      [点我收藏+]

标签:nta   rgs   登录   textbox   回调   file   xxxxxx   llb   user   

IM SDK API 概述 https://cloud.tencent.com/document/product/269/33543

        /// <summary>
        /// IM SDK 初始化。
        /// </summary>
        /// <param name="sdk_app_id"></param>
        /// <param name="json_sdk_config"></param>
        /// <returns></returns>
        [DllImport(@"imsdk.dll", CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.Ansi)]
        public extern static int TIMInit(long sdk_app_id, string json_sdk_config);
        /// <summary>
        /// 登录
        /// </summary>
        /// <param name="user_id">用户id</param>
        /// <param name="user_sig">签名</param>
        /// <param name="cb"></param>
        /// <returns></returns>
        [DllImport(@"imsdk.dll", CallingConvention = CallingConvention.Cdecl)]
        private extern static int TIMLogin(string user_id, string user_sig, TIMCommCallback cb);
        /// <summary>
        /// 接收新消息回调
        /// </summary>
        /// <param name="cb"></param>
        [DllImport(@"imsdk.dll", CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.Ansi)]
        private extern static void TIMAddRecvNewMsgCallback(delegateTIMRecvNewMsgCallback cb);
        public void ImInit()
        {
            int sdk_app_id = 1400000000;
            var data = new { sdk_config_log_file_path = AppDomain.CurrentDomain.BaseDirectory, sdk_config_config_file_path = AppDomain.CurrentDomain.BaseDirectory };
            TIMInit(sdk_app_id, JsonConvert.SerializeObject(data));
            TIMAddRecvNewMsgCallback(TIMRecvNewMsgCallback);
            var tLSSig = new TLSSigAPIv2(sdk_app_id, "163250645178b565ffc0b22618d14a88d8a91d86f0e76813313197a5xxxxxxx");
            TIMLogin("用户", tLSSig.GenSig("用户"), CommCallback);

        }
        private delegate int TIMCommCallback(int code, string desc, string json_params);
        
        private int CommCallback(int code, string desc, string json_params)
        {
            return code;
        }
        private delegate void delegateTIMRecvNewMsgCallback(string json_msg_array,IntPtr user_data);
        private  void TIMRecvNewMsgCallback(string json_msg_array, IntPtr user_data) {
            var b = Encoding.Default.GetBytes(json_msg_array);
            richTextBox1.AppendText(Encoding.UTF8.GetString(b));
        }
        private void Form1_Load(object sender, EventArgs e)
        {
          ImInit();
        }

 

C# 调用腾讯即时通信 IM

标签:nta   rgs   登录   textbox   回调   file   xxxxxx   llb   user   

原文地址:https://www.cnblogs.com/zhangliang2008/p/11847858.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!