This commit is contained in:
2024-10-14 00:08:40 +02:00
parent dbfba56f66
commit 1462d52e13
4572 changed files with 2658864 additions and 0 deletions

Binary file not shown.

View File

@@ -0,0 +1,33 @@
#!C:\Program Files (x86)\ActiveState Perl Dev Kit 9.0\bin\perlapp-gui.exe
PAP-Version: 1.0
Packer: C:\Program Files (x86)\ActiveState Perl Dev Kit 9.0\bin\perlapp.exe
Script: snomctrl.pl
Cwd: G:\Skripte\SnomControl
Clean: 1
Date: 2011-07-20 10:05:24
Debug:
Dependent: 0
Dyndll: 0
Exe: snomctrl.exe
Force: 0
Gui: 1
Hostname: NETICFSYS03
Manifest:
No-Compress: 0
No-Logo: 0
Runlib:
Shared: none
Tmpdir:
Verbose: 0
Version-Comments:
Version-CompanyName:
Version-FileDescription:
Version-FileVersion: 0.6
Version-InternalName: Snom Control
Version-LegalCopyright: Andre Wisniewski
Version-LegalTrademarks:
Version-OriginalFilename: SnomCtrl
Version-ProductName: SnomControl
Version-ProductVersion: 0.6
Warnings: 0
Xclude: 0

View File

@@ -0,0 +1,115 @@
#!/bin/perl
# TK zur Fensterdarstellung verwenden
use Tk;
use HTTP::Request::Common qw(POST);
use LWP::UserAgent;
# Saubere Programmierung erzwingen
use strict;
my $eingegeben;
my @gewaehlt;
# Neues Fensterobjekt erzeugen
my $main = new MainWindow(-title=>'SnomControl');
# Frameobjekt im Fensterobjekt mit verschiedenen Eigenschaften wird erzeugt
# nimmt später Statuslabel, LetzteNachrichtLabel und Eingabezeile auf
my $top_f=$main->Frame(-width=>200, -height=>200)->pack(-side=>'top', -padx=>5, -pady=>5);
# Ein weiteres Frameobjekt, das die Schaltflächen aufnimmt
my $bottom_f=$main->Frame()->pack(-side=>'top', -padx=>5, -pady=>5);
# Configure Event des Fensters wird abgefangen und ein resize verhindert
$main->bind('<Configure>' => sub {
my $xe = $main->XEvent;
$main->maxsize($xe->w, $xe->h);
$main->minsize($xe->w, $xe->h);
});
# Eingabeobjekt erzeugen und Variable $eingegeben wird referenziert, dadurch landen alle Eingaben in dieser globalen Variable
my $eingabe = $top_f->Entry(-width=>50, -textvariable => \$eingegeben);
# Die Schaltflächen Dial,Hangup
my $left1=$bottom_f->Frame()->pack(-side=>'left', -fill=>'none');
my $left2=$bottom_f->Frame()->pack(-side=>'left', -fill=>'none');
my $left3=$bottom_f->Frame()->pack(-side=>'left', -fill=>'none');
my $left4=$bottom_f->Frame()->pack(-side=>'left', -fill=>'none');
my $left5=$bottom_f->Frame()->pack(-side=>'left', -fill=>'none');
# Standardaktion bei <Return> wird definiert, selbe Aktion wie bei Betätigung der Senden Schaltfläche (Aufruf sub senden_click)
$eingabe->bind('<Return>', \&dial_click );
# Senden Knopf wird definiert, Beschriftung und Aktion (Aufruf sub senden_click)
my $dial_button = $left1->Button(
'-text' => 'Dial/Accept',
'-command' => \&dial_click,
);
my $pickup_button = $left2->Button(
'-text' => 'Pick up',
'-command' => \&pickup_click,
);
my $redial_button = $left3->Button(
'-text' => 'Redial',
'-command' => \&redial_click,
);
my $hangup_button = $left4->Button(
'-text' => 'Hang up',
'-command' => \&hangup_click,
);
my $history_button = $left5->Button(
'-text' => 'History',
'-command' => \&history_click,
);
$eingabe->pack(-anchor => 'w');
# Knöpfe werden angezeigt
$dial_button->pack;
$pickup_button->pack;
$redial_button->pack;
$hangup_button->pack;
$history_button->pack;
# MainLoop des TK
MainLoop;
sub dial_click {
# Wenn Text nicht leer ist
if ($eingegeben ne "") {
push @gewaehlt, $eingegeben;
my $ua = LWP::UserAgent->new();
my $req = POST 'http://fote98:K01v1kk0!@10.60.1.21/command.htm', [ number => "$eingegeben"];
my $content = $ua->request($req)->as_string;
$eingegeben="";
}
else {
my $ua = LWP::UserAgent->new();
my $req = POST 'http://fote98:K01v1kk0!@10.60.1.21/link?accept=-14';
my $content = $ua->request($req)->as_string;
}
}
sub pickup_click {
my $ua = LWP::UserAgent->new();
my $req = POST 'http://fote98:K01v1kk0!@10.60.1.21/command.htm', [ number => "*8"];
my $content = $ua->request($req)->as_string;
}
sub redial_click {
}
sub hangup_click {
my $ua = LWP::UserAgent->new();
my $req = POST 'http://fote98:K01v1kk0!@10.60.1.21/command.htm?key=cancel';
my $content = $ua->request($req)->as_string;
}
sub history_click {
}