Categorie
Computer Internet Linux Wireless

Asterisk: un account SIP per ricevere e uno per chiamare

Solito titolo poco chiaro, scusate. Questo è il post che ho promesso l’altro ieri, quando ho annunciato di avere un numero VOIP. Qui scenderò nei dettagli della mia configurazione, cercando di renderla comprensbile anche a chi non ha mai avuto a che fare con il VOIP, come ad esempio me medesimo la settimana scorsa.
VOIP con Asterisk

La mia situazione, ma potenzialmente anche la vostra, visti gli evidenti vantaggi economici rispetto ad un normale telefono fisso Telecom, è la seguente:

  • Un account SIP con un provider che vi fornisce un numero geografico chiamabile da tutti i telefoni, nel mio caso Messagenet, servizio Free Number.
  • Un account SIP con un provider con tariffe particolarmente convenienti verso i telefoni tradizionali, nel mio caso Poivy, di cui sto per illustrare le tariffe
  • Uno (o più) telefoni (Aladino e Nokia N80 nel mio caso) o softphone (come l’ottimo Ekiga) da connettere al centralino

Chiaramente ci serve un computer su cui installare Asterisk, che deve necessariamente essere acceso. Nel mio caso uso un Linksys NSLU2 con Debian Etch, un portento (seguirà post su questo argomento). Segnalo la possibilità di eseguire Asterisk anche sui router con firmware [DD|Open]WRT, come i mitici Linksys WRT54G o la Fonera.

Perché tutto questo casino? Non hai un cellulare?

Sì, chiaramente ho un cellulare (uno stagionato Nokia N70), ma avere un numero fisso ha i suoi vantaggi, ad esempio la possiblità di farsi chiamare dagli amici con telefonate gratis ai fissi senza occupare il telefono di casa. Ho poi una segreteria ultraconfigurabile completamente gratis (gli sviluppatori di Asterisk l’hanno simpaticamente chiamata Comedian Mail). È inoltre gradito poter chiamare economicamente (vedi paragrafo su Poivy), anche dai miei. E, non ultimo, è sempre interessante.

Effettuare chiamate – Poivy.com

Finora Poivy è il provider più economico che ho trovato, e fa parte della famiglia Betamax, con siti tutti uguali, le cui tariffe differiscono solo per il costo delle chiamate ai cellulari. Offre chiamate gratuite ai fissi per 90 giorni all’anno (gli altri giorni 1,8 centesimi al minuto) e solo 6 centesimi al minuto per le chiamate verso i cellulari, il tutto senza scatto alla risposta. Per acquistare credito è necessaria una ricarica nel taglio unico di 10 euro.

ATTENZIONE: Mi è stato riferito che spesso le chiamate ai cellulari effettuate con Poivy soffrono di un fastidioso ritardo, fate voi i vostri conti se il gioco vale la candela.

Ricevere chiamate – Messagenet

Ho trovato questo servizio quasi per caso, e offre completamente GRATIS un numero geografico di Milano/Roma/Torino/Londra. Per ragioni di vicinanza ho scelto Milano, infatti il mio numero è uno 02. È anche possibile acquistare credito ed effettuare chiamate con loro, ma è molto meno conveniente di Poivy.

Installare Asterisk

Una volta individuato il PC (connesso alla LAN, ovviamente) su cui installare Asterisk è necessario procedere all’installazione. Sono disponibili pacchetti precompilati per praticamente tutte le distribuzioni. Su Debian e Ubuntu e derivate l’installazione si esegue con il classico APT:

sudo apt-get install asterisk asterisk-config asterisk-prompt-it

Ho inserito nella stringa anche il pacchetto asterisk-config (che contiene la configurazione di esempio, piuttosto interessante) perché non mi ricordo se è installato automaticamente dal pacchetto asterisk… asterisk-voice-prompt-it installa le voci in italiano.

Concetti di base

Prima di addentrarmi nella spiegazione completa, trovo giusto soffermarmi un attimo sulla spiegazione di alcuni concetti di base che è necessario conoscere prima di poter usare con successo Asterisk, e che sono il primo scoglio contro cui si sbatte la testa.

Il primo concetto è quello di “contesto”, traduzione letterale di context. Un contesto è, grossomodo, un ambito in cui avviene la chiata, tanto in uscita quanto in entrata. Immaginiamo ad esempio una piccola microscopica azienda, con una segreteria, magari con più telefoni, e un ufficio del dirigente. Le chiamate in arrivo devono arrivare alla segreteria, che può decidere o meno se trasferirle al capo. I telefoni della segreteria saranno in un loro contesto, quello/i del dirigente saranno altrove, e potranno comunicare tra loro (o anche no, secondo la configurazione) mentre quelli della segreteria saranno nel contesto del numero in ingresso (VOIP o meno).

Il secondo concetto è quello di estensione. Le estensioni altro non sono che i numeri di telefono composti dagli utenti. Ogni contesto ha le sue estensioni separate dagli altri, e possono anche differire. Tornando all’esempio di prima, i telefoni nel contesto della segreteria potrebbero chiamare il numero 200 per interrogare la segreteria telefonica, mentre il dirigente potrebbe chiamare in segreteria (o, perché no, sua moglie/amante/fidanzata) digitando il medesimo numero. Si può anche impedire che un determinato contesto faccia chiamate all’esterno, le possibilità sono limitate solo dalla fantasia.

Il caso

Il mio caso è già stato descritto per quanto riguarda i provider utilizzati e al server, mentre non ho ancora detto niente sulla configurazione dei telefoni e dei relativi interni. Nel seguente elenco il primo dato riportato è, appunto, l’interno.

  • 2000 – Aladino WiFi, il telefono principale, sono infatti dirette a lui le chiamate in arrivo sul numero di Messagenet
  • 2010 – Nokia N80, cellulare di mio fratello, integra un client SIP, e si connette al centralino in WiFi
  • 2100 – Portatile, con client Ekiga
  • 2101 – Fisso, con client Ekiga

Ho anche alcuni altri interni che svolgono altre funzioni, come il 3000, tramite il quale si ascolta la propria segreteria (raggiungibile anche dal 4444 perché è il numero immodificabile che l’Aladino usa il tasto segreteria), il 3001 che permette di ascoltare la segreteria di qualsiasi interno, previo inserimento della relativa password e il 7272 che legge le previsioni del tempo di Meteo Trentino, di cui parlerò in un altro post, se a qualcuno interessa. Se qualcuno volesse provarlo in esclusiva mi chiami pure allo 02/00613655, e me lo chieda, trasferirò la chiamata al meteo 😀

Configurazione di Asterisk – sip.conf

I file di configurazione di Asterisk (davvero tanti) si trovano in /etc/asterisk e il primo che andremo a modificare è sip.conf, che gestisce il protocolo SIP, e quindi in questa configurazione i provider per chiamate in entrata e uscita e tutti gli interni. Prima di modificare qualche cosa, consiglio di fare una copia della cartella di configurazione, non si sa mai. Ecco il mio sip.conf

[general]
context=chiamate-in-entrata                     ; Default context for incoming calls
bindport=5060                   ; UDP Port to bind to (SIP standard port is 5060)
bindaddr=0.0.0.0                ; IP address to bind to (0.0.0.0 binds to all)
srvlookup=yes                   ; Enable DNS SRV lookups on outbound calls
language=it                     ; Default language setting for all users/peers
                                ; This may also be set for individual users/peers
canreinvite=no                  ; Workaround per problemi di autenticazione con Messagenet
nat=yes                         ; Global NAT settings  (Affects all peers and users)
                                ; yes = Always ignore info and assume NAT
                                ; no = Use NAT mode only according to RFC3581
                                ; never = Never attempt NAT mode or RFC3581 support
                                ; route = Assume NAT, don't send rport

; In
register => USERNAME_MESSAGENET:[email protected]:5061/NUMERO_ASSEGNATO_SENZA_+39

; Out
register => USERNAME_POIVY:[email protected]/USERNAME_POIVY

; PROVIDER
; Out - Poivy
[out]
type=peer
context=chiamate-in-uscita
username=USERNAME_POIVY
fromuser=USERNAME_POIVY
secret=PASSWORD
host=sip.poivy.com        ; Modificare con il proprio server SIP in uscita
fromdomain=sip.poivy.com  ; Idem
qualify=yes
insecure=very
nat=yes

; Client
; Principale - Aladino
[2000]
type=friend
context=telefoni-locali
secret=PASSWORD
host=dynamic

; Nokia N80
[2010]
type=friend
context=telefoni-locali
secret=PASSWORD
host=dynamic

; Ekiga portatile
[2100]
type=friend
context=telefoni-locali
secret=PASSWORD
host=dynamic

; Ekiga fisso
[2101]
type=friend
context=telefoni-locali
secret=PASSWORD
host=dynamic

Notiamo una sezione [general] in cui imposto alcuni settaggi di base, e mi registro ai provider con il comando register. Si passa poi alla sezione per le chiamate in uscita di Poivy (per Messagenet non serve, dato che sono solo chiamate in ingresso) e poi alla definizione dei vari interni, che sono nel contesto telefoni-locali, mentre le chiamate in arrivo sono in chiamate-in-entrata.

Configurazione di Asterisk – extensions.conf

Extensions.conf, come suggerisce il nome, si occupa delle estensioni, ecco il mio:

[telefoni-locali]
;20xx = Telefoni fisici
;21xx = Softphone
;12xxx = Diretti segreteria

; Principale - Aladino
exten => 2000,1,Dial(SIP/2000||tT,20)
exten => 2000,2,VoiceMail(2000,us)
exten => 12000,1,VoiceMail(2000,us)

; Nokia N80
exten => 2010,1,Dial(SIP/2010||tT,20)
exten => 2010,2,VoiceMail(2010,u)
exten => 12010,1,VoiceMail(2001,u)

; Ekiga portatile
exten => 2100,1,Dial(SIP/2100||tT,20)
exten => 2100,2,VoiceMail(2100,u)
exten => 12100,1,VoiceMail(2100,u)

; Ekiga fisso
exten => 2101,1,Dial(SIP/2101||tT,20)
exten => 2101,2,VoiceMail(2101,u)
exten => 12101,1,VoiceMail(2101,u)

; Segreteria telefonica
exten => 3000,1,VoiceMailMain(${CALLERID(num)},s)
exten => 4444,1,Goto(3000,1)
exten => 3001,1,VoiceMailMain()

; Chiamate in uscita
exten => _0X.,1,Dial(SIP/0039${EXTEN}@out)
exten => _3X.,1,Dial(SIP/0039${EXTEN}@out)
exten => _00X.,1,Dial(SIP/${EXTEN}@out)

; Numero inesisntente
exten => _X.,1,Playback(invalid)
exten => _X.,n,Hangup()

; Chiamate in attesa
include => parkedcalls
exten => _70X,1,GoTo(parkedcalls,${EXTEN},1)

; Meteo Trentino
exten => 7272,1,Answer()
exten => 7272,n,Playback(meteo_tn)
exten => 7272,n,Hangup()

[chiamate-in-entrata]
; Chiamate in entrata
exten => _0200613655,1,NoOp('Chiamata entrante allo 0200613655, redirezionata su Aladino, interno 2000')
exten => _0200613655,n,Dial(SIP/2000||Tt,20)
exten => _0200613655,n,NoOp('Aladino occupato/non disponibile, chiamata passata in segreteria')
exten => _0200613655,n,VoiceMail(2000,us)

La spiegazione di queste estensioni prevede un ulteriore concetto: la priorità. Grazie ad essa si possono avere più possibili comportamenti per ogni estensione: consideriamo, ad esempio, l’estensione 2000, per le chiamate interne dirette all’Aladino:

exten => 2000,1,Dial(SIP/2000||tT,20)
exten => 2000,2,VoiceMail(2000,us)

Il numero che si vede dopo il 2000 dell’estensione indica la priorità (cioè l’ordine) con cui verranno aseguite le azioni indicate: prima si proverà a chiamare SIP/2000 (indica una chiamata con protocollo SIP verso l’utente 2000, l’Aladino), con possibilità di trasferimento di chiamata ad un altro numero sia da parte del chiamante che del chiamato (“||tT”, senza virgolette). Se entro 20 secondi questo non risponde (notare il 20 in fondo), oppure non è raggiungibile, si passa alla priorità 2, cioè il passaggio della chiamata alla VoiceMail (segreteria) dell’utente 2000. Le opzioni u e s indicano rispettivamente di riprodurre il messaggio di non disponilbilità (Unavaible, modificabile dall’utente chiamando la segreteria e sfogliando un po’ il menu) e s indica di non dare le istruzioni su come lasciare il messaggio (“Lasciare un messaggio dopo il segnale acusitco, quindi riagganciare oppure premere il tasto cancelletto”, o qualcosa del genere). È anche possibile specificare solo la priorità 1 e assegnare le altre priorità n, di fatto non cambia niente ma è più facile aggiungere o togliere delle priorità senza dover riordinare tutto l’elenco. La seguente configurazione è quindi equivalente:

exten => 2000,1,Dial(SIP/2000||tT,20)
exten => 2000,n,VoiceMail(2000,us) ; notare la n al posto della priorità numerica

Per ogni interno c’è anche la possiblità di lasciare direttamente un messaggio in segreteria, chiamando il numero 1<INTERNO>, ad esempio 12000 per lasciare un messaggio all’interno 2000.

Per la segreteria telefonica (estensione 3000) si usa un semplice VoiceMailMain(ID_UTENTE, OPZIONI), dove ID_UTENTE viene inserito dinamicamente tramite la variabile ${CALLERID(num)}, mentre l’opzione s serve per non richiedere la password per ascoltare i messaggi, dato che in ambiente casalingo come il mio è solo una perdita di tempo. Notare poi che all’estensione 4444 uso la funzione (in gergo Asteriskiano applicazione) Goto, e la rimando all’estensione 3000, realizzando di fatto un collegamento alla segreteria. Nell’estensione 3001 si nota l’assenza del parametro relativo all’ID utente di cui ascoltare la segreteria, permettendo l’accesso (con password) a qualunque mailbox.

Per le chiamate in uscita sfrutto i pattern (per una spiegazione dettagliata rimando al capitolo a rigurardo sull’Asterisk Book). Il primo pattern seleziono tutti i numeri che cominciano con 0, seguiti da altre 1-20 cifre: sono i numeri fissi in Italia, quindi redirigo la chiamata tramite Poivy (contesto out), notare il SIP/0039{NUMERO}@out in Dial() (lo 0039 aggiunto mi permette di non scriverlo a mano in ogni chiamata). Il pattern successivo funziona in maniera analoga ed è relativo ai cellulari. I numeri che cominciano con 2 zeri sono quelli internazionali, quindi non prepongo lo 0039.

Troviamo quindi il pattern “_X.”, che è richiamato se il numero chiamato è inesistente, e riproduce il suono “invalid”.

A seguire il necessario per “parcheggiare” le chiamate, metterle cioè in attesa (ricorda molto il 190/187/119, eh?), con tanto di musichetta. Per fare ciò, durante una chiamata, si digita # per abilitare il trasferimento di chiamata, quindi 700 per parcheggiare la chiamata. Al parcheggiante verrà riprodotto il numero da chiamare per tornare dal parcheggiato (anche da un telefono differente), mentre il parcheggiato sentirà la musichetta. Dopo un tempo specificato dopo il parcheggio (di default 45) il parcheggiante verrà richiamato e rispondendo tornerà dal parcheggiato. L’estensione successiva serve sempre per gestire i numeri dei vari parcheggiati.

Abbiamo infine l’estensione che riproduce il suono meteo_tn, contenente le previsioni Meteo Trentino, aggiornato in automatico ogni giorno alle ore 14 (pagina web parsata da PHP, passata ad espeak che la legge, convertita con sox nel formato corretto).

C’è quindi il contesto [chiamate-in-entrata], che redirige le chiamate in entrata all’Aladino o in segreteria. La funzione NoOp non fa altro che stampare un messaggio nella console di Asterisk, che si lancia con sudo asterisk -vvvvvvvvvvr sulla macchina in cui è in esecuzione Asterisk. Il numero di v passate come parametro definisce il livello di verbosità: più sono meglio è, per scopi di debug.

Configurazione di Asterisk – voicemail.conf

L’ultimo file da configurare è voicemail.conf, che deve contenere le impostazioni per ogni casella vocale:

[default]
2000 => PIN-NUMERICO,NOME,E@MAIL
2010 => PIN-NUMERICO,NOME,E@MAIL
2100 => PIN-NUMERICO,NOME,E@MAIL
2101 => PIN-NUMERICO,NOME,E@MAIL

Ho copiato solo la parte personalizzata, all’inizio del file ci sono molte opzioni che si possono configurare a piacere, sono ben spiegate.

Asterisk su Debian – L’avvio automatico

Bisogna editare /etc/default/asterisk impostando RUNASTERISK a yes, per avviare l’avvio automatico. Io avevo avuto problemi di permessi con la cartella /var/log/asterisk, che impedivano l’avvio del server, basta assegnarla all’utente asterisk:
sudo chown -R asterisk /var/log/asterisk

Conclusione

/etc/init.d/asterisk start

P.S.:Finalmente ho concluso questo post! Penso che sia il nuovo record di lunghezza su LuBlog!

P.P.S.: Consiglio la lettura di The Asterisk Book, ottimo anche come refernce manual.

90 risposte su “Asterisk: un account SIP per ricevere e uno per chiamare”

complimenti per la guida, molto chiara ed esaustiva.
ho solo una domanda però…
tempo fa volevo prorio installare asteriks sulla mia ubuntu proprio per gli stessi scopi che hanno spinto te a farlo, però il mio problema deriva dal fatto che sono su fastweb.
Sai se il tutto funziona anche con fastweb?

mettere nat=yes nel sip.conf è sufficiente per bypassare i problemi all’ip provato?

grazie

Il nat=yes risolve tutti i problemi, ma non potrai far connettere al tuo centralino utenti fuori dalla tua LAN, cosa che non faccio nemmeno io.
Non so come funzioni esattamente Fastweb, ma se non sbaglio, almeno per la fibra, si ha un HAG che di fatto è uno switch che opera sulla LAN di Fastweb, quindi gli altri utenti Fastweb pottrebbero connettersi. Una soluzione è quella di impostare il parametro host in sip.conf: nel mio esempio è impostato a dynamic, ma basterebbe che tu mettessi l’IP dei tuoi client. Nel caso tu abbia un tuo router attaccato all’HAG nessun problema, sei raggiungibile solo dalla LAN di quest’ultimo.

Il Nokia N80 è dotato di connessione WiFi ed è già predisposto per le chiamate VOIP con protocollo SIP, è stato sufficiente impostare i parametri del mio centralino nelle impostazioni del telefono per poterlo utilizzare.
Per chiamare è sufficiente digitare il numero e premere Opzioni/Chiamata via Internet.
Per i terminali Symbian con connessione wireless ma senza client SIP incorporato si può usare Fring, un ottimo programma di IM multiprotocollo che supporta anche Skype e SIP.

Ciao, ho seguito la tua guida e forse (dico ‘forse’) sono quasi riuscito a configurare il voip.
In sostanza ho un computer che fa da muletto e per il momento sto cercando di fargli smistare le chiamate in entrata sul mio portatile con Ekiga.
In effetti quando chiamo il numero succede qualcosa, perché dal mio portatile viene visualizzata la chiamata persa su Ekiga.
Ecco non capisco dove sia il problema e perché la chiamata venga persa.

Ho lanciato il debug di Asterisk ed ottengo questo messaggio
http://pastebin.com/m39b523a6

Cosa potrebbe essere?
Grazie, ciao!

Probabilmente hai Ekiga in modalità non disturbare o qualcosa del genere:
— Got SIP response 302 “Moved Temporarily” back from 192.168.1.99
— SIP/2100-081d4120 is busy

Dal log vedo anche che non hai configurato voicemail.conf, quindi non si possono lasciare messaggi in segreteria.

In realtà Ekiga è su stato ‘disponibile’ e il voicemail.conf ho provato a configurarlo. In realtà ho solo aggiunto l’account relativo al portatile con Ekiga.

[default]
2100 => 2100,Gigi,gigi@mail

È sbagliato vero?

Strano, è tutto giusto…
Prova a postare (oscurando le password, ovviamente) sip.conf ed extensions.conf, vediamo se per caso trovo l’errore 😀

Grazie della guida e dell’aiuto, ora funziona a dovere!
Credo che fosse dovuto al fatto che mi ero dimenticato di ridare un restart ad Asteriks dopo le ultime modifiche.

😉

Un piccolo trucchetto: dopo aver effettuato le modifiche entra nella console di Asterisk con
sudo asterisk -vvvvvvvvvvvr
e lancia il comando “reload” (senza virgolette) per ricaricare la configurazione senza riavviare tutto. Puoi anche ricaricare un singolo file, ad esempio “extension reload” oppure “sip reload” per applicare le modifiche relative al file nominato nel comando.

Scusa se ti rompo ancora…

Sapresti dire quale è la porta da aprire sul portatile con Ekiga per farlo comunicare con Asteriks sul server? perchè se attivo il firewall non funziona…

e un’altra cosa: ho visto che se chiamo il numero ed il portatile è spento mi vengono scalati 3 cents, senza averl lasciato nessun messaggio in segreteria. Succede anche a te, è la segreteria che non funziona? c’è un modo per disabilitarla?

La porta (se non l’hai cambiata in sip.conf) è la 5060 UDP.
Strano che ti scali così tanto! Usi Poivy?
Comunque fai una prova: con il portatile chiama il tuo interno in modo da provocare un numero occupato e vedi se la segreteria funziona. Tieni aperta la console di Asterisk così vediamo anche gli eventuali messaggi di errore.

Ok per la porta.

No, sto configurando il voip solo per ricevere le chiamate. Uso Messagenet, in realtà un mio amico mi ha parlato bene di Eutelia che dovrebbe fornire una scelta di sip geografici gratuiti maggiore, in modo da avere il ‘proprio’ prefisso telefonico.

Per quanto riguarda il discorso della segreteria il problema persiste. Probabilmente sbaglio a configurare il file voicemail.conf. Infatti non mi sono chiari i vari campi che devo inserire (PIN-NUMERICO in particolare), ‘NOME’ lo scelgo a caso?

ciao!

Ma è Messagenet ad addebitarti dei costi per le chiamate ricvevute?

Il PIN è la password per ascoltare i messaggi, che nel mio caso non viene richiesta perché nell’estensione 3000 della segreteria ho aggiunto l’opzione “s” per disabilitarla:
exten => 3000,1,VoiceMailMain(${CALLERID(num)},s)
Un esempio di configurazione di voicemail.conf è il seguente:
2000 => 1234,Mario Rossi,[email protected]
In questo modo l’estensione 2000 avrà PIN 1234, sarà di Mario Rossi con email [email protected]

No, non credo sia Messagenet: i 3 cents sono a lato di colui che chiama dall’esterno (non vengono scalati dalla parte di Asterisk per intenderci). Il problema è che vengono scalati anche se non si lascia nessun messaggio in segreteria.

Mi sono accorto che è possibile lasciare il messaggio in segreteria solo se metto Ekiga (sul portatile) sullo stato di ‘non disturbare’.
Il problema è che non riesco a fare in modo che si possa lasciare un messaggio in segreteria anche quando il portatile o Ekiga sono spenti.

Qualche idea? 🙂

Anche se non si lascia il messaggio in segreteria comunque la telefonata ha ricevuto una risposta, quindi è normale che si paghi…

Come è l’estensione che gestisce le chiamate in ingresso? Con un Dial() a priorità 1 e un VoiceMail() a priorità 2?


; Ekiga portatile
exten => 2100,1,Dial(SIP/2100||tT,20)
exten => 2100,2,VoiceMail(2100,u)
exten => 12100,1,VoiceMail(2100,u)

[chiamate-in-entrata]
; Chiamate in entrata
exten => _numtel,1,NoOp('Chiamata entrante allo numtel, redirezionata su Portatile, interno 2100')
exten => _numtel,n,Dial(SIP/2100,20)
;exten => _numtel,n,NoOp('Portatile occupato/non disponibile, chiamata passata in segreteria')
exten => _numtel,n,VoiceMail(2100,us)

Immagino ci sia qualcosa che non va, vero?

Mi sembra davvero strano, ho la stessa configurazione e funziona tutto…
Prova a connetterti alla console di Asterisk, chiudere Ekiga e fare una telefonata al tuo numero, vediamo se si scopre l’errore.

This package has been modified for the Debian GNU/Linux distribution
Please report all bugs to http://bugs.debian.org/asterisk
=========================================================================
== Parsing '/etc/asterisk/asterisk.conf': Found
== Parsing '/etc/asterisk/extconfig.conf': Found
Connected to Asterisk 1.4.17~dfsg-2ubuntu1 currently running on muletto (pid = 5090)
Verbosity is at least 10
-- Executing [numtel@chiamate-in-entrata:1] NoOp("SIP/sip.messagenet.it-081cc490", "Chiamata entrante allo numtel, redirezionata su Portatile, interno 2100") in new stack
-- Executing [numtel@chiamate-in-entrata:2] Dial("SIP/sip.messagenet.it-081cc490", "SIP/2100|20") in new stack
[Sep 29 19:45:33] WARNING[5586]: app_dial.c:1210 dial_exec_full: Unable to create channel of type 'SIP' (cause 3 - No route to destination)
== Everyone is busy/congested at this time (1:0/0/1)
-- Executing [numtel@chiamate-in-entrata:3] VoiceMail("SIP/sip.messagenet.it-081cc490", "2100|us") in new stack
[Sep 29 19:45:33] WARNING[5586]: app_voicemail.c:2826 leave_voicemail: No entry in voicemail config file for '2100'
== Auto fallthrough, channel 'SIP/sip.messagenet.it-081cc490' status is 'CHANUNAVAIL'

portatile spento, ancora nessuna segreteria… mi ha cmq scalato 5 cents da dove ho chiamato ed ho solo sentito ‘tu tu tu’

🙂

Sei sicuro di avere inserito la linea relativa all’interno 2100 in voicemail.conf?

Comunque mi sembra assurdo che ti scali i soldi se il numero risulta occupato!

Ciao, era da tanto che volevo smanettarci su con asterisk e finalmente ce l’ho fatta 😉
per ora ricevo solo con eutelia, sono passati 2 giorni da quando ho chiesto l’attivazione del numero gratuito a eutelia (con prefisso geografico della mia città…ce ne sono molti se non tutti!) e per 2 giorni non funzionava. Ovviamente pensavo fosse un problema mio invece ora miracolosamente funziona quindi era evidente che il problema era loro. Avevo anche scritto nel forum ufficiali di eutelia…mi hanno consigliato di usufruire dell’assistenza a pagamento -.- .
Sembra funzionare tutto…non ho capito solo bene come funzionino le chiamate parcheggiate. Ho provato semplicemente a rivedere una chiamata, rispondere, e tentare di metterla in attesa con asterisco e 700, ma non funziona.
Grazie ciao!

qualche offerta di telefono voip? 😀

Attenzione, si mette in attesa con #, non con asterisco.

Anch’io mi sono registrato su Eutelia e ho attivato un numero di Verona, ma attualmente quando si telefona risponde un fax… Devo contattare Eutelia.

Per i telefoni VOIP ti consiglio di prenderti un Aladino, questo è il venditore da cui l’ho preso io, ma non è l’unico su eBay.

Hai messo

; Chiamate in attesa
include => parkedcalls
exten => _70X,1,GoTo(parkedcalls,${EXTEN},1)

nel contesto dei tuoi telefoni?
Comunque, perché funzioni, è necessario che in Dial() ci sia l’opzione ||Tt, ad esempio Dial(SIP/2000||tT).

Hai ragione, è perché non avevo mai provato con le chiamate in arrivo quando ho scritto il post, adesso l’ho aggiunto.

Voip FTW…

Era da tanto che ne sentivo parlare (da mio cugino) e che volevo smanettarci, grazie ad alcuni esempi base ma molto chiari di Luca da lublog ho anche io il mio centralino asterisk up. Asterisk è un software open source punto di riferimento del sett…

ma se ekiga è sulla stessa macchina in cui gira asterisk ci sono problemi?

sono in ascolto entrambi sulla porta 5060.se lascio la 5060 su ekiga quest’ultimo non riesce a connettersi ad asterisk.

ho provato a modificare la porta in ascolto di ekiga con la 5061 e il risultato è che si collega ad asterisk ma se provo a chiamare il numero assegnatomi da messagenet attraverso il cellulare la situazione è questa:

il cellulare chiama ma non si sente nessuno squillo

ekiga riceve la chiamata

rispondo con ekiga ma non si sente niente

sul cellulare risulta che nessuno ha risposto

dopo un pò la chiamata su ekiga cade

nello stesso momento sul cellulare si sente la segreteria telefonica.

qualche aiuto?

ho risolto la parte precedente… ora ricevo tranquillamente solo che non riesco a telefonare. questo è il log-

— Executing [393*******@telefoni-locali:1] Dial(“SIP/2000-081d0008”, “SIP/0039393*******@out”) in new stack
— Called 0039393*******@out
[Oct 6 03:45:36] WARNING[10505]: chan_sip.c:12183 handle_response_invite: Received response: “Forbidden” from ‘”usernamevoipy” ;tag=as4e7942c4’
— SIP/out-081d60f8 is circuit-busy
== Everyone is busy/congested at this time (1:0/1/0)
— Executing [393*******@telefoni-locali:2] Hangup(“SIP/2000-081d0008”, “”) in new stack
== Spawn extension (telefoni-locali, 393*******, 2) exited non-zero on ‘SIP/2000-081d0008’

no, perchè devo acquistarlo?

l’ho acquistato su poivy ma non su messagenet.
sbaglio o freenumber sta per aggratis? 🙂

comunque ho risolto… l’errore dipendeva dal fatto che avevo lasciato
default come context.

Ho comprato credito su poivy…telefonata sul fisso quasi perfetta (leggero ritardo ma magari avviene anche nelle telefonate domani)
con i cellulari devo ancora provare tu hai provato?
io su debian etch purtroppo ho asterisk 1.2 🙁 …spero esca presto lenny!!

@max: Ho detto una stupidata, avevo capito che usavi Messagenet anche in uscita…

@monossido: non ho acquistato credito su poivy, al momento non mi serve, ma ho sentito dire di recente che le chiamate ai cellulari soffrono di un ritardo fastidioso, credo sia doveroso avvertire i lettori sul post, adesso provvedo.
Stesso problema anche per me, speriamo passino presto alla 1.4, non me la sento di mettere SID sul mio quasi-server… 😀

salve,
argomento interessante, molto……
e spiegazione dettagliata e chiara.
vorrei “lanciarmi” anche io e sarei intenzionato ad acquistare, usato, un nokia n80 da utilizzare solo in casa.
mi confermi la facilita’ si configurazione del telefono, non tanto lato asterisk, quanto lato telefono/symbian?
ho letto poi che la stessa nokia ha rilasciato un agg firmware per portare gli n80 “classici” ad n80 internet edition…… qualcuno qui ha gia’ provato?
grazie.
a presto.
fedora

L’N80 che uso io era già Internet Edition quindi non ho dovuto fare nessun upgrade, e la configurazione è piuttosto semplice.

Comunque puoi sempre usare il software Fring, che integra anche un client SIP, così non devi toccare il firmware.

certo c’e’ fring, ma forse, forse, il “passare” per un altro programma puo’ causare rallentamenti.
o resta comuneue tutto fluido?
complimenti ancora per il post….

Io non ho mai riscontrato problemi con Fring, anche se sicuramente è più comodo usare il firmware Internet Edition perché è sufficiente digitare il numero come in qualsiasi chiamata e poi premere Opzioni/Chiamata via Internet.

Grazie per i complimenti! 😀

e per “ricevere” da asterisk? con fring, immagino, si deve tenere il programma in esecuzione… con l’N80 IE invece? immagino che squilli quando e’ “normalmente” acceso…

Squilla normalmente, a patto di avere il wifi attivato e abilitato la registrazione automatica nell’apposito menu, a scapito della durata della batteria, che sull’N80 è già estremamente scarsa…

allora…….
approfittando dell week-end piovoso……
installato asterisk su serverino ubuntu 8.04….
installato prog phoner su fisso windows e Ekiga su partatile linux….
ho fatto riferimento a “Practical Asterisk 1.4 (unstable) – Rev. 727” e ho installato una versione minimalissima…. i due computer si chiamano l’un con l’altro….

primi problemi, pero’ con aladino wifi…..
“curato” seguendo le guide presenti su internet…..
si connette alla mia rete protetta…. infatti entrando nel menu del router lo trovo tra i dhcp client associati…
ma e’ non riesce a registrarsi con asterisk
sono andato in Menu[5] – [12] – Modo test – [5] Voip settings
ho riempito Service Domain Name con l’ip del server asterisk (192.168.1.x)
SD port 5060
Proxy IP (192.168.1.x)
Proxy port 5060
sip Auth User 2000 (le metto in chiaro perche sono quelle dell’esempio)
sip Auth Password 1234 (le metto in chiaro perche sono quelle dell’esempio)
….
ma niente non si registra….
mi sfugge qualcosa…
help, please….

altre prove…..
sembra (dalla modalita’ verbose di asterisk) che l’aladino non riesca proprio ad interrogare il server asterisk….
sul portatile con Ekiga ho scritto appositamente male la password e un messaggio di errore compare, chiaramente….

con l’aladino… nulla….

re-help, please….

My Tel Number 2000
gia’ messo….

ho riacceso il telefono per controllare e….. ora funziona!

chissa…..

beh…. grazie! comunque…..
ora? ora? prossimo passo che dici messagenet o eutelia?
che dici?
🙂

……
eccomi, registrato a messagenet…..
tutto ok, ricevo tranquillamente…..
piccolo problema come al solito….
ho seguito “Practical Asterisk 1.4 (unstable) – Rev. 727″ fino alla fine del primo capitolo e mi sono ritrovato con un centralino interno (computer, aladino) con relativa segreteria in italiano per ogni numero….

ora pero’ se dall’esterno chiamo il numero voip e l’aladino non e’ disponibile parte la segreteria in inglese che mi va anche in errore…. probailmente non ha i permessi per scrivere in /var/….

eppure in [global] ho messo language=it, tanto e’ vero che compuert / aladino e’ tutto ok….

chiaramente mi sono perso qualcosa per strada…. ma cosa?
idee?
grazie.

Il language=it devi metterlo anche nelle impostazioni relative a messagenet:

[messagenet]
[...]
language=it

Strano comunque che non squilli. Prova a postare qui la tua configurazione (sip.conf e extensions.conf) privati dei dati sensibili, magari servendoti di PasteBin o di un servizio analogo.

Scusa se non ho risposto al tuo commento precedente ma mi era proprio sfuggito. Comunque messagenet è ottimo per ricevere, mentre per chiamare mi pare sia più caro di Eutelia, che inoltre offre numeri di tutti i prefissi. Io ho sia un numero Messagenet che 2 Eutelia di Verona e non noto differenze di qualità tutto sommato.

la mia extension.conf e’ semplice semplice….
ma e’ qui che devo mettere language=it?
avevo lettoche in extensions “language” non funge!

————————————————————————————
; extensions.conf – the Asterisk dial plan
;
[others]

[my-phones]
exten => 2000,1,Dial(SIP/2000)
exten => 2999,1,VoiceMailMain(${CALLERID(num)},s)

[chiamate-in-entrata]
exten => _NUMEROMESSAGENET,1,NoOp(‘Chiamata entrante’)
exten => _NUMEROMESSAGENET,2,Dial(SIP/2000,20)
exten => _NUMEROMESSAGENET,3,VoiceMail(2000,u)

————————————————————————————

language=it va messo in sip.conf, nella sezione relativa a messagenet.

Probabilmente è superfluo, ma prova a sostituire _NUMEROMESSAGENET con _X.

[chiamate-in-entrata]
exten => _X.,1,NoOp(’Chiamata entrante’)
exten => _X.,2,Dial(SIP/2000,20)
exten => _X.,3,VoiceMail(2000,u)

se prendo ad esempio il tuo, di sip.conf, il language=it e’ presente in [general] e basta… non c’e’ [messagenet] o equivalente, mi sembra….

comunque escludendo la segreteria e facendo delle prove, dopo uno o due minuti al max di telefonate la voce di chi chiama e di chi ascolta diventa incomprensibile e si deve attaccare….

forse devo limare la parte relativa all’aladino in sip.conf…..
speravo meglio, sul serio…..

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *