Есть 3 способа поженить скайп и астериск – запустить собственный шлюз, купить лицензию Skype for Asterisk(chan_skype) или арендовать у скайпа SIP-канал. Первый способ крив по-определению, требует гуя, скайпа и эмулирующей звуковую карту софт. Второй – $66/канал. Аренда канала у скайпа – $6.95 в месяц (за каждый канал), купить SFA – конешн выгодней в долгосрочном плане, а вот «на попробовать» – 7 баксов небольшие деньги. Это и запользуем. Что необходимо:
- Рабочий, настроенный Asterisk
- Бизнес-аккаунт (регистрация бесплатна) Skype
В разделе «Функции/Features» добавляем профиль SkypeConnect, после списания месячной абон.платы скайп выдаст номер и пароль от SIP канала. Так же можно привязать к этому профилю любой бизнес-логин (или несколько), это позволит звонить пользователям со скайпа на астериск. В разделе «Исходящие звонки» обязательноположить сколько-нибудь денег на счет(иначе при попытке позвонить sip.skype.com будет устойчиво отвечать 403: Forbidden). На счет привязанного в «Входящих звонках» аккаунта денег класть категорически не нужно – он только для входящих. После чего отправляемся настраивать астериск: sip.conf: [code lang=”plain”] ;строка регистрации register => 990510001XXXXX:ПАРОЛЬ@sip.skype.com/990510001XXXXX ;Профиль [skype] type=friend username=990510001XXXXX secret=ПАРОЛЬ fromdomain=sip.skype.com fromuser=990510001XXXXX host=sip.skype.com context=skype dtmfmode=rfc2833 canreinvite=no nat=yes srvlookup=yes qualify=yes trustpid=no sendrpid=yes insecure=port,invite [/code] Где 990510001XXXXX и ПАРОЛЬ, как не трудно догадаться, данные выданные скайпом. Nat – при необходимости extensions.conf – по вкусу: [code][office] ;звонки через скайп exten => _XXXXXXXXXX,1,Set(CALLERID(all)=990510001XXXXX) exten => _XXXXXXXXXX,n,Dial(SIP/007${EXTEN}@skype,60,T) [skype] ; звонки со скапа exten => _100,1,Dial(SIP/100,60,t) ; Добавочный номер (в настройках профиля на сайте) exten => _990510001XXXXX,n,Dial(SIP/100,60,t) ; Без добавочного номера [/code] Перед звонком через скайп!обязетельно! нужно установить CALLER ID в номер выданный скайпом, иначе звонок будет отвергнут. Скайп понимает номера в формате 00XYZZZZZ (E.164) и +XYZZZZZ, где X – код страны, Y – код региона, ZZZZZZ – номер. Для прохождения входящих звонков необходима регистрация на скайпе (строка register и строка insecure=port,invite) Cобсно всё – перезагружаем конфиги или астериск и все работает, можно радоваться дешевым звонкам
Мы рады сообщить, что после успешного тестирования, 64-битная версия популярной библиотеки ROM-Asterisk перешла из статуса беты в основной релиз.
На базе ROM-Asterisk, силами независимых специалистов реализованы тысячи проектов по интеграции Asterisk и 1С:Предприятие. Библиотека ROM-Asterisk написана по технологии Native API и не нуждается в предварительной установке и регистрации внешними утилитами.
Версия x64 библиотеки ROM-Asterisk входит в состав SDK разработчика. Обновление доступно всем зарегистрированным клиентам, которые находятся на поддержке.
Задача: привязать к Asterisk аккаунт Skype. Для приема звонков из популярного месенжера. И звонить абонентам Skype. Для такой услуги существует расширение Asterisk производства , но насколько я знаю, выдача лицензий приостановлена, сейчас туннели продаются напрямую из сайта Skype по 5 евро за канал. Кто любит шару, и не хочет платить там где можно не платить. Существует для решения подобных задач проект SipToSis позволяющий делать то же самое.
Для начала нам необходимо клиент программы Skype. Для Debian мы качаем версию Skype для Ununtu. С SipToSis работает путем взаимодействия с ним через Skype API. Так же необходимо не забывать, что для работы Skype необходима графическая среда. Для запуска его в консольном Linux, будем использовать Xvfb (X Virtual Frame Buffer) и для доступа с другой машины – .
Устанавливаем все необходимые приложения:
Для аудио:
sudo apt-get install -y alsa-utils alsa-base alsa-tools
Графический сервер:
sudo apt-get install -y x11vnc
Java приложения:
sudo apt-get install -y openjdk-6-jdk
Графическая оболочка:
sudo apt-get install -y fluxbox
Устанавливаем пакет Skype, который взят с официально сайта и актуален на момент написания статьи:
dpkg -i skype-ubuntu-lucid_4.1.0.20-1_i386.deb
Возможно ругнется на неустановленные зависимости, лечится это:
sudo apt-get -f install
modprobe snd-dummy
Или можно подключить в /etc/modules для постоянно загрузки.
nano /etc/modules в конце файла вписываем snd-dummy
Данная команда поможет установить необходимые зависимости.
Кочаем SipToSis с сайта разработчика SipToSis Download Распаковываем архив, делаем запускаемым файл SipToSis_linux
chmod +x /etc/siptosis/SipToSis_linux
Создаем Транк в Астериске
Trunk Name: Skype_to_Sip username=Skype_to_Sip type=friend context=from-internal secret=skype_call_password host=dynamic nat=yes dtmfmode=auto canreinvite=no incominglimit=1 outgoinglimit=1 call-limit=1 busylevel=1
Открываем siptosis.cfg, комментируем блок настроек, начинающийся с #Sample AUTO config with NO registration и убираем комментарии с блока #Sample Asterisk registration example, в нем правим:
host_port=5070 contact_url=Skype_to_Sip@127.0.0.1:5060 from_url=»Skype_to_Sip» username=Skype_to_Sip realm=asterisk passwd=************ expires=300 do_register=yes minregrenewtime=120 regfailretrytime=15
Редактируем файл SkypeToSipAuth.props
nano SkypeToSipAuth.props
*,sip:user2@127.0.0.1:5060
Запускаем маленький скрипт, ставим паузы по 3 секунды, что бы приложения запускались последовательно.
#!/bin/sh # setting DISPLAY export DISPLAY=:1 Xvfb ${DISPLAY} -screen 0 800x600x16 & sleep 3 fluxbox & sleep 3 echo login1 password1 | skype --pipelogin & sleep 3 /home/login1/Skype/SipToSis/SipToSis_linux & sleep 3 x11vnc -display ${DISPLAY} -bg -nopw -listen XXX.XXX.XXX.XXX -xkb
К сожалению у меня так и не получилось добиться стабильной работы с несколькими аккаунтами. Если у Вас получилось, прошу поделится опытом.
Используемые источники:
- http://911ua.blogspot.com/2011/06/asterisk-skype.html
- https://simplit.com.ua/blog/
- https://it.w-develop.com/shlyuz-asterisk-i-skype-cherez-siptosis-pod-debisn-ili-ubuntu/