「Asterisk chan websocket」の版間の差分
ナビゲーションに移動
検索に移動
ページの作成:「Asteriskの新しいチャネルとしてWebsocketチャネルが追加された。<br> 使用可能なバージョンは 23.0.0,22.6,0, 21.11.0, 20.16.0 のそれぞれ以降のバージョン。メジャーバージョンによる追加ではなく、マイナーバージョンの途中から追加されているので注意。<br> 従来からあるPjSIPのws/wssではなく、チャネルドライバとしてのWebsocket。 ==関連するモジュール== chan_w…」 |
|||
| 24行目: | 24行目: | ||
==注意点== | ==注意点== | ||
Websocket接続ではあるものの、RTPと同様に20m秒のペーシング(1フレームあたり20m秒)の送出間隔を守ること。AsteriskからWebsocketへの送出はこの20m秒フレームで送られるが、外部からAsteriskに送りつける場合にも20m秒を守る必要がある。これが乱れると音声の品質低下、あるいは再生されないといった問題が発生する。この問題は割とハマるので注意。 | Websocket接続ではあるものの、RTPと同様に20m秒のペーシング(1フレームあたり20m秒)の送出間隔を守ること。AsteriskからWebsocketへの送出はこの20m秒フレームで送られるが、外部からAsteriskに送りつける場合にも20m秒を守る必要がある。これが乱れると音声の品質低下、あるいは再生されないといった問題が発生する。この問題は割とハマるので注意。 | ||
==設定== | |||
AsteriskからWebsocketに対して発信する場合の例。<br> | |||
websocket_client.conf に以下のように記述する。"ws-connection"が識別名。 | |||
[ws-connection1] | |||
type = websocket_client | |||
uri = ws://127.0.0.1:8765 | |||
protocols = media | |||
connection_type = per_call_config | |||
connection_timeout = 500 | |||
reconnect_interval = 500 | |||
reconnect_attempts = 5 | |||
tls_enabled = no | |||
2025年10月22日 (水) 11:17時点における版
Asteriskの新しいチャネルとしてWebsocketチャネルが追加された。
使用可能なバージョンは 23.0.0,22.6,0, 21.11.0, 20.16.0 のそれぞれ以降のバージョン。メジャーバージョンによる追加ではなく、マイナーバージョンの途中から追加されているので注意。
従来からあるPjSIPのws/wssではなく、チャネルドライバとしてのWebsocket。
関連するモジュール
chan_websocket
res_websocket_client
*CLI> core show channeltype WebSocket
-- Info about channel driver: WebSocket --
Device State: no
Presence State: no
Indication: no
Transfer : no
Capabilities: (codec2|g723|ulaw|alaw|gsm|g726|g726aal2|adpcm|slin|slin12|slin16|slin24|slin32|slin44|slin48|slin96|slin192|lpc10|g729|speex|speex16|speex32|ilbc|g722|siren7|siren14|g719|opus|jpeg|png|h261|h263|h263p|h264|h265|mpeg4|vp8|vp9|red|t140|t38|silk8|silk12|silk16|silk24)
Digit Begin: no
Digit End: yes
Send HTML : no
Image Support: no
Text Support: no
*CLI> module show like res_websocket_client.so
Module Description Use Count Status Support Level
res_websocket_client.so WebSocket Client Support 2 Running core
注意点
Websocket接続ではあるものの、RTPと同様に20m秒のペーシング(1フレームあたり20m秒)の送出間隔を守ること。AsteriskからWebsocketへの送出はこの20m秒フレームで送られるが、外部からAsteriskに送りつける場合にも20m秒を守る必要がある。これが乱れると音声の品質低下、あるいは再生されないといった問題が発生する。この問題は割とハマるので注意。
設定
AsteriskからWebsocketに対して発信する場合の例。
websocket_client.conf に以下のように記述する。"ws-connection"が識別名。
[ws-connection1] type = websocket_client uri = ws://127.0.0.1:8765 protocols = media connection_type = per_call_config connection_timeout = 500 reconnect_interval = 500 reconnect_attempts = 5 tls_enabled = no