Changeset 824

Show
Ignore:
Timestamp:
12/02/02 19:04:17
Author:
miyagawa
Message:

0.04

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • POE-Component-YahooMessenger/trunk/Changes

    r770 r824  
    11Revision history for Perl extension POE::Component::YahooMessenger 
     2 
     30.04  Mon Dec  2 19:01:43 JST 2002 
     4        - Fixed hostname typo. 
     5        * Added socket_error handler when you can't connect to YM server 
     6        * Added add_buddy, delete_buddy API 
     7        - Added change_normal_status handler 
     8        - Supported multivalue message body 
     9        - Added cookie, group message body 
    210 
    3110.03  Wed Sep 18 11:57:33 JST 2002 
  • POE-Component-YahooMessenger/trunk/lib/POE/Component/YahooMessenger.pm

    r770 r824  
    33use strict; 
    44use vars qw($VERSION); 
    5 $VERSION = 0.03
     5$VERSION = 0.04
    66 
    77use POE qw(Wheel::SocketFactory Wheel::ReadWrite Driver::SysRW 
     
    1818            _stop      => \&_stop, 
    1919            _sock_up   => \&_sock_up, 
     20            _sock_failed   => \&_sock_failed, 
    2021            _sock_down => \&_sock_down, 
    2122 
     
    2728            change_my_status => \&change_my_status, 
    2829            buddies          => \&buddies, 
     30            add_buddy        => \&add_buddy, 
     31            delete_buddy     => \&delete_buddy, 
    2932 
    3033            # internals 
     
    3841            goes_offline        => \&goes_offline, 
    3942            change_status       => \&_handle_common, 
     43            change_normal_status => \&_handle_common, 
    4044            receive_message     => \&receive_message, 
    4145            new_buddy_alert     => \&_handle_common, 
     
    118122} 
    119123 
     124sub _sock_failed { 
     125    my($kernel, $heap) = @_[KERNEL, HEAP]; 
     126    $kernel->yield(notify => socket_error => ()); 
     127    for my $session (keys %{$heap->{listeners}}) { 
     128        $kernel->yield(_unregister => $session); 
     129    } 
     130 
     131} 
     132 
    120133sub _sock_down { 
    121134    my($kernel, $heap) = @_[KERNEL, HEAP]; 
     
    252265} 
    253266 
     267sub add_buddy { 
     268    my($kernel, $heap, $args) = @_[KERNEL, HEAP, ARG0]; 
     269    $heap->{sock}->put( 
     270        POE::Component::YahooMessenger::Event->new( 
     271            'add_buddy', 0, { 
     272                id       => $heap->{id}, 
     273                buddy_id => $args->{buddy_id}, 
     274                group    => $args->{group}, 
     275                message  => $args->{message}, 
     276            }, 
     277        ), 
     278    ); 
     279} 
     280 
     281sub delete_buddy { 
     282    my($kernel, $heap, $args) = @_[KERNEL, HEAP, ARG0]; 
     283    $heap->{sock}->put( 
     284        POE::Component::YahooMessenger::Event->new( 
     285            'delete_buddy', 0, { 
     286                id           => $heap->{id}, 
     287                buddy_id     => $args->{buddy_id}, 
     288                group        => $args->{group}, 
     289            }, 
     290        ), 
     291    ); 
     292} 
     293 
    2542941; 
    255295__END__ 
  • POE-Component-YahooMessenger/trunk/lib/POE/Component/YahooMessenger/Constants.pm

    r770 r824  
    1616 
    1717$Default = { 
    18     hostanme      => 'scs.yahoo.com', 
     18    hostname      => 'scs.yahoo.com', 
    1919    port          => 5050, 
    2020}; 
     
    5151    77 => 'send_file', 
    5252    84 => 'challenge_response', 
     53    131 => 'add_buddy', 
     54    132 => 'delete_buddy', 
    5355}; 
    5456 
     
    8385    57 => 'conference_name', 
    8486    58 => 'invitation_message', 
     87    59 => 'cookie', 
     88    65 => 'group', 
    8589    87 => 'buddy_list', 
    8690    94 => 'challenge_string', 
  • POE-Component-YahooMessenger/trunk/lib/POE/Component/YahooMessenger/Event.pm

    r767 r824  
    1414                push @values, $value if $key eq $BodyNames->{$wantkey}; 
    1515            } 
    16             return defined $number ? $values[$number] : $values[0]; 
     16            return defined $number ? $values[$number] 
     17                : wantarray ? @values : $values[0]; 
    1718        }; 
    1819    } 
  • POE-Component-YahooMessenger/trunk/lib/POE/Filter/YahooMessengerPacket.pm

    r770 r824  
    1414} 
    1515 
    16 use constant DEBUG => 1
     16use constant DEBUG => 0
    1717sub Dumper { require Data::Dumper; Data::Dumper::Dumper(@_) } 
    1818