IVR自動音声応答(音声認識)

録音した音声やリアルタイムの音声入力をテキストに変換することできるPythonライブラリの「SpeechRecognition」を活用します。

◎音声認識の自動受付イメージ

【人】[202]をダイヤルする。
   ↓
【PC】「お電話ありがとうございます。こちらは○○商事でございます。自動音声で対応て頂きす。ご用件をお話ください。」
   ↓
【人】「営業部をお願い致します。」
   ↓
【PC】”えいぎょう”を音声認識する。
   ↓
【PC】「営業部にお繋ぎ致します。」
   ↓
 内線20の電話機を呼び出す。

————————————————————————————————-

Pythonで音声をテキストに変換するコードを作成する。
まず、必要なライブラリ「flac」、「SpeechRecognition」、「pykakasi」、「pyst2」をインストールする。

flacコーデックライブラリのインストール

「SpeechRecognition」録音した音声やリアルタイムの音声入力をテキストに変換します。

「pykakasi」漢字をひらがなやローマ字にすることができる。

Asteriskライブラリのインストール

Asterisk用agiライブラリのインストール

以上でAsteriskでSpeechRecognitionを使用するための環境設定は完了です。

「/var/lib/asterisk/agi-bin/」に新規にコード「speech_rec.py」を作成します。

「speech_rec.py」を実行可能にします。

尚、Asterisk上で動きますが、直接コマンドラインで正常に動きません。

————————————————————————————————-

次に「extensions.conf」の内容を編集する。

以下の内容を「extensions.conf」に追記します。

設定内容を有効にするためにサービスの再起動

【動作確認】「202」をダイヤルして、アナウスを聴き、「営業部をお願い致します。」と内線20を呼出す事が出来たら成功です。

————————————————————————————————-

MixMonitor(filename.extension,options)
StopMixMonitor()
ダイヤルプラン実行中に音声録音ファイルmp3が作成されます。StopMixMonitor()で録音を停止します。
filename.extension = 録音するファイル名
options = a: 追加でfileを作成する。
     t(file): fileに送信音声を録音する。
      r(file): fileに受信音声を録音する。

           


メモ書き

©2024 OKADA