PDA

Bekijk Volledige Versie : [TrixBox] Asterisk & Music on Hold via stream werkt niet



groenleer
26/10/06, 20:42
Hallo mede VOIP-ers, ;)

Sinds ik in het bezit ben van een VOIP Telefoon ben ik me ook gaan verdiepen in asterisk.
Op dit moment heb ik de Snom 360 met een 3 tal SIP-lijnen in gebruik
Lijn 1: Speakup
Lijn 2: GratisSip test lijntje
Lijn 4: Asterisk Box

Alles gaat goed, ik kan over alle 3 de ingestelde lijnen bellen en gebeld worden.
Met name voor mijn eigen asterisk box is dit belangrijk :D De andere 2 geloof ik wel op dit moment.

Ik maak gebruik van trixbox en heb daarnet nog gekeken voor updates, die waren er niet via het update script.


Aan lijn 4 is extension 200 gekoppeld.
Ik heb een extension 466 als test aangemaakt zoals omschreven bij NerdVittles (http://nerdvittles.com/index.php?p=92)


# vi /etc/asterisk/extensions_custom.conf

-- inserting onder [from-internal-custom] --
exten => 466,1,Answer
exten => 466,2,Playback(pls-hold-while-try)
exten => 466,3,SetMusicOnHold,stream
exten => 466,4,WaitMusicOnHold,300
exten => 466,5,Hangup


in de musiconhold.conf heb ik netjes een nieuwe class aangemaakt op de nieuwe methode


[stream]
mode=custom
application=mpg123 -s --mono -y -f 8192 -r 8000 -@ /etc/asterisk/stream.playlist


het bestand /etc/asterisk/stream.playlist is gevuld met het volgende:


http://172.16.1.22:8000/


Wanneer ik naar de shoutcast server connect vanaf een andere pc, krijg ik gewoon de stream te horen. Shoutcast werkt dus perfect lijkt mij.
Alles in orde zou je zeggen.

Ik start de Asterisk Console
Naderhand bel ik naar de extension 466
Na ongeveer 1 minuut hang ik op.



# asterisk -vvvvvvvvvcr
--knip--
01 -- Executing Answer("SIP/200-2721", "") in new stack
02 -- Executing Playback("SIP/200-2721", "pls-hold-while-try") in new stack
03 -- Playing 'pls-hold-while-try' (language 'en')
04 -- Executing SetMusicOnHold("SIP/200-2721", "stream") in new stack
05 -- Executing WaitMusicOnHold("SIP/200-2721", "300") in new stack
06 -- Started music on hold, class 'stream', on channel 'SIP/200-2721'
07 -- Stopped music on hold on SIP/200-2721
08 -- Executing Macro("SIP/200-2721", "hangupcall") in new stack
09 -- Executing ResetCDR("SIP/200-2721", "w") in new stack
10 -- Executing NoCDR("SIP/200-2721", "") in new stack
11 -- Executing Wait("SIP/200-2721", "5") in new stack

(Ik heb het even genummerd.)
Duidelijk te zien in de log is dat er een lijn van SIP/200 word beantwoord (de bellende telefoon)
Vervolgens word er afgespeeld "pls-hold-while-try" dit gaat ook goed.
Dan zie je dat de MusicOnHOld word geset op "stream"
En dat de maximale wachttijd 300 seconden is.
Op regel 7 zien we dat de stream-class word gestart. Direct er achteraan word de music on hold gestopt (regel 7)
Na 1 minuut word de macro hangupcall uitgevoerd omdat er is opgehangen.
Nog even een cleanup doen en we zijn klaar voor een nieuwe ronde.

Wanneer ik nu naar de shoutcast server ga kijken, valt het mij op dat er geen stream word gestart naar de asterisk server.
Als ik het commando mpg123 -s --mono -y -f 8192 -r 8000 -@ /etc/asterisk/stream.playlist uitvoer word er weldegelijk geconnect naar de shoutcast server.

Na wat troubleshooten kwam ik er al achter dat het stukje -y -f 8192 -r 8000 -@ /etc/asterisk/stream.playlist een beetje te veel was (een url als /etc/asterisk/http://172.16.1.22:8000/ is niet echt afspeelbaar)
Het commando dat nu word gebruikt is: mpg123 -s --mono http://172.16.1.22:8000/



Nu is mijn vraag wie heeft er streaming audio in zijn music on hold queue aan de gang?
De bedoeling is namelijk dat we alle gebruikers gelijktijdig de zelfde muziek via een stream laten horen.

Music on hold werkt inmiddels goed wanneer we losse mp3tjes gebruiken.
Ik heb al veelvuldig gezocht met Google maar ik heb het idee dat niemand dit probleem heeft opgelost. Als men het probleem al opgelost krijgt dankt men in het openbaar de persoon die hun een PM stuurde, maar word de oplossing niet vermeld.

Wie o wie kan mij hier bij helpen?

WilloW
26/10/06, 21:40
Probeer eens een icecast stream... Shoutcast stuurt speciale header gegevens mee misschien dat het daar op stuk gaat.

groenleer
30/10/06, 12:00
Ok, ik heb nog het een en ander zitten stoeien.

Ik heb icecast nu geinstalleerd en werkend.
ALs ik naar het mount point connect met winamp, windows media player, mpg123 etc krijg ik netjes muziek te horen.

Maar ik krijg via asterisk nog steeds
Stopped Music on hold on SIP/200-7313

Iemand die dit daadwerkelijk running heeft?

groenleer
06/11/06, 16:15
Suptiel schopje.

Iemand die de zelfde problemen heeft?

groenleer
27/11/06, 16:21
Hardnekkig en volhoudend dat ik ben heb ik tot op heden niet opgegeven.

Ik heb al behoorlijk wat leuke functies van asterisk me eigen gemaakt maar bovenstaand probleem nog niet kunnen oplossen.

Iemand die hier wel een wacht muziekje heeft vanaf een audio stream?
Dit mag een eigen stream zijn, of een public internet stream.

En hoe heb je dit aangepakt?