OT: jak poslat SMS na oskara? (ukazka)

Robert Vojta vojta na ipex.cz
Středa Červenec 26 16:02:30 CEST 2000


#   tak si udelejte posilatko, ktery vam to posle pres webovej formular.

Zdravim,
  co treba takhle ;-) (Tato ukazka nekontroluje skoro nic, takze pokud
vam SMS nedojde, tak si to predelejte a kontrolujte, zda byla odeslana, atp.

#!/usr/bin/perl

use LWP::UserAgent;
use URI::Escape;

my $sms_message;
my $ppp;
my $ppp_obtained = 0;
my $callback_end = 0;
my $phone = "123456";

# podle prislusnych rfc vypreparujem to co nas z toho mailu zajima a
# postupne ulozime do sms_message

obtain_ppp();
if ($ppp_obtained == 1) {
  send_sms_message();
}

exit;

sub obtain_ppp_callback {
  my ($data,$response,$protocol) = @_;
  if ($data =~ /name="ppp" value="(.*)"/) {
    $ppp = $1;
    $ppp_obtained = 1;
  }
  $callback_end = 1;
}

sub obtain_ppp {
  my $ua = new LWP::UserAgent;
  $ua->agent("Cau oskare, co takhle vlastni email2sms gateway?");

  my $req = new HTTP::Request GET => "http://www.oskarmobil.cz/cz/sms/s_main.php3";
  my $res = $ua->request($req,\&obtain_ppp_callback,4096);
  while ($callback_end == 0) { };
}

sub send_sms_message {
  my $esc_message = uri_escape($sms_message);
  my $msglen = length($sms_message);
  my $msglen1 = 779-length($sms_message);

  my $ua = new LWP::UserAgent;
  $ua->agent("co takhle vlastni email2sms gateway?");

  my $req = new HTTP::Request POST => 'http://www.oskarmobil.cz/cz/send.php3';
  $req->content_type('application/x-www-from-urlencoded');
  $req->content("ppp=$ppp&number=$phone&message=$esc_message&char_in=$msglen&char_le=$msglen1");
  my $res = $ua->request($req);
}

-- 

   Robert Vojta aka Penguin (Oo.oO) // ICQ 64746424 // Phone 0608-170783
     http://www.(ipex|gin).cz/             mailto: vojta@(ipex|gin).cz

         GCS d? s+: a-- C++ SL++++ P+ L++++ E--- W+ N+ K w--- O- M- V-
           PS+ PE Y+ PGP++ t 5? X R tv- b+++ DI? D G+ e+ h-- r++ x? 


Další informace o konferenci Linux