找回密码
 加入我们

QQ登录

只需一步,快速开始

搜索
查看: 11475|回复: 61

[PalmOS软件] WebQQ, 一个不错的接口.

[复制链接]
发表于 2010-7-15 17:29 | 显示全部楼层 |阅读模式
今天看了一下WebQQ, 协议和飞信的手机版协议非常相似, 支持群聊天, 分组信息等.
5 k1 }  m9 j6 S- c; @/ Z; q. X+ a  n# d) c4 l
召唤freeworkzz, 在现在飞信的基础上修改一下协议部分, 应该能用.
- T3 H3 `0 E1 \9 R
9 S. `) }; I- D; {+ r0 a附件是 WebQQ Mini 的通讯Ajax的代码.不长, 很简单.
7 t3 r3 W4 W$ I2 ?& b: ?$ c
' g7 j$ d! R* A( ^' j还有一个登陆密码加密的代码, 改天再弄出来.

rpcservice.js

45.59 KB, 下载次数: 1521

WebQQ Mini AJAX

回复

使用道具 举报

发表于 2010-7-15 18:40 | 显示全部楼层
怎么用的?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2010-7-15 18:53 | 显示全部楼层
不能用, 一般的Palm浏览器都不支持Ajax,
! b' e) ^3 a% O) [' Q' p7 J; q& o5 i7 b
% L' c+ A) z6 V1 Y可以直接用电脑打开w.qq.com 或者 web.qq.com  就可以看到.
# w+ {& {8 `8 }, P6 y6 H0 s# h' h. L2 {+ x  Q& I/ m$ a1 }
其实我们不是要用, 是利用这个接口, 写出原生的Palm程序, 可以后台挂机.
+ K% L; x* C+ U2 X. k4 Y- K$ h
# W, E/ Z7 _4 s有这个协议, 然后能把飞信修改一下, 就可以用了. 要看 freeworkzz 兄有没有时间了.
回复 支持 反对

使用道具 举报

 楼主| 发表于 2010-7-15 19:02 | 显示全部楼层
补充一下登陆验证部分:
7 B. \/ |! y  O登陆验证部分需要向服务器获取随机密钥, 然后把用户密码通过3次MD5加密, 然后再和随机密钥组合后再用MD5加密一次. 主要流程如下:
0 }# A' j  H$ Q1 n  O1 A( i
- \9 f' u: |" v1. 先请求以下URL, 其中__QQ_UIN__为用户的QQ号码8 I8 f5 Z9 O" w4 e' H5 G' m
http://ptlogin2.qq.com/check?uin=__QQ_UIN__&appid=1002101&r=0.9177454095333815 最后部分是一个随机数, 由客户端生成3 v. J9 x+ {3 M! V& C
! N/ H* c4 c1 h# d/ X8 M/ q
2.返回资料应该为:6 h/ i/ b; a# P0 t# u) j9 }2 P
ptui_checkVC('0','!G7P');, f1 o& j- ^3 \% `! ^
其中'!G7P'即为随机密钥, 我们以__VF_CODE__代替.
8 l, j4 ~0 ^& w* b$ Y0 p9 {$ M1 @( G5 J; s  }# N
3.登陆密码密文 __PASS_MD5__ 的生成方式如下, 其md5和md5_3函数都在附件中.; F, q) A6 |5 L, V: y& h3 c
__PASS_MD5__ = md5(md5_3(__PASS__) + __VF_CODE__), A- ~% V. E* A+ R( W& ?

6 H- P) o& w& }$ o. \/ Y, x4 `# ~4.登陆验证地址如下:! j* K& V' ~/ p: X& S: D& V
http://ptlogin2.qq.com/login?u=__QQ_UIN__&p=__PASS_MD5__&verifycode=__VF_CODE__&remember_uin=1&aid=1002101&u1=http%3A%2F%2Fw.qq.com%2Fmain.shtml&h=1&ptredirect=1&ptlang=2052&from_ui=1&pttype=1&dumy=&fp=loginerroralert
9 H1 p( ?# p& ^1 e. }6 G! A9 l" L3 z3 ?* ~. }: a& G  r
具体可以用Google浏览器 Chrome 来研究, 在页面上右键: 选择 审查元素, 即可详细的看到所有页面元素和JavaScript代码等.

comm.js

27.15 KB, 下载次数: 1206

验证的主要加密代码

回复 支持 反对

使用道具 举报

发表于 2010-7-15 21:40 | 显示全部楼层
高手啊,不知道为什么palm就没落了% _7 [1 ]4 |  t; u2 H' d
真希望能再一次辉煌
回复 支持 反对

使用道具 举报

 楼主| 发表于 2010-7-15 23:30 | 显示全部楼层
原帖由 chimney1122 于 2010-7-15 21:40 发表
* t+ ~# k! i& M) {! s# L3 C高手啊,不知道为什么palm就没落了
& y( i* e: v3 a1 l真希望能再一次辉煌

6 [' V# k3 {! j! J) w. |. W0 L' A2 I7 a2 O0 y! ~  J* p  [* _2 j
Palm本身系统部支持多任务, 网络支持也不好, 开发支持不太好, 已经不能适应现在的应用开发了.
  \+ W( ^* \  a2 \, n/ o! B( c要辉煌就看WebPre了, 但是现在对手很多, WM, Google, 都是不可忽视的, 个个来头很很猛..
回复 支持 反对

使用道具 举报

发表于 2010-7-16 09:09 | 显示全部楼层
Palm已经没落了
回复 支持 反对

使用道具 举报

发表于 2010-7-16 13:20 | 显示全部楼层
行不行啊 ···
回复 支持 反对

使用道具 举报

 楼主| 发表于 2010-7-16 17:02 | 显示全部楼层
原帖由 rainboy 于 2010-7-16 13:20 发表 , q4 x* L) ~0 C
行不行啊 ···
7 R5 K. r0 J9 e, J1 M
2 g/ J( ]# X% }/ \3 Y
协议很简单, WebQQ的地址在移动手机上也是能打开, 只是650的浏览器不支持AJAX, 不能直接用, 但是用他的接口还是很方便的.
! c, E1 M2 z" I; G9 Q" A0 `" p; X% }7 P8 M5 g, B" b- ~) u
就看看 freeworkzz  大有没有时间改一下飞信, 把协议换成WebQQ的协议就OK了. # m2 M( |4 V9 x  u  p, k
8 Y0 B1 O9 K$ ]% n& c% b' [
好友分组可以在标题放一个下拉框切换, 群直接作为一个特俗的分组, 每个组都作为一个QQ号码对待. 应该还是比较容易的.
" _. E! v  S# h* R9 J* t$ [. p# |- Q+ I" k9 D& q4 u
已经发了论坛的短信给 freeworkzz , 就等 freeworkzz  大意见了.
回复 支持 反对

使用道具 举报

发表于 2010-7-17 14:45 | 显示全部楼层
表示强烈关注
回复 支持 反对

使用道具 举报

发表于 2010-7-17 15:02 | 显示全部楼层
走HTTP协议的IM,在PALM OS上基本没法实用化。* ]* D0 |- Z# m) G. ?9 H
PALM OS不支持原生的多线程,没办法在后台KEEP ALIVE,而在前台的话,HTTP协议效率低,发送KEEP ALIVE的时候界面会卡死。飞禽V1就是这么放弃的。7 a6 a6 P% C; [
2 ^. s) Q# [/ c7 K; r& p7 `
PALMOS已经没落了,还是投入到WebOS吧。。。
回复 支持 反对

使用道具 举报

发表于 2010-7-18 13:16 | 显示全部楼层
看来没戏了,唉。。。。。。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2010-7-19 09:05 | 显示全部楼层

回复 11楼 freeworkzz 的帖子

HTTP卡死本身和协议无关, 主要原因应该还是移动的HTTP代理的问题.
6 E9 V( c( z  C0 D; H0 G' @
+ s% H1 ~. O1 j! y$ t! H: z2 t. |还有, 不知道你使用的HTTP协议是自己写实现代码还是使用其他HTTP Lib, 如果是自己写的HTTP实现, 完全可以通过Socket的Select实现来检查通讯情况, 并不会因为陷入Socket的Recv内部等待中造成假死. 超时后也可以直接关闭卡掉的Socket连接重新建立.
回复 支持 反对

使用道具 举报

发表于 2010-7-20 10:51 | 显示全部楼层
这么复杂吗?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2010-7-20 11:36 | 显示全部楼层
试了下, 发现Palm的网络环境还是又127.0.0.1的IP地址的, 看看能不能写个后台程序, 把WEBQQ的协议转行成XMMP协议, 然后就可以用有名的Chatopus做前台客户端.' D  x8 h6 L9 t8 K4 r
* Y: E* o% E. `/ j  t
写UI太太麻烦了. 只能这样. 娃哈哈.
回复 支持 反对

使用道具 举报

发表于 2010-7-21 01:20 | 显示全部楼层
这个可以关注啊..双手650帮顶中...
回复 支持 反对

使用道具 举报

发表于 2010-7-21 12:30 | 显示全部楼层
^_^希望高手早日解决Palm QQ
回复 支持 反对

使用道具 举报

发表于 2010-7-21 17:07 | 显示全部楼层
期待ing~~~~~~~~~
回复 支持 反对

使用道具 举报

发表于 2010-7-22 22:02 | 显示全部楼层
如果能搞出来,又多了一个不换650的理由。
回复 支持 反对

使用道具 举报

发表于 2010-7-23 18:02 | 显示全部楼层
原帖由 freeworkzz 于 2010-7-17 15:02 发表   N3 H; |" Y4 b" {
走HTTP协议的IM,在PALM OS上基本没法实用化。" U! H: L  }, h8 G
PALM OS不支持原生的多线程,没办法在后台KEEP ALIVE,而在前台的话,HTTP协议效率低,发送KEEP ALIVE的时候界面会卡死。飞禽V1就是这么放弃的。  o$ }( }* a. q& l' F7 ^
: v0 I" ]$ M0 \; e4 A/ K
PALMOS已经没落了 ...
4 q7 B5 G* T4 W( ]4 s
$ `  y+ p# ]0 _$ D- l. B5 V4 d3 F
其实不用后台只前台都行,只要能显示备注名,分组,群不群的单说,这些基本功能实现,大家就很高兴了。毕竟能有人还在做这些工作,大家会很感激。所以如果只能前台运行我想也是很好的,其他的可以尽量DA嘛
4 a  T  G0 G7 d, h! X& yfreeworkzz的飞信一直在用,很好,很感谢。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2010-7-24 01:32 | 显示全部楼层
原帖由 lansessl 于 2010-7-23 18:02 发表 . z! o) h8 D+ R# m7 l0 q/ V
+ @) A! s- Y7 F% B2 R' n2 b6 T* T
% Z! j. ?( [; J) ^6 Q, Q: K
其实不用后台只前台都行,只要能显示备注名,分组,群不群的单说,这些基本功能实现,大家就很高兴了。毕竟能有人还在做这些工作,大家会很感激。所以如果只能前台运行我想也是很好的,其他的可以尽量DA嘛4 |4 W1 q8 y$ A" M8 F4 I4 ~4 b+ M0 S
free ...

& j8 P% J5 }. c' [
& P2 e; ]( }5 X( u: j+ L不打算自己寫UI了, 具体的UI是用Chatopus, 本身这个软件做的很完善, 有分组, 有聊天记录, 可以后台运行, 提示音可选, 可调振动提示.9 Q5 X' j7 ]; d6 }, [! G* I0 G
8 c8 K$ v& _3 A, @. U: d6 _
但是Chatopus只支持Xmpp协议, 而且还必须使用CMNET才可以用(持续的TCP/IP连接)..
# E: T/ P& F! r3 q" V插句题外话, TMD中移动真太黑了. 搞个什么CMWAP, 内网IP也无所谓了, 还要搞个效率低得要死的HTTP Proxy, 弄个路由方式都不肯. 今天问了一下中国电信, 天翼9元月租, 包来电显示, 30M流量(应该是有公网IP的), 接听免费... 好爽...! M& @, s% W/ C6 d( d% @% C

3 L! w% [, b; q2 B* Z9 y' A6 }6 y所以, 后台是必须搞的, 搞成是一个后台运行的XMPP代理网关, 把QQ协议转换成Xmpp协议, 并提供一个本地的端口, 让Chatpous连接本地的端口来交换数据, 然后程序把转换后的数据发送到QQ的服务器上. 群是可以支持的, 备注名称也是可以支持的(PS: Chatopus本身就可以設置備註).
8 e% K0 U- p5 ~- U% _* C
0 O, H( _3 @; P, n9 h期待下吧, 有時間會寫的. 保佑不要Reset就行了. 呵呵.  n# B7 ^& K/ p+ y! d
/ v- _/ Y3 L, e9 c' G% e
其实如果用这个方式, 是可以多个Q, 或者多个IM一起挂.
回复 支持 反对

使用道具 举报

发表于 2010-7-25 17:42 | 显示全部楼层
潜力贴 顶起来 虽然不懂怎么搞
回复 支持 反对

使用道具 举报

发表于 2010-7-26 08:51 | 显示全部楼层
支持!!期待!!强贴留名!
回复 支持 反对

使用道具 举报

发表于 2010-7-26 13:03 | 显示全部楼层
功能少!!!!
回复 支持 反对

使用道具 举报

发表于 2010-7-28 13:33 | 显示全部楼层
坚决顶高手。继续开发继续用,三百块钱的智能机也能强大无比
回复 支持 反对

使用道具 举报

发表于 2010-7-28 13:36 | 显示全部楼层
此贴不能沉。因为看到了希望。希望高手们一起合作。完成个好用的就行。不要求太高,10位号要支持。能支持群更好了。
回复 支持 反对

使用道具 举报

发表于 2010-7-28 16:41 | 显示全部楼层
palm 650 支持.
回复 支持 反对

使用道具 举报

发表于 2010-8-8 20:23 | 显示全部楼层
把飞禽改成QQ就很满意了.不需要头像,最好有签名.分组.群也可以省去
回复 支持 反对

使用道具 举报

发表于 2010-8-8 21:32 | 显示全部楼层
关注,强烈支持哈!
回复 支持 反对

使用道具 举报

发表于 2010-8-9 09:12 | 显示全部楼层
强烈支持,希望高手加油!
回复 支持 反对

使用道具 举报

发表于 2010-8-15 01:07 | 显示全部楼层
很有潜力,palm新手,下了最新版的chatopus,用旧的注册机就可以注册,还挺好的。然后还加了txt  to voice 这个软件,名字太难拼,很强大。希望有同仁可以解决下,上新浪微博就靠这个东西。
回复 支持 反对

使用道具 举报

发表于 2010-8-16 18:44 | 显示全部楼层
支持啊 不管是PALMQQ还是WEBQQ只要有群功能就好,哪个老大开发个吧
回复 支持 反对

使用道具 举报

发表于 2010-8-16 19:15 | 显示全部楼层
同26楼, 难道080520版的Palm QQ就不能进行修改完善吗: QQ号码位数限制, 群。
回复 支持 反对

使用道具 举报

发表于 2010-8-20 16:44 | 显示全部楼层

太牛了!

顶 一定要顶!
回复 支持 反对

使用道具 举报

发表于 2010-8-20 21:48 | 显示全部楼层
好像还不错的样子哦!
回复 支持 反对

使用道具 举报

发表于 2010-8-30 16:17 | 显示全部楼层
支持!!期待!!强贴留名!
回复 支持 反对

使用道具 举报

发表于 2010-9-1 07:11 | 显示全部楼层
原帖由 Katana 于 2010-7-19 09:05 发表 9 L# [1 e4 [8 @" j3 q1 ?1 ]
HTTP卡死本身和协议无关, 主要原因应该还是移动的HTTP代理的问题.. B, n0 i) S0 D) X$ U0 F
1 E# S; l* Z7 S
还有, 不知道你使用的HTTP协议是自己写实现代码还是使用其他HTTP Lib, 如果是自己写的HTTP实现, 完全可以通过Socket的Select实现来检查通讯情况, ...

2 A: z9 |' d/ C/ O1 P1 W不管啥方法,HTTP协议都是每次请求都要connect一次,这个过程依网络环境不同可能要1~3秒,在用户来看就是频繁地一卡一卡地,基本没办法用。之前的飞禽V1就是HTTP协议,效果很不理想。飞禽V2直接用的socket,中间不会断,就很好办了。( h! z& a$ B1 S% g
实际上你的这个接口弄到webos上应该非常适合

评分

参与人数 1威望 +20 收起 理由
wxlzhp + 20 支持弄到WEBOS上!

查看全部评分

回复 支持 反对

使用道具 举报

 楼主| 发表于 2010-9-9 09:38 | 显示全部楼层
原帖由 freeworkzz 于 2010-9-1 07:11 发表
7 D* @! F# ^% `( n; C% ]3 f  _) p% h9 G* v
不管啥方法,HTTP协议都是每次请求都要connect一次,这个过程依网络环境不同可能要1~3秒,在用户来看就是频繁地一卡一卡地,基本没办法用。之前的飞禽V1就是HTTP协议,效果很不理想。飞禽V2直接用的socket,中间不 ...

& M7 @' I, a6 N) n2 p. e7 P  u- i
1 L1 X" m, m2 Q0 l一直都很忙, 没有时间上来. 如果使用的是第三方的HTTL库, 可能是因为使用的是同步连接, 所以使用中你会明显的感觉到卡连接. 但是Socket库中有一个NonBlock模式, 就是你进行connect请求后, 可以立刻返回, 不会卡进程的. 然后你等待一段时间后使用Select来查询连接是否建立(select也可以在NonBlock模式中使用, 所以也不会卡连接).
5 V, q7 ]$ o4 O8 S- g
0 W% _8 _0 K9 E9 C/ y# v6 o  n* i还有一个, 一般的1.1HTTP服务器都可以支持KeepAlive模式, 就是一个请求完成后, 服务器并不会关闭连接, 然后等待你继续发送其他请求. WebQQ的服务器不知道有没有限制不允许使用KeepAlive模式. 这个可以试试. 就算最坏的情况下, 服务器不允许KeepAlive, 其实也可以在一个请求结束后, 马上进行连接请求, 然后等到有数据包的时候再发送, 一般服务器连接后都会等待你传输数据, 你不传也不会马上断开你的连接.+ ~3 D/ l% Z  y! u% J( f
$ h# _- H  B# m9 a6 r
使用Socket NonBlock模式, 其实就是代码复杂一点, 但是还是可以实现类似多线程的效果的. 以前的DOS程序就是这样走过来的呀.8 |- x0 q/ O* i. _
$ o' z$ u0 P3 I
然后再说个小进度. 我用电脑程序写了一个测试Jabber测试程序, Chatops的jabber协议可以支持群组分类. 可以有个人信息介绍. 图片也是可以支持的. 群的实现也可以使用一个特俗的分组来把群分出来处理来支持. 总之功能都可以实现, 就是要等有时间才可以搞.
回复 支持 反对

使用道具 举报

发表于 2010-9-9 12:28 | 显示全部楼层
顶高手吧!关注!
回复 支持 反对

使用道具 举报

发表于 2010-9-9 17:13 | 显示全部楼层
高手们加油。再次顶你们。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 加入我们

本版积分规则

QQ|Archiver|手机版|小黑屋|吹友吧 ( 京ICP备05078561号 )

GMT+8, 2024-10-6 06:50 , Processed in 0.440442 second(s), 23 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表