Thread sub richtig aufrufen
(19 answers)
Opened by atragator at 2008-02-18 12:30
Hallo zusammen habe folgendes Problem eine sub richtig aufzurufen.
so ruf ich die sub auf, welche sich in Device::Gsm::Sms befindet. Ich will aus dem langen PDU String nur den Text der SMS haben, sollte die sub doch realisieren, oder ? Jedenfalls kann ich die sub nicht korrekt aufrufen... bekomm folgende Fehlermeldung: can't call method "decode" on a undifined value. Code (perl): (dl
)
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 use Device::Gsm::Sms; my $sms = Device::Gsm::Sms->new(); # example for SMS in PDU mode #07911356131313F351000B911326926556F800F6AD4E060504C032C032000014010F06050C2A363100835D0001F5F5FFFFFFFF0002000201FE0700080000000000119FBDC8000908001231653131313F09001153494D4B617274656E5465737465723031 $sms->decode("010F06050C2A363100835D0001F5F5FFFFFFFF0002000201FE0700080000000000119FBDC8000908001231653131313F09001153494D4B617274656E5465737465723031"); print "SMS content:\n " .$sms->decode(); sub decode { my( $self, $type ) = @_; $self->{'type'} = $type; # Get list of tokens for this message (from ::Sms::Structure) my $cPdu = $self->{'pdu'}; # Check that PDU is not empty return 0 unless $cPdu; # Backup copy for "backtracking" my $cPduCopy = $cPdu; my @token_names = $self->structure(); my $decoded = 1; while( @token_names ) { # Create new token object my $token = new Sms::Token( shift @token_names, {messageTokens => $self->{'tokens'}} ); if( ! defined $token ) { $decoded = 0; last; } |