SIPメッセージング

2024年10月30日 (水) 16:41時点におけるTakahashi (トーク | 投稿記録)による版

SIPメッセージで電話機等でメッセージを交換する方法。ブラウザ等を使えばチャット用にも使える。要するにSMSみたいなもん。

Asteriskでの実装

Asteriskは音声通話のみならずSIPメッセージの『交換』にも使える。

チャネル

基本的にエンドポイント同士は通常のPJSIP/phone123のような形式で認識される。ただし接続した際のチャネルが異なり、音声パスではなく ast_message_queue となる。

${CHANNEL(name)} = Message/ast_msg_queue

SIPでメッセージを受け取ると上記のようなチャネル名となるので、これを判断することで音声通話ではなくSIPメッセージあると判断できる。

メッセージ本体

ファンクションMESSAGE()がメッセージ自体のハンドリングを行う。

MESSAGE(from) r/w

送信元

MESSAGE(to) r/w

送信先

MESSAGE(body) r/w

メッセージの実体

MESSAGE(custom_data) w/o

mark_all_outbound または clear_all_outbound を指定