C# 调用腾讯即时通信 IM
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 = ;
- 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的更多相关文章
- QQ 腾讯QQ(简称“QQ”)是腾讯公司开发的一款基于Internet的即时通信(IM)软件
QQ 编辑 腾讯QQ(简称“QQ”)是腾讯公司开发的一款基于Internet的即时通信(IM)软件.腾讯QQ支持在线聊天.视频通话.点对点断点续传文件.共享文件.网络硬盘.自定义面板.QQ邮箱等多种功 ...
- Android 接入腾讯IM即时通信(详细图文)
原文地址:Android 接入腾讯IM即时通信(详细图文) | Stars-One的杂货小窝 腾讯云IM官网文档上提供了带UI模块和不带UI模块的,本文是基于带UI模块进行了Module封装,可以方便 ...
- 腾讯云即时通信 IM 服务 实例项目
腾讯云即时通信 IM 服务 https://github.com/tencentyun/TIMSDK
- 服务端搭建——腾讯云通信(IM)
前言 在手机app中因为需要即时聊天功能,在项目采用腾讯云通信服务.如下流程图: 当手机端拿到签名后,就可登录IM,使用im提供的sdk收发信息. 准备工作 1.在腾讯云注册获取appid 2.申请开 ...
- (转)基于即时通信和LBS技术的位置感知服务(二):XMPP协议总结以及开源解决方案
在<基于即时通信和LBS技术的位置感知服务(一):提出问题及解决方案>一文中,提到尝试使用XMPP协议来实现即时通信.本文将对XMPP协议框架以及相关的C/S架构进行介绍,协议的底层实现不 ...
- [C# 网络编程系列]专题九:实现类似QQ的即时通信程序
转自:http://www.cnblogs.com/zhili/archive/2012/09/23/2666987.html 引言: 前面专题中介绍了UDP.TCP和P2P编程,并且通过一些小的示例 ...
- .NET 即时通信,WebSocket服务端实例
即时通信常用手段 1.第三方平台 谷歌.腾讯 环信等多如牛毛,其中谷歌即时通信是免费的,但免费就是免费的并不好用.其他的一些第三方一般收费的,使用要则限流(1s/限制x条消息)要么则限制用户数. 但稳 ...
- IMLite轻量级即时通信工具开发指南
花了一周时间开发了一个简单的即时通信工具,勉强算是程序原型.现在我把开发流程和一些个人的想法记录下来.本文首先介绍程序架构和通信接口,之后会聚焦到服务器的信号槽设计原则,接下来将解释有关TCP通信的粘 ...
- 使用flask_socketio实现客户端间即时通信
前期没有来得及好好总结,现在复习总结一下: Socket.IO 背后主要的思想是你可以发送和接收想要的任何事件,携带你想要的任何数据.任何可以编码为 JSON 的对象都可以做到,并且也支持二进制数据. ...
随机推荐
- XAF-在代码中实现属性值验证(EF)
This lesson explains how to set rules for business classes and their properties. These rules are val ...
- swift之NSDate
在通常项目中一般用的最多的情况就是获取日期并格式化. 1.只需要小时.分钟.秒数时个人觉得使用以下代码 let dateFormater = NSDateFormatter() dateFormate ...
- 版本管理·玩转git(日志查看与版本切换)
如果你想更清晰地学习git,你必须要了解3个重要区域. 工作区:即开发者的工作目录 暂存区:修改已被记录,但尚未录入版本库的区域 版本库:存储变化日志及版本信息 当你在工作区进行开发工作时,git会记 ...
- ubuntu 安装elasticsearch
elasticsearch简介 环境准备 elasticsearch:7.0.0 kibana :7.0.0 安装 1.新创建普通用户 elasticsearch不能用root账号 ...
- 记录C#-WPF线程中如何修改值
new Thread(() => { Application.Current.Dispatcher.BeginInvoke(DispatcherPriority.Normal, new Acti ...
- Linux系统快速操作常用快捷键
快捷键名称 快捷键作用 Ctrl + a 将光标移至行首 Ctrl + e 将光标移至行尾 Ctrl + u 前提光标在行尾,则清除当前行所有的内容(有空格照章清除) Ctrl + k 前提光标在行首 ...
- CodeForces - 1236B (简单组合数学)
题意 有n种物品和m个背包,每种物品有无限个,现将若干个物品放到这些背包中,满足: 1.每个背包里不能出现相同种类的物品(允许有空背包): 2.在所有的m个背包中,每种物品都出现过. 求方案数,对10 ...
- web之ics-06
打开网址,四处点击,点到报表中心,跳转新页面 查看源码也没有什么特别的,发现URL栏有?id=1 以为是sql注入,但是并不是,查看大佬的wp 发现这题采用brupsuite爆破 先将抓到的包放到In ...
- jwt揭秘(含源码示例和视频)
JSON Web Tokens,是一种开发的行业标准 RFC 7519 ,用于安全的表示双方之间的声明.目前,jwt广泛应用在系统的用户认证方面,特别是现在前后端分离项目. 1. jwt认证流程 在项 ...
- keras 学习笔记(二) ——— data_generator
data_generator 每次输出一个batch,基于keras.utils.Sequence Base object for fitting to a sequence of data, suc ...