Pubblichiamo e rendiamo disponibile per il download la prima versione di una rubrica condivisa per Asterisk realizza in PHP e MySQL per gestire contatti e chiamate (shared phone address book). La presente è il primo abbozzo di rubrica per Asterisk sviluppata qualche anno fa, per consentire agli utenti di utilizzare un unico deposito per i numeri telefonici e far partire le chiamate con un click.

Asterisk rubrica condivisa mysql php

Esiste una versione sviluppata in CakePHP, Bootstrap, jQuery, MySQL con autenticazione degli utenti avente un’interfaccia moderna, disponibile su richiesta a modica cifra.

Per prima cosa si deve creare un database in Mysql chiamato address ed una tabella con lo stesso nome come segue:

mysql> create database address;
mysql> use address;
mysql> CREATE TABLE address (id INT(4) NOT NULL AUTO_INCREMENT PRIMARY KEY, name VARCHAR(30), phone VARCHAR(30));

Creato il database andiamo a scompattare in /var/ww/html/

I files contenuti nel file zippato seguente

address

Andiamo a modificare in index.php , aggiungi.php , rimuovi.php le credenziali di accesso per Mysql

Nel file /etc/asterisk/manager.conf andiamo ad aggiungere o modificare le seguenti credenziali

[admin]
secret=123secret <———scegliere a piacere
read = all
write = all

Ricordandosi di mettere la stessa password (secret) nel file action.php

fputs($socket, “Secret: 123secret\r\n\r\n”);

Adesso bisogna andare a controllare nel Dialplan il contesto per le chiamate in uscita per adattare il file action.php

Nel coso in cui il contesto in uscita di Asterisk fosse:

[out]
exten => _0X.,1,Dial(SIP/numerovoip/${EXTEN:1},35,tTxXkK)
same => n,Hangup()

Le voci Context e priority in action.php dovranno essere

fputs($socket, “Action: Originate\r\n”);
fputs($socket, “Exten:  $_POST[prefisso]$_POST[chiama]\r\n”);
fputs($socket, “Context: out\r\n”);
fputs($socket, “Priority: 1\r\n”);
fputs($socket, “CallerID: Rubrica\r\n”);
fputs($socket, “Channel: SIP/$_POST[interno]\r\n\r\n”);

Nel file index.php sono elencati alcuni interni

<option value=200>200</option>
<option value=201>201</option>
<option value=202>202</option>
...

Li dovete modificare secondo le numerazioni che sono in utilizzo nel vostro Asterisk PBX.

Allo stesso tempo subito dopo nel file index.php

<option value=0>0</option>
<option value=7>7</option>
<option value=8>8</option>
<option value=9>9</option>

Ci sono le opzioni per il prefisso di uscita (selezione trunk)

Nel caso facciate il numero diretto come prima voce mettete

<option value= >none</option>

Ad ogni modifica ricordarsi di lanciare

service httpd restart
service asterisk restart

Una volta selezionato l’interno,la linea ed il numero da chiamare , cliccando sul pulsante chiama_adesso squillerà l’interno selezionato ed una volta sollevata la cornetta partirà la chiamata verso il numero,mentre a schermo si vedrà il log del call manager di Asterisk con le relative informazioni.