Ехо тест за блога на Asterisk Node

Полезни бележки от личен опит

Ехо тест за Asterisk

В процеса на настройка на Asterisk става необходимо да се направят серия от тестови повиквания. Ще споделя с вас набор от разширения, които използвам.

[ехо-тест] exten => 801.1, Възпроизвеждане (демо-ехотест) exten => 801.2,Echo exten=> 801.3, Възпроизвеждане (демо-еходон)

exten=> 802.1,Ringing() exten => 802,n,Изчакайте(3) exten => 802,n,Answer() exten => 802,n,Възпроизвеждане(dir-multi3) exten => 802,n,Изчакайте(1) exten => 802,n,agi(googletts.agi,$,ru) exten => 802,n,Изчакайте(1) exten => 802,n,agi(googletts.agi,"Channel",ru) exten => 802,n,Изчакайте(1) exten => 802,n,agi(googletts.agi,$,en) exten => 802,n,Изчакайте(1) exten => 802,n,Set(encryption="Този канал е криптиран.") exten => 802,n,GotoIF($["$" != "1"]?insecure) exten => 802,n,GotoIF($["$" != "1"]?insecure) exten => 802,n(playencryption),agi(googletts.agi,$,ru) exten => 802,n,Изчакайте(1) exten => 802,n,agi(googletts.agi,"Влизате в режим на ping. Кажете паролата си и натиснете клавиша за паунд.",en) exten => 802,n,Запис(/tmp/802-$.wav,0,30) exten => 802,n,agi(googletts.agi,"Прослушайте паролата си.",en) exten => 802,n,Възпроизвеждане(/tmp/802-$) exten => 802,n,System(rm /tmp/802-$.wav) exten => 802,n,Изчакайте(1) exten => 802,n,Възпроизвеждане(демо-еходон) exten => 802,n,Hangup() exten => 802,n(insecure),Set(encryption="Този канал не е криптиран.") exten => 802,n,Goto(playencryption)

exten=> 803.1,Отговор exten=> 803,n,MusicOnHold() exten => 803,n,Затваряне()

exten=> 804,1,agi(googletts.agi,"Изчакване на обаждане.",ru) exten=> 804,n,System(/etc/asterisk/scripts/echo-callback.sh $ &) exten => 804,n,Прекъсване()

Може би сте забелязали, че предложеният план за номериране използва речеви синтезатор на Google. За тези, които предпочитат стандартния (основни звуци) и разширения (допълнителни звуци) звуков комплект Asterisk, има друго издание:

[ехо-тест] exten => 801.1, Възпроизвеждане (демо-ехотест) exten => 801.2,Echo exten=> 801.3, Възпроизвеждане (демо-еходон)

exten=> 802.1,Ringing() exten => 802,n,Изчакайте(3) exten => 802,n,Answer() exten => 802,n,Възпроизвеждане(dir-multi3) exten => 802,n,Изчакайте(1) exten => 802,n,SayDigits($) exten => 802,n,Изчакайте(1) exten => 802,n,Възпроизвеждане(канал) exten=> 802,n,Изчакайте(1) exten => 802,n,SayAlpha($) exten => 802,n,Изчакайте(1) exten => 802,n,Set(encryption=channel-secure) exten => 802,n,GotoIF($["$" != "1"]?insecure) exten => 802,n,GotoIF($["$" != "1"]?insecure) exten => 802,n(playencryption),Playback($) exten => 802,n,Изчакайте(1) exten => 802,n,Възпроизвеждане(демо-ехотест) exten => 802,n,Запис(/tmp/802-$.wav,0,30) exten => 802,n,Възпроизвеждане(системно-състояние-съобщение) exten => 802,n,Възпроизвеждане(/tmp/802-$) exten => 802,n,System(rm /tmp/802-$.wav) exten => 802,n,Изчакайте(1) exten => 802,n,Възпроизвеждане(демо-еходон) exten => 802,n,Hangup() exten => 802,n(insecure),Set(encryption=channel-insecure-warn) exten => 802,n,Goto(playencryption)

exten=> 803.1,Отговор exten=> 803,n,MusicOnHold() exten => 803,n,Затваряне()

exten=> 804.1, Възпроизвеждане (благодаря-за-обаждането) exten => 804,n,System(/etc/asterisk/scripts/echo-callback.sh $ &) exten => 804,n,Прекъсване()

И двата вариантаса идентични, разликите са само в начина на изразяване на събитията. Нека дадем някои обяснения за това какво прави всяко от разширенията. 801 е стандартен ping тест с вградени инструменти на Asterisk. Тези. чувате всичко, което казвате в микрофона в реално време, но с известно закъснение. Основният недостатък на този тест е, че може да предизвика самовъзбуждане на гласовия канал. 802 е най-изчерпателният наличен ping тест. При извършване на повикване първоначално се изговаря номерът на обаждащия се, идентификаторът на канала и дали гласовото предаване е криптирано. След това се записва и възпроизвежда контролна фраза. Този тест е полезен за оценка на качеството на запис и възпроизвеждане на глас на абонатния терминал и при прилагане на SIP TLS + SRTP. 803 - Просто възпроизвежда музиката, която се използва, когато разговорите са задържани, докато обаждащият се затвори. Удобно е да се използва в случаите, когато имате нужда разговорът да продължи дълго време, докато сами не го прекъснете. Например, за да разберете някои подробности в Asterisk CLI. 804 е ping от 802, комбиниран с обратно извикване. Тези. абонатът набира 804, благодари му се за обаждането и затваря. След около 10 секунди Asterisk ще се обади обратно и ще изпълни ping тест. Такава процедура може да е необходима за отстраняване на грешки при входящи повиквания към SIP клиент чрез NAT или при прилагане на SIP TLS + SRTP. Следното е шел скрипт, който генерира .call файл за изходящо повикване на Asterisk. В него трябва поне да коригирате контекста на плана за набиране в реда „Канал:“.

echo "Канал: Local/$@staff CallerID: Ехо тест MaxRetries: 1 RetryTime: 10 WaitTime: 30 Account: 802 Context: echo-test Extension: 802 Priority: 1 AlwaysDelete: Yes">/var/spool/asterisk/tmp/$

mv /var/spool/asterisk/tmp/$ /var/spool/asterisk/outgoing/$

Ето архив за изтегляне с предложен план за номериране и shell скрипт.