Differenze
Queste sono le differenze tra la revisione selezionata e la versione attuale della pagina.
| Entrambe le parti precedenti la revisioneRevisione precedenteProssima revisione | Revisione precedente | ||
| registrazione_chiamate [2009/02/03 11:43] – marco | registrazione_chiamate [2014/07/03 14:57] (versione attuale) – modifica esterna 127.0.0.1 | ||
|---|---|---|---|
| Linea 29: | Linea 29: | ||
| - | Se ne manca qualcuno installatelo dal package manager | + | Se ne manca qualcuno installatelo dal package manager |
| ===== Configurazione ===== | ===== Configurazione ===== | ||
| Linea 37: | Linea 37: | ||
| Es. | Es. | ||
| < | < | ||
| + | |||
| + | ==== MySql ==== | ||
| + | Aggiungente le seguenti table: | ||
| + | | ||
| + | `id` int(11) NOT NULL AUTO_INCREMENT, | ||
| + | `timestamp` datetime DEFAULT NULL, | ||
| + | `direction` int(11) DEFAULT NULL, | ||
| + | `duration` bigint(20) NOT NULL, | ||
| + | `localEntryPoint` varchar(255) DEFAULT NULL, | ||
| + | `localParty` varchar(255) DEFAULT NULL, | ||
| + | `remoteParty` varchar(255) DEFAULT NULL, | ||
| + | `filename` varchar(255) DEFAULT NULL, | ||
| + | `recPortName` varchar(255) DEFAULT NULL, | ||
| + | `expiryTimestamp` datetime DEFAULT NULL, | ||
| + | `service_id` int(11) DEFAULT NULL, | ||
| + | `recPort_id` int(11) DEFAULT NULL, | ||
| + | `flag_erase` tinyint(1) NOT NULL DEFAULT ' | ||
| + | PRIMARY KEY (`id`), | ||
| + | KEY `FKA3B331B251080423` (`recPort_id`), | ||
| + | KEY `FKA3B331B2C39BFD83` (`service_id`) | ||
| + | ) ENGINE=MyISAM AUTO_INCREMENT=165 DEFAULT CHARSET=latin1 | ||
| + | |||
| + | | ||
| + | `ID` int(11) NOT NULL AUTO_INCREMENT, | ||
| + | `Timestamp` datetime NOT NULL, | ||
| + | `RecPort` varchar(255) DEFAULT NULL, | ||
| + | `RemotePort` varchar(255) DEFAULT NULL, | ||
| + | PRIMARY KEY (`ID`) | ||
| + | ) ENGINE=InnoDB DEFAULT CHARSET=latin1 | ||
| + | |||
| ==== Script per telefoni Cisco ==== | ==== Script per telefoni Cisco ==== | ||
| - | Queste sono le righe da configurare | + | Queste sono le righe da configurare |
| ####### | ####### | ||
| - | | ||
| my $database = " | my $database = " | ||
| - | |||
| my $hostname = " | my $hostname = " | ||
| - | | ||
| my $user = " | my $user = " | ||
| - | |||
| my $password = " | my $password = " | ||
| - | |||
| ################### | ################### | ||
| + | |||
| + | Una volta configurato aggiungente il file PhoneService.pl nella cartella apache/ | ||
| + | |||
| + | Configurate il servizio sul CallManager e aggiungetelo ai telefoni interessati | ||
| ==== Script per pulizia Database/ | ==== Script per pulizia Database/ | ||
| - | Modificare le seguenti righe: | + | Modificare le seguenti righe di ClearDB.pl: |
| ####### | ####### | ||
| - | |||
| #Path di origine dei file, bisogna impostare la stessa cartella impostata in Oreka | #Path di origine dei file, bisogna impostare la stessa cartella impostata in Oreka | ||
| - | | ||
| my $origpath = '/ | my $origpath = '/ | ||
| - | | + | |
| #Path di destinazione dei file, deve essere impostata la root di apache | #Path di destinazione dei file, deve essere impostata la root di apache | ||
| - | |||
| my $destpath = '/ | my $destpath = '/ | ||
| | | ||
| ####### | ####### | ||
| - | |||
| my $database = " | my $database = " | ||
| - | | ||
| my $hostname = " | my $hostname = " | ||
| - | | ||
| my $user = " | my $user = " | ||
| - | | ||
| my $password = " | my $password = " | ||
| - | |||
| my $tablePS = " | my $tablePS = " | ||
| - | | ||
| my $tableOrekaTape = " | my $tableOrekaTape = " | ||
| - | | ||
| my $tableOrekaSeg = " | my $tableOrekaSeg = " | ||
| - | | ||
| my $tableDef = " | my $tableDef = " | ||
| | | ||
| + | Copiate il file ClearDB.pl in c:\ | ||
| + | Aggiungete in operazioni pianificate "// | ||
| ===== Sorgente Script Perl ===== | ===== Sorgente Script Perl ===== | ||
| - | ==== Servizio per telefoni Cisco ==== | + | ==== Servizio per telefoni Cisco (PhoneService.pl) |
| # | # | ||
| - | |||
| ################################################################################### | ################################################################################### | ||
| - | |||
| # Created by: Marco Longo, marchrist85@gmail.com | # Created by: Marco Longo, marchrist85@gmail.com | ||
| - | |||
| # Created by: Ergon2000, www.ergon2000.it | # Created by: Ergon2000, www.ergon2000.it | ||
| - | |||
| # Date: 03/02/2009 | # Date: 03/02/2009 | ||
| - | + | # Name: PhoneService.pl | |
| ############################## | ############################## | ||
| - | |||
| # | # | ||
| - | |||
| #da essa ricava l' | #da essa ricava l' | ||
| - | |||
| #un database mysql con il relativo timestamp | #un database mysql con il relativo timestamp | ||
| - | |||
| #################################################################################### | #################################################################################### | ||
| - | |||
| - | |||
| - | |||
| use Cisco:: | use Cisco:: | ||
| - | |||
| use XML:: | use XML:: | ||
| - | |||
| use LWP:: | use LWP:: | ||
| - | |||
| use Data:: | use Data:: | ||
| - | |||
| # use strict; | # use strict; | ||
| - | |||
| use DBI; | use DBI; | ||
| - | |||
| $|++; | $|++; | ||
| - | |||
| use CGI; | use CGI; | ||
| - | |||
| - | |||
| ####### | ####### | ||
| - | |||
| my $database = " | my $database = " | ||
| - | |||
| my $hostname = " | my $hostname = " | ||
| - | |||
| my $user = " | my $user = " | ||
| - | |||
| my $password = " | my $password = " | ||
| - | |||
| ################### | ################### | ||
| - | |||
| - | |||
| ### | ### | ||
| - | |||
| - | |||
| - | |||
| my $cgi = CGI-> | my $cgi = CGI-> | ||
| - | |||
| map { " | map { " | ||
| - | |||
| my $remoteip = $ENV{' | my $remoteip = $ENV{' | ||
| - | |||
| - | |||
| ############################### | ############################### | ||
| - | |||
| # my $count = 0; | # my $count = 0; | ||
| - | |||
| my $response; | my $response; | ||
| - | |||
| - | |||
| - | |||
| #### | #### | ||
| - | |||
| my $url = " | my $url = " | ||
| - | |||
| my $response = get($url); | my $response = get($url); | ||
| - | |||
| | | ||
| - | |||
| - | # while ($response = get($url) or $count == 10){ | ||
| - | |||
| - | # $response = get($url); | ||
| - | |||
| - | # $count = $count + 1; | ||
| - | |||
| - | # } | ||
| my $xs = XML:: | my $xs = XML:: | ||
| - | |||
| my $tmp = eval { $xs-> | my $tmp = eval { $xs-> | ||
| - | |||
| - | # if ($@) { | ||
| - | |||
| - | # while ($@){ | ||
| - | |||
| - | # my $tmp = eval { $xs-> | ||
| - | |||
| - | # } | ||
| - | |||
| - | # } | ||
| - | |||
| my $localip = @{$tmp -> {StreamingStatistics}}[0]-> | my $localip = @{$tmp -> {StreamingStatistics}}[0]-> | ||
| - | |||
| my $remoteip = @{$tmp -> {StreamingStatistics}}[0]-> | my $remoteip = @{$tmp -> {StreamingStatistics}}[0]-> | ||
| - | |||
| my $message = " | my $message = " | ||
| - | |||
| ################################# | ################################# | ||
| Linea 207: | Linea 162: | ||
| ############## | ############## | ||
| - | |||
| - | |||
| | | ||
| - | |||
| my $timestamp = ($year+1900) ." | my $timestamp = ($year+1900) ." | ||
| - | |||
| - | |||
| - | |||
| - | # print ($tmp); | ||
| - | |||
| - | # print Dumper($tmp); | ||
| - | |||
| - | |||
| ##### Inserisco dati nel DB ###### | ##### Inserisco dati nel DB ###### | ||
| | | ||
| - | |||
| | | ||
| - | |||
| - | |||
| my $dbh = DBI-> | my $dbh = DBI-> | ||
| - | |||
| | | ||
| - | |||
| $dbh -> | $dbh -> | ||
| - | |||
| - | |||
| - | |||
| #my $sth = $dbh-> | #my $sth = $dbh-> | ||
| - | |||
| #$sth -> | #$sth -> | ||
| - | |||
| - | |||
| my $mytext = new Cisco:: | my $mytext = new Cisco:: | ||
| - | |||
| | | ||
| - | |||
| | | ||
| - | |||
| print $mytext-> | print $mytext-> | ||
| - | ==== Servizio temporizzato per pulire database e cartella ==== | + | ==== Servizio temporizzato per pulire database e cartella |
| # | # | ||
| - | |||
| ################################################################################### | ################################################################################### | ||
| - | |||
| # Created by: Marco Longo, marchrist85@gmail.com | # Created by: Marco Longo, marchrist85@gmail.com | ||
| - | |||
| # Created by: Ergon2000, www.ergon2000.it | # Created by: Ergon2000, www.ergon2000.it | ||
| - | |||
| # Date: 03/02/2009 | # Date: 03/02/2009 | ||
| - | + | # Name: clearDB.pl | |
| ############################## | ############################## | ||
| - | | ||
| use DBI; | use DBI; | ||
| - | |||
| use strict; | use strict; | ||
| - | |||
| use File::Copy; | use File::Copy; | ||
| - | |||
| use File::Path; | use File::Path; | ||
| - | |||
| use File:: | use File:: | ||
| - | |||
| - | |||
| ####### | ####### | ||
| - | |||
| my $origpath = '/ | my $origpath = '/ | ||
| - | |||
| my $destpath = '/ | my $destpath = '/ | ||
| - | + | | |
| - | # | + | |
| - | + | ||
| - | # | + | |
| - | + | ||
| - | + | ||
| ####### | ####### | ||
| - | |||
| my $database = " | my $database = " | ||
| - | |||
| my $hostname = " | my $hostname = " | ||
| - | |||
| my $user = " | my $user = " | ||
| - | |||
| my $password = " | my $password = " | ||
| - | |||
| my $tablePS = " | my $tablePS = " | ||
| - | |||
| my $tableOrekaTape = " | my $tableOrekaTape = " | ||
| - | |||
| my $tableOrekaSeg = " | my $tableOrekaSeg = " | ||
| - | |||
| my $tableDef = " | my $tableDef = " | ||
| - | |||
| ################### | ################### | ||
| - | |||
| my @row; | my @row; | ||
| - | |||
| my @rowdbrec; | my @rowdbrec; | ||
| - | + | ||
| - | + | ||
| - | + | ||
| ######################################## | ######################################## | ||
| my $dbh = DBI-> | my $dbh = DBI-> | ||
| - | |||
| my $sth = $dbh-> | my $sth = $dbh-> | ||
| - | |||
| $sth -> execute() or die " | $sth -> execute() or die " | ||
| - | |||
| # | # | ||
| - | |||
| - | |||
| | | ||
| + | my $dbrec = $dbh-> | ||
| - | my $dbrec = $dbh-> | + | #my $dbrec = $dbh-> |
| - | + | ||
| - | # my $dbrec = $dbh-> | + | |
| - | $dbrec -> execute(); | + | $dbrec -> execute(); |
| - | @rowdbrec = $dbrec -> | + | @rowdbrec = $dbrec -> |
| | | ||
| - | |||
| ############### | ############### | ||
| Linea 356: | Linea 248: | ||
| if (move($origpath.@rowdbrec[7], | if (move($origpath.@rowdbrec[7], | ||
| { | { | ||
| - | |||
| #se il file esiste e viene spostato | #se il file esiste e viene spostato | ||
| - | |||
| | | ||
| | | ||
| | | ||
| - | |||
| } | } | ||
| else | else | ||
| { | { | ||
| - | #se il file non esiste | + | #se il file non esiste |
| | | ||
| } | } | ||
| Linea 378: | Linea 267: | ||
| if $DBI::err; | if $DBI::err; | ||
| | | ||
| - | |||
| my $sec; my $min;my $hour;my $mday;my $month; my $year; my $wday;my $yday; my$isdst; | my $sec; my $min;my $hour;my $mday;my $month; my $year; my $wday;my $yday; my$isdst; | ||
| - | + | ($sec, | |
| - | ($sec, | + | |
| - | + | ||
| my $timestamp = ($year+1900) ." | my $timestamp = ($year+1900) ." | ||
| - | |||
| ######################## | ######################## | ||
| $sth = $dbh-> | $sth = $dbh-> | ||
| - | |||
| $sth -> execute() or die " | $sth -> execute() or die " | ||
| - | |||
| | | ||
| - | |||
| | | ||
| | | ||
| - | |||
| ################################ | ################################ | ||
| ##################### | ##################### | ||
| - | + | | |
| - | $dbh-> | + | $dbh-> |
| - | + | ||
| - | $dbh-> | + | |
| - | + | ||
| ################################ | ################################ | ||
| - | |||
| $dbh -> | $dbh -> | ||
| - | |||
| ######################################## | ######################################## | ||
| - | + | ||
| - | + | ||
| exit; | exit; | ||