打印

Mojo::Webqq使用简介

[复制链接]
1065|1
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
uoou|  楼主 | 2015-12-8 13:41 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 uoou 于 2015-12-8 14:04 编辑

之前有介绍过《使用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服务器端口,默认25
from    =>  '1111@1111.com', #发件人
to      =>  '1111@1111.com', #收件人
user    =>  '1111@1111.com', #smtp登录帐号
pass    =>  '11111111', #smtp登录密码
});
需要注意的是,此方法需要放在login操作前。

2.使用邮件发送验证码
#发送验证码到邮箱
$client->load("PostImgVerifycode",data=>{
smtp    =>  'smtp.1111.com', #邮箱的smtp地址
port    =>  '25', #smtp服务器端口,默认25
from    =>  '1111@1111.com', #发件人
to      =>  '1111@1111.com', #收件人
user    =>  '1111@1111.com', #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.代码测试
<pre style="border: 0px; font-family: 'Courier 10 Pitch', Courier, monospace; font-size: 13px; margin-bottom: 1.625em; outline: 0px; padding: 0.75em 1.625em; vertical-align: baseline; font-stretch: normal; line-height: 1.5; overflow: auto; background: rgb(244, 244, 244);">#代码测试
$client->load("ProgramCode");
#示例:code|c>>>
#        #include <stdio .h="">
#        int main() {
#            printf("Hello World!\n");
#            return 0;
#        }</stdio></pre>

相关帖子

沙发
duxingkei| | 2015-12-9 15:01 | 只看该作者
现在的webqq好像没落了:lol

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

17

主题

24

帖子

2

粉丝