JsSIP

Материал из Википедии — свободной энциклопедии
Перейти к навигации Перейти к поиску
JsSIP
Логотип программы JsSIP
Тип WebRTC
Написана на JavaScript
Операционная система кроссплатформенность
Первый выпуск 2011; 13 лет назад (2011)
Последняя версия
Репозиторий github.com/versatica/JsS…
Лицензия MIT
Сайт jssip.net

JsSIP — библиотека для языка программирования JavaScript, которая позволяет использовать технологию WebRTC в виде оконечного программного SIP-телефона (софтфона) на любом веб-сайте. JsSIP позволяет организовать аудио и видео общение в режиме реального времени, а также обеспечить передачу текстовых сообщений другим пользователям.[2]

С точки зрения мультимедиа JsSIP может работать с браузером Chrome, начиная с версии 24. На уровне сигнализации (протокол SIP) JsSIP работает в любом браузере с поддержкой WebSocket. При загрузке JsSIP на каком либо сайте, появляется возможность использования WebRTC для подключения браузера к любому SIP-устройству (софтсвичу или другому SIP-клиенту) внутри веб-сокетов.

JsSIP предоставляется как программное обеспечение с открытым исходным кодом по лицензии MIT.[3]

Особенности[править | править код]

  • SIP через веб-сокет
  • Полноценная поддержка всех основных стандартов SIP
  • Аудио и видео вызовы, обмен мгновенными сообщениями, контроль статус других пользователей
  • Полноценный код на JavaScript, созданный с нуля
  • Простой в использовании и мощный пользовательский API
  • Возможность работы с любым SIP-сервером: FreeSwitch, Asterisk, verSIP, Kamailio, и т. д. и т. п.


Стандарты[править | править код]

В JsSIP применяются SIP-спецификации:

  • RFC 3261 — SIP: Session Initiation Protocol
  • RFC 3311 — SIP Update Method
  • RFC 3326 — The Reason Header Field for SIP
  • RFC 3327 — SIP Extension Header Field for Registering Non-Adjacent Contacts (Path header)
  • RFC 3428 — SIP Extension for Instant Messaging (MESSAGE method)
  • RFC 4028 — Session Timers in SIP
  • RFC 5626 — Managing Client-Initiated Connections in SIP (Outbound mechanism)
  • RFC 5954 — Essential Correction for IPv6 ABNF and URI Comparison in RFC 3261
  • RFC 6026 — Correct Transaction Handling for 2xx Responses to SIP INVITE Requests
  • RFC 7118 — The WebSocket Protocol as a Transport for SIP


Примечания[править | править код]

  1. npmjs
  2. WebRTC:How and Why? FRAFOS (12 января 2015). Дата обращения: 19 февраля 2021. Архивировано из оригинала 12 июня 2016 года.
  3. JsSIP License.