[Vienna-pm] $form-click() uund nix ??

Carl A. Schreiber gooly at gmx.at
Wed Sep 27 08:04:59 PDT 2006


Einen schönen guten Abend,

ich meine, ich habe alles nach der Schrift gemacht - und werde trotzdem 
nicht erhört :(

Das Objekt meiner Begierde ist mein Tel SPA941, dass ich mit Perl und 
dessen Web-Zugriff zu einem Login und Logout bei den VoIP-Providern 
bewegen möchte, auf das dann im Autostart-Ordner und so automatische 
gemacht wird.

Es ist ja nur eiin kleines Progrämmchen, dessen Erfolg sich aber daran 
ablesen lassen muss, dass sich der Zustand des Tel verändert, sichtbar 
dadurch dass alles LED blicken, die Farben wechslen und so  --  aber 
nix is :(
Die versuchten Formen des ->click() (#-Zeilen) bringt nichts - hängt das 
damit zusammen, dass das submit Feld keinen Namen hat?

Unten ist jetzt zuerst das Progrämmchen, danach dessen Ausdruck - wenn 
auch verkürzt. Die Änderung der Felder gelingt, aber das submit danach 
nicht. Wieso liefert dieses POST die Zeile aller Felder mit '&'?
Habe ich da etwas übesehen, denn vom Konquerer klappts klasse.

Danke schon mal,
Calli



#! /usr/bin/perl
#

use  LWP::UserAgent;
use HTTP::Request::Common;
use HTML::Form;

our $v = 1;

      $ua = LWP::UserAgent->new;
      $ua->agent($MOZILLA);
      my $res = $ua->request(GET 'http://10.10.10.77/admin/');
      #print $res->content if $v;
      my $R = 1; #(() =~/1|in|/i) ? 1 : 0; # 1 = Login, 0 = Logout
      my $reff = $res->base;
      my $nF = 1;# Index of Form that has to filled and clicked
      my $form = HTML::Form->parse( $res->content, $res->base );
      print "fillFORM: res:$res;  R:$R;  reff:$reff   method:",
         $form->method,"  No.Inputs:",(scalar $form->inputs),"\n" if $v;
      foreach my $i ($form->inputs) {
	 # das sind die relevanten Felder: Line  Enable(1) || Disable(0) 
         if ($i->name =~ /^47$|^62511$|^59439$/)  {
            printf "\t%10s  %10s  %s",$i->name,$i->type,$i->value;
            $i->value( $R );
            printf " => \t%10s  %10s  %s\n",$i->name,$i->type,$i->value;
         } #else { print "\n" }
         #if ($i->type =~/submit/i) {
         #   print "\n\nok, try to click.. \n";
         #   my $hmm = $i->click($form);
         #   print "\n",$hmm->content,"\n";
         #}
      }
      $rett = $form->click;
      print "\n\n#############\n\nDer POST-Request..(??)= ",
         "alle Felder mit verbunden durch '&'\n\n",$rett->content if $v;
      print "\n";


###############   Ausdruck   ############

fillFORM: res:HTTP::Response=HASH(0x84c9f2c);  R:1;  
reff:http://10.10.10.77/admin/   method:POST  No.Inputs:182
                47      option  0 =>            47      option  1
             62511      option  0 =>         62511      option  1
             59439      option  0 =>         59439      option  1


#############

Der POST-Request..(??)= alle Felder mit verbunden durch '&'

30959=1&P30767=&29807=0&29743=10.10.10.77&29935=255.255.255.0&29871= ..  
(usw)



More information about the Vienna-pm mailing list