https://support.weixinhttpapi.qq.com/cgi-bin/mmsupport-

你有没有说过这些话:“这个我们做不了。”“我们要是能再多一些人和资源该多好!”“我们预算不够。”“这个在这里绝对行不通。”给小型事工以大创意一直都是个挑战性的任务。你可能会觉得人少,资源少,预算不够,所以达不到预期。如果是这样,你恰恰和我们一样!正如我们的布莱恩牧师常说的,“我们的异象向来比资源更多!”人们常常觉得Hillsong教会的敬拜团队不存在上述问题,每个周末似乎都像是Hillsong的聚会或唱片录制。每周在各大校园我们都举行聚会和各项活动,同时我们也以同样的心和同样的文化进行一些小型的服侍。正如许多其他敬拜团队,我们每周的挑战是如何把鲜活的创意和有力的敬拜带进教会服事中,因为我们的人手相比数千人聚会的需要实在少得可怜。幸运的是,这种挑战常常孕育了创新和智慧。你觉得怎么样?我们肯定没有全部答案,但是这里有一些实用的策略可能对你和你的团队有用。1.使用你现有的资源你现在拥有什么?在马太福音25章,耶稣讲了恩赐的比喻,告诉我们要用我们现有的来努力做到最好。“好,你这又良善又忠心的仆人,你在不多的事上有忠心,我要把许多事派你管理”(马太福音25:21)参考大型团队作的榜样,是设立目标和谋求发展的很好途径。有时候小型教会仅仅因为没有同样的资源,就会导致结果稍有不同,所以你必须考虑手中拥有的资源。比如,你们的团队可能没有任何的键盘手,但是你可能有个很棒的大提琴或小提琴手。你们可能没有电吉他手,但是有个很优秀的班卓琴手。总而言之,你的小团队不必非和大团队完全一样,但却可以和他们同样优秀。当我们不再单单模仿别的团队,而是运用自己的创意,就可以带来独特的、满有圣灵的服事,使上帝特别的意愿在每个团队中得以成就。审视一下自己的团队有哪些优点。以这些优点为基础进行建造,你们会成长为一个更强大的团队。这话听起来简单,但是我们很容易忽略那些可以作为基础的长处,因为我们总是想让自己的团队看起来或感觉上去像其他的团队。你的团队是独特的,正如其他团队一样。让上帝通过你的独特,建立起一团队,使之可以更好地服事你所在的教会。2.眼观八方灵感无处不在-你触摸到了吗?这一点并不太复杂。你正在使用哪些资源,使你的创意鲜活、新颖而且有效?在一个小的团队里,可能你是唯一那个为教会重大节日(如复活节,圣诞节等等)出谋划策的人。因此,要尽可能地从各处收集灵感。免费网站比如Pinterest,Designspiration和Instagram有大量的图片和想法,可以帮你构思,并应用到主日崇拜中。以上这些资源(以及其他网站、图书和杂志)都可能帮你找到服事中的场地布置,道具,或帮你想到服侍中的灵感。一天过完时,如果你没有定时收集新的想法,你的创造力会变成简单无趣的重复。一定要眼观八方,注意任何可以深入挖掘的资源。3.建立在优秀的文化基础上要勇于将团队建立在适合之人之上,而不是方便之人。你的团队有没有乐队成员不守时?有没有敬拜带领者只选择自己喜欢的歌而不是服事中需要的歌?这是带领创新团队的困难之一,当团队较小时,这类问题就更加突出,最终结果往往是要么用这个人,要么无人可用。要知道自己忍耐的底线,这一点很重要。我总是很仁慈,但是遇到任何迎合不健康文化、使团队乌烟瘴气的情形,就要勇敢反对。对团队的未来要有清晰的异象,适时做出决定,培养怀有相同异象的人。这不是个速成的方法。要知道,欲速则不达。它可能意味着要和与你有矛盾的团队成员一起坐下来真诚对话。要试着去了解他们的想法。请参考:《如何和敬拜团队中不好相处的人相处》根据我领导团队的经验,这看起来好比培养一群毫无经验和技巧的年轻人,但我绝对是甘心乐意的。几年下来,他们成了今日领导和建立团队的人。这需要很多付出,付出时间、精力,需要有牺牲精神。永远不要低估你建立团队的能力,只要你愿意在时间中撒种。伟大的创新团队不可能快速建成。让我们致力于把具有伟大精神和仆人心志的人才,培养成为具有伟大精神和仆人心志的团队。你一定能做到!永远不要低估你建立的能力,只要你愿意在时间中撒种。4.建立可衡量的目标认识现在的位置,知道前行的方向。在一个有创意的环境中工作,有个很大的诱惑就是把所有的目标都设成不可衡量的,以感觉为基础,因为这通常是我们自然反应。我们可能会想“我的团队很不协调”,或者“这方面似乎出了问题”。这时候认识你现在的位置以及知道前行方向很重要。然后就制定可衡量目标并使工作朝此目标努力。首先要对实际状况作出评估,你的团队现在实际情况怎么样?每个位置有多少人?找出那些相对落后的位置,确定落后在什么地方。一旦你做好了这些,你可以给每个需要改进的位置设一个系统,跟踪了解它的状况。比如,你可能发现你的团队只有一个吉他手,而你实际上需要三个。知道之后,你可以想办法找到增加吉他手的方法(这有时候不太容易,事实上经常都很难)。你可以和会乐器但是需要提升技巧的人见面沟通,如果他愿意练习,可以给他上课。或者也可以问你的团队成员谁愿意零基础学习一门新乐器。要时刻观察进展情况,即使需要很大的付出才达到目标。这是小的团队慢慢发展壮大的长期方法。参考《10种培养你的敬拜团队的实用方法》设立务实的目标也可以帮助你带领的团队理解他们需要做的事。鼓励带领者达到可实现的目标,以促进团队发展。最重要的是,他们要委身于自己的团队,并把这种文化继续传递下去。根据我的经验,当人们培养出人才时,他们不太会产生来自后起者的胁迫感和不安全感,因为他们之间建立了关系。这是个多方的共赢。5.以身作则你为自己定的标准,也是你团队参照的标准。这可能是最重要的一点。作为领导,你要在你的服事和团队中做到优秀。问一下自己:“我给自己设立的标准也是要求团队做到的吗?”从根本上来说,你要求团队做到的标准自己也要做到。你守时了吗?你为团队祷告了吗?你在乎你的团队吗?你和他们有真诚的沟通吗?你建立起团契生活了吗(而不是光说)?你邀请别人一起吃饭吗?你从不灰心吗?你在教会中使你的领袖身份得荣耀了吗?出了教会你花时间敬拜吗?你定时读经吗?你相信别人,不怕人的威胁吗?你始终如一地坚持工作吗?你致力于不断学习吗?列出的问题单子还可以更长。把你的带领方式作为榜样,鼓励你的团队效法。教他们在服事中找到方法可以让人们与上帝相遇,清晰地知道他在哪里以及他为我们所做的一切。我们出去带领团队服侍会众时要把这个问题看为至关重要。不论我们的教会现在有多大,看起来怎样,资源多少,我们都可以完成出色的敬拜服事,把需要上帝、荣耀上帝、高举上帝的人带到上帝的面前。作者:布伦南(布伦南在澳洲的“拓展服事”中负责监管敬拜团队,这些服事中许多都是只有100个人以内的小行星式的聚会。) 
 文章为作者独立观点,不代表微头条立场
的最新文章
我们的神是拥有一切主权的。这意味着,没有任何运气可言。发生在你身上的任何好事或坏事,都必须首先经过他的许可。诗篇9:11恶人,就是忘记神的外邦人,都必归到阴间。诗篇34:21恶必害死恶人,恨恶义人的,必被定罪。诗篇3因为以色列百姓犯罪,神离开耶路撒冷,神的百姓分三批被掳到巴比伦;后来,上帝怜悯被掳的百姓,一批一批让他们归回你有没有说过这些话:“这个我们做不了。”“我们要是能再多一些人和资源该多好!”“我们预算不够。”“这个在这里http://support./cgi-bin/mmsupport-bin/sho 心理咨询基督教服务处品德是无法伪造的,也无法像衣服一样随兴地穿上或脱下来丢在一旁。就像基督徒的灵性与爱差别在于爱在巨木参天的森林里,入秋时节,树叶变色,如同穿上缤纷的彩衣。动物活越久,越衰老;树【轻松一刻】法国小伙为追女孩研究圣经,要证明上帝不存在,可是……一个爱好旅游的法国风流公子,爱上了一个基督徒你认识耶稣有多少?你真的认识祂吗?美国德州Salem Lutheran教会杰克史考顿(Jack Stockt一、纯洁的动机  在神面前不隐藏、不做作、不伪饰。要学习存着感恩与爱的心态,认清自己的恩赐与事奉岗位都是神所一位出租车司机载着一位老牧师,他忽然想起这几十年中虽然多次听过耶稣救人的福音,可始终不明白是怎么一回事。正好圣洁人典型的十种表现——作者:莱尔——“成圣就是把我们不义的脾气挪去,并且让我们的心被爱神与爱人的意念充满。1今日经文 以西结书8:1-18节1 第六年六月初五日,我坐在家中。犹大的众长老坐在我面前。在那里主耶和华的占据世界第一富豪位置10多年并被誉为超级天才和赚钱机器的比尔盖茨,近日忽然向全世界宣布,他将要退休并将自己所前言
  莎士比亚有一齣剧 “Measure for Measure” ,梁实秋先生的翻译是《恶有恶报》(经文:太六:6  “你祷告的时候,要进你的内屋,关上门,祷告你在暗中的父;你父在暗中察看,必然报答你。”  (上帝的命令,是不容违抗的,也是推辞不掉的。)  (约翰福音13:17)“你们既知道这事,若是去行就有福了。《马太福音》24:3-5;耶稣在橄榄山上坐着,门徒暗暗的来说:“请告诉我们,什么时候有这些事?你降临和世界的【民23:9】我从高峰看他,从小山望他,这是独居的民,不列在万民中。   【创49:26】你父亲所祝的福,胜奇 妙 的 救 恩引言:以弗所书是保罗生命最成熟时的作品。启示了教会的奥秘,救赎的奥秘。全书的中心是“基督与提起北京基督教崇文门堂,很多人都知道这里有一个特别的团契叫“喜乐团契”,这里有一群不寻常的姊妹,她们多是乳腺识苦难:─一同受苦,一同得荣耀经文:罗八17;林前十二26钥节:若一个肢体受苦,所有的肢体就一同受苦,若一个不一样的董事长王雪红随时随处都预备多本圣经和属灵书籍,当她发现身边的人有需要时,总是十分愿意与人分享神的话语当时,耶稣被圣灵引到旷野,受魔鬼的试探。耶和华上帝啊,基督在肉体的时候既大声哀哭,流泪祷告,恳求您——那能救经文:约翰福音10:1--6、10;罗马书12:1--2  约翰福音10:1 “我实实在在的告诉你们:人进羊经文:弗4:11-16,彼后3:18   真实的信仰带来真正的生命,而生命的成长是一个很正常的自然现象。神把信耶稣是为什么?不是为了给你治病,不是劝你行善,不是为了精神寄托,也不是拉你来教会,当然,信耶稣的人常会得到其实,每个人都在寻找心灵的归属,使自己的心可以得到满足。有人用金钱、有人用地位、有人用爱情等等……“人心不足第一个问题:死亡  当人进入死亡时,世间荣华富贵顿时归零,变得完全没有吸引力。对死亡的恐惧是包括秦始皇在内的舅妈向我传福音   在中国农村长大的我,本不爱说话,想不到1990年至今作了九百多首诗歌,被神使用,深信一切【书10:6】[和合本] 基遍人就打发人往吉甲的营中去见约书亚,说:“你不要袖手不顾你的仆人,求你速速上来拯我们每个人都会有心灵软弱的经历。有时觉得身体里面被掏空,缺少属灵的力量。甚至好像支撑不住、站立不起来、灰心、 一、魔鬼的诡计:在加略山上,犹大支派的狮子耶稣基督已经打败了魔鬼,除去他力量的权柄。使我们从他管辖下得自由我们的父上帝求你帮助我们明白你的话语、被建造、更新、更多认识你。祷告奉耶稣基督的名求,阿们。  大家在购物的[马太福音 12:15] 耶稣知道了、就离开那里、有许多人跟着他、他把其中有病的人都治好了。[马太福音 12男人们有一个共同的战争,就是与色情的争战。当今的男人们更是如此。当下的社会中性感图像俯拾皆是,林林总总的杂志看色情杂志是自己的事,不会伤害其他人,有何不可呢?如果你有这样的想法,一位牧者的见证让你看到这件事的危害:会自全球最大婚外情网站数据被曝光之后,媒体已经报道了几起自杀事件。美国新奥尔良神学院的一名教授兼牧师约翰·吉布耶路撒冷的圣殿被毁,二战期间六百万犹太人被希特勒杀害,欧洲的大教堂成为人们参观、拍照的艺术品,看到这些,人们Ⅰ.引言:齐克果父亲的祷告
丹麦神学家及哲学家齐克果(S?ren Kierkegaard,100年前,伯格理牧师逝世于贵州石门坎,这位伟大的传教士为云南和贵州少数民族,尤其是苗族的福音事业奉献了一生yabisituanqi祷告主能加力量,祷告能使教会兴旺,祷告能赶鬼捆锁,祷告能使人释放;祷告能使国家昌盛,祷告能使人民蒙福,祷告能改变一切不可能的事......热门文章最新文章yabisituanqi祷告主能加力量,祷告能使教会兴旺,祷告能赶鬼捆锁,祷告能使人释放;祷告能使国家昌盛,祷告能使人民蒙福,祷告能改变一切不可能的事......微信协议简单调研笔记 - 推酷
微信协议简单调研笔记
微信可调研点很多,这里仅仅从协议角度进行调研,会涉及到微信协议交换、消息收发等。所谓“弱水三千,只取一瓢”吧。
杂七杂八的,有些长,可直接拉到最后看结论好了。
一。微信协议概览
微信传输协议,官方公布甚少,在微信技术总监所透漏PPT《微信之道—至简》文档中,有所体现。
纯个人理解:
因张小龙做邮箱Foxmail起家,继而又做了QQ Mail等,QQ Mail是国内第一个支持Exchange ActiveSync协议的免费邮箱,基于其从业背景,微信从一开始就采取基于ActiveSync的修改版状态同步协议Sync,也就再自然不过了。
一句话:增量式、按序、可靠的状态同步传输的微信协议。
大致交换简图如下:
如何获取新数据呢:
服务器端通知,客户端获取
客户端携带最新的SyncKey,发起数据请求
服务器端生成最新的SyncKey连同最新数据发送给客户端
基于版本号机制同步协议,可确保数据增量、有序传输
SyncKey,由服务器端序列号生成器生成,一旦有新消息产生,将会产生最新的SyncKey。类似于版本号
服务器端通知有状态更新,客户端主动获取自从上次更新之后有变动的状态数据,增量式,顺序式。
二。微信Web端简单调试
在线版本微信:
通过Firefox + Firebug组合调试,也能证实了微信大致通过交换SyncKey方式获取新数据的论述。
1. 发起GET长连接检测是否存在新的需要同步的数据
会携带上最新SyncKey
https://webpush./cgi-bin/mmwebwx-bin/synccheck?callback=jQuery&r=2&sid=s7c%2FsxpGRSihgZAA&uin=937355&deviceid=e877&synckey=1_C2_C3_C11_C201_%7C202_%7C219&_=5
返回内容:
window.synccheck={retcode:"0",selector:"2"}
selector值大于0,表示有新的消息需要同步。
据目测,心跳周期为27秒左右。
2. 一旦有新数据,客户端POST请求主动获取同步的数据
https://webpush./cgi-bin/mmwebwx-bin/webwxsync?sid=s7c%2FsxpGRSihgZAA&r=5
携带消息体:
{"BaseRequest":{"Uin":937355,"Sid":"s7c/sxpGRSihgZAA"},"SyncKey":{"Count":6,"List":[{"Key":1,"Val":},{"Key":2,"Val":},{"Key":3,"Val":},{"Key":11,"Val":},{"Key":201,"Val":},{"Key":1000,"Val":}]},"rr":4}
会携带上最新的SyncKey,会返回复杂结构体JSON内容。
但浏览端收取到消息之后,如何通知服务器端已确认收到了?Web版本微信,没有去做。
在以往使用过程中,曾发现WEB端有丢失消息的现象,但属于偶尔现象。但Android微信客户端(只要登陆连接上来之后)貌似就没有丢失过。
3. 发送消息流程
发起一个POST提交,用于提交用户需要发送的消息
https://webpush./cgi-bin/mmwebwx-bin/webwxsendmsg?sid=lQ95vHR52DiaLVqo&r=6
发送内容:
{"BaseRequest":{"Uin":937355,"Sid":"lQ95vHR52DiaLVqo","Skey":"A6A1ECC6A7DE59DEFF6A05F226AA334DECBABC6","DeviceID":"e975"},"Msg":{"FromUserName":"yongboy","ToUserName":"hehe057854","Type":1,"Content":"hello","ClientMsgId":0,"LocalID":0}}
相应内容:
"BaseResponse": {
"ErrMsg": ""
"MsgID": ,
"LocalID": "0"
再次发起一个POST请求,用于申请最新SyncKey
https://webpush./cgi-bin/mmwebwx-bin/webwxsync?sid=lQ95vHR52DiaLVqo&r=6
发送内容:
{"BaseRequest":{"Uin":937355,"Sid":"lQ95vHR52DiaLVqo"},"SyncKey":{"Count":6,"List":[{"Key":1,"Val":},{"Key":2,"Val":},{"Key":3,"Val":},{"Key":11,"Val":},{"Key":201,"Val":},{"Key":1000,"Val":}]},"rr":6}
响应的(部分)内容:
"SKey": "8F8C6AFDF727ACB95C93C2CDCE9FB9532FC15B"
终止GET长连接,使用最新SyncKey再次发起一个新的GET长连接
https://webpush./cgi-bin/mmwebwx-bin/synccheck?callback=jQuery
4&r=5&sid=lQ95vHR52DiaLVqo&uin=937355&deviceid=e975&synckey=1
三。微信Android简单分析
Windows桌面端Android虚拟机中运行最新版微信(5.2),通过tcpdump/Wireshark组合封包分析,以下为分析结果。
0. 初始连接记录
简单记录微信启动之后请求:
11:20:35 dns查询
返回一组IP地址
11:20:35 DNS查询
返回一组IP地址,本次通信中,微信使用了最后一个IP作为TCP长连接的连接地址。
http://dns./cgi-bin/micromsg-bin/newgetdns?uin=0&clientversion=&scene=0&net=1
用于请求服务器获得最优IP路径。服务器通过结算返回一个xml定义了域名:IP对应列表。仔细阅读,可看到微信已经开始了国际化的步伐:香港、加拿大、韩国等。
具体文本,请参考:/yongboy/9341884
获取到long.最优IP,然后建立到101.227.131.105的TCP长连接
POST http://short./cgi-bin/micromsg-bin/getprofile HTTP/1.1
(application/octet-stream)
返回一个名为“micromsgresp.dat”的附件,估计是未阅读的离线消息
POST http://short./cgi-bin/micromsg-bin/whatsnews HTTP/1.1
(application/octet-stream)
大概是资讯、订阅更新等
中间进行一些资源请求等,类似于
GET /mmhead/Q3auHgzwzM7NR4TYFcoNjbxZpfO9aiaE7RU5lXGUw13SMicL6iacWIf2A/96
图片等一些静态资源都会被分配到域名下面
不明白做什么用途
POST http://short./cgi-bin/micromsg-bin/downloadpackage HTTP/1.1
(application/octet-stream)
输出为micromsgresp.dat文件
GET http://support./cgi-bin/mmsupport-bin/reportdevice?channel=34&deviceid=Aa840c2a&clientversion=&platform=0&lang=zh_CN&installtype=0 HTTP/1.1
返回chunked分块数据
POST http://short./cgi-bin/micromsg-bin/reportstrategy HTTP/1.1
(application/octet-stream)
1. 心跳频率约为5分钟
上次使用Wireshark分析有误(得出18分钟结论),再次重新分析,心跳频率在5分钟左右。
2. 登陆之后,会建立一个长连接,端口号为8080
简单目测为HTTP,初始以为是双通道HTTP,难道是自定义的用于双通道通信的HTTP协议吗,网络上可见资料都是模棱两可、语焉不详。
具体查看长连接初始数据通信,没有发现任何包含&HTTP&字样的数据,以为是微信自定义的TCP/HTTP通信格式。据分析,用于可能用于获取数据、心跳交换消息等用途吧。这个后面会详谈微信是如何做到的。
2.0 初始消息传输
个人资料、离线未阅读消息部分等通过 POST HTTP短连接单独获取。
2.1 二进制简单分析
抽取微信某次HTTP协议方式通信数据,16进制表示,每两个靠近的数字为一个byte字节:
微信协议可能如下:
一个消息包 = 消息头 + 消息体
消息头固定16字节长度,消息包长度定义在消息头前4个字节中。
单纯摘取第0000行为例,共16个字节的头部:
00 00 00 10 00 10 00 01 00 00 00 06 00 00 00 0f
16进制表示,每两个紧挨着数字代表一个byte字节。
微信消息包格式: 1. 前4字节表示数据包长度,可变 值为16时,意味着一个仅仅包含头部的完整的数据包(可能表示着预先定义好的业务意义),后面可能还有会别的消息包 2. 2个字节表示头部长度,固定值,0x10 = 16 3. 2个字节表示谢意版本,固定值,0x01 = 1 4. 4个字节操作说明数字,可变 5. 序列号,可变 6. 头部后面紧跟着消息体,非明文,加密形式 7. 一个消息包,最小16 byte字节
通过上图(以及其它数据多次采样)分析:
0000 - 0040为单独的数据包
0050行为下一个数据包的头部,前四个字节值为0xca = 202,表示包含了从共202个字节数据
一次数据发送,可能包含若干子数据包
换行符\n,16进制表示为0x0a,在00f0行,包含了两个换行符号
一个数据体换行符号用于更细粒度的业务数据分割 是否蒙对,需要问问做微信协议的同学
所有被标记为HTTP协议通信所发送数据都包含换行符号
2.2 动手试试猜想,模拟微信TCP长连接
开始很不解为什么会出现如此怪异的HTTP双通道长连接请求,难道基于TCP通信,然后做了一些手脚?很常规的TCP长连接,传输数据时(不是所有数据传输),被wireshark误认为HTTP长连接。这个需要做一个实验证实一下自己想法,设想如下:
写一个Ping-Pong客户端、服务器端程序,然后使用Wireshark看一下结果,是否符合判断。
Java版本的请求端,默认请求8080端口:
C语言版本的服务器程序,收到什么发送什么,没有任何逻辑,默认绑定8080端口:
这里有一个现场图:
可以尝试稍微改变输出内容,去除换行符“\n”,把端口换成9000,试试看,就会发现Wireshark输出不同的结果来。
2.3 结论是什么呢?
若使用原始TCP进行双向通信,则需要满足以下条件,可以被类似于Wireshark协议拦截器误认为是HTTP长连接:
使用80/8080端口(81/经测试无效) 也许8080一般被作为WEB代理服务端口,微信才会享用这个红利吧。
输出的内容中,一定要包含换行字符&\n&
因此,可以定性为微信使用了基于8080端口TCP长连接,一旦数据包中含有换行&\n&符号,就会被Wireshark误认为HTTP协议。可能微信是无心为之吧。
3. 新消息获取方式
TCP长连接接收到服务器通知有新消息需要获取
APP发起一个HTTP POST请求获取新状态消息,会带上当前SyncKey 地址为:http://short./cgi-bin/micromsg-bin/reportstrategy HTTP/1.1,看不到明文
APP获取到新的消息,会再次发起一次HTTP POST请求,告诉服务器已确认收到,同时获取最新SyncKey 地址为:http://short./cgi-bin/micromsg-bin/kvreport,看不到明文
接受一个消息,TCP长连接至少交互四次,客户端发起两次HTTP POST请求
服务器需要支持:状态消息获取标记,状态消息确认收取标记。只有被确认收到,此状态消息才算是被正确消费掉
多个不同设备同一账号同时使用微信,同一个状态消息会会被同时分发到多个设备上
此时消息请求截图如下:
4. 发送消息方式
发送消息走已经建立的TCP长连接通道,发送消息到服务器,然后接受确认信息等,产生两次交互。
小伙伴接收到信息阅读也都会收到服务器端通知,产生两次交互等。
可以确定,微信发送消息走TCP长连接方式,因为不对自身状态数据产生影响,应该不交换SyncKey。
在低速网络下,大概会看到消息发送中的提示,属于消息重发机制
网络不好有时客户端会出现发送失败的红色感叹号
已发送到服务器但未收到确认的消息,客户端显示红色感叹号,再次重发,服务器作为重复消息处理,反馈确认
四。微信协议小结
发布的消息对应一个ID(只要单个方向唯一即可,服务器端可能会根ID判断重复接收),消息重传机制确保有限次的重试,重试失败给予用户提示,发送成功会反馈确认,客户端只有收到确认信息才知道发送成功。发送消息可能不会产生新SyncKey。
基于版本号(SynKey)的状态消息同步机制,增量、有序传输需求水到渠成。长连接通知/短连接获取、确认等,交互方式简单,确保了消息可靠谱、准确无误到达。
客户端/服务器端都会存储消息ID处理记录,避免被重复消费客户端获取最新消息,但未确认,服务器端不会认为该消息被消费掉。下次客户端会重新获取,会查询当前消息是否被处理过。根据一些现象猜测。
总体上看,微信协议跨平台(TCP或HTPP都可呈现,处理方式可统一),通过“握手”同步,很可靠,无论哪一个平台都可以支持的很好
微信协议最小成本为16字节,大部分时间若干个消息包和在一起,批量传输。微信协议说不上最简洁,也不是最节省流量,但是非常成功的。
以上,根据有限资料和数据拦截观察总结得出,啰啰嗦嗦,勉强凑成一篇,会存在一些不正确之处,欢迎给予纠正。
Microsoft Exchange Active Sync协议,简称EAS,分为folderrsync(同步文件夹目录,即邮箱内有哪几个文件夹)和sync(每个文件夹内有哪些文档)两部分。
某网友总结的协议一次回话大致示范:
synckey=0 //第一次key为0
newsynckey=1235434
//第一次返回新key
synckey=1235434
//使用新key查询
newsynckey=1647645,data=*****//第一次查询,得到新key和数据
synckey=1647645
newsynckey=5637535,data=null //第二次查询,无新消息
synckey=5637535
Server: newsynckey=8654542, data=****//第三次查询,增量同步
上页中的相邻请求都是隔固定时间的,如两分钟
客户端每次使用旧key标记自己的状态,服务端每次将新key和增量数据一起返回。
key是递增的,但不要求连续
请求的某个参数决定服务器是否立即返回
----------------------------------------------------------------------------
广而告之,让您自由畅游网络~
再超值提供一个近期有效的9折优惠码:
freevpnssh
我平常在Linux下安装/更新软件,压根不用担心GFW阻挠了,更不用提windows下自由搜索调研。
已发表评论数()
&&登&&&录&&
已收藏到推刊!
请填写推刊名
描述不能大于100个字符!
权限设置: 公开
仅自己可见15-07-19【求助】微信号被人盗了,怎么办?求兄弟姐妹们帮忙_心然吧_百度贴吧
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&签到排名:今日本吧第个签到,本吧因你更精彩,明天继续来努力!
本吧签到人数:0可签7级以上的吧50个
本月漏签0次!成为超级会员,赠送8张补签卡连续签到:天&&累计签到:天超级会员单次开通12个月以上,赠送连续签到卡3张
关注:50,857贴子:
15-07-19【求助】微信号被人盗了,怎么办?求兄弟姐妹们帮忙
作为90后没什么玩微信的习惯,但年纪渐长有时候不得不用,上个月刚申请了个,不怎么用,昨天登微信发现上不去了,我以为是手机的原因,也没在意,就重新申请了一个,后来和朋友聊天说我在宁波玩的好吗,我很惊讶,后来了解情况后我就知道我号被人盗了,所幸我不怎么玩,许多朋友也没加,但微信号和我的qq号绑定了,难免会有什么差错,我本来想加回那个我被盗的号,看看能不能劝那个盗我号的人还给我,后来想想那人也不一定会加我,就没怎么做了。现在不知道怎么办,希望有朋友能给我出个主意。谢谢帮忙。
魔性魅力,吴小爷专属!
节后不想上班和上学的,...
经理发短信威胁我,只能...
蛋糕君你这么萌,让女汉...
爱上自己的学生,我该怎...
只有姚明的笑脸那么simp...
《花千骨2105》延续了《...
盘点二次元男男cp投票选...
吓死宝宝了!如果是在良...
章元一,85后时尚摄影师...
200个暗恋问题,你能答...
只要我想,我就可以发自...
有绑手机么,尝试忘记密码哪里找回试试
表示微信用的少,不清楚,帮顶
上宫网冻结微信号
weixin.qq.com/cgi-bin/mmsupport-bin/readtemplate?t=page/account_frozen__intro&source_id=2918无论何时,无论何地,我们的上方都是那那广阔的天空。我想这就像那绝对无法切断的羁绊一样。
不怎么玩,不知道。
这个简单。去找度娘,这种事找度娘更简单,各种手把手步骤
申请个新号
内&&容:使用签名档&&
保存至快速回贴

我要回帖

更多关于 weixinhttpapi 的文章

 

随机推荐