Domanda

Devo configurare un semplice sistema IVR per la compagnia di un amico che permetterà al chiamante di navigare nel menu premendo i tasti del telefono. È un po 'come un orario degli autobus.

  

per il programma di oggi premere '1', per il programma di domani premere '2' e   così via.

È solo un sistema di informazione, ovvero nessuna rotta di navigazione finirà con una persona reale ma verranno riprodotti solo i messaggi audio.

Ora, non ho mai installato nulla di simile prima e ho fatto un po 'di ricerche su Google. Sembra che sarò in grado di raggiungere questo obiettivo con Asterisk.

  • Cos'altro ho bisogno dal punto di vista hardware?
  • Sono sufficienti un semplice server Linux e un account VOIP con un provider in Germania?
  • Un VPS gestirà l'attività?
  • Che ne dici di più chiamate in arrivo simultanee?
  • Sono quelli gestiti da Asterisk?
È stato utile?

Soluzione

È perfettamente possibile.

Cosa devi sapere:

  1. L'asterisco presenta alcuni problemi con H323. Se il tuo fornitore fornisce SIP, chiedi invece di IVR.

  2. È possibile creare un intero extensions.conf su dial plan nel AGI, ma per attività complesse è meglio utilizzare Perl. Questi sono Python o FastAGI o qualunque script di lingua che implementano la tua µLaw logica. Ogni sox -t ul sessione abbraccia un processo figlio, usa RFC 2833 e un demone di rete se prevedi connessioni frequenti.

  3. Più chiamate simultanee non sono un problema, la mia installazione di Asterisk su un semplice PC gestisce centinaia chiamate simultanee.

  4. Le uniche cose che possono realmente influire sulle prestazioni sono conversione del suono e rilevazione del tono .

    Per migliorare le prestazioni, dovresti:

    1. Attenersi a un codec (2,66 MHz Celeron IV è quello che uso), forzare tutte le 2048 MB RAM connessioni a utilizzare quel codec e preconvertire tutti i file audio su di esso utilizzando Fedora 10 X86_64. Non appena lo hai fatto, tutte le operazioni di Asterisk equivalgono a leggere i byte di file dal disco e inviarli in rete con un semplice wrapping. Non ci sono matematica, nient'altro che semplici operazioni di lettura e riavvolgimento.

    2. Chiedi al tuo provider di rilevare i toni dalla sua parte e di inviarti fuori banda , usando 9.6 KByte/sec. Il rilevamento del tono è un'operazione che consuma abbastanza CPU, lascia che facciano loro stessi.

    Eseguo personalmente Asterisk su un <=> con <=>, in <=>. 150 connessioni contemporaneamente funzionano OK, non ci sono ritardi.

    Il traffico complessivo ammonta a circa <=> per connessione. Per un VPS moderno non dovrebbero esserci problemi.

Altri suggerimenti

Rocce di asterisco. Per poche righe farà un semplice P3 o migliore. Non virtualizzare il PBX; Asterisk si basa su un tempismo piuttosto preciso.

FreePBX semplifica la configurazione di un IVR - ha un front-end decente basato sul Web e supporta alcuni fantastici strumenti Asterisk pronti all'uso.

EDIT: FreePBX non è Asterisk - è una bella interfaccia che genera le configurazioni per te. Trixbox lo include per impostazione predefinita se si desidera una soluzione semplice inquadra e scatta.

Se il tuo account VoIP supporta più linee in entrata, Asterisk le utilizzerà perfettamente. È inoltre necessaria una larghezza di banda Internet sufficiente e un QoS decente. Per più di una linea su un sistema aziendale insisto su una connessione dedicata in modo da non riscontrare abbandoni quando gli utenti accedono alla rete.

Il modo migliore per creare un'applicazione IVR è usare VoiceXML progettato da W3C.org (http://www.w3.org/TR/voicexml21/). Asterisk non viene fornito con il browser VoiceXML ma ci sono aziende che lo forniscono per Asterisk come SoftSyl Technologies (http://www.softsyl.com).

Anche aziende come Cisco e Avaya forniscono browser VoiceXML ma non sono per Asterisk.

Se sei completamente nuovo, suggerirei di studiare FreeSWITCH invece di Asterisk. È molto meglio strutturato e include anche alcuni esempi predefiniti, tra cui un menu IVR, e la sintassi IVR è piuttosto semplice: http://wiki.freeswitch.org/wiki/IVR_Menu

Sto eseguendo un'istanza di FreeSWITCH su un server virtuale Xen e funziona perfettamente con più chiamate simultanee.

Puoi farlo nel dial plan ...

[menu-main]
exten => s,1,Noop()
exten => s,n(msg),Background(ForTodayPress1TomorrPress2)
exten => s,1,Goto(menu-today)
exten => s,2,Goto(menu-tomorrow)
exten => i,1,Playback(invalid)
exten => i,n,Goto(msg)
exten => t,1,Goto(msg)

[menu-today]
etc...

[menu-tomorrow]
etc...

O come ha suggerito qualcun altro, puoi farlo in qualsiasi lingua in grado di scrivere su stdin e leggere da stdout. L'implementazione di phpagi è il mio particolare gusto preferito. Potrebbe adattarsi a questo esempio nel modo in cui il PHP viene eseguito su una casella separata in modo da non influire sul PBX sotto alcun tipo di carico.

[menu-main]
exten => s,1,Noop()
exten => s,n(msg),Background(ForTodayPress1TomorrPress2)
exten => s,1,Goto(menu-today,s,1)
exten => s,2,Goto(menu-tomorrow,s,1)
exten => i,1,Playback(invalid)
exten => i,n,Goto(msg)
exten => t,1,Goto(msg)

[menu-today]
exten => s,1,Noop()
exten => s,n,agi(http://myapache/agi/readschedule.php)
exten => s,n,Hangup()

Il design IVR in Asterisk non è difficile, ma c'è un po 'di " learning cliff " associato alla messa in funzione del tuo primo server Asterisk.

Come affermato da qualcun altro, la qualità della chiamata è tutto. Paga per avere registrazioni di livello professionale fatte per i tuoi messaggi IVR e i tuoi annunci. Assicurati di utilizzare codici 64k come uLaw e aLaw; Il GSM (cellulare) potrebbe essere economico con la larghezza di banda, ma infrange le aspettative dei clienti sulla qualità.

Consiglio vivamente di inserire l'IVR nel proprio contesto del dial plan e quindi di indirizzare le chiamate al suo interno. Ciò rende molto più semplice la gestione di cose come le scelte di menu. Per ogni sottoinsieme di opzioni, utilizzare un contesto di dial plan diverso.

Prova a mantenere il menu " shallow " ;. Se ci vogliono più di tre opzioni di menu per ottenere le informazioni che il tuo cliente sta cercando, è molto probabile che riattaccino, o semplicemente premi & Quot; 0 & Quot; parlare con un essere umano. Questo sconfigge il punto del tuo IVR.

Se hai intenzione di fare qualcosa di abbastanza interessante con le ricerche nel database, o l'autenticazione dell'account o simili, ti consiglio di usare un " AGI " - Asterisk Gateway Interface - applicazione. Il mio preferito personale è & Quot; Adhearsion & Quot ;, che si fonde bene con Ruby / Rails sul DB / Web side.

Se hai bisogno di aiuto o di maggiori informazioni, fammelo sapere.

Per IVR più complessi puoi provare Astive Toolkit , soprattutto se hai bisogno di database o iterazioni di servizi web.

Ho lavorato con IVR in passato ma principalmente con sistemi di grandi dimensioni e non ho mai usato Asterisk. Ho dato una rapida occhiata al loro sito Web ( http://www.asterisk.org/ ) e sembra molto informativo, hai controllato lì?

Non è relativo alla programmazione ma ...

Dai un'occhiata a trixbox.org , supporta la configurazione da Cisco a ... telefoni Snom La sua mod Asterisk / Freepbx e tutto sotto una bella interfaccia utente!

Ho un provider in Australia che li ha aggiunti come trunk GSM, ci sono voluti 3 ore per configurare 4phone. IVR è supportato

L'unico problema potrebbe essere ... la qualità vocale della registrazione

È abbastanza semplice. Sto usando sipgate.de come provider per il mio asterisco. devi impostare un dialplan.

anche questo è abbastanza semplice. dai un'occhiata qui . dovresti anche dare un'occhiata a extensions.conf. ci sono alcuni campioni dentro. c'è anche un esempio che si adatta al tuo problema. per connettersi a sipgate, dai un'occhiata alla loro base di conoscenza. ci sono alcuni esempi per la configurazione dell'asterisco.

sipgate è gratuito, tranne per le chiamate in uscita.

Se si desidera impostare un Asterisk IVR, è anche possibile utilizzare alcuni strumenti basati sul trascinamento della selezione Web per creare un semplice operatore automatico (come nell'esempio) o un IVR complesso (gestione di script o IVR basato su database). Un'opzione è Cally Square . Dai un'occhiata qui: http://www.callysquare.com/

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top