martedì 22 aprile 2014

asterisk: paginebianche.it come sorgente di CID superfecta

cid superfecta permette di ricevere il nome del chiamante cercando in vari database. lo script non è più fornito con il modulo di paginebianche.it per motivi di copyright. chi volesse sperimentare le espressioni regolari può testare come funzionava il modulo (e poi rimuoverlo per non violare la legge).

-andare in /var/www/html/admin/modules/superfecta/sources e creare un file chiamato source-PagineBianche_IT.module

- aprire il file e incollarci il codice seguente

<?php

class PagineBianche_IT extends superfecta_base {

    public $description = "http://www.paginebianche.it - These listings include data from the Italian PagineBianche.";
    public $version_requirement = "2.11";

    function get_caller_id($thenumber, $run_param=array()) {

            $this->DebugPrint("Searching PagineBianche - {$thenumber} ... ");
            $url = "http://www.paginebianche.it/ricerca-da-numero?qs={$thenumber}";
#            $this->DebugPrint("{$url}");
         
            if ($this->SearchURL($url, '=<h2.class\=\"rgs\"[^>]*>(.*)</h2>=siU' , $match)) {
                $caller_id = $this->ExtractMatch($match);
 
#    $this->DebugPrint("{$caller_id}");  
 
     if ($this->SearchURL($url, '=class\=\"locality\"*>(.*)</span>=siU', $match1))
$caller_id .= " - ";
$caller_id .= $this->ExtractMatch($match1);
#                $caller_id .= " - {$thenumber}:";
# $caller_id .= $thenumber;

#    $this->DebugPrint("{$caller_id}");
}
        return($caller_id);
    }

}

3 commenti:

  1. Mi sono accordo che ricevo i numeri con il prefisso +39 e con questo prefisso la ricerca paginebianche da errore.
    C'e' un modo per modificare la variabile "$thenumber" indicando che se inizia con "+39" .... questo prefisso va trimmato ? Grazie

    RispondiElimina
    Risposte
    1. Ho aggiunto un comando per tagliare la stringa e roa funziona:
      $thenumber = substr($thenumber,3);

      Elimina
  2. Purtroppo il modulo ad oggi risulta inutilizzabile. Qualcuno ha aggiornamenti a riguardo?

    RispondiElimina

Post in evidenza

RISOLVERE PROBLEMA DISCONNESSIONE UNITA DI RETE

- lato server disattivare il timeout delle condivisioni dando da cmd il seguente comando net config server /autodisconnect:-1 - portare...