File Coverage

blib/lib/Mojo/Webqq/Client/Remote/_recv_message.pm
Criterion Covered Total %
statement 0 18 0.0
branch 0 10 0.0
condition n/a
subroutine 0 2 0.0
pod n/a
total 0 30 0.0


line stmt bran cond sub pod time code
1             sub Mojo::Webqq::Client::_recv_message{
2 0     0     my $self = shift;
3 0 0         return if $self->is_stop;
4 0 0         return if $self->is_polling;
5 0           $self->is_polling(1);
6 0 0         my $api_url = ($self->security?'https':'http') . '://d1.web2.qq.com/channel/poll2';
7             my $callback = sub {
8 0     0     my ($json,$ua,$tx) = @_;
9 0           eval{
10             #分析接收到的消息,并把分析后的消息放到接收消息队列中
11 0 0         if(defined $json){
12 0           $self->parse_receive_msg($json);
13 0           $self->emit(receive_raw_message=>$tx->res->body,$json);
14             }
15             };
16 0 0         $self->error($@) if $@;
17 0           $self->is_polling(0);
18             #重新开始接收消息
19 0           $self->emit("poll_over");
20 0           };
21              
22 0           my %r = (
23             ptwebqq => $self->ptwebqq,
24             clientid => $self->clientid,
25             psessionid => $self->psessionid,
26             key => "",
27             );
28 0           my $headers = {Referer=>"http://d1.web2.qq.com/proxy.html?v=20151105001&callback=1&id=2",json=>1};
29 0           my $id = $self->http_post(
30             $api_url,
31             $headers,
32             form=>{r=>$self->to_json(\%r)},
33             $callback
34             );
35 0           $self->poll_connection_id($id);
36             }
37             1;