C#访问openfire服务器之一:服务端的安装、客户端的简介
来源:互联网 发布:土豆for mac下载 官方 编辑:程序博客网 时间:2024/05/24 02:08
最近在移动端开发中遇到推送消息、即时通信的需求,以前没有注意过这方面的知识,特别花费一段时间捣鼓了一下,初步实现了c#访问openfire服务器,实现即时通信。特此记录一下,方便与我一般的初涉者参考。
首先,即时通信服务分为服务端与客户端两块。
一、服务端
服务端使用openfire直接进行搭建,基本上是一步步向下操作即可。
我使用的是exe版本的安装程序,首先正常安装,然后启动服务器端,进入其web的管理台,进行一些初始化的设置。中间主要需要设置数据库访问,注意官方自带的JDBC类型并不完整,比如我使用的是oracle,则需要自己下载相应数据库版本的JDBC,将包放到openfire安装目录下的lib文件夹中。
测试:服务端设置成功以后,可以安装直接的Spark客户端进行测试(常规的即时通信工具)。
openfire和Spark下载地址:http://www.igniterealtime.org/downloads/index.jsp
二、客户端
因为openfire是JAVA项目,我们这些C#选手想要使用须通过agsXMPP进行访问。
在使用agsXMPP访问openfire服务器时需要注意以下问题。
1. 认证协议问题
agsXMPP 在认证的时候,默认使用 DIGEST-MD5 ,但是在 openfire 下无法认证通过,改成 PLAIN 即可,也就是在 miniclient 的 frmMain.cs 的 XmppCon_OnSaslStart 方法中,将如下两行的注释去掉:
args.Auto = false;
args.Mechanism = agsXMPP.protocol.sasl.Mechanism.GetMechanismName(agsXMPP.protocol.sasl.MechanismType.PLAIN);
2. Iq 节
Openfire 不支持 Iq 节带 to 的属性,所以在 agsXMPP 中发送 Iq 节的时候先 RemoveAttribute("to") 一下就行了,具体的就是找到 agsXMPP 源代码目录下的 sasl/saslHandler.cs 文件中,所有调用 SendIq 方法的前面,都加入如下语句:
bIq.RemoveAttribute("to");
- C#访问openfire服务器之一:服务端的安装、客户端的简介
- 在一台服务器上安装oracle服务端和客户端,不能访问的解决办法
- 在一台服务器上安装oracle服务端和客户端,不能访问的解决办法
- 在一台服务器上安装oracle服务端和客户端,不能访问的解决办法 .
- 在一台服务器上安装oracle服务端和客户端,不能访问的解决办法 (转)
- C#访问openfire服务器之三:一次成功的登录
- 三种客户端访问wcf服务端的方法 C#
- IM平台的搭建:openfire服务端和spark客户端
- XMPP(一)-openfire服务端的安装和搭建
- XMPP(一)-openfire服务端的安装和搭建
- Openfire+spark安装基于XMPP协议的服务端开发环境
- XMPP开源服务端Openfire在Windows下的安装
- openfire 服务器在Linux上的安装
- Openfire服务器的安装部署详细步骤
- Openfire服务器的安装部署详细步骤
- Openfire服务器的安装部署详细步骤
- Openfire服务器的安装部署详细步骤
- Openfire服务器的安装部署详细步骤
- Linux之module_param()函数学习
- 计算机视觉领域的一些牛人博客,超有实力的研究机构等的网站链接
- python和pyQT的下载和安装
- linux设备驱动归纳总结(三):6.poll和sellct
- 透明activity
- C#访问openfire服务器之一:服务端的安装、客户端的简介
- 纯css实现垂直导航栏
- 欢迎使用CSDN-markdown编辑器
- android四大组件--ContentProvider详解
- Android M 新的运行时权限开发者需要知道的一切
- MySQL事件(1)
- 一阶差分法求取波形起始点、顶点
- WinCE Network驱动开发简介
- 海康SDK编程指南(C#二次开发版本)