Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Русский
    3. ioBroker
    4. Скрипты
    5. ioBroker скрипты
    6. Handsfree ip-телефон

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    Handsfree ip-телефон

    This topic has been deleted. Only users with topic management privileges can see it.
    • A
      andrey99986 last edited by

      Наверное у каждого бывали ситуации когда звоните домой, а телефон никто не слышит (не зарядили вовремя, либо не слышно).

      Есть вариант организовать sip-телефон на базе linux-сервера (без GUI и монитора!), к которому подключен микрофон, динамик и если нужен видеотелефон то ip/usb-камера.

      Инструкция (пишется по памяти, если что-то не хватает - спрашивайте, дополню):

      1. Устанавливаем Asterisk на любой сервер с выходом в Интернет (не обязательно на ту же машину где будет ip-телефон). Подойдёт любая бесплатная версия, которую проще поставить из пакетов.

      Допустим у нас 2 абонента:

      • Мобильный абонент: user1/password1 с номером 860

      • Стационарный абонент на сервере: flat1/password2 с номером 861.

      1.1 В Asterisk настраиваем:

      в файле extensions.conf в конце добавляем:

      [from-sip]
      exten => 860,1,Dial(SIP/user1)
      exten => 861,1,Dial(SIP/flat1)
      

      в файле sip.conf в конце добавляем:

      ` > [user1]

      type = friend ; Friends place calls and receive calls

      username=user1

      context = from-sip ; Context for incoming calls from this user

      secret = password1

      ;allow = all

      disallow=pcmu ; First disallow all codecs

      allow=speex,libc,gsm,vp8,h264 ; Allow codecs in order of preference

      host = dynamic

      directmedia = nohat

      nat = force_rport,comedia

      [flat1]

      type = friend ; Friends place calls and receive calls

      username=flat1

      context = from-sip ; Context for incoming calls from this user

      secret = password2

      disallow=pcmu ; First disallow all codecs

      allow=speex,libc,gsm,vp8,h264 ; Allow codecs in order of preference

      ;allow = all

      host = dynamic

      directmedia = nohat

      nat = force_rport,comedia

      keepalive=60 `

      В файле rtp.conf чтобы не открывать снаружи слишком большой диапазон портов можно ограничить в секции "[general]"

      ` > rtpstart=19900

      rtpend=20000 `

      1.2. На маршрутизаторе открываем извне порт udp 5060 и диапазон портов udp указанный в rtp.conf.

      2. На linux-сервере, к которому подключен микрофон, динамик и ip-камера устанавливаем linphonec из пакетов (весьма желательно), либо пытаемся откомпилировать- но это дело очень муторное, много зависимостей.

      2.1

      Если нужен видеотелефон из ip-камеры:

      2.1.1 Создаём videodevice:

      modprobe v4l2loopback devices=4
      

      2.1.2

      Устанавливаем пакеты gstreamer1.0-libav, gstreamer1.0-plugins-base, gstreamer1.0-tools

      2.1.3

      Захватываем видео с камеры в videodevice с преобразованием в "сырое" видео:
      > gst-launch-1.0 rtspsrc location=rtsp://user:password@192.168.2.30:554/Streaming/Channels/2 ! rtph264depay ! decodebin ! videorate ! video/x-raw, framerate=10/2 ! v4l2sink device=/dev/video2 &
      (Для usb камеры захват будет другой, ищите в гугле)

      2.2

      Запускаем linphenec с помощью специальной программы для управления - linphonecsh:

      /usr/bin/linphonecsh init -C -c /etc/linphonec.cfg
      /usr/bin/linphonecsh register --host 10.10.10.10:5060 --username flat1 --password password1
      /usr/bin/linphonecsh generic 'camera'  #(активирует возможность видеотелефона)
      /usr/bin/linphonecsh generic 'soundcard use 0' #(явно указывает номер звуковой карты в системе)
      /usr/bin/linphonecsh generic 'webcam use 0' #(использует /dev/video2, номер проверяется командой /usr/bin/linphonecsh generic 'webcam list')
      /usr/bin/linphonecsh generic 'autoanswer enable' #(разрешить автоответ)
      

      3. На смартфоне устанавливаем linphone либо другой SIP-клиент из play-маркета.

      Указываем в настройках Сервер, порт, login: user1 и пароль: password2.

      Если регистрация успешна - можно набрать номер 861 и поговорить 🙂

      1 Reply Last reply Reply Quote 0
      • First post
        Last post

      Support us

      ioBroker
      Community Adapters
      Donate

      899
      Online

      31.8k
      Users

      80.0k
      Topics

      1.3m
      Posts

      1
      1
      918
      Loading More Posts
      • Oldest to Newest
      • Newest to Oldest
      • Most Votes
      Reply
      • Reply as topic
      Log in to reply
      Community
      Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
      The ioBroker Community 2014-2023
      logo