sip
суббота, 7 августа 2021 г.
вторник, 28 апреля 2020 г.
kamailio get versions
curl -sS 'https://registry.hub.docker.com/v2/repositories/kamailio/kamailio/tags/' | jq '."results"[]["name"]' | sort
"5.1.10-buster"
"5.1.10-precise"
"5.1.10-stretch"
"5.1.10-xenial"
"5.3.3-buster"
"5.3.3-jessie"
"5.3.3-precise"
"5.3.3-stretch"
"5.3.3-trusty"
"5.3.3-xenial"
"5.1.10-buster"
"5.1.10-precise"
"5.1.10-stretch"
"5.1.10-xenial"
"5.3.3-buster"
"5.3.3-jessie"
"5.3.3-precise"
"5.3.3-stretch"
"5.3.3-trusty"
"5.3.3-xenial"
воскресенье, 8 сентября 2019 г.
вторник, 13 августа 2019 г.
pjproject, pjsip, pjsua
Всё в заголовке - это библиотека и консольный клиент для всяких тестов, типа sipp, но возможностей поболее. Куплено командой астериска Digium, поэтому свежий код есть именно там.
Первое что гуглится - это на code.google.com, но оно давно мертво.
На данный момент актуальная версия 2.9
https://www.pjsip.org/download.htm
И там же видим такую штуку
Development SVN URLs
The 2.x series:
http://svn.pjsip.org/repos/pjproject/trunk
Да, у них до сих пор svn. Не модно, не стильно, не молодёжно, но до сих пор работает.
Впрочем, для хипстеров есть и копия в git
https://github.com/pjsip/pjproject (фирменная)
https://github.com/asterisk/pjproject (астериска, похоже отстаёт)
Доки
https://trac.pjsip.org/repos
(скорее всего, уже устарели)
Про интеграцию с астером
https://wiki.asterisk.org/wiki/display/AST/PJSIP-pjproject
Описание структуры папок
https://trac.pjsip.org/repos/wiki/Getting-Started/Download-Source
Если хочется использовать либу из скриптов, есть такое
https://www.pjsip.org/docs/book-latest/html/intro_pjsua2.html
Оба языка требуют формирование либы pjsua2 через swig
Golang
https://www.min.at/prinz/?entry=entry180924-185225
https://github.com/rprinz08/pjgo
https://github.com/yslim/go_pjproject
Переходим в рабочую папку и запускаем
swig -c++ -go -cgo -intgosize 64 \
-outcurrentdir \
-I/usr/local/include \
/path/to/pjsip/pjproject-2.8/pjsip-apps/src/swig/pjsua2.i
появится несколько файлов, включая pjsua2.go
Python
https://www.pjsip.org/docs/book-latest/html/intro_pjsua2.html#building-python-and-java-swig-modules
Сама либа лежит в pjsip-apps/src/swig - ставим swig, python-devel, java (openjdk-11-jdk) и прочее по зависимостям, потом make
Ощибки
/usr/bin/ld: /home/user/pjproject.git/pjsip/lib/libpjsua-x86_64-unknown-linux-gnu.a(pjsua_media.o): relocation R_X86_64_PC32 against symbol `pjsua_var' can not be used when making a shared object; recompile with -fPIC
Пересобираем pjproject
make install поставит файлы в /home/USER/.local/lib/python3.6/site-packages/
C go
/usr/bin/ld: cannot find -lssl
/usr/bin/ld: cannot find -lcrypto
Полный список примерно такой
apt install libssl-dev uuid-dev libasound-dev
Первое что гуглится - это на code.google.com, но оно давно мертво.
На данный момент актуальная версия 2.9
https://www.pjsip.org/download.htm
И там же видим такую штуку
Development SVN URLs
The 2.x series:
http://svn.pjsip.org/repos/pjproject/trunk
Да, у них до сих пор svn. Не модно, не стильно, не молодёжно, но до сих пор работает.
Впрочем, для хипстеров есть и копия в git
https://github.com/pjsip/pjproject (фирменная)
https://github.com/asterisk/pjproject (астериска, похоже отстаёт)
Доки
https://trac.pjsip.org/repos
(скорее всего, уже устарели)
Про интеграцию с астером
https://wiki.asterisk.org/wiki/display/AST/PJSIP-pjproject
Описание структуры папок
https://trac.pjsip.org/repos/wiki/Getting-Started/Download-Source
Если хочется использовать либу из скриптов, есть такое
https://www.pjsip.org/docs/book-latest/html/intro_pjsua2.html
Оба языка требуют формирование либы pjsua2 через swig
Golang
https://www.min.at/prinz/?entry=entry180924-185225
https://github.com/rprinz08/pjgo
https://github.com/yslim/go_pjproject
Переходим в рабочую папку и запускаем
swig -c++ -go -cgo -intgosize 64 \
-outcurrentdir \
-I/usr/local/include \
/path/to/pjsip/pjproject-2.8/pjsip-apps/src/swig/pjsua2.i
появится несколько файлов, включая pjsua2.go
Python
https://www.pjsip.org/docs/book-latest/html/intro_pjsua2.html#building-python-and-java-swig-modules
Сама либа лежит в pjsip-apps/src/swig - ставим swig, python-devel, java (openjdk-11-jdk) и прочее по зависимостям, потом make
Ощибки
/usr/bin/ld: /home/user/pjproject.git/pjsip/lib/libpjsua-x86_64-unknown-linux-gnu.a(pjsua_media.o): relocation R_X86_64_PC32 against symbol `pjsua_var' can not be used when making a shared object; recompile with -fPIC
Пересобираем pjproject
./configure --enable-shared make dep & make sudo make installи в python/ будут нужные файлы
make install поставит файлы в /home/USER/.local/lib/python3.6/site-packages/
C go
/usr/bin/ld: cannot find -lssl
/usr/bin/ld: cannot find -lcrypto
Полный список примерно такой
apt install libssl-dev uuid-dev libasound-dev
среда, 1 мая 2019 г.
вторник, 23 апреля 2019 г.
sippy sip server
https://www.voip-info.org/sippy/
Это ещё не полноценная АТС, но уже умеет быть b2bua. Совсем грубо - это как SIPS + модуль b2bua + rtpengine
Это ещё не полноценная АТС, но уже умеет быть b2bua. Совсем грубо - это как SIPS + модуль b2bua + rtpengine
пятница, 19 апреля 2019 г.
RTCP
https://ru.bmstu.wiki/RTCP_(Real-time_Transport_Control_Protocol)
RTCP (Real-Time Control Protocol)(от англ. Real-Time Transport Control Protocol — протокол управления передачей в реальном времени) — протокол управления передачей данных в реальном масштабе времени. Он выполняет функцию подсчета переданных пакетов, учета задержек при передаче, учета потерянных пакетов, jitter (значения флуктуации задержек).
В случае применения с rtpengine - читать тут
https://github.com/sipwise/rtpengine#offer-message
плюс раздел rtcp-mux
RTCP (Real-Time Control Protocol)(от англ. Real-Time Transport Control Protocol — протокол управления передачей в реальном времени) — протокол управления передачей данных в реальном масштабе времени. Он выполняет функцию подсчета переданных пакетов, учета задержек при передаче, учета потерянных пакетов, jitter (значения флуктуации задержек).
В случае применения с rtpengine - читать тут
https://github.com/sipwise/rtpengine#offer-message
плюс раздел rtcp-mux
Подписаться на:
Сообщения (Atom)