Страница 1 из 1

Asterisk 16 sert + webrtc клиент SIPML5

Добавлено: 25 фев 2021, 20:08
Merk83
Здравствуйте.
Настроен webrtc-софтфон SIPML5 в браузере к астериску 16й версии, коннект через инет, драйвер PJSIP. Все работает, звонки ходят.
Проблема в том, что когда юзер обновляет страницу с софтфоном (зачем он так делает - это отдельный вопрос и к теме не относится), то звонок зависает в астериске и приходится сбрасывать его только вручную. Хотелось бы чтоб звонок разрывался в таком случае, т.е. когда коннект с webrtc-клиентом потерян.
Как то можно сделать такое?
Ниже лог такого случая:

Код: Выделить всё

    -- Removed contact 'sips:webrtc_client@111.222.333.444:2901;transport=ws;rtcweb-breaker=yes' from AOR ' webrtc_client' due to shutdown
  == Contact webrtc_client/sips:webrtc_client@111.222.333.444:2901;transport=ws;rtcweb-breaker=yes has been  deleted
  == Endpoint webrtc_client is now Unreachable
  == WebSocket connection from '111.222.333.444:2901' closed
<<<<<<<в этой точке страница с софтфоном была обновлена и софтфон переподключился>>>>>>>>>>>>>

  == WebSocket connection from '111.222.333.444:2909' for protocol 'sip' accepted using version '13'
[Feb 25 11:47:23] NOTICE[3243]: res_pjsip/pjsip_distributor.c:676 log_failed_request: Request 'REGISTER'  from '"webrtc_client" <sip:webrtc_client@10.8.0.10>' failed for '111.222.333.444:2909' (callid: be132b47-90 5b-af61-4d21-ffded2eaac24) - Failed to authenticate
    -- Added contact 'sips:webrtc_client@111.222.333.444:2909;transport=ws;rtcweb-breaker=yes' to AOR 'webr tc_client' with expiration of 200 seconds
  == Endpoint webrtc_client is now Reachable
    -- Contact webrtc_client/sips:webrtc_client@111.222.333.444:2909;transport=ws;rtcweb-breaker=yes is now  Reachable.  RTT: 30.602 msec

<<<<<<<<<<<<смотрим текущие каналы>>>>>>>>>>>>>	
	sip*CLI> pjsip show channels

  Channel:  <ChannelId........................................>  <State.....>  <Time.....>
      Exten: <DialedExten.............>  CLCID: <ConnectedLineCID.......>
==========================================================================================

  Channel: PJSIP/webrtc_client-0000015e/Echo                     Up            00:02:31
      Exten: 600                         CLCID: "" <>


Objects found: 1
Как видно, вызов повис.
Ниже - настройки пира

Код: Выделить всё

[transport-wss]
type=transport
protocol=wss
bind=0.0.0.0

;=====ШАБЛОНЫ
[aor_template](!)
type=aor
max_contacts=1
remove_existing=yes
qualify_frequency=60
  
[auth_template](!)
type=auth
auth_type=userpass
 
[webrtc_endpoint_template](!)
type=endpoint
transport=transport-wss
dtls_auto_generate_cert=yes
webrtc=yes
direct_media=no
context=default
disallow=all
allow=opus,ulaw
[webrtc_client](aor_template)
  
[webrtc_client](auth_template)
username=webrtc_client
password=password
 
[webrtc_client](webrtc_endpoint_template)
aors=webrtc_client
auth=webrtc_client