Skip to content

1対1の音声通話 ​

対応する処理 ​

Vylinejs は、通話ルートの取得、1対1の PLANET セッションのネゴシエーション、SRTP 音声の送受信に対応しています。 音声入力は Opus でエンコードする必要があります。 ライブラリはコーデックを接続するためのフックと WAV/PCM ヘルパーを提供しますが、マイクからの録音や音声の再生は行いません。

機能状況参照先
1対1の音声通話の発信実装済み。実際の動作は LINE アカウントとネットワークに依存example/call/call_on_command.ts
1対1の音声通話の着信明示的な許可を必要とする応答ヘルパーを提供example/call/incoming.ts
ブラウザーでの音声トランスポート非対応PLANET のメディア通信には UDP ソケットが必要

発信のサンプルを試す ​

このスクリプトは !call を待ち受け、1対1の Talk チャットでコマンドの送信者に発信します。 別の WAV ファイルを指定しない場合は、example/call/unity.wav を送信します。

sh
LINE_AUTH_TOKEN_FILE=/path/to/auth-token.txt \
LINE_DEVICE=ANDROID \
deno run -A example/call/call_on_command.ts ./voice.wav

このサンプルの音声処理は、現在のクライアント API と通話ヘルパーに照らして確認されています。 これはソースコードの静的な確認であり、ドキュメントのレビュー時に実際の通話を行ったことを示すものではありません。 シグナリング、メディア鍵、トラブルシューティングの詳細は、通話の解説を参照してください。

音声通話の着信に応答する ​

answerIncoming を使用する前に、アプリケーション独自の着信許可ポリシーを適用してください。 ライブラリが自動で応答することはありません。 このヘルパーは発信者を承認するコールバックを必須とし、finally でトランスポートを閉じ、AbortSignal によるキャンセルに対応します。

制限 ​

実際の通話が成功するかどうかは、アカウントの状態、端末の識別情報、相手側のクライアント、コーデック、ネットワークに左右されます。 特定の端末での動作に依存する前に、最新の通話検証に関する注記を確認してください。 トランスポートは通話中にのみ開き、終了処理で必ず閉じてください。

Vylinejsは非公式のLINEクライアントライブラリです。MITライセンスで公開されています。