系列文章:转载自:
http://hi.baidu.com/nathan2007/blog/item/2e288fec5b69a83d27979158.html
作者:
nathan
以下分析均基于飞信的这一版本:Fetion 2006 beta 版本 2.1.0.0。
被迫开始用飞信(Fetion),痛苦啊,这玩意儿开发了几年(飞信博客上一家伙说参加飞信项目两年了),而且用的是.NET(工作量要比
C++小了去了),居然这么烂,也算是个奇迹了。。。。自己找点乐子,分析飞信的通信协议好了。。。这不是什么破解,俺也不是什么什么客,纯属无聊。
抓包看了一下,飞信是用了混合协议的:
1、基于HTTP(XML Web Services吧?)进行获取系统配置、更新程序、注册用户
2、基于HTTPS进行登录时密码验证
3、应用层协议是SIP协议,但不是标准的,估计是自创的?所有交互过程如发消息、短信通过SIP协议进行。
关于SIP,有巨多的RFC描述,飞信的SIP协议栈实现的是TCP、HTTP承载
1.TCP承载方式:连接服务器(目前是221.130.45.203)的8080端口,这时在客户端的“网络设置”中显示的是“TCP直接连接”,SIP信令直接就放在TCP的包中。
2.HTTP承载方式:连接服务器(目前是221.130.45.203)的80端口,采用POST方式,将信令包在POST请示中,这时在客户端的“网络设置”中显示的是“HTTP直接连接”
因为是TCP和HTTP承载,所以其包格式是非常清楚的,那么注意力就可以直接放到SIP协议或SIP信令上,详细的内容稍后再写。
总的来说,飞信协议是比较简单的,不对,准确地说法是比较规范和清晰,但协议本身是复杂的,另外:
1.
飞信的协议是明文,这一点如同其兄弟MSN,是不如QQ和RTX的,因此,通过飞信的交谈过程是可轻易截获的,通过很简单的工具,就可以截到同一网段上所
有人的交谈,估计会有人写Fetion Chat
Sniffer的,就跟MSN一样,假如有一天Fetion有那么流行......要不我写一个?:)
2.协议效率比较低,我加了近200人,一次登录过程要传递的数据量居然超过了230K,我靠。
3.状态有问题,presence处理得不太好好象,我在线别人却看到我离线,真是奇怪,而且一会儿发一个presence一会儿发一个,讨厌啊。
BTW:
RFC在这里看:http://www.faqs.org/rfcs/,太方便了,就是关于SIP的多得看不过来。
分享到:
相关推荐
总的来说,"Fetion.rar_fetion_移动飞信_飞信"是一个用于C#开发的飞信API或SDK资源包,为开发者提供了构建通信应用的可能,开发者可以借此探索飞信的各种功能,并结合C#的编程优势,创造出个性化的通信解决方案。
飞信是中国移动推出的一款通信软件,全称为"Fetion",在2008年时的版本为"Fetion_2008"。这款应用旨在提供便捷、高效的即时通讯服务,尤其注重融合手机与互联网的通讯体验。下面将详细阐述飞信的主要功能、发展历程...
命令行下使用的飞信. 可嵌入在程序中自动发送飞信短信. 使用方法: 1)进入Dos命令行 2)输入如下命令 sms -f ’您的手机号‘ -p ‘您的飞信密码’ -t ’目标手机号‘ -m ’你需要发送的消息‘ 其中您的手机号需要...
标题“开源 Fetion api java”指的是一个开源的Java API,用于与Fetion(飞信)服务进行交互。Fetion是一种由中国移动推出的即时通讯软件,允许用户通过互联网或手机发送短信、语音消息以及进行语音通话。这个API...
飞信,全称为中国移动飞信,是一款由中国移动推出的融合通信服务,它允许用户通过网络或者短信方式免费向手机和电脑用户发送消息。"Fetion.rar_fetion_飞信"这个压缩包文件可能包含了飞信的应用程序安装文件,即...
飞信协议分析与接口调用是理解其工作原理和技术实现的关键,这对于开发者来说具有重要价值,特别是对于想要利用飞信API进行二次开发或者集成到自己的应用中的人员。 首先,我们来看"飞信2006分析"和"飞信2010分析...
飞信,全称为中国移动飞信,是一款由中国移动推出的融合通信服务,它允许用户通过短信、语音、互联网等多种方式实现跨平台的即时通讯。在“Fetion.rar_fetion_fetion Visual Basic_飞信”这个压缩包中,我们可以看到...
ubuntu下支持2010飞信协议的fetion 不是以前的linuxfetion
(2) send()方法是有返回值的,可以通过分析文本判断是否发送成功。考虑到wap界面会改动,所以没有在类里写死关于发送成功的判断。 (二)实现原理 1. 用PHP发送HTTP请求模拟登录WAP版的飞信,并模拟发送飞信。实现...
private static Fetion fetion = null; public static void main(String[] args) throws Exception{ String mobile = null; String pwd = null; if(args==null || args.length){ System.out.println(...
标题“飞信协议分析”指出了文档的核心内容是关于飞信通信协议的深入解析。飞信是中国移动推出的一种即时通讯服务,允许用户通过短信、互联网等方式进行沟通。协议分析是指对飞信软件在实现通信时所使用的技术细节和...
飞信是中国移动推出的一款免费即时通讯软件,名为"Fetion",它允许用户通过手机或电脑进行文字、语音甚至视频的通信。在这个压缩包文件中,我们看到的是一个针对飞信3.0版本的修改版,名为"Fetion 3_fetion java_...
总的来说,"Fetion2012March飞信客户端"是那个时代互联网通信的一个缩影,它代表了一种将传统短信与互联网即时通讯结合的尝试,对于了解中国早期互联网社交历史有一定的参考价值。如果你对复古软件感兴趣,或者想...
【标题】:“webFetion网页版本飞信客户端”是一个基于网页的即时通讯服务,它允许用户通过浏览器进行短信发送、在线聊天等操作,无需安装专门的客户端软件。飞信是中国移动推出的一款通信服务,旨在融合互联网和...
飞信,全称为中国移动飞信,是一款由中国移动推出的即时通讯软件,它允许用户通过网络进行免费的文字、语音以及视频通信。在Linux操作系统中,飞信的使用为用户提供了跨平台的沟通便利,打破了Windows系统对这类应用...
VB 飞信发送器..无验证,直接发送到手机
飞信飞信飞信飞信Fetion 2008.zip飞信Fetion 2008.zip飞信Fetion 2008.zip飞信Fetion 2008.zip飞信Fetion 2008.zip飞信Fetion 2008.zip飞信Fetion 2008.zip
一)使用说明 1. 需要包含进你的程序的文件只有一个:PHPFetion.php。如: require 'PHPFetion.php'; 2. 调用方法如: $fetion = new PHPFetion('13500001111', '123123'); // 手机号、飞信密码 $fetion->...
2. **即时消息**:飞信支持一对一和群组聊天,可以发送文字、表情、图片、文件等多种类型的消息,而且对移动用户发送短信通常是免费的。 3. **语音对讲**:类似对讲机功能,用户可以实时语音交流,无需拨打传统电话...
【标题】"fetion.rar_fetion_visual c" 涉及的IT知识点主要集中在飞信(Fetion)的客户端开发以及使用Visual C#编程语言实现通过Web URL发送短信的功能。 飞信是中国移动推出的一款即时通讯软件,允许用户通过网络...