Mojo::Webqq使用简介

来源:互联网 时间:2015-12-09

之前有介绍过《使用Mojo-Webqq实现nagiosQQ群告警》,但这只是Mojo::Webqq的其中一个openqq的功能,Mojo::Webqq还有很多功能有待介绍,下面先来说说几个我正在用的,也是比较常用的功能,以及这些功能的实现方式。

Mojo::Webqq的安装和登录以及openqq的使用方法就不说了,《使用Mojo-Webqq实现nagiosQQ群告警》上都有说明。

1.使用邮件发送二维码 #发送二维码到邮箱$client->load("PostQRcode",data=>{smtp => 'smtp.1111.com', #邮箱的smtp地址port => '25', #smtp服务器端口,默认25from => '[email protected]', #发件人to => '[email protected]', #收件人user => '[email protected]', #smtp登录帐号pass => '11111111', #smtp登录密码});

需要注意的是,此方法需要放在login操作前。

2.使用邮件发送验证码

#发送验证码到邮箱$client->load("PostImgVerifycode",data=>{smtp => 'smtp.1111.com', #邮箱的smtp地址port => '25', #smtp服务器端口,默认25from => '[email protected]', #发件人to => '[email protected]', #收件人user => '[email protected]', #smtp登录帐号pass => '11111111', #smtp登录密码post_host => '111.111.111.111' , #本机公网IP地址,需要远程访问post_port => '1987' , #提交验证码的链接地址中使用的端口,默认1987});

此方法也是需要放在login操作前。

3.进/退群提醒

#进退群提醒my $new_group_member_cout = 0;Mojo::IOLoop->recurring(900,sub{$new_group_member_cout=0;});$client->on( new_group_member=>sub{ if($new_group_member_cout>10){ $client->fatal("new_group_member事件触发次数超过限制"); return; } my $memer = $_[1]; my $displayname = $memer->displayname; my $content = $displayname ne "昵称未知"?"欢迎新成员 /@$displayname 加入组织[鼓掌][鼓掌]":"欢迎新成员入群[鼓掌][鼓掌]"; my $group = $client->search_group(gid=>$memer->gid); $group->send($content) if defined $group; $new_group_member_cout++;},lose_group_member=>sub{ my $memer = $_[1]; my $displayname = $memer->displayname ; return if $displayname eq "昵称未知"; my $content = "很遗憾 /@$displayname 离开了本群[流泪][流泪]"; my $group = $client->search_group(gid=>$memer->gid); $group->send($content) if defined $group;},);

主要用于表示对群内新用户加入时的欢迎,以及对用户退群表示遗憾。

4.智能回复 #smartQQ$client->load("SmartReply");

调用的是图灵机器人的接口,使用方式是私聊机器人,或在群里@机器人进行聊天,具体功能请参考图灵机器人的使用方法:tuling123。

5.鄙视大神

#对大神进行鄙视$client->load("FuckDaShen");

自动识别群内“大神”关键字,并利用预设的库进行调侃。

6.自定义回复 #创建知识库$client->load("KnowledgeBase");

创建知识库对指定关键字进行回复,目前仅限于完全匹配。使用方法:

#示例:#learn 今天天气怎么样 天气很好 #添加知识库#学习 "你吃了吗" 当然吃了 #添加知识库#learn '哈哈 你真笨' "就你聪明" #添加知识库#del 今天天气怎么样 #删除知识库#删除 '哈哈 你真笨' #删除知识库 7.查询perl文档 #显示perl文档$client->load("Perlcode");#示例:perldoc -f|-v xxx

使用Pod::Perldoc插件实现perl文档的查询。

8.执行perl命令 #执行perl命令#$client->load("Perldoc");#示例:>>> print "hello world";

执行本机perl命令,需要“>>>”进行标识。

9.代码测试 #代码测试$client->load("ProgramCode");#示例:code|c>>># #include # int main() {# printf("Hello World!/n");# return 0;# }

使用glot.io网站接口进行代码测试,需要“code|c>>>”进行标识,支持27种语言的测试,具体功能见:glot.io。

好了,就先介绍这么多,这些都是通过外部环境,来实现QQ上所没有的功能,比较实用也比较有趣。但Mojo::Webqq的功能绝不仅限于此,很多群权限控制及操作由于平时接触不多,而且我也没在用,所以就不详细解释了。

相关阅读:
Top