-
Notifications
You must be signed in to change notification settings - Fork 23
/
Changes
446 lines (358 loc) · 19.5 KB
/
Changes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
版本更新记录:
2015-09-24 Webqq::Client v8.5.3
1)该模块停止使用和开发
2)修复代码产生的警告
2015-09-17 Webqq::Client v8.5.2
1)修复add_job无法执行回调函数的bug 感谢 林海
2015-09-14 Webqq::Client v8.5.1
1)BUG修复rt.cpan.org#107067
2015-06-19 Webqq::Client v8.5.0
1)修复pfqq版本号错误
2)修复Webqq/Message.pm文件代码拼写错误 感谢 arrow.wang 的反馈
2015-06-02 Webqq::Client v8.4.9
1)修复登录死循环问题
2)MsgSync插件对发送到irc的消息进行截断防止大量发送被服务器踢下线
2015-05-28 Webqq::Client v8.4.8
1)Perlcode插件执行代码时默认导入say函数
2)客户端登录加密算法默认使用纯Perl计算方式,当出现失败时或错误时会自动使用js的方式重试
3)客户端增加一个encrypt_method的属性,支持设置默认的登录加密算法方式
4)修复长时间登录导致客户端无法更新好友信息、群信息的bug
5)完善MsgSync模块
2015-04-23 Webqq::Client v8.4.7
1)修复依赖模块信息
2015-04-23 Webqq::Client v8.4.6
1)修复Makefile.PL错误
2)将Webqq::Encryption单独发布
2015-04-23 Webqq::Client v8.4.5
1)修复输入正确验证码仍然提示验证码错误的bug 感谢[PERL学习交流 @乀﹒安乐,仅此那么一分钟]的反馈
2)修复测试脚本注释错误
3)增加模块的别名pfqq
4)修复获取qq号,群号等信息如果存在多个相同昵称导致错误的bug
2015-04-18 Webqq::Client v8.4.4
1)修复客户端定时更新群组信息未生效的bug
2015-04-17 Webqq::Client v8.4.3
1)支持利用Webqq::Qun来获取群号码、群成员QQ号、好友QQ号
2)Openqq的api接口支持使用群号码和好友qq号码来指定发送对象
3)修复Openqq的api自己给自己发送消息导致死循环的bug
4)修复SmartReply的识别逻辑错误,感谢[perl技术 @kk]反馈
2015-03-31 Webqq::Client v8.4.2
1)新增Webqq::Encryption::TEA::Perl模块,TEA算法纯perl实现
2015-03-31 Webqq::Client v8.4.1
1)支持Crypt:::RSA模块进行RSA计算,该模块是纯Perl编写,更易安装
2015-03-31 Webqq::Client v8.4
1)新增Webqq::Encryption模块,将登录加密中涉及到的TEA/RSA算法进行了分离
2)可以通过安装Crypt::OpenSSL::RSA/Crypt::OpenSSL::Bignum/MIME::Base64模块来提升计算速度10倍以上
2015-03-11 Webqq::Client v8.3.1
1)修复少了文档错误
2015-03-11 Webqq::Client v8.3
1)Plugin函数使用eval执行,防止插件出错导致整个程序退出
2)更新获取好友列表和群列表的hash函数
由于腾讯更新了hash算法,导致旧版本无法获取到好友信息和群信息,请尽快更新到此版本
2015-03-10 Webqq::Client v8.2.1
1)使用git tag进行版本号管理
2)修复pod文档错误 感谢 @wxg 反馈
3)修复SmartReply插件api接口获取数据失败后导致主程序退出的bug
2015-02-22 Webqq::Client v8.2
1)Openqq插件进一步完善,提供获取信息、发送消息完整api
2)pod文档增加Openqq api的详细说明
2015-02-10 Webqq::Client v8.1
1)新增Webqq::Client::Plugin::Openqq插件,使用PSGI+Twiggy框架,提供RESTful API
2)新增$client->ready()/stop()/exit()/Webqq::Client::RUN()来支持单进程多账号模式
3)新增on_ready()回调,在多账号模式下替代原有的on_run()回调
2015-02-10 Webqq::Client v8.0
1)new()/login()新增security参数,security=>1表示发送/接收消息使用https加密
2015-02-09 Webqq::Client v7.9
1)新增最近联系人列表功能 感谢@wxg的补丁
2)用户、好友、群、讨论组增加客户端类型(client_type)属性 感谢@wxg的补丁
3)修复CpanRecentModule模块当发现新模块时进入死循环的bug
2015-02-07 Webqq::Client v7.8
1)个人、群、讨论组成员增加状态属性(state)
2)新增对buddies_status_change消息类型的处理
2)新增on_friend_change_state回调,好友状态变化实时提醒
2015-02-06 Webqq::Client v7.7
1)修复发送中文消息时严重bug导致发送消息为空
2015-02-04 Webqq::Client v7.6
1)修复表情消息处理错误
2)使用List::Util 提供的first函数优化代码逻辑
2015-02-04 Webqq::Client v7.5
1)大量bug修复和代码逻辑优化
2)新增讨论组功能支持(由于腾讯限制,目前仅能接收讨论组消息,无法发送)
3)支持讨论组临时消息
4)增加设置在线状态功能,感谢@wxg的补丁
2015-01-26 Webqq::Client v7.4
1)新增$client->{is_first_login}属性,用于识别是否是首次登录
2)修复relogin清空cookie时严重错误,该错误可能会导致程序异常退出
3)修复on_new_group在错误的时机被执行的bug
4)新增客户端接收消息失败次数限制,超过失败次数自动重连
5)$client->_relink()方法重新连接失败后会改为重新登录
2015-01-23 Webqq::Client v7.3
1)新增$client->_relink()方法,区分重新登录、重新连接两种行为
2)修复on_login回调在login之后不能马上发送消息的缺陷
3)完善$client->_recv_message()对异常响应的处理
4)$client->_cookie_proxy()方法嵌入到$client->_login2()中执行
5)修复$client->_login2()请求参数错误
2015-01-22 Webqq::Client v7.2
1)修复relogin时on_new_group回调存在的bug
2)新增Webqq::UserAgent代替AnyEvent::UserAgent减少模块依赖
2015-01-16 Webqq::Client v7.1
1)Webqq::Client::Cache新增->delete()的方法
2)新增_detect_new_group_member2方法,用于发现新增成员
3)新增_detect_loss_group_member方法,用于发现退群成员
4)客户端定时更新群信息
5)新增on_loss_group_member回调
2015-01-12 Webqq::Client v7.0
1)新增cookie跨域私有方法$client->_cookie_proxy()
2)新增下载好友自定义图片私有方法$client->_get_offpic()
3)新增下载好友自定义图片回调$client->on_receive_offpic
4)$msg->{raw_content}将cface和offpic进行区分
5)修复Perlcode插件空白命令仍然执行的bug
6)修复SmartReply空白内容仍然执行api查询的bug
2015-01-03 Webqq::Client v6.9
1)CpanRecentModule插件bug修复
2)客户端消息发送间隔默认修改为2s
3)增加$client->get_dwz()方法,生成url对应的短地址
2014-12-31 Webqq::Client v6.8
1)修复Webqq::Client::Cron变量重复声明的错误
2014-12-31 Webqq::Client v6.7
1)完善客户端消息发送间隔控制,可以设置$client->{send_interval},默认1s
2014-12-29 Webqq::Client v6.6
1)进一步完善文档
2)修复update_group_info多次调用导致群信息重复的bug
2014-12-28 Webqq::Client v6.5
1)MakeFile.PL增加Time::Piece/Time::Seconds依赖模块
2014-12-28 Webqq::Client v6.4
1)客户端search_group/search_friend/search_member_in_group功能进行优化
2)客户端on_new_friend/on_new_group/on_new_group_member回调优化
2014-12-24 Webqq::Client v6.3
1)修复add_job会导致程序出现死循环的严重bug
2014-12-24 Webqq::Client v6.2
1)修复on_input_img_verifycode文档错误
2014-12-24 Webqq::Client v6.1
1)取消MakeFile中的DateTime依赖
2014-12-24 Webqq::Client v6.0
1)修改登陆异常时的报错信息
2)_login1()返回异常时,打印错误原因
3)Webqq::Client::Cron取消对DateTime的依赖,改为Time::Piece和Time::Seconds
2014-12-23 Webqq::Client v5.9
1)发送消息方法调用更加便捷
2)调整一些demo示例代码
2014-12-23 Webqq::Client v5.8
1)create_sess_msg()方法修复主动发送群临时消息的bug
2)ShowMsg插件可以打印群临时消息所属的群名称
3)PostImgVerifycode修复提交验证码后页面响应为空的bug
4)修复pod里密码md5加密容易引起歧义的描述
2014-12-19 Webqq::Client v5.7
1)修复LinkInfo/SmartReply插件的多出bug
2)完善Perlcode插件的资源限制
3)新增$msg->{raw_conent}属性用于获取更多原始消息内容
4)新增javascript运行测试脚本
5)优化javascript加载速度
2014-12-17 Webqq::Client v5.6
1)客户端验证码输错会进行多次重试
2)支持smartqq登录密码加密算法
webqq采用的只是多重md5带盐加密
而smartqq采用的是 md5带盐加密+RSA+Base64 三重组合
采用了JE模块直接perl中运行javascript代码
要运行客户端请确保你已经安装了该模块
3)新增LinkInfo的插件,获取url的标题和正文内容
2014-12-15 Webqq::Client v5.5
1)查询增加缓存机制,提高查询速度
2)修复on_new_group_member/on_new_friend回调在某些情况下无法正常触发的bug
3)增加get_single_long_nick()的方法用于获取指定qq用户的个性签名
2014-12-09 Webqq::Client v5.4
1)登录过程增加请求失败重试机制
2)新增Webqq::Client::Plugin::PicLimit插件,对群里发图数量太多警告
2014-12-09 Webqq::Client v5.3
1)修复ShowMsg插件bug
2)修复发送消息重试机制失效的bug
2014-12-09 Webqq::Client v5.2
1)修复search_member_in_group()存在的bug导致无法正常获取新入群成员信息
2)_get_group_info()在debug模式下打印的调试信息进行了精简
2014-12-09 Webqq::Client v5.1
1)调整pod文档格式
2)回调函数使用eval包裹
2014-12-06 Webqq::Client v5.0
1)Webqq::Client::App::*重新更名为Webqq::Client::Plugin::
2)新增Webqq::Client::Plugin模块,用于管理插件
3)新增$msg->{allow_plugin}属性用于插件之间协作
4)更新对应的pod文档
5)demo示例代码更新
2014-12-04 Webqq::Client v4.9
1)插件支持执行链的功能,在插件链上的每一个插件
都可以选择是否要继续执行后续的插件
2)少量细节完善
2014-12-04 Webqq::Client v4.8
1)完善on_new_gropu_memner相关的pod文档
2)新增Webqq::Client::App::HelloGril插件
3)修复on_new_gropu_memner回调的bug
4)修复无法获取群成员信息时导致反复获取的bug
2014-11-28 Webqq::Client v4.7
1)完善pod文档
2)Webqq::Client::App::SmartReply限制条件更加严格
3)删除$client->_get_msg_tip()
4)接收到的好友消息增加$msg->from_city()
2014-11-28 Webqq::Client v4.6
1)修复客户端发送消息失败无法正常返回状态的bug
2)cpan模块信息查询支持显示SYNOPSIS
3)perlcode的执行方式更加自由灵活,支持perl -e ''
4)每个$msg都增加一个ttl值,在消息发送过程中ttl值会递减
当减少到0则会被消息队列丢弃
5)智能回复会增加消息发送者所在城市信息
6)修复perlcode识别代码错误的bug
7)Webqq::Client::App::SmartReply增加每分钟次数限制
2014-11-26 Webqq::Client v4.5
1)正确处理客户端收到的陌生人消息
2)只有在群消息时才进行截断
3)系统开启关闭消息时也通过回复消息进行状态反馈
4)修复模块查询信息细节
5)Webqq::Client::App::Perldoc指令进行优化
2014-11-26 Webqq::Client v4.4
1)为配合Perl的MakeFile,src文件夹重命名为lib
2)完善make test测试脚本
2014-11-26 Webqq::Client v4.3
1)整合webqq和smartqq,现在可以通过$client->new(type=>...);进行选择
type=>"smartqq"或者type=>"webqq"
2)目前api接口获取群信息时会出现无法获取到群成员情况,代码进行了适配处理
3)修复了Webqq::Client::App::Perldoc中关于模块查询信息bug
4)Webqq::Client::App::SmartReply回复消息时会按照80%的概率先@对方
2014-11-24 Webqq::Client v4.2
1)修复Makefile错误,感谢[perl技术 @kk]
2)版本号形式从 v4.2 改为 "4.2";
3)新增Webqq::Client::App::SendMsgControl
可以通过"-shutdown","-reactive"指令来关闭和开启消息发生功能
4)模块信息查询功能5分钟内只提醒一次
2014-11-24 Webqq::Client v4.1
1)支持perldoc 模块名查询cpan模块信息
2)支持自动识别聊天记录中的模块名 查询相关信息
3)识别perldoc指令不再要求精确匹配/^perldoc/
4)增加模块查询信息缓存机制,提高响应速度
2014-11-23 Webqq::Client v4.0
1)客户端支持探测新成员或新好友,并自动更新客户端数据库
2)新增on_new_group() on_new_group_member on_new_friend() 回调
2014-11-21 Webqq::Client v3.9
1)新增Webqq::Client::App::SmartReply模块,智能回复消息
2014-11-21 Webqq::Client v3.8
1)修复客户端数据库存储bug
2)新增Webqq::Client::App::ClientStore模块,便于将客户端数据库存储到文件
3)修复Webqq::Client::App::PostImgVerfcode提交验证码后没有给出任何提示的bug
2014-11-21 Webqq::Client v3.7
1)增加系统表情文字显示支持,系统表情会以类似[微笑]的形式打印
2)修复查询信息无法正常缓存的bug
2014-11-20 Webqq::Client v3.6
1)修复客户端接收到临时消息后停止接收消息的bug
2)修复临时消息查找陌生人信息无法缓存问题
2014-11-20 Webqq::Client v3.5
1)demo/console_message.pl中的fromat_msg使用Webqq::Client::App::ShowMsg替换
2)Webqq::Client::App::ShowMsg进一步完善
3)延长拉去消息时间间隔
2014-11-19 Webqq::Client v3.4
1)修复Webqq::Message::_mk_ro_accessors严重bug,此bug会导致客户端获取到的消息信息错乱
新增Webqq::Message::_load_extra_accessor方法,客户端会在run()开始时执行
2)修改Webqq::Client::App::Msgstat::Report()排序算法
3)修改-Msgstat指令权限,只允许指定帐号使用
2014-11-19 Webqq::Client v3.3
1)修复-msgstat错误
2)增加大量文档说明,参加doc/Client.pod
2014-11-17 Webqq::Client v3.2
1)一定程度上屏蔽perlcode无限fork攻击,感谢[PERL学习交流 @Achilles/kl]指导
2)Webqq::Client::App::Perlcode/Webqq::Client::App::Perldoc不再执行超过一定时效的消息指令
3)Webqq::Client::App::ShowMsg使用qq号取代uin作为hash的key
2014-11-17 Webqq::Client v3.1
1)新增Webqq::Client::App::Msgstat统计群消息发言排行
2)修复图片、表情和文字混合的消息无法正常处理的bug
3)修复发送消息打印报错bug
4)修复Webqq::Client::App::Msgstat统计bug
5)完善Webqq::Client::App::Msgstat::Report()的输出格式
6)完善Webqq::Client::App::Msgstat::Report()群名片显示问题
7)增强-msgstat指令,支持-msgstat 数字 群名称调用形式
2014-11-17 Webqq::Client v3.0
1)Webqq::Client::App::ShowMsg支持打印发送和接收消息
2)文档结构调整,增加了一些MakeFile和POD支持(未完善)
3)修复format_msg()打印结果不对齐的bug
2014-11-07 Webqq::Client v2.9
1)修复收到下线通知消息时客户端处理错误,感谢[perl技术 @路人丙]的测试反馈
2)增加Webqq::Client::App::ShowMsg应用,可以方便打印收到的消息
2014-11-07 Webqq::Client v2.8
1)Webqq::Client::App::Perlcode支持自动查找本机perldoc路径
2)Webqq::Client::App::Perldoc支持自动查找本机perl路径
3)Webqq::Client::App::Perldoc/Webqq::Client::App::Perlcode运行在非linux系统报错退出
2014-11-03 Webqq::Client v2.7
1)新增Webqq::Client::Cron模块,支持定时执行回调
2)新增Webqq::Client::App::Msgstat应用,统计群内成员发送消息数量
2014-11-03 Webqq::Client v2.6
1)支持从本地socket接收发送消息指令
2)支持从QQ消息接收发送消息指令
2014-10-31 Webqq::Client v2.5
1)使用深拷贝彻底修复重新登录异常问题
2014-10-29 Webqq::Client v2.4
1)修复重新登录异常问题
2014-10-27 Webqq::Client v2.3
1)增加登录成功、输入验证码回调函数
2)支持在未连接TTY时将验证码通过邮件形式发送到指定邮箱,
可以在邮箱中点击链接直接完成验证码输入(方便在手机上随时收邮件输验证码)
通过这种方式可以避免QQ每隔一段时间被强迫下线无法在电脑前再次输入验证码的缺点
2014-10-23 Webqq::Client v2.2
1)修复因临时目录不存在出现chroot失败,导致有权限执行危险系统命令
2)其他少量细节完善
2014-09-28 Webqq::Client v2.1
1)增加定时更新群列表信息,群信息
2)群信息查询结果进行缓存
3)数据查询和数据更新进行了分离
4)消息发送添加发送间隔,腾讯webqq不允许短时间内发送次数过于频繁
2014-09-28 Webqq::Client v2.0
1)支持获取临时消息联系人信息
2)$msg消息结构采用AAG(Automated Accessor Generation)技术,
每个hash的key都自动产生一个对应的的方法,
即,你可以使用$msg->{key}或者$msg->key任意一种方式获取你想要的数据
如感兴趣,可以参见cpan Class::Accessor模块
3)修复更新导致无法正常发送消息问题
2014-09-27 Webqq::Client v1.9
1)修复获取好友信息列表时,如果设置了好友备注名称会导致程序抛出异常的bug
感谢来自[perl技术 @阳]的反馈
2)完善了一些感谢人员信息
2014-09-26 Webqq::Client v1.8
1)增加->relogin()方法,在系统提示需要重新登录时尝试自动重新登录或者重新连接
2)修复客户端login_state设置bug
3)修复perlcode可以写入和读取系统文件问题
2014-09-26 Webqq::Client v1.7
1)支持接收和回复群临时消息(sess_message)
2)由于机器人大部分情况下都是根据接收的消息进行回复,因此增加reply_message()
使得消息处理,更加便捷,传统的方式,你需要自己create_msg,再send_message
这种方式更适合主动发送消息,采用reply_message($msg,$content)
只需要传入接收消息结构和要发送的内容,即可回复消息,且不需要关心消息的具体类型
3)根据聊天信息中的perldoc和perlcode指令进行文档查询和执行perl代码,源码公布
有兴趣可以参考:
Webqq::Client::App::Perldoc
Webqq::Client::App::Perlcode
后续会考虑形成中间件的开发框架,让更多的人参与,开发更多有趣的中间件
2014-09-18 Webqq::Client v1.6
1)修改发送消息数据编码,提高发送消息可靠些
2014-09-18 Webqq::Client v1.5
1)增加心跳检测
2)发送群消息增加一个Origin的HTTP请求头希望可以解决群消息偶尔发送不成功问题
2014-09-17 Webqq::Client v1.4
1)修复图片和表情无法正常显示问题,现在图片和表情会被转为文本形式 [图片][系统表情]
2)改进发送群消息机制,通过群消息group_code对应的gid再进行群消息发送
3)增加Webqq::Client::Cache模块,用于缓存一些经常需要使用的信息,避免时时查询
4)增加获取个人信息、好友信息、群信息、群成员信息功能
5)增加查询好友QQ号码功能
6)增加注销功能,程序运行后使用CTRL+C退出时,会自动完成注销
7)增加对强迫下线消息的处理
----
当前发现的一些BUG:
1)再一次消息接收中如果包含多个消息,可能会导致只处理第一个消息,其他消息丢失
2)偶尔会出现发送群消息提示成功,但对方无法接收到的问题(可能和JSON编码有关)
2014-09-14 Webqq::Client v1.3
1)添加一些代码注释
2)demo/*.pl示例代码为防止打印乱码,添加终端编码自适应
3)添加Webqq::Message::Queue消息队列,实现接收消息、处理消息、发送消息等函数解耦
2014-09-14 Webqq::Client v1.2
1)源码改为UTF8编写,git commit亦采用UTF8字符集,以兼容github显示
2)优化JSON数据和perl内部数据格式之间转换,更好的兼容中文
3)修复debug下的打印错误(感谢 [PERL学习交流 @卖茶叶perl高手] 的bug反馈)
4)新增demo/console_message.pl示例代码,把接收到的普通消息和群消息打印到终端
2014-09-12 Webqq::Client v1.1
1)debug模式下支持打印send_message,send_group_message的POST提交数据,方便调试
2)修复了无法正常发送中文问题
3)修复了无法正常发送包含换行符的内容
4) on_receive_message/on_send_message改为是lvalue方法,以支持getter和setter方式