| 目的 |
録音ファイルをバッチ処理で外部の音声認識システムと連携を行い、音声データのテキスト化を行うために用いることができます。通話の上り・下りチャネル毎の通話録音ファイルをBIZTELサーバ内に保存し、ダウンロード用のAPIを使用して外部システムから連携することが可能です。 また、一括ダウンロードオプションの契約がある場合は、前日分の上り・下りチャネル毎の通話録音ファイルのダウンロードを行い、日次処理での音声データのテキスト化にも用いることができます。 |
|---|---|
| 対象プラン |
|
| 用語 |
【ステレオ録音】 上り(オペレータ側音声)と下り(相手側音声)の音声をそれぞれ分離した録音データです。 ※3.4.0ではMP3形式の録音ファイルとなります。 【外部音声認識システム】 通話音声データをソフトウェアが解析してテキスト化するシステムです。 ※この機能性をご利用いただくには、別途、外部音声認識システムのご契約が必要です。 【WebAPI】 汎用的なWeb技術を利用し、インターネットを介して外部システムとの連携を容易にする仕組み。外部システムごとにWebAPIで用いるパラメーターは異なり、各システムで仕様を公開しています。 【BIZTEL API】 BIZTELが公開するAPIを示します。外部システムからBIZTELに対して実行処理や履歴などの取得を行うことができるパラメーターが用意されています。(録音ファイル取得APIはBIZTEL APIの1つとなります。) |
| ポイント |
・本機能は、BIZTEL バージョン 3.4.0以降でご利用可能です。 ・本機能をご利用いただくには、「ステレオ録音」「コールアクション」「録音ファイル取得API」のオプション契約が必要です。 ・お客様(もしくは外部音声認識システム)にて、録音ファイル取得サーバと録音ファイル情報を受信するためのAPIをご用意いただく必要があります。 ・BIZTEL API(本マニュアル内では録音ファイル取得API)の実行にはAPIリクエスト数の上限と、連続実行に関する制限があります。 ・月間のAPIリクエスト数、APIレスポンスオブジェクト数の上限は、各100,000件となります。 ・BIZTELバージョン3.12.0以降、音声ファイル分離を行う対象を設定可能です。詳細は「5.音声ファイル分離設定」を参照ください。 |
・本マニュアルはHTML/PHP(PCRE正規表現等)/WebAPIの基礎的な技術知識がある、WEB系開発者様やCRMベンダー様を対象にしております。
目次
3. BIZTEL API(録音ファイル取得API)について
1. ステレオ録音APIの基本機能
外部の音声認識システムとの連携目的で、通話の上り・下りチャネル毎の通話録音ファイルをBIZTELサーバ内に保存し、ダウンロード用のAPIを使用して外部システムから連携することが可能です。
● 動作イメージ ※クリックして拡大表示が可能です。
● ステレオ録音APIを実行した際の処理の流れ
| 項番 | 範囲 | 動線 |
|---|---|---|
| ①情報を送信 | BIZTEL |
通話終了後、オペレータ(上り)と相手(下り)のそれぞれの録音ファイルが生成されたことを、コールアクション機能でお客様側の録音ファイル取得サーバへ情報を通知します。 ※あらかじめ、コールアクション機能の設定が必要です。設定例は「2.1 コールアクション設定例」を参照ください。 |
| ②ダウンロード要求 | お客様 |
①の通知を受け、お客様側のAPIからBIZTEL側に、該当録音ファイルのダウンロードを要求します。 |
| ③指定した録音ファイルダウンロード | BIZTEL |
BIZTEL側の録音ファイル取得APIより、指定した録音ファイルをダウンロードします。 |
| ④音声認識の処理 | お客様 |
お客様側で利用している音声認識システムに録音ファイルを連携し、音声認識の処理が行われます。 |
| ⑤音声テキスト化 | お客様 |
お客様側で利用している音声認識システムで録音ファイルの音声をテキスト化します。 |
| ⑥テキストデータの格納 | お客様 | お客様側で利用しているCRMシステム等に音声のテキストデータを格納します。 |
1.1 利用パターンについて
ステレオ録音APIをご利用いただくために必要な「音声ファイル分離」「コールアクション」「録音ファイル取得API」のライセンスについて、異なる目的でご利用いただくことも可能です。
利用パターン例が以下となります。
●「音声ファイル分離」+「録音一括ダウンロード」
録音一括ダウンロードオプションで日次で上りと下りに分離した録音ファイルを取得し、バッチ処理にて音声認識システム上で処理を行うことが可能です。
録音一括ダウンロードの詳細は「1.録音一括ダウンロード」を参照ください。
●「録音ファイル取得API」
お客様の任意のタイミングで、対象の録音ファイルを録音ファイル取得APIによりダウンロードすることが可能です。
※上りと下りの音声がMIXされた通常の録音ファイルもダウンロード可能です。
2. コールアクションの設定について
「1. ステレオ録音APIの基本機能【動作イメージ図】」の詳細について解説します。(動作イメージ図の①に該当します。)
上りと下りに分離した録音ファイルが生成完了したことを、BIZTELサーバからお客様側の録音ファイル取得サーバへ通知するための設定をコールアクションにて行います。
コールアクションの詳細については、「1.コールアクション」を参照ください。
2.1 コールアクション設定例
ステレオ録音APIを利用するためのコールアクションの設定例を記載します。
●録音完了時の通知先
customer.xx.jp(お客様APIホスト名の例)
● API名(お客様API名の例)
/monitor_file_event
● 通知設定
ID=リクエストID
TEL=お客様電話番号
DATE=処理時刻
| 項目 | 入力値 |
|---|---|
| イベント種別 |
録音完了/音声認識サービス連携完了 ※BIZTELバージョン 3.4.Xまで、「ステレオ録音完了/音声認識サービス連携完了」と表示されます。 |
| 実行順 | 1 |
| 判定用コード | なし |
| 判定用パターン | なし |
| API連携種別 | マニュアル |
| URL | https://customer.xx.jp/monitor_file_event?ID={ID}&TEL={TEL}&DATE={DATE} |
| メソッド | GET ※受信側のAPIの仕様により、「GET」「POST」で設定ください。 |
| リクエストヘッダ | なし |
| リクエストボディ | なし |
| タイムアウト判定(秒) | 10 ※任意 |
| 変数抽出パターン | なし |
| メモ | ご自由に入力ください。 |
| エラー判定パターン | ※任意 |
| リトライ回数 | 0 ※任意 |
| リトライ間隔(秒) | 1 ※任意 |
通知情報は、以下のように展開されて通知されます。
/monitor_file_event?ID=21061600000268000060&TEL=034530XXXX&DATE=2021-06-16%2020%3A03%3A33
また、録音ファイル取得サーバで受信後は、monitor_file_event (お客様API名)ではBIZTELから通知されたIDを用いて、録音ファイルダウンロードAPIを発行して録音ファイルを取得する形となります。
※お客様側のAPIの仕様により実際の設定値は異なります。
2.2 注意事項
新規外線番号の契約時など、連携対象となる外線番号を追加する場合は、コールアクションの「連携対象」タブから対象の外線番号にチェックを入れる必要があります。
3. BIZTEL API(録音ファイル取得API)について
本項では、BIZTEL API(録音ファイル取得API)の仕様について記載します。
※「1. ステレオ録音APIの基本機能」の動作イメージ図の③に該当します。
3.1 API基本仕様
URI schemeは以下となります。
| Host | sXXXXXXXXXXXX.u.biztel.jp:8000 | BIZTELサーバアドレスとして指定されたFQDN |
|---|---|---|
| scheme | HTTPS |
3.2 リクエスト方式
録音ファイル取得APIを実行する際のリクエスト方式は以下となります。
| 認証方式 | HTTPメソッド | URI | 備考 |
|---|---|---|---|
| APIトークン認証方式 | GET | /public/api/v1/monitor/(リクエストID) |
APIトークンによるアカウント認証が必要です。 リクエストヘッダにAuthorization: Token (APIトークン)を指定します。 ※アカウント>APIトークンタブから払い出します。詳細は「1.APIトークン」を参照ください。 ※リクエストID=通知されてきた{ID}の値です。 |
3.3 リクエストパラメータ
録音ファイル取得APIで使用するパラメータは以下となります。
| パラメータ | 説明 | 備考 | 必須項目 | パラメータ型 | データ型 | 初期値 |
|---|---|---|---|---|---|---|
| id | リクエストIDを指定する | ダウンロード対象の録音ファイルに紐付くリクエストID | Yes | path | string | -- |
|
content_type (※) |
コンテンツ種別を指定する |
録音ファイルの種別 ●monaural ●left ●right |
No | query | string | monaural |
| Authorization | API実行のためのトークンを指定する | 'Token トークン文字列'と入力 | Yes | header | string | -- |
※録音ファイルの種別の「left:相手側の録音ファイル指定」「right:オペレータ側の録音ファイル指定」について、0秒転送や多段転送のように転送された場合は、通話パターンによっては正しく判定出来ない場合があります。
実行例
| APIトークン認証方式 |
|---|
|
■録音ファイル取得APIの実行例 macOSのコンソールにて下記コマンドを入力し実行します。 curl -X GET --header 'Authorization: Token ★払い出しトークン★' 'https://★契約BIZTELサーバFQDN★:8000/public/api/v1/monitor/★リクエストID★?content_type=★コンテンツ種別★' -o ★保存するファイル名★.mp3 ■入力サンプル curl -X GET --header 'Authorization: Token f7e51c7c8b97963e423d7206d75762b7bba2954efabb64aab5734773bf5e5265bf5d79a7be0f1b97' 'https://XXXXXXXXXXXX.u.biztel.jp:8000/public/api/v1/monitor/21091300000468000050?content_type=monaural' -o test.mp3 ※上記★〜★の箇所はそれぞれの要件に合わせて変更します。 |
3.4 レスポンスコード
録音ファイル取得APIを実行する際のレスポンスコードは以下となります。
| HTTP Status Code | Reason | 説明 |
|---|---|---|
| 200 | Successful Operation | 正常終了(成功) |
| 401 | Unauthorized | 認証失敗 |
| 403 |
Forbidden |
録音ファイルに権限が無い場合に出力される |
| 404 | Not Found |
録音ファイルが存在しない場合に出力される |
| 429 | Too Many Requests |
バースト上限値を超過した場合 |
| 500 | Internal Server Error |
システム障害 |
3.5 レスポンスヘッダー
ヘッダー情報は以下となります。
| Response Headers | 説明 |
|---|---|
|
{ |
●ファイル名はhttp標準仕様のレスポンスヘッダに含まれます。 |
3.6 レスポンスボディ
レスポンスボディの例を記載します。
| 状況 | Response Body |
|---|---|
| ファイル取得に成功した場合 | 取得した音声ファイルのバイナリデータが格納されます。 |
| ファイル取得に失敗した場合 (※) |
{ "name": "AuthenticationException", "type": "UNAUTHENTICATED", "exception_id": null, "message": "Unauthenticated: method=personal_token, cause=invalid token.", "messages": null, "reason": "Unauthenticated: method=personal_token, cause=invalid token." } |
※記載内容は一例となります。
3.7 エラー仕様
| パラメータ | エラー条件 | name | type | message |
|---|---|---|---|---|
| id | 存在しないリクエストIDを入力 | EntityNotFoundException | NOT_FOUND |
対象が存在しません |
| Authorization | 録音ファイル取得APIライセンスが無効の状態でAPIを実行する | AuthenticationException | FORBIDDEN |
This action is unauthorized. |
| バースト時の上限値を超過するリクエストがあった場合 | AuthenticationException | REQUEST_BURST_LIMIT_EXCEEDED |
exceptions.AccessLimitException. |
|
| 録音ライセンスをON→OFFに変更し、録音ファイルをダウンロードしようとした場合 (過去に連携済の録音ファイルも含む) |
AuthenticationException | FORBIDDEN | This action is unauthorized. | |
|
認証に失敗した場合 ※「Token」のみ入力した場合 |
AuthenticationException | UNAUTHENTICATED | Unauthenticated: method=personal_token, cause=invalid request | |
|
認証に失敗した場合 ※「Token {誤ったToken文字列}」を入力した場合 |
AuthenticationException | UNAUTHENTICATED | Unauthenticated: method=personal_token, cause=invalid token. | |
| content_type | monaural、left、right以外を入力 | ValidateException | VALIDATE_ERROR | 選択されたmonitor log monitor typeは正しくありません |
| 音声ファイル分離ライセンスが有効になっていない状態でleft、rightを入力 | AuthorizationException | FORBIDDEN | This action is unauthorized. | |
| -- | 録音ファイル取得APIが有効になっていない状態でAPIを実行 | AuthorizationException | FORBIDDEN | This action is unauthorized. |
3.8 APIリクエスト数の消費仕様について
BIZTEL API(録音ファイル取得API)のライセンス消費数は以下となります。
| 認証方式 | ライセンス消費数 | 備考 |
|---|---|---|
| APIトークン認証方式 | 1リクエストにつき、1消費 |
累積APIリクエスト数、累積APIレスポンスオブジェクト数ともに1づつ消費します。 |
3.9 注意事項
● 録音ファイル取得APIのバースト制御は、システム設定>ライセンス設定>バースト時の上限値(コールバックAPI等)をご確認ください。
バージョン3.6.0 未満:毎秒1回のアクセスとなります。
バージョン3.6.0 以降:毎秒10回のアクセスとなります。
● ダウンロード可能な録音ファイルの対象は、アカウント>APIトークンタブから払い出されたアカウントの権限に依存します。詳細は「1.APIトークン」を参照ください。
● ダウンロード可能な録音ファイルの対象は、システム設定>スーパバイザ以下の録音ファイルのダウンロード禁止の設定に依存します。
4. 上りと下りに分離した録音ファイルの仕様
● BIZTELサーバに格納された、上りと下りに分離した録音ファイルの保持期間は【7日間】となります。
● 上りと下りに分離した録音ファイルは、ご契約録音時間に含まれません。
※上りと下りの音声がMIXされた通常の録音ファイルの録音時間のみ、ご契約録音時間にカウントされます。
● 録音一括ダウンロードオプションを契約している場合、上りと下りに分離した録音ファイルも同じフォルダに格納されます。(保存期間は録音一括ダウンロードオプションの期間通りとなります。)
● 上りと下りに分離した録音ファイルの命名規則は以下となります。
yyyymmddhhmmss-XXXX-XXXX-XXXXXXXXXXXXX-XXX_X.mp3
[通話開始日][通話開始時刻]-[着信元番号]-[着信先番号]-[リクエストID]-[SRC/DST]_[l/r].mp3
例)2019年7月18日16時10分58秒 の 内線2006 から 内線2002 の通話
ファイル名(left) :20190718161058-2006-2002-1563433858.66-SRC_l.mp3
ファイル名(right):20190718161058-2006-2002-1563433858.66-SRC_r.mp3
例)2019年7月18日14時50分00秒 の 内線3800 から 外線070-XXXX-XXXX の通話
ファイル名(left) :20190718145000-3800-070XXXXXXXX-1563428995.29-DST_l.mp3
ファイル名(right):20190718145000-3800-070XXXXXXXX-1563428995.29-DST_r.mp3
なお、システム設定で録音ファイルを特定するための一意となるキーを「リクエストID」もしくは「ユニークID」に指定することが可能です。
システム設定の詳細は「1.システム設定」を参照ください。