...

アプリケーション開発入門ガイド

by user

on
Category: Documents
3

views

Report

Comments

Transcript

アプリケーション開発入門ガイド
マルチメディアカード
基本ソフトウェア
アプリケーション開発入門ガイド
第5.1版
2003年5月
株式会社NTTデータ
Copyright © 1998-2003 NTT DATA CORPORATION
All rights reserved 複製・無断転載厳禁
はじめに
本書は、(株)NTT データが販売する VOISTAGE マルチメディアカード 基本ソフトウェア Ver.5.04 に
ついて記載されています。他のバージョンをご使用の場合には適当でない記述がある可能性がありますの
でご注意下さい。
本マニュアルの記述内容に関する商標について
・VOISTAGE,StageWriter,StagePalette,StagePlayerは(株)NTTデータの登録商標です。
・Microsoft,Windows,Windowsロゴ,WindowsNTは米国Microsoft Corporationの米国及びその他の国におけ
る登録商標です。
・Windows NTは米国Microsoft Corporationの米国及びその他の国における登録商標です。
・pcANYWHEREはSymantec Corporationの米国における登録商標です。
・その他、記載されている会社名、製品名は、各社の登録商標または商標です。
著作権について
Copyright © 1998-2003 NTT DATA CORPORATION All rights reserved
この文書には著作権があり、すべての権利を(株)NTT データが所有しています。この文書は、(株)NTT デ
ータの許可なくしては、全体あるいは一部でも、電子的または機械的、いかなる形式、またはいかなる手
段での複写・転載・再配布をすることができません。
この文書に記載されている内容に関しては、断りなく変更することがあります。また、この文書の内容
に関して誤りがあった場合でも、当社はいかなる責任も負いません。
製品のお問い合わせについて
本製品に関する技術的なお問い合わせや、製品のサポートに関しましては、お買い上げの販売店にご連
絡下さいますよう、お願いいたします。
Copyright © 1998-2003 NTT DATA CORPORATION
All rights reserved 複製・無断転載厳禁
1
アプリケーション開発入門ガイド
目 次
1 概要...................................................................................... 1
1.1 VOISTAGE について ..................................................................... 1
1.2 オンラインヘルプについて .............................................................. 3
2 マルチメディアカード...................................................................... 4
2.1 標準機能.............................................................................. 4
2.2 実現できる機能について ................................................................ 5
2.3 マルチメディアカードの設定 ............................................................ 6
2.3.1 VS-402MC/403MC の設定 ............................................................. 6
2.3.2 その他の設定ファイル .............................................................. 7
3 開発ツール................................................................................ 8
3.1 アプリケーション実行環境について ...................................................... 9
3.2 StageWriter.......................................................................... 11
3.2.1 StageWriter の機能 ............................................................... 11
3.2.2 ファイル構成..................................................................... 12
3.2.3 StageWriter でのプログラム開発 ................................................... 13
3.3 VOISTAGE スクリプト言語 .............................................................. 16
3.3.1 スクリプトソース作成の概要 ....................................................... 16
3.3.2 スクリプトソースのコンパイル ..................................................... 19
3.3.3 VOISTAGE スクリプト言語命令一覧 .................................................. 20
3.4 VOISTAGE ActiveX..................................................................... 25
3.4.1 VOISTAGE ActiveX コンポーネント(VSM07001 コントロールモジュール)の登録 ............ 26
3.4.2 VOISTAGE ActiveX(VSM07001)のコーディング ......................................... 27
3.4.3 VOISTAGE ActiveX(VSM07001)メソッド一覧 ........................................... 29
3.4.4 VOISTAGE ActiveX コンポーネント(VSACTX21 コントロールモジュール)の登録 ............ 31
3.4.5 VOISTAGE ActiveX(VSACTX21)のコーディング ......................................... 32
3.4.6 VOISTAGE ActiveX(VSACTX21)メソッド一覧 ........................................... 34
3.5 S.100 API テレフォニー ライブラリ .................................................... 37
3.5.1 S.100 API アプリケーション概念 ................................................... 37
3.5.2 S.100 API アプリケーションの作成 ................................................. 39
3.5.3 S.100 API 関数一覧 ............................................................... 42
3.6 TAPI テレフォニー ライブラリ ......................................................... 46
3.6.1 テレフォニードライバの登録 ....................................................... 46
3.6.2 TAPI アプリケーションの作成 ...................................................... 48
3.7 UnPBX システム開発キット(オプション) ............................................... 51
3.7.1 UnPBX システムの概要 ............................................................. 52
3.7.2 UnPBX シーケンス ................................................................. 53
3.7.3 UnPBX システム作成 ............................................................... 54
Copyright © 1998-2003 NTT DATA CORPORATION
All rights reserved 複製・無断転載厳禁
i
アプリケーション開発入門ガイド
4 StagePalette............................................................................. 57
4.1 StagePalette の画面 .................................................................. 57
4.2 StagePalette の機能 .................................................................. 58
4.3 システム設定......................................................................... 59
4.4 環境設定............................................................................. 61
4.5 回線設定............................................................................. 63
4.6 プログラム設定....................................................................... 64
4.7 タイマー設定......................................................................... 67
4.8 イベント設定......................................................................... 68
4.9 異常通知先設定....................................................................... 69
4.10 回線特性設定........................................................................ 70
4.11 カテゴリー編集ツール ................................................................ 73
4.12 INS ネットサービス設定 .............................................................. 75
4.13 メッセージ登録ツール ................................................................ 77
4.14 FAX 登録ツール ...................................................................... 78
4.15 テストツール........................................................................ 79
4.16 音声合成ユーティリティ .............................................................. 80
5 StagePlayer.............................................................................. 81
5.1 StagePlayer の機能 ................................................................... 81
5.2 StagePlayer 画面 ..................................................................... 82
5.3 モニター画面......................................................................... 83
5.4 ログ、トレース....................................................................... 84
6 開発・運用のポイント..................................................................... 89
6.1 回線特性設定について................................................................. 89
6.2 音声認識プログラムについて ........................................................... 90
6.2.1 音声認識について ................................................................. 90
6.2.2 文法............................................................................. 90
6.2.3 アプリケーションへの組み込み ..................................................... 91
6.2.4 誤認識時の処理................................................................... 92
6.3 24 時間運用について .................................................................. 93
6.3.1 自動ログインの設定 ............................................................... 93
6.3.2 システムの設定................................................................... 93
6.4 マルチメディアカード種別による機能比較 ............................................... 95
6.5 発信時相手応答検出.................................................................. 100
6.6 回線切断検出........................................................................ 101
6.7 VS-402MC 使用時の使用回線別留意点 ................................................... 102
6.7.1 NTT アナログ回線 ................................................................ 102
6.7.2 PBX 回線 ........................................................................ 102
6.7.3 TA(ターミナルアダプター)アナログポート ........................................ 104
6.7.4 ナンバーディスプレイ回線 ........................................................ 104
Copyright © 1998-2003 NTT DATA CORPORATION
All rights reserved 複製・無断転載厳禁
ii
アプリケーション開発入門ガイド
1 概 要
1.1 VOISTAGE について
VOISTAGE は、発展する CTI 市場に対し、株式会社 NTT データが新たに提案する、音声 FAX 処理に関わる
商品群の戦略ブランドです。VOISTAGE は、4回線(チャネル)音声処理ボード(マルチメディアカード)を中
心とし、開発ツールや運用環境などすべて包括したパッケージを提供しています。動作環境としては
Windows NT4.0 SP6a,Windows2000 SP2 以上で動作します。開発ツールや、各種ユーティリティは VOISTAGE
基本ソフトウェア(以下、基本ソフトウェア)として提供しています。開発ツールとして、専用開発ツール
の StageWriter、VOISTAGE スクリプト言語(VPS)、
Visual Basic、
Visual C++開発のための VOISTAGE ActiveX、
S.100API ライブラリ、Microsoft の Telephony Application Programming Interface(TAPI)に対応した
TAPI テレフォニーライブラリがあり、運用環境には、回線や業務プログラムを監視する StagePlayer、環
境の設定や音声、FAX 情報を簡単に登録できる StagePalette があります。
また、VOISTAGE 製品として以下のようなラインナップをご提供しております。
・マルチメディアカード(VS-402MC、VS-403MC、VS-201MC)
VOISTAGE の核となる4回線(チャネル)音声・FAX 処理ボードです。さまざまな機能を標準で装備し、ア
プリケーション開発者層の拡大を想定した専用開発ツールを添付しています。
VS-402MC はアナログ回線用の PCI バス対応のフルサイズボードです。
VS-403MC は INS ネット64回線用の PCI バス対応のフルサイズボードです。
VS-201MC は INS ネット64回線用の PCI バス対応のハーフサイズボードです。
・ステーションカード(VS-401SC)
UnPBX システム開発キット用の内線ボードです。アナログ4回線の局側インターフェースをもち、PC シ
ステム内で VS-402MC/403MC との接線により、外線/内線の交換機能を実現します。
Copyright © 1998-2003 NTT DATA CORPORATION
All rights reserved 複製・無断転載厳禁
1
アプリケーション開発入門ガイド
・マルチメディアサーバー(VS-3201MS、VS-3202MS)
マルチメディアカードを8枚搭載して、最大32回線のサービスを実現する専用プラットフォームです。
ミラー構成のハードディスクやセンサー付き冷却ファン、PD ドライブなども搭載し、高い信頼性とキメ細
かい使いやすさで、過酷な連続運転にも安心してご使用いただけます。お客様のニーズにお応えする為、
数タイプをご用意しております。
・故障通報装置(VS-101LM、VS-801LM、VS-802LM)
音声応答システムの故障を24時間監視し、障害時には保守者と利用者双方にメッセージを送る装置で
す。既存の音声応答システムに接続するだけで、装置や回線状態を常時監視、信頼性が求められるさまざ
まなサービスを万全にバックアップします。システムの回線数にあわせて1回線用、8回線用の2種類を
ご用意しております。
Copyright © 1998-2003 NTT DATA CORPORATION
All rights reserved 複製・無断転載厳禁
2
アプリケーション開発入門ガイド
1.2 オンラインヘルプについて
基本ソフトウェアのマニュアルについては、すべてインストール後のオンラインヘルプになっています。
そのため使用するプログラムに合わせて該当のヘルプを参照していただくようお願いします。オンライン
ヘルプとして提供しているものは以下の通りです。
表 1.2-1 オンラインヘルプ一覧
項番
プログラム名
ヘルプファイル名
スタートメニュー
1
StageWriter
VSSTGWTR.HLP
StageWriter Help
2
StagePalette
VSTOOLS.HLP
StagePalette Help
3
StagePlayer
VSSUPER.HLP
StagePlayer Help
4
VOISTAGE ActiveX
VSM07001.HLP
ActiveX Help
5
TAPI テレフォニーライブラリ
VSMTAPI2.HLP
TAPI Help
6
S.100 API テレフォニーライブラリ
VSMS100.HLP
S.100 API Help
7
スクリプトコンパイラ
VSSCRIPT.HLP
スクリプト言語仕様書
8
スクリプトコンパイラ
VSCOMP.HLP
スクリプト言語手引書
9
メッセージ登録ツール
VSMSGSET.HLP
なし(ツールより表示)
10
FAX 登録ツール
VSFAXSET.HLP
なし(ツールより表示)
11
音声合成ユーティリティ
(VS-402MC/403MC)
VSTTSDIC.HLP
なし(ツールより表示)
12
Q&A
VSQ&A.HLP
Q&A Help
13
トラブルシュート
VSTROUBL.HLP
トラブルシュート
14
用語集
VS 用語集.HLP
用語集
Copyright © 1998-2003 NTT DATA CORPORATION
All rights reserved 複製・無断転載厳禁
3
アプリケーション開発入門ガイド
2 マルチメディアカード
2.1 標準機能
音声処理
高速 RISC プロセッサを搭載し、64kbpsμ-LawPCM のナチュラルな音質を実現。
さらにデジタル符号化のサンプリング密度を動的に変化させる ADPCM により、高品質な音声が必要な
サービスや大量の音声を取り扱うサービスにも対応できます。
FAX 処理
14.4kbps の高速 FAX モデムを搭載し、4回線(チャネル)の非同期送受信を可能にしました。
FAX 情報システムや資料請求などのシステムが低コストで構築可能です。
ナンバーディスプレイ対応
NTT が提供する発信電話番号表示サービスに対応しています。
着信時に発信者の電話番号情報を取得することにより、関連データも即時に入手でき、受信者システ
ムによる高度な処理とサービス向上に貢献します。
※電話番号情報取得には、発信電話番号表示サービスへの加入が必要です。
ダイヤルイン対応
VS-402MC では NTT が提供する PB 方式でのダイヤルインサービスに対応しています。
VS-403MC では NTT が提供する INS ネット付加サービスのダイヤルインサービスに対応しています。
ダイヤル認識
ダイヤルパルス信号をトーン信号と同レベルで認識します。わずらわしいトーン切り替え操作を不
要にしました。
音声認識
認識させようとする単語をあらかじめテキストにて設定しておくことにより、不特定の人が話す言
葉をリアルタイムに認識させることができます。
同時認識単語数は、100∼500 単語程度、認識率は約 95%を達成しました。
同時認識単語数や認識率は、使用メモリ、回線数や使用環境により変わります。
音声合成
テキストデータを自然な音声に変換し、発声することが可能です。
コード入力された商品名や会員名・住所などの読み上げや、株価・預金残高照会、各種情報の提供な
ど多用途に活用できます。さらに VS-402MC/403MC では新方式の音声合成エンジン採用により一段と自
然な発声を実現しました。
データ通信
33.6kbps の高速データ通信が可能です。
音声応答処理からデータ通信モードに切り替えが可能です。
回線認識
従来、ハードウェアで行っていた設置環境ごとのチューニング作業を、ソフトウェア上の簡単な操
作で自動的に行うことができます。PBX との組み合わせなど、異なる環境の特性にあわせた最適な設
定が行えるだけでなく、極性反転の検出も可能です。
Copyright © 1998-2003 NTT DATA CORPORATION
All rights reserved 複製・無断転載厳禁
4
アプリケーション開発入門ガイド
2.2 実現できる機能について
最大回線数
1 プラットフォーム 32 回線(VS-402MC/403MC 8 枚または VS-201MC 8 枚)が最大です。
ただし業務アプリケーションの内容により適正な回線数は異なり、プラットフォームの処理速度や搭
載メモリ量も異なってきます。16 回線程度で運用されるシステムが多数となっています。
回線環境
<VS-402MC>
推奨する動作環境は、NTT のアナログ公衆回線に直接回線をつないで頂くアナログ直収回線です。
ISDN 環境であれば TA 配下のアナログ回線に接続します。PBX の場合も 2 線式のアナログ回線に接続し
ます。PBX や TA の場合は回線特性設定などで回線の情報を設定する必要があります。
TA の機種によっては正しく発信者番号を取得できない場合があります。
<VS-403MC、VS-201MC>
NTT との契約はポイント to マルチポイント契約です。
マルチポイント接続する場合は、他の機器との相互干渉により不具合が発生する可能性があるので、
極力他の機器との接続はしないで下さい。
VS-403MC との接続は DSU 配下に直接(S/T 点)接続して下さい。
VS-201MC との接続は U 点または S/T 点接続してください。
データベース処理
データベースの処理は Microsoft Jet データベースエンジンを使用しています。ただしスクリプト
言語ではデータベースの一部の機能のみ実現しています。その他の機能を使用する場合は Visual
Basic、 Visual C++などで作成する必要があります。
また ORACLE などのデータベースを使用する場合は、他の開発ツールを用いてプログラムの作成が別途
必要になります。
Copyright © 1998-2003 NTT DATA CORPORATION
All rights reserved 複製・無断転載厳禁
5
アプリケーション開発入門ガイド
2.3 マルチメディアカードの設定
2.3.1 VS-402MC/403MC の設定
VS-402MC/403MC を使用するには使用するマルチメディアカードの枚数を設定する必要があります。
設定を変更する場合は基本ソフトウェア設定ファイル(¥WinNT 配下の VOISTAGE.INI ファイル) をメモ
帳などのエディタで修正して下さい。
表 2.3.2-1 VOISTAGE.INI の詳細内容(VS-402MC/403MC 使用時)
項番
1
セクション名
USERINFO
項目名
記事
NAME
ユーザー名
COMPANY
所属
PATH
基本ソフトウェアのインストール先パス
MonitorPath
モニタープログラムの格納先パス
COMPANYNAME
SAPI対応音声合成エンジン提供会社名
6
MALEVOICENAME
男性音声データ名
7
FEMALEVOICENAME
女性音声データ名
8
ROBOTVOICENAME
ロボット音声データ名
9
PRIMARYLANGUAGE
主言語国番号(17=日本)
10
SUBLANGUAGE
副言語国番号(0固定)
11
PITCHLEVEL
声の高さ(50∼250)
12
SPEEDLEVEL
話者速度(1∼256)
13
DEFAULTTYPE
回線を使用しないプロセスが使用する音声合成エン
2
3
COMMON
4
5
TTS
ジン(VS-402MC/403MCは2固定)
14
VS-401MC
VS-401MC使用枚数(0固定)
15
VS-402MC
VS-402MC/403MC使用枚数
16
PRIORITY
カード優先順(VS-402MC固定)
SizeScript
スクリプトトレースの出力設定の初期値
18
SetScript
スクリプトトレースのファイルサイズの初期値
19
SizeMiddle
ミドルウエアログの出力設定の初期値
20
SetMiddle
ミドルウエアログのファイルサイズの初期値
21
SizeS100
S.100ログの出力設定の初期値
22
SetS100
S.100ログのファイルサイズの初期値
23
SizeFirm
ファームウエアログの出力設定の初期値
24
SetFirm
ファームウエアログのファイルサイズの初期値
25
SizeISDN
ISDNプロトコルの出力設定の初期値
26
SetISDN
ISDNプロトコルのファイルサイズの初期値
27
SizeFAX
FAXプロトコルの出力設定の初期値
28
SetFAX
FAXプロトコルのファイルサイズの初期値
WatchDogTimerOn
ウォッチドッグタイマー使用可否
TimerValue
ウォッチドッグタイマー値
17
29
30
CARD_INFO
Log
WatchDogTimer
※ VS-402MC/403MC では IRQ を 1 つ使用しますが、設定は必要ありません。
(起動時に自動的に空いている IRQ を使用します。)
※ WatchDogTimer はマルチメディアサーバー使用時に有効です。
Copyright © 1998-2003 NTT DATA CORPORATION
All rights reserved 複製・無断転載厳禁
6
アプリケーション開発入門ガイド
2.3.2 その他の設定ファイル
カテゴリーファイル
回線毎のマルチメディアカードの設定を行います。StagePalette のカテゴリー編集ツールで設定し
て下さい。
アプリケーションプロファイル(VS-402MC/403MC,VS-201MC)
回線毎のマルチメディアカードの種類を設定します。各種 INS ネットサービスを設定します。
StagePalette の INS ネットサービス設定で設定して下さい。
回線特性データファイル(VS-402MC/403MC)
コールプログレストーン等の回線特性を設定します。StagePalette の回線特性設定で設定して下さ
い。VS-403MC では基本的に回線特性設定を行う必要はありません。
Copyright © 1998-2003 NTT DATA CORPORATION
All rights reserved 複製・無断転載厳禁
7
アプリケーション開発入門ガイド
3 開発ツール
マルチメディアカードの基本ソフトウェア開発ツールには、以下のものがあります。
また基本ソフトウェアとは別に UnPBX システム開発用として UnPBX システム開発キットを提供しています。
(1)StageWriter
パソコンの画面上で音声・FAX 応答処理のプログラムを簡単に作成できる GUI ベースの開発ツールです。
プロトタイプシステムの開発時や限定された用途のスタンドアロンシステムの開発に向いています。
(2)VOISTAGE スクリプト言語(専用スクリプト)
専用のスクリプト言語で作成したソースをコンパイルし、IL ファイル(中間言語ファイル)を生成する
プログラムです。
サービスフロー中心の IVR システム開発に向いています。
(3)VOISTAGE ActiveX
音声・FAX 処理や音声認識、音声合成の機能を提供する ActiveX です。VOISTAGE ActiveX により Visual
Basic、Visual C++による開発が可能です。
C/S 型システムや Web サーバー、データベースサーバーとの連携システムの開発に向いています。
(4)S.100 API テレフォニー ライブラリ
ECTF(Enterprise Computer Telephony Forum)の S.100 API に準拠したテレフォニーAPI を提供します。
複雑な制御を要するシステムの開発に向いています。
(5)TAPI テレフォニー ライブラリ
Microsoft 社の TAPI に準拠したテレフォニーAPI を提供します。
(6)UnPBX システム開発キット(オプション)
UnPBX システム開発の為に ECTF(Enterprise Computer Telephony Forum)の S.100 API に準拠したテレフ
ォニーAPI を提供します。
Copyright © 1998-2003 NTT DATA CORPORATION
All rights reserved 複製・無断転載厳禁
8
アプリケーション開発入門ガイド
3.1 アプリケーション実行環境について
使用するマルチメディアカードによってアプリケーションの実行環境が異なります。
VS-402MC/403MC の実行環境を図 3.1-2 に示します。
Copyright © 1998-2003 NTT DATA CORPORATION
All rights reserved 複製・無断転載厳禁
9
アプリケーション開発入門ガイド
StageWriter
StagePalette
テストツール
FAX 登録ツール
音声合成
ユーティリティ
メッセージ登録ツール
Visual Basic
Visual C++
IL
VB 作成 AP
VC++作成 AP
スクリプトエンジン
VOISTAGE
VOISTAGE
スクリプト言語
回線特性設定
カテゴリー編集ツール
開発対象
INS ネットサービス
設定
ActiveX
設定ファイル
VOISTAGE
アプリケーション
回線特性
カテゴリー
.INI
プロファイル
データファイル
ファイル
ミドルウェア
TAPI.DLL
S.100(VSMS100.DLL)
マルチメディアカードデバイスサービス
マルチメディアカードログサービス
Windows NT 4.0/Windows2000
マルチメディアカードデバイスドライバ(VMCDRVPC.SYS)
マルチメディアカード(VS-402MC/403MC)
図 3.1-2 アプリケーション実行環境図(VS-402MC/403MC)
Copyright © 1998-2003 NTT DATA CORPORATION
All rights reserved 複製・無断転載厳禁
10
アプリケーション開発入門ガイド
3.2 StageWriter
StageWriter は、直感的にサービスフローが作成可能な GUI 環境をもつ、音声/FAX 応答システムのアプ
リケーション開発ツールです。Visual Basic などのプログラミング経験のない方でも簡単にアプリケーシ
ョンを作成することが可能です。
3.2.1 StageWriter の機能
StageWriter はアイコン化された個々のサービス部品を順々にフィールドにドラッグ&ドロップするだ
けで開発できます。専用スクリプトによるサービス部品の作成もでき、複雑な業務の作成が可能です。
サービスフロー作成後に、コンパイルを行うことで自動的に専用のスクリプトソース(VPS)を生成しま
す。
StageWriter のソフトウェア構成図を図 3.2.1-1 に示します。
StageWriter
作成
スクリプト
サブルーチン
マクロ定義
ソースファイル
ソースファイル
ソースファイル
入力
コンパイル
スクリプトコンパイラ
マージ情報
エラー情報
StagePlayer
IL
解釈実行
スクリプトエンジン
図 3.2.1-1 StageWriter 構成図
Copyright © 1998-2003 NTT DATA CORPORATION
All rights reserved 複製・無断転載厳禁
11
アプリケーション開発入門ガイド
3.2.2 ファイル構成
StageWriter で扱うディレクトリ構成を示します。
(ディレクトリ構成)
¥VOISTAGE¥DATA …………………StagePlayer の動作中に使用する環境情報
¥DB
………………………… StagePlayer のタイマーデータベース
¥EXEC………………………… 基本ソフトの実行プログラム
(StagePlayer 実行時のカレントディレクトリ)
¥PRT ………………………… StageWriter の印刷出力用ファイル
¥RECOGN……………………… 音声認識プログラムディレクトリ
¥SYS ………………………… StageWriter ではこのディレクトリ下にファイルを作成します。
¥システム ID ………… システム ID
¥DATA …………… StageWriter の業務情報が作成されます。
¥DB ……………… StageWriter で処理する DB ファイルを設定します。
¥FAX……………… StageWriter で処理する FAX ファイルを設定します。
¥TEXT …………… StageWriter の FAX 変換用テキストファイルを設定します。
¥VOICE…………… StageWriter で処理する音声ファイルを設定します。
¥業務 ID………… 業務プログラムが作成されます。
¥TEMP………………………… 作業用ディレクトリ
¥TUTORIAL…………………… 開発用サンプルファイルなどが入っています。
¥WRITER……………………… StageWriter の情報ファイルディレクトリ
¥VSLOG ……………………… 各ログ情報が出力されます。
¥ERROR………………… エラーログが出力されます。
¥TRACE………………… トレースーログが出力されます。
¥RECOGN ……………… 音声認識のログが出力されます。
¥ETC…………………… その他のログが出力されます。
¥USER ………………… ユーザーが自由に独自のログを出力するためのディレクトリです。
Copyright © 1998-2003 NTT DATA CORPORATION
All rights reserved 複製・無断転載厳禁
12
アプリケーション開発入門ガイド
3.2.3 StageWriter でのプログラム開発
StageWriter で作成するアプリケーションはシステムと呼ばれる単位で管理され、そのシステム内に複
数の業務を作成する事ができます。
以下に StageWriter 操作手順を示します。
①スタートメニュー等から StageWriter を起動して下さい。
②システム選択画面に作成するシステム名、システム ID、管理者名を入力して下さい。
(すでにシステムを作成されている場合は、一覧より変更するシステムを選択して下さい。)
③業務選択画面で作成する業務名、業務 ID を入力して下さい。
(すでに業務を作成されている場合は、一覧より変更する業務を選択して下さい。)
作成する業務名、業務 ID を入力して下
さい。
Copyright © 1998-2003 NTT DATA CORPORATION
All rights reserved 複製・無断転載厳禁
13
アプリケーション開発入門ガイド
④サービスフロー画面が開いたら、サービス部品アイコンをクリックしサービスフロー画面に
貼り付けて下さい。
使用する部品をクリックし、マ
ウスで移動した後、サービスフ
ロー上で再度クリックして下
さい。
⑤必要に応じてサービス部品プロパティを設定して下さい。
例:「音声を再生する」部品
音声ファイルを選択し、音声ファ
イルに含まれるメッセージから
再生するものを選択します。
「オプション」、「後処理」で音
量や回線が切断された時などの
設定ができます。
Copyright © 1998-2003 NTT DATA CORPORATION
All rights reserved 複製・無断転載厳禁
14
アプリケーション開発入門ガイド
⑥サービスフローが完成したら、コンパイルを実行します。
コンパイルの実行
⑦コンパイルが正常に終了すれば以下のようなメッセージが表示されます。
エラーが発生した場合はエラーメッセージが表示されますので、その内容に応じてサービスフローや
各部品のプロパティなどを修正して下さい。
詳細な使用方法は、StageWriter Help を参照して下さい。
サンプルプログラムは業務選択のテンプレートタグにありますので参照して下さい。
Copyright © 1998-2003 NTT DATA CORPORATION
All rights reserved 複製・無断転載厳禁
15
アプリケーション開発入門ガイド
3.3 VOISTAGE スクリプト言語
VOISTAGE スクリプト言語を使用してアプリケーションを作成することができます。StageWriter でのア
プリケーション開発に比べ、効率的な開発が可能となります。
3.3.1 スクリプトソース作成の概要
スクリプトソースは、拡張子(.VPS)のテキストファイルで作成して下さい。
サブルーチン(拡張子.YPS)、マクロ定義(拡張子.SPS)を作成し、スクリプトから呼び出すことができます。
スクリプトコンパイラは、スクリプトソースとサブルーチンソースをマージしコンパイルソースファイル
(.MPS)を作成後、IL ファイルを出力します。
コンパイル時の構文エラーは、コンパイルエラーファイル(ERRFILE.TXT)に出力されます。
サブルーチンソース
スクリプトソース
YPS
VPS
マクロ定義ソース
SPS
コンパイルソース
MPS
エラー情報
IL ファイル
IL
図 3.3.1-1 スクリプトソース作成の概要
詳細な使用方法は、スクリプト言語仕様書、スクリプト言語手引書を参照して下さい。
Copyright © 1998-2003 NTT DATA CORPORATION
All rights reserved 複製・無断転載厳禁
16
アプリケーション開発入門ガイド
【ファイル概要】
・スクリプトソースファイル(.VPS)
スクリプトソースのメインモジュールが入っているソースファイルです。
;*****************************************************************************
;プログラム名
:留守番電話
;ファイル名
:MAIN.VPS
;実行ファイル名 :MAIN.IL
;機能概要
:着信、音声再生、音声録音を繰り返す
;注意点
:SUB0001.YPS MAC0001.SPS を使用
;*****************************************************************************
DEFVAR
カウンタ[10]
;カウンタ変数定義
ダイヤルイン番号[30]
;ダイヤルイン番号変数定義
ENDVAR
DEFPROC MAIN
MOVE(カウンタ,0)
;カウンタ初期化
WHILE(カウンタ < 100)
WAITRING(0,ダイヤルイン番号)
;着信待ち
CALL SUB0001
;サブルーチン呼び出し
BEEP(1,0)
;ビープを鳴らす
VOICERECORD("RECORD.VSX",カウンタ,10,"?")
;音声録音
MACROCALL MAC0001
;マクロ呼び出し
ONHOOK()
;回線切断
ENDWHILE
QUIT
;終了
ENDPROC
スクリプトソースファイルの例
Copyright © 1998-2003 NTT DATA CORPORATION
All rights reserved 複製・無断転載厳禁
17
アプリケーション開発入門ガイド
・サブルーチンソースファイル(.YPS)
スクリプトソースのサブルーチンモジュールを記述したソースファイルです。
言語仕様は、スクリプトソースファイルと同様に記述します。
;*****************************************************************************
;プログラム名
:留守番電話
;ファイル名
:SUB0001.YPS
;機能概要
:音声再生
;*****************************************************************************
DEFPROC SUB0001
VOICEPLAY("PLAY.VSX","1",0)
;メッセージの再生を行う
RETURN
ENDPROC
・マクロ定義ソースファイル(.SPS)
スクリプトソースまたは、サブルーチンソースから、MACROCALL 命令指定によりマクロソース展
開するソースファイルです。
ADD(カウンタ,1,カウンタ)
;カウンタインクリメント
・IL ファイル(.IL)
スクリプトコンパイラが出力する実行命令を中間言語として処理したファイルです。
スクリプトエンジンがこのファイルを解釈実行することによりスクリプト命令の実行を行いま
す。
・コンパイルエラーファイル(ERRFILE.TXT)
スクリプトコンパイラの構文チェックの結果、構文エラーまたは警告エラーが発見された場合、
その内容を結果ファイルとして出力します。
・コンパイルソースファイル(.MPS)
スクリプトコンパイラがプリコンパイルして得られたソースファイルです。
Copyright © 1998-2003 NTT DATA CORPORATION
All rights reserved 複製・無断転載厳禁
18
アプリケーション開発入門ガイド
3.3.2 スクリプトソースのコンパイル
コマンドプロンプトから VSCOMP コマンドでスクリプトコンパイラを起動します。
コマンド指定方法
(c:¥に VOISTAGE をインストールした場合)
c:¥VOISTAGE¥EXEC¥VSCOMP [/P /OK /D] VPS ファイル名 [YPS ファイル名...]
[ ]内は省略可
・コンパイラオプションの内容
/P
IL を作成します
/OK
構文チェックのみ行います(省略時は/P を仮定します)
/D
未定義変数をエラーにします (省略時は、警告エラー)
VPS ファイル名
[PATH¥]VPS ソース
(.VPS)
YPS ファイル名
[PATH¥]サブルーチンソース
(.YPS)
・マクロ定義ソースのディレクトリ指定
マクロ定義ソースは、コマンドのカレントディレクトリに置くかまたは環境変数でディレクト
リを指定します。
環境変数(VOISTAGE_SPSPATH)
指定例
SET VOISTAGE_SPSPATH = C:¥Voistage¥parts
・IL の作成位置
IL ファイルは、コマンドで指定された VPS ファイルの同じディレクトリに拡張子(.IL)で作
成されます。
・VSCOMP コマンドの戻り値
VSCOMP コマンドの戻り値は、Return Code[0]という形で画面出力されます。戻り値は、以下の
通りです。
0…構文エラーなし、/P オプションの場合 IL が作成されます。
4…警告エラーあり、/P オプションの場合 IL が作成されます。
コマンド発行のカレントディレクトリに Errfile.txt ファイルに構文エラー内容が出
力されます。
-1…構文エラーあり、IL は作成されません。
コマンド発行のカレントディレクトリに Errfile.txt ファイルに構文エラー内容が出
力されます。
Copyright © 1998-2003 NTT DATA CORPORATION
All rights reserved 複製・無断転載厳禁
19
アプリケーション開発入門ガイド
3.3.3 VOISTAGE スクリプト言語命令一覧
○:サポート ×:使用できない
分類
命令
機能
402MC
403MC
201MC
タッチトーンバッファのチェック
○
○
○
CHCONNECT
チャネル間接続
○
○
×
CHUNHOLD
チャネル保留解除
○
○
×
CHHOLD
チャネル保留
○
○
×
CLEARDTMF
タッチトーンバッファのクリア
○
○
○
CNGCHECK
FAX 受信か電話かをチェック
○
○
×
DIAL
ダイヤルコールする
○
○
○
GETCALLID
発信者番号の取得
○
○
○
GETDTMF
タッチトーンの取得
○
○
○
GETLINENO
使用回線番号の取得
○
○
○
GETLINESTATUS
回線接続状態取得
○
○
○
GETSETUPINFO
着信情報取得
○
○
○
FLASH
フッキング
○
○
×
LOADPRO
プロファイルの一括設定
○
○
○
NETSRVCMD
サービス制御コマンド発行
×
○
×
ONHOOK
回線切断
○
○
○
OUTDIAL
ダイヤル信号送出
○
○
×
OUTDTMF
トーンの出力
○
○
○
PARAMGET
パラメータ値の取得
○
○
○
PARAMSET
パラメータ値の変更
○
○
○
PARTYBEGIN
三者通話開始
○
○
×
PARTYCHANGE
三者通話切り替え
×
○
×
PARTYFINISH
三者通話終了
○
○
×
PARTYPREPARE
第三者呼出し
○
○
×
SENSE
各種情報取得
○
○
○
TRANSFER
電話転送
○
○
○
UUIGET
ユーザー間情報取得
×
○
○
UUISET
ユーザー間情報設定
×
○
○
WAITCONNECT
接続待ち
○
○
×
WAITRING
着信待ち
○
○
○
ビープ音の発生
○
○
○
EXBEEP
秒数、周波数指定でのビープ音の発生
○
○
○
FILESPEECH
テキストファイル中の文字を音声合成
○
○
○
FILETOWAV
テキストファイル中の文字を音声合成し ○
○
○
○
○
回線処理 CHECKDTMF
音声処理 BEEP
備考
WAVE 出力
RECOGNEND
音声認識終了
Copyright © 1998-2003 NTT DATA CORPORATION
All rights reserved 複製・無断転載厳禁
○
20
アプリケーション開発入門ガイド
分類
命令
機能
402MC
403MC
201MC
RECOGNINIT
音声認識初期化
○
○
○
RECOGNNOISE
ノイズ測定
○
○
○
RECOGNVOICE
音声認識
○
○
○
TEXTSPEECH
テキスト文字を音声合成
○
○
○
TEXTTOWAV
テキスト文字を音声合成し、WAVE 出力
○
○
○
TTSEND
音声合成終了処理
○
○
○
TTSINIT
音声合成初期処理
○
○
○
TXVOICECLOSE
プロンプトファイルのクローズ
○
○
○
TXVOICELOAD
プロンプトファイルのオープン
○
○
○
TXVOICEPLAY
プロンプトファイルの再生
○
○
○
VOICECHECK
音声メッセージの属性取得
○
○
○
VOICECHECKBG
非同期音声再生動作確認
○
○
×
VOICECOPY
音声ファイルのコピー
○
○
○
VOICEDELETE
音声ファイルの削除
○
○
○
VOICEPACK
音声ファイルのガベ−ジ
○
○
○
VOICEPLAY
音声再生
○
○
○
VOICEPLAYBG
非同期音声再生
○
○
×
VOICESTOPBG
非同期音声再生停止
○
○
×
VOICERECORD
音声録音
○
○
○
VSXCHECK
音声メッセージ数取得
○
○
○
VSXTOWAV
音声ファイルを WAVE ファイルに変換
○
○
○
WAVTOVSX
WAVE ファイルを音声ファイルに変換
○
○
○
FAX のページ数取得
○
○
○
FAXHEADCUT
FAX のヘッドカットサイズ設定
○
○
×
FAXHEADSET
FAX のヘッドデータ設定
○
○
×
FAXIMCNV
FAX データインチ・ミリ属性変更
○
○
○
FAXREC
FAX の受信
○
○
×
FAXSEND
FAX の送信
○
○
×
FAXTCGET
TSI 又は CSI を取得する
○
○
×
FAXTCSET
TSI 又は CSI を設定する
○
○
×
FAXTOTIF
FAX ファイルを TIFF-F ファイルに変換
○
○
○
TEXTTOFAX
テキストファイルを FAX ファイル変換
○
○
○
TIFTOFAX
TIFF-F ファイルを FAX ファイルに変換
○
○
○
TEXTTOIMAGE
テキストファイルを BMP ファイルに変換 ○
○
○
OVERLAYIMAGE
BMP ファイルを重ねあわせて BMP ファイル ○
○
○
FAX 処理 FAXCHECK
備考
出力
データ通 DATAREC
データ受信
○
○
×
信処理
DATASEND
データ送信
○
○
×
FILEREC
ファイル受信
○
○
×
Copyright © 1998-2003 NTT DATA CORPORATION
All rights reserved 複製・無断転載厳禁
21
アプリケーション開発入門ガイド
分類
命令
機能
402MC
403MC
201MC
FILESEND
ファイル送信
○
○
×
データベ ADDREC
新規レコード作成
○
○
○
ース
CLOSETBL
DB・テーブルのクローズ
○
○
○
CREATEDB
データベースの作成
○
○
○
CREATETBL
テーブルの作成
○
○
○
DBPATH
データベースディレクトリの変更
○
○
○
DELDB
データベース削除
○
○
○
DELREC
カレントレコード削除
○
○
○
DELTBL
テーブル削除
○
○
○
EDIT
レコード更新開始
○
○
○
EXECSQL
SQL 文発行
○
○
○
GETHENFIELD
フィールドの値を取得
○
○
○
MAXREC
レコード数取得
○
○
○
OPENTBL
DB・テーブルオープン
○
○
○
READREC
次レコード読み込み
○
○
○
SELECT
レコード検索、ソート
○
○
○
SELECTCLEAR
検索条件クリア
○
○
○
SELECTSET
検索条件設定
○
○
○
SETHENFIELD
フィールドに値を設定
○
○
○
SORTCLEAR
ソート順設定クリア
○
○
○
SORTSET
ソート順設定
○
○
○
TBLCLEAR
全レコードの削除
○
○
○
TEXTIN
CSV 形式でレコード追加
○
○
○
TEXTOUT
テーブル内容 CSV 形式出力
○
○
○
UPDATE
レコード更新終了
○
○
○
UPDATECANCEL
レコード更新キャンセル
○
○
○
ファイル COPYFILE
ファイルコピー
○
○
○
操作
CSV
CSV 形式変換
○
○
○
DELDIR
ディレクトリ削除
○
○
○
DELFILE
ファイル削除
○
○
○
FCLOSE
ファイルクローズ
○
○
○
FCREATE
テキストファイル作成
○
○
○
FGETS
テキストファイル読み込み
○
○
○
FILEFINDEND
ファイル検索終了
○
○
○
FILEFINDFIRST
ファイル検索開始
○
○
○
FILEFINDNEXT
次ファイル検索
○
○
○
FILESIZE
ファイルサイズ取得
○
○
○
FOPEN
テキストファイルオープン
○
○
○
FPUTS
テキストファイル書き込み
○
○
○
Copyright © 1998-2003 NTT DATA CORPORATION
All rights reserved 複製・無断転載厳禁
22
備考
アプリケーション開発入門ガイド
分類
命令
機能
402MC
403MC
201MC
FSEEK
テキストファイルカレント位置変更
○
○
○
GETCSV
CSV 形式から値取得
○
○
○
MAKEDIR
指定ディレクトリ作成
○
○
○
RENAMEFILE
ファイル名の変更
○
○
○
SEARCHFILE
ファイルの存在チェック
○
○
○
CALL
関数呼出し
○
○
○
GOTO
ジャンプ
○
○
○
IF
判定
○
○
○
ELSE
判定(否の場合の処理)
○
○
○
ENDIF
判定終了
○
○
○
QUIT
プロセス終了
○
○
○
RETURN
関数復帰
○
○
○
SWITCH
複数分岐
○
○
○
CASE
複数分岐分岐先
○
○
○
DEFAULT
複数分岐分岐先(条件以外)
○
○
○
ENDSWITCH
複数分岐終了
○
○
○
WHILE
繰り返し
○
○
○
BREAKWHILE
繰り返し抜け出し
○
○
○
ENDWHILE
繰り返し終了
○
○
○
DO
処理ブロック
○
○
○
BREAK
処理ブロック抜け出し
○
○
○
ENDDO
処理ブロック終了
○
○
○
MACROCALL
マクロ処理呼出し
○
○
○
ADD
加算
○
○
○
DIV
割り算
○
○
○
INT
小数点以下切り捨て
○
○
○
MOD
割り算の余り取得
○
○
○
MUL
掛け算
○
○
○
NCHECK
数値チェック
○
○
○
NFORM
数値文字列正規化
○
○
○
SQR
平方根
○
○
○
SUB
減算
○
○
○
文字列操 CHR
文字コードを文字に変換
○
○
○
作
FORMATL
文字列操作(左詰め)
○
○
○
FORMATR
文字列操作(右詰め)
○
○
○
HANTOZEN
半角文字を全角文字に変換
○
○
○
INSTR
文字列検索
○
○
○
JOIN
文字列連結
○
○
○
LEFT
文字列左から抽出
○
○
○
制御
演算
Copyright © 1998-2003 NTT DATA CORPORATION
All rights reserved 複製・無断転載厳禁
23
備考
アプリケーション開発入門ガイド
分類
命令
機能
402MC
403MC
201MC
LEN
文字列の長さ取得
○
○
○
RIGHT
文字列右から抽出
○
○
○
SUBSTR
文字列から文字列の抽出
○
○
○
変数のクリア
○
○
○
変数の代入
○
○
○
現在から指定日数後の日付取得
○
○
○
AFTERDATE2
指定日付から指定日数後の日付取得
○
○
○
AFTERTIME
現在から指定時間後の時間取得
○
○
○
AFTERTIME2
指定日時から指定時間後の時間取得
○
○
○
CHECKDATE
日付の形式チェック、曜日計算
○
○
○
CHECKTIME
時間の形式チェック
○
○
○
DIFFDATE
2つの日付の日数差
○
○
○
GETDATE
現在日付、曜日取得
○
○
○
GETTIME
現在時間取得
○
○
○
SETDATE
現在日付設定
○
○
○
SETTIME
現在時間設定
○
○
○
ユーティ DEVICECHECK
ドライブ状態チェック
○
○
○
リティ
DISKFREE
ドライブの空き領域取得
○
○
○
GETAPPPARAM
プログラムの起動パラメータ取得
○
○
○
GETDIRSIZE
ディレクトリ下の使用容量取得
○
○
○
IL サブルーチン呼出し
○
○
○
DLLCALL
DLL コール
○
○
○
EXECDLL
ロードした DLL を呼び出す
○
○
○
FREEDLL
ロードした DLL をアンロードする
○
○
○
LOADIL
IL を再ロードする
○
○
○
LOADDLL
DLL モジュールをローディング
○
○
○
OPENIL
IL ファイルをオープンする
○
○
○
SYSCALL
外部プログラム起動
○
○
○
DISPLAY
画面出力
○
○
○
GETILPARAM
IL サブルーチンパラメータ取得
○
○
○
LOGOFF
ログ出力 OFF
○
○
○
LOGON
ログ出力 ON
○
○
○
SETILPARAM
IL サブルーチンパラメータ設定
○
○
○
CLOSEIL
IL ファイルをクローズする
○
○
○
REPORT
StagePlayer(スーパーバイザー)に通知 ○
○
○
REQUEST
StagePlayer(スーパーバイザー)に要求 ○
○
○
SLEEP
指定秒数休止
○
○
変数操作 CLEAR
MOVE
日付操作 AFTERDATE
外部呼出 CALLIL
その他
Copyright © 1998-2003 NTT DATA CORPORATION
All rights reserved 複製・無断転載厳禁
○
24
備考
アプリケーション開発入門ガイド
3.4 VOISTAGE ActiveX
VOISTAGE ActiveX は Microsoft Visual Basic 6.0、Microsoft Visual C++ 6.0 を使って簡単に音声・
FAX 応答プログラムを作成できる ActiveX コンポーネントです。電話の発着信、音声再生・録音、FAX 送信・
受信、音声合成、音声認識など VOISTAGE マルチメディアカードの機能をカスタムコントロールで提供しま
す。(Visual Basic 6.0、Visual C++は ServicePack4 以上が必要です。)
VOISTAGE ActiveX には 2 種類のコントロールモジュールがあります。
・VSM07001.OCX
同期型テレフォニーコントロールモジュール
VsmTelCom コントロールは同期型で簡単に音声・FAX 応答プログラムを作成
できる ActiveX コンポーネントです。VOISTAGE スクリプトの命令を実行するの
と同じような感覚で、Visual Basic、Visual C++上での開発が可能です。
・VSACTX21.OCX
同期/非同期型テレフォニーコントロールモジュール
VSACTX21 コントロールモジュールは以下の 2 つのコントロールで構成されて
います。
・VsTelComSE コントロール(同期/非同期型テレフォニーコントロール)
VsTelComSE コントロールは同期あるいは非同期で実行する音声・FAX 応答プ
ログラムを作成できる ActiveX コンポーネントです。着信信号の検出や、回線
切断等をイベントとして扱うことで柔軟にアプリケーションを開発すること
ができます。また、従来の VOISTAGE スクリプトのようにシーケンシャルに処
理を同期実行することも可能です。
VsTelComSE コントロールは 5 つのオブジェクトで構成されています。
・VsTelComSE
メインオブジェクト
・VsFax
FAX オブジェクト
・VsData
データ通信オブジェクト
・VsVoice
音声オブジェクト
・VsStation
内線オブジェクト
・VsUtility コントロール(同期/非同期型ユーティリティコントロール)
VsUtility コントロールは、FAX ファイルの TIFF ファイルへの変換、音声
メッセージの WAVE ファイルへの変換など、音声・FAX 応答処理に必要なユー
ティリティ機能をサポートした ActiveX コンポーネントです。
Copyright © 1998-2003 NTT DATA CORPORATION
All rights reserved 複製・無断転載厳禁
25
アプリケーション開発入門ガイド
3.4.1 VOISTAGE ActiveX コンポーネント(VSM07001 コントロールモジュール)の登録
VOISTAGE ActiveX を使用する際には、コンポーネントの登録を行う必要があります。
Visual Basic で使用する場合の登録方法は以下のとおりです。
① Visual Basic を起動します。
② プロジェクトを新規作成します。
③ メニューより、[プロジェクト(P)]−[コンポーネント(O)]を選択して下さい。
④ コントロールより、[VSM07001 ActiveX Control module]にチェックをして下さい。
[VSM07001 ActiveX Control module]が表示されていない場合は、[参照(B)]ボタンを押下し以下
の VOISTAGE ActiveX コントロールの追加を行って下さい。
(C:¥ に VOISTAGE をインストールした場合)
C:¥VOISTAGE¥EXEC¥VSM07001.ocx
Copyright © 1998-2003 NTT DATA CORPORATION
All rights reserved 複製・無断転載厳禁
26
アプリケーション開発入門ガイド
3.4.2 VOISTAGE ActiveX(VSM07001)のコーディング
VOISTAGE ActiveX(VSM07001)でのコーディング例を以下に示します。
'*****************************************************************************
'プログラム名
:留守番電話
'プロジェクト名
:MAIN.VBP
'ファイル名
:MAIN.FORM
'機能概要
:着信、音声再生、音声録音を繰り返す
'*****************************************************************************
Private Sub Form_Load()
'VOISTAGE ActiveX コントロール初期処理
VsmTelCom1.LINKPLAYER ("0 1 00000000 0")
'
I I I
I
'
I I I
+- スーパーバイザ無しの指定は 0 固定
'
I I +--------- プロセス管理番号:同時実行するプログラムで
'
I I
'
I +------------ 回線1:1枚目のボードの1番目の回線を使用
'
I
'
+-------------- 0 固定
重複しないように8桁の値を設定
回線を使用しない場合は0を指定
End Sub
Private Sub Command1_Click()
Dim i As Integer
'カウンター
For i = 0 To 99
VsmTelCom1.WAITRING 0
'着信待ち
VsmTelCom1.VOICEPLAY "PLAY.VSX", "1", 0
'音声再生
VsmTelCom1.Beep 1, 0
'ビープを鳴らす
VsmTelCom1.VOICERECORD "RECORD.VSX", i, 10, "?"
'音声録音
VsmTelCom1.ONHOOK
'回線切断
Next
End Sub
Private Sub VsmTelCom1_SUPEREND()
End
'終了
End Sub
VOISTAGE ActiveX(VSM07001)のコーディング例
Copyright © 1998-2003 NTT DATA CORPORATION
All rights reserved 複製・無断転載厳禁
27
アプリケーション開発入門ガイド
・初期化処理
初期化処理を行うことによって VOISTAGE ActiveX の使用が可能となります。この処理を行わない
場合には、すべての VOISTAGE ActiveX 命令を使用することができません。また、StagePlayer での
プロセス管理を行う場合には初期化命令のパラメータとしてプログラム引数を指定する必要があり
ます。
VsmTelCom1.LinkPlayer (Command$)
・終了処理イベント
StagePlayer からの終了要求を受け取った場合に発生するイベントで、このイベントを受け取った
場合は、必要な終了処理を行った後、必ず、プロセスを終了しなければなりません。このイベント内
では VOISTAGE ActiveX の命令を使用できません。
注意点
・VOISTAGE ActiveX は、リアルタイム処理を行うためのコントロールです。電話処理などを実行する場
合、実行した命令が終了するまで次の処理に移れません。よって画面表示や入力などイベント制御の
コントロール処理を行う場合は注意が必要です。
・VOISTAGE ActiveX では、一つのプロセスで一つの回線しか使用できません。
詳細な使用方法は、ActiveX Help を参照して下さい。
サンプルソースは、¥VOISTAGE¥TUTORIAL¥ACTIVEX に入っています。
Copyright © 1998-2003 NTT DATA CORPORATION
All rights reserved 複製・無断転載厳禁
28
アプリケーション開発入門ガイド
3.4.3 VOISTAGE ActiveX(VSM07001)メソッド一覧
○:サポート ×:使用できない
分類
メソッド
機能
402MC
403MC
201MC
タッチトーンバッファのチェック
○
○
○
CHCONNECT
チャネル間接続
○
○
×
CHUNHOLD
チャネル保留解除
○
○
×
CHHOLD
チャネル保留
○
○
×
CLEARDTMF
タッチトーンバッファのクリア
○
○
○
CNGCHECK
FAX 受信か電話かをチェック
○
○
×
DIAL
ダイヤルコールする
○
○
○
GETCALLID
発信者番号の取得
○
○
○
GETDTMF
タッチトーンの取得
○
○
○
GETLINENO
使用回線番号の取得
○
○
○
GETLINESTATUS
回線接続状態取得
○
○
○
GETSETUPINFO
着信情報取得
○
○
○
FLASH
フッキング
○
○
×
LOADPRO
プロファイルの一括設定
○
○
○
NETSRVCMD
サービス制御コマンド発行
×
○
×
ONHOOK
回線切断
○
○
○
OUTDIAL
ダイヤル信号送出
○
○
×
OUTDTMF
トーンの出力
○
○
○
PARAMGET
パラメータ値の取得
○
○
○
PARAMSET
パラメータ値の変更
○
○
○
PARTYBEGIN
三者通話開始
○
○
×
PARTYCHANGE
三者通話切り替え
×
○
×
PARTYFINISH
三者通話終了
○
○
×
PARTYPREPARE
第三者呼出し
○
○
×
SENSE
各種情報取得
○
○
○
TRANSFER
電話転送
○
○
○
UUIGET
ユーザー間情報取得
×
○
○
UUISET
ユーザー間情報設定
×
○
○
WAITCONNECT
接続待ち
○
○
×
WAITRING
着信待ち
○
○
○
ビープ音の発生
○
○
○
EXBEEP
秒数、周波数指定でのビープ音の発生
○
○
○
FILESPEECH
テキストファイル中の文字を音声合成
○
○
○
FILETOWAV
テキストファイル中の文字を音声合成し ○
○
○
○
○
回線処理 CHECKDTMF
音声処理 BEEP
備考
WAVE 出力
RECOGNEND
音声認識終了
Copyright © 1998-2003 NTT DATA CORPORATION
All rights reserved 複製・無断転載厳禁
○
29
アプリケーション開発入門ガイド
分類
メソッド
機能
402MC
403MC
201MC
RECOGNINIT
音声認識初期化
○
○
○
RECOGNNOISE
ノイズ測定
○
○
○
RECOGNVOICE
音声認識
○
○
○
TEXTSPEECH
テキスト文字を音声合成
○
○
○
TEXTTOWAV
テキスト文字を音声合成し、WAVE 出力
○
○
○
TTSEND
音声合成終了処理
○
○
○
TTSINIT
音声合成初期処理
○
○
○
TXVOICECLOSE
プロンプトファイルのクローズ
○
○
○
TXVOICELOAD
プロンプトファイルのオープン
○
○
○
TXVOICEPLAY
プロンプトファイルの再生
○
○
○
VOICECHECK
音声メッセージの属性取得
○
○
○
VOICECHECKBG
非同期音声再生動作確認
○
○
×
VOICECOPY
音声ファイルのコピー
○
○
○
VOICEDELETE
音声ファイルの削除
○
○
○
VOICEPACK
音声ファイルのガベ−ジ
○
○
○
VOICEPLAY
音声再生
○
○
○
VOICEPLAYBG
非同期音声再生
○
○
×
VOICESTOPBG
非同期音声再生停止
○
○
×
VOICERECORD
音声録音
○
○
○
VSXCHECK
音声メッセージ数取得
○
○
○
VSXTOWAV
音声ファイルを WAVE ファイルに変換
○
○
○
WAVTOVSX
WAVE ファイルを音声ファイルに変換
○
○
○
FAX のページ数取得
○
○
○
FAXPCHECK
FAX の属性取得
○
○
○
FAXHEADCUT
FAX のヘッドカットサイズ設定
○
○
×
FAXHEADSET
FAX のヘッドデータ設定
○
○
×
FAXIMCNV
FAX データインチ・ミリ属性変更
○
○
○
FAXREC
FAX の受信
○
○
×
FAXSEND
FAX の送信
○
○
×
FAXTCGET
TSI 又は CSI を取得する
○
○
×
FAXTCSET
TSI 又は CSI を設定する
○
○
×
FAXTOTIF
FAX ファイルを TIFF-F ファイルに変換
○
○
○
TEXTTOFAX
テキストファイルを FAX ファイル変換
○
○
○
TIFTOFAX
TIFF-F ファイルを FAX ファイルに変換
○
○
○
TEXTTOIMAGE
テキストファイルを BMP ファイルに変換 ○
○
○
OVERLAYIMAGE
BMP ファイルを重ねあわせて BMP ファイル ○
○
○
FAX 処理 FAXCHECK
備考
出力
データ通 DATAREC
データ受信
○
○
×
信処理
データ送信
○
○
×
DATASEND
Copyright © 1998-2003 NTT DATA CORPORATION
All rights reserved 複製・無断転載厳禁
30
アプリケーション開発入門ガイド
分類
メソッド
機能
402MC
403MC
201MC
FILEREC
ファイル受信
○
○
×
FILESEND
ファイル送信
○
○
×
DLL コール
○
○
○
LOADDLL
DLL モジュールをローディング
○
○
○
EXECDLL
ロードした DLL を呼び出す
○
○
○
FREEDLL
ロードした DLL をアンロードする
○
○
○
LOGOFF
ログ出力 OFF
○
○
○
LOGON
ログ出力 ON
○
○
○
REPORT
StagePlayer(スーパーバイザー)に通知 ○
○
○
REQUEST
StagePlayer(スーパーバイザー)に要求 ○
○
○
外部呼出 DLLCALL
その他
備考
3.4.4 VOISTAGE ActiveX コンポーネント(VSACTX21 コントロールモジュール)の登録
VOISTAGE ActiveX を使用する際には、コンポーネントの登録を行う必要があります。
Visual Basic で使用する場合の登録方法は以下のとおりです。
① Visual Basic を起動します。
② プロジェクトを新規作成します。
③ メニューより、[プロジェクト(P)]−[コンポーネント(O)]を選択してください。
④ コントロールより、[VSACTX21 ActiveX コントロール モジュール]にチェックをして下さい。
[VSACTX21]が表示されていない場合は、[参照(B)]ボタンを押下し以下の VOISTAGE ActiveX コン
トロールの追加を行ってください。
(C:¥に VOISTAGE をインストールした場合)
C:¥VOISTAGE¥EXEC¥VSACTX21.ocx
Copyright © 1998-2003 NTT DATA CORPORATION
All rights reserved 複製・無断転載厳禁
31
アプリケーション開発入門ガイド
3.4.5 VOISTAGE ActiveX(VSACTX21)のコーディング例
VOISTAGE ActiveX(VSACTX21)でのコーディング例を以下に示します。
'*****************************************************************************
'プログラム名
:留守番電話
'プロジェクト名
:MAIN.VBP
'ファイル名
:MAIN.FORM
'機能概要
:着信、音声再生、音声録音を繰り返す
'*****************************************************************************
Option Explicit
Private Const UserID As Long = 1
'ユーザー指定の処理 ID(0∼9999)
Private VoiceObj As VsVoice
'Voice オブジェクト
Private Sub Form_Load()
VsTelComSE1.LinkPlayer UserID, 1, Command$ 'VOISTAGE ActiveX コントロール初期処理
Set VoiceObj = VsTelComSE1.Voice
'Voice オブジェクトへの参照を変数に代入
End Sub
Private Sub Command1_Click()
Dim i As Integer
'カウンター
For i = 0 To 99
VsTelComSE1.AnswerCall UserID
'着信待ち
VoiceObj.VoicePlay UserID,"C:¥VOISTAGE¥SAMPLE.VSX", "1", 1
'音声再生
VsTelComSE1.Beep UserID, 1, 0
'ビープ音を鳴らす
VoiceObj.VoiceRecord UserID,"C:¥VOISTAGE¥RECORD.VSX", i, 30, "?" '音声録音
VsTelComSE1.OnHook UserID
'回線切断
Next
End
'終了
End Sub
VOISTAGE ActiveX(VSACTX21)のコーディング例
Copyright © 1998-2003 NTT DATA CORPORATION
All rights reserved 複製・無断転載厳禁
32
アプリケーション開発入門ガイド
・VsTelComSE コントロールの初期化
VsTelComSE コントロールのメソッド実行、プロパティ設定、
イベントプロシージャの実行を行う前、
最初に LinkPlayer メソッドを実行し、コントロールを使用可能にする必要があります。
・終了処理イベント
StagePlayer からの終了要求を受け取った場合に発生するイベントで、このイベントを受け取った
場合は、必要な終了処理を行った後、必ず、プロセスを終了しなければなりません。このイベント内
では VOISTAGE ActiveX の命令を使用できません。
注意点
・VOISTAGE ActiveX は、リアルタイム処理を行うためのコントロールです。電話処理などを実行する場
合、実行した命令が終了するまで次の処理に移れません。よって画面表示や入力などイベント制御の
コントロール処理を行う場合は注意が必要です。
・VOISTAGE ActiveX では、一つのプロセスで一つの回線しか使用できません。
詳細な使用方法は、ActiveX Help を参照して下さい。
サンプルソースは、¥VOISTAGE¥TUTORIAL¥ACTIVEX に入っています。
・VsmTelCom コントロールと VsTelComSE、VsUtility コントロールを同一プロセスで混在して使用する
ことはできません。
Copyright © 1998-2003 NTT DATA CORPORATION
All rights reserved 複製・無断転載厳禁
33
アプリケーション開発入門ガイド
3.4.6 VOISTAGE ActiveX(VSACTX21)メソッド一覧
○:サポート ×:使用できない
分類
メソッド
機能
402MC
403MC
201MC
着信応答
○
○
○
CallWaiting
コールウェイティング
×
○
×
CheckDtmf
タッチトーンバッファのチェック
○
○
○
ChConnect
チャネル間接続
○
○
×
ChUnHold
チャネル保留解除
○
○
×
ChHold
チャネル保留
○
○
×
ClearDtmf
タッチトーンバッファのクリア
○
○
○
Dial
ダイヤルコールする
○
○
○
DialSc
内線呼出し
○
○
○
GetDtmf
タッチトーンの取得
○
○
○
Flash
フッキング
○
○
×
GetSetupInfo
着信情報取得
○
○
○
GetFreeLineListSc 空回線取得
○
○
○
GetParameterSc
内線パラメータを取得
○
○
○
HoldSc
内線保留
○
○
○
UnHoldSc
内線保留解除
○
○
○
LinkPlayer
コントロール初期処理
○
○
○
UtilityInit
VsUtility コントロール初期処理
○
○
○
LoadProfile
プロファイルの一括設定
○
○
○
UtilityLoadProfile パラメータ一括設定
○
○
○
MethodCancel
指定された実行中の処理を中断
○
○
○
NetSrvCmd
サービス制御コマンド発行
×
○
×
OnHook
回線切断
○
○
○
OnHookSc
内線を切断状態にする
○
○
○
OutboundCallSc
内線からの外線発信
○
○
○
OutDial
ダイヤル信号送出
○
○
×
OutDtmf
トーンの出力
○
○
○
PostMessageSc
メッセージ送信
○
○
○
GetParameter
パラメータ値の取得
○
○
○
SetParameter
パラメータ値の変更
○
○
○
GetParameterSc
内線パラメータ値の取得
○
○
○
SetParameterSc
内線パラメータ値の設定
○
○
○
GetUtilityParameter ユーティリティコントロールで使用する ○
○
○
○
○
回線処理 AnswerCall
備考
パラメータの値を取得
SetUtilityParameter ユーティリティコントロールで使用する ○
パラメータの値を変更
Copyright © 1998-2003 NTT DATA CORPORATION
All rights reserved 複製・無断転載厳禁
34
アプリケーション開発入門ガイド
分類
メソッド
機能
402MC
403MC
201MC
GetVoiceAttr
音声メッセージの属性を取得
○
○
○
GetVoiceCount
音声ファイルのメッセージ数を取得
○
○
○
PartyBegin
三者通話開始
○
○
×
PartyChange
三者通話切り替え
×
○
×
PartyFinish
三者通話終了
○
○
×
PartyPrepare
第三者呼出し
○
○
×
Sense
各種情報取得
○
○
○
Terminate
終了処理を行う
○
○
○
UtilityTerminate
VsUtility コントロールの終了処理を行う ○
○
○
TransferStart
電話転送
○
○
○
TransferCancel
発信者と転送元との通話状態に戻す
○
○
○
TransferEnd
転送を完了する
○
○
○
TransferStartSc
内線転送開始
○
○
○
TransferCancelSc
転送中止
○
○
○
TransferChangeSc
転送通話先変更
○
○
○
TransferEndSc
内線転送完了
○
○
○
GetUui
ユーザー間情報取得
×
○
○
SetUui
ユーザー間情報設定
×
○
○
音声デバイスでの音声入出力
○
○
○
Beep
ビープ音の発生
○
○
○
BeepEx
秒数、周波数指定でのビープ音の発生
○
○
○
FileSpeech
テキストファイル中の文字を音声合成
○
○
○
FileToWav
テキストファイル中の文字を音声合成し ○
○
○
音声処理 AudioTransport
備考
WAVE 出力
RecognEnd
音声認識終了
○
○
○
RecognInit
音声認識初期化
○
○
○
RecognNoise
ノイズ測定
○
○
○
RecognVoice
音声認識
○
○
○
TextSpeech
テキスト文字を音声合成
○
○
○
TextToWav
テキスト文字を音声合成し、WAVE 出力
○
○
○
TtsEnd
音声合成終了処理
○
○
○
TtsInit
音声合成初期処理
○
○
○
TxVoiceClose
プロンプトファイルのクローズ
○
○
○
TxVoiceLoad
プロンプトファイルのオープン
○
○
○
TxVoicePlay
プロンプトファイルの再生
○
○
○
VoiceCopy
音声ファイルのコピー
○
○
○
VoiceDelete
音声ファイルの削除
○
○
○
VoicePack
音声ファイルのガベ−ジ
○
○
○
VoicePlay
音声再生
○
○
○
Copyright © 1998-2003 NTT DATA CORPORATION
All rights reserved 複製・無断転載厳禁
35
アプリケーション開発入門ガイド
分類
メソッド
機能
402MC
403MC
201MC
VoiceRecord
音声録音
○
○
○
VsxCheck
音声メッセージ数取得
○
○
○
VsxToWav
音声ファイルを WAVE ファイルに変換
○
○
○
WavToVsx
WAVE ファイルを音声ファイルに変換
○
○
○
VsxMsgFindFirst
音声ファイルのメッセージ番号検索開始 ○
○
○
VsxMsgFindNext
次の音声メッセージ番号検索
○
○
○
VsxMsgFindEnd
音声ファイルメッセージ番号検索終了
○
○
○
FAX のヘッドカットサイズ設定
○
○
×
SetFaxHead
FAX のヘッドデータ設定
○
○
×
FaxIMConv
FAX ファイルのインチミリ属性を変更する ○
○
×
FaxJbigCnv
JBIG ファイル変換
○
○
×
FaxJpegCnv
JPEG ファイル変換
○
○
×
FaxReceive
FAX の受信
○
○
×
FaxSend
FAX の送信
○
○
×
GetFaxAttr
FAX ファイルのページの属性取得
○
○
×
GetFaxPage
FAX ファイルのページ数を取得
○
○
×
GetFaxTc
TSI 又は CSI を取得する
○
○
×
SetFaxTc
TSI 又は CSI を設定する
○
○
×
FaxToTif
FAX ファイルを TIFF-F ファイルに変換
○
○
○
TextToFax
テキストファイルを FAX ファイル変換
○
○
○
TifToFax
TIFF-F ファイルを FAX ファイルに変換
○
○
○
TextToImage
テキストファイルを BMP ファイルに変換 ○
○
○
OverLayImage
BMP ファイルを重ねあわせて BMP ファイル ○
○
○
FAX 処理 FaxHeadCut
備考
出力
データ通 DataReceive
データ受信
○
○
×
信処理
DataSend
データ送信
○
○
×
FileReceive
ファイル受信
○
○
×
FileSend
ファイル送信
○
○
×
ローディングした DLL の呼出し
○
○
○
CallDllFunctionEX DLL コール
○
○
○
LoadDll
DLL モジュールをローディング
○
○
○
FreeDll
ロードした DLL をアンロードする
○
○
○
LogStart
ログ出力 OFF
○
○
○
LogStop
ログ出力 ON
○
○
○
Report
StagePlayer(スーパーバイザー)に通知 ○
○
○
Request
StagePlayer(スーパーバイザー)に要求 ○
○
○
外部呼出 CallDllFunction
その他
Copyright © 1998-2003 NTT DATA CORPORATION
All rights reserved 複製・無断転載厳禁
36
アプリケーション開発入門ガイド
3.5 S.100 API テレフォニー ライブラリ
VOISTAGE 基本ソフトウェアでは ECTF(Enterprise Computer Telephony Forum)の S.100 API に準拠した
テレフォニーライブラリを提供します。ECTF S.100 API は、CTI システム構築のためのアプリケーション
インタフェースとして定義されています。アプリケーション作成のためには Visual C++でのコーディング
が必要となりますが、ECTF S.100 API を使用することによって、UnPBX のような複雑なアプリケーション
を開発することが可能です。
3.5.1 S.100 API アプリケーション概念
回線特性
カテゴリ−
アプリケーション
データファイル
ファイル
プロファイル
アプリケーション(VC++6.0)
S.100API
VSMS100.DLL
セション管理関数
音声合成処理関数
グループ管理関数
音声認識処理関数
KeyValueSet 関数
FAX 処理関数
コンテナ管理関数
チャネル間通話処理関数
SystemCallRouter 関数
データ通信処理関数
シグナル処理関数
内線ボード制御
音声処理関数
その他
メッセージ通信
音声認識エンジン
音声合成エンジン
名前つきパイプ通信
マルチメディアカードデバイスサービス
マルチメディアカード
(VMCSRV.EXE)
ログサービス
WindowsNT4.0
マルチメディアカードデバイスドライバ(VMCDRVPC.SYS)
図 3.5.1-1 S.100 API ソフトウェア構成図
Copyright © 1998-2003 NTT DATA CORPORATION
All rights reserved 複製・無断転載厳禁
37
アプリケーション開発入門ガイド
S.100 API アプリケーション作成にはヘッダーファイル、ライブラリファイルをインクルードする必要
があります。ヘッダーファイル、ライブラリファイルは以下のディレクトリに入っています。
(基本ソフトウェア CD-ROM) ¥Include・・・ヘッダーファイル
¥Library・・・ライブラリファイル
S.100 API リソースはセション及び、グループで管理されます。アプリケーションではセションを作成
し、セション中にグループを作成します。グループは回線毎に作成し、1つのセションでは1つのグルー
プのみ作成できます。作成したグループ単位に SCR 処理(呼処理)や音声処理などを行います。
また KeyValueSet と呼ばれるパラメータを作成でき、この KeyValueSet を各関数のパラメータとして使
用します。
S.100 API のリソース構成図を図 3.5.1-2 に示します。
セションC
セションB
セションA
グループ
シグナル処理
音声処理
音声合成
音声認識
FAX 処理
チャネル間
データ通信
内線制御
SCR 処理
(呼処理)
KeyValueSet
コンテナ管理
通信
図 3.5.1-2 S.100 API リソース構成図
Copyright © 1998-2003 NTT DATA CORPORATION
All rights reserved 複製・無断転載厳禁
38
アプリケーション開発入門ガイド
3.5.2 S.100 API アプリケーションの作成
プログラムは、以下のような構成で記述します。
①セションの作成
プログラムの最初にまず、CTses_Create 関数でセションを作成します。
②グループの作成
マルチメディアカードを使用するには、CTgrp_Create 関数でグループを作成します。作成するグル
ープは、回線毎に作成します。1つのセション中には、1つのグループのみ作成することができます。
③KVSet(Key Value Set)の作成
KVSet(Key Value Set)というあらかじめ定義された定義値をパラメータとして作成します。
その作成したパラメータを各関数のパラメータリストとして指定します。
Key には、関数のパラメータ値や回線の状態をチェックしたり、非同期で動作中の関数の戻り値やエ
ラー情報などを取得することができます。
④コンテナの指定
音声再生/録音
FAX 送信/受信には、コンテナを指定します。
⑤発着信操作
電話回線の通話を行います。
⑥DTMF の送出/DTMF の受信
DTMF を送出するには、CTsg_SendSignals 関数を使用します。
DTMF を受信するには、CTsd_RetrieveSignals 関数を使用します。
⑦音声再生/録音
音声の再生を行うには、CTplyr_Play 関数を使用します。
音声の録音を行うには、CTrcdr_Record 関数を使用します。
⑧音声合成
テキスト文字を音声合成し、通話回線に出力するには、NDtts_TextSpeech 関数を使用します。
⑨音声認識
音声認識の初期化を行うには、NDasr_Init 関数を使用します。
通話中になってから回線のノイズを NDasr_Noise 関数を使用して測定します。
音声認識の処理は、NDasr_Voice 関数を使用して行います。
⑩FAX 送信/受信
FAX の送信を行うには、CTfaxhl_Send 関数を使用します。
FAX の受信を行うには、CTfaxhl_Receive 関数を使用します。
⑪チャネル間通話
チャネル間通話を行うには、NDconn_Create 関数を用いて通話中の回線を保留します。
チャネル間通話確立は、NDconn_Make 関数を用いて実行します。
⑫データ通信
マルチメディアカード間でデータ通信を行います。
データ受信は NDdat_Rec 関数 、データ送信は NDdat_Send 関数を使用します。
ファイル受信は NDdat_FileRec 関数、ファイル送信は NDdat_FileSend 関数を使用します。
Copyright © 1998-2003 NTT DATA CORPORATION
All rights reserved 複製・無断転載厳禁
39
アプリケーション開発入門ガイド
/****************************************************************************/
/*プログラム名
:留守番電話
*/
/*ファイル名
:sample.c
*/
/*機能概要
:着信、音声再生、音声録音を繰り返す
*/
/****************************************************************************/
/* include file */
#include
<windows.h>
#include
<stdio.h>
#include
<ct_apps.h>
#include
<nd_def.h>
main(int argc,char **argv)
{
int
ltime;
int
num;
char
buf[20];
TRANINFO
trn;
CTses_ct
Ses;
CTgrp_ct
Grp;
CTkvs_ct
hprm;
CTstatus
status;
CTerror
error;
CTstring
conp="CTVSTEMP:VSX_PLY";
CTstring
conr="CTVSTEMP:VSX_REC";
/* セション作成 */
status = CTses_Create(&Ses,"vss100pf","",CTkvs_Null,&trn,CT_modeSync);
/* グループ作成 */
status = CTgrp_Create(&Grp,Ses,"VSSGRP01",0,60*1000,CTkvs_Null,&trn,CT_modeSync);
/* KeyValueSet 作成 */
status = CTkvs_Create(&hprm,&error);
Copyright © 1998-2003 NTT DATA CORPORATION
All rights reserved 複製・無断転載厳禁
40
アプリケーション開発入門ガイド
for(num = 0;num < 100;num++)
{
/* コンテナ作成(再生用予約コンテナ) */
status = CTkvs_PutString(hprm,Container_ECTF_FileName,"PLAY.VSX",&error);
status = CTkvs_PutString(hprm,Container_ECTF_MessageNo,"1",&error);
status = CTcont_SetParameters(conp,hprm,Ses,&trn,CT_modeSync );
/* コンテナ作成(録音用予約コンテナ) */
status = CTkvs_PutString(hprm,Container_ECTF_FileName,"RECORD.VSX",&error );
status = CTkvs_PutString(hprm,Container_ECTF_MessageNo,_itoa(num,buf,10),&error );
status = CTcont_SetParameters(conr,hprm,Ses,&trn,CT_modeSync);
/* 着信待ち */
status = CTscr_AnswerCall(Grp,0,CTkvs_Null,&trn,CT_modeSync);
/* 音声再生 */
status = CTplyr_Play(Grp,&conp,0,CTkvs_Null,CTkvs_Null,&trn,CT_modeSync);
/* BEEP 発信 */
status = CTsg_SendSignals(Grp, "F", CTkvs_Null, CTkvs_Null,&trn,CT_modeSync);
/* 音声録音 */
ltime = 10000;
status = CTkvs_PutUInt(hprm,Recorder_ECTF_Duration,ltime,&error);
status = CTrcdr_Record(Grp,conr,CTkvs_Null,hprm,&trn,CT_modeSync);
/* 切断 */
status = CTscr_DropCall(Grp,20*1000,CTkvs_Null,&trn,CT_modeSync);
}
/* グループ削除 */
status = CTgrp_Destroy(Grp,CTkvs_Null,&trn,CT_modeSync);
/* セション削除 */
status = CTses_Destroy(Ses,CTkvs_Null,&trn,CT_modeSync);
}
S.100 API アプリケーションの例
Copyright © 1998-2003 NTT DATA CORPORATION
All rights reserved 複製・無断転載厳禁
41
アプリケーション開発入門ガイド
3.5.3 S.100 API 関数一覧
○:サポート ×:使用できない
分類
API
機能
402MC
403MC
401SC
201MC
セション CTses_Create
セション作成
○
○
○
○
管理
CTses_Destroy
セション削除
○
○
○
○
CTtrn_Initialize
トランザクションテーブルの初期化
○
○
○
○
グループ CTgrp_Create
グループの作成
○
○
○
○
管理
CTgrp_Destroy
グループの削除
○
○
○
○
CTgrp_GetGroupInfo
グループ情報の取得
○
○
○
○
CTgrp_GetParameters
グループパラメータの取得
○
○
○
○
CTgrp_PutGroupInfo
グループ情報の設定
○
○
○
○
CTgrp_SetParameters
グループパラメータの設定
○
○
○
○
CTgrp_Stop
グループの停止
○
○
○
○
NDgrp GetStatus
グループの処理実行状態を取得
○
○
○
○
NDgrp_SetThreadID
メッセージ通知先の登録
○
○
○
○
NDgrp_StopID
非同期実行中の処理を停止する
○
○
○
○
NDgrp_WaitConnect
グループ接続待ち
○
○
×
×
KeyValue CTkvs_Create
KVSet の作成
○
○
○
○
Set 管理 CTkvs_Clear
KVSet のクリア
○
○
○
○
CTkvs_Destroy
KVSet の削除
○
○
○
○
CTkvs_GetString
Key 値の取得 1
○
○
○
○
CTkvs_GetStringArray
Key 値の取得 2
○
○
○
○
CTkvs_GetInt
Key 値の取得 3
○
○
○
○
CTkvs_GetUInt
Key 値の取得 4
○
○
○
○
CTkvs_GetType
Key 値のタイプを取得
○
○
○
○
CTkvs_GetNext
次の Key 値の取得
○
○
○
○
CTkvs_PutString
Key 値の設定 1
○
○
○
○
CTkvs_PutInt
Key 値の設定 2
○
○
○
○
CTkvs_PutUInt
Key 値の設定 3
○
○
○
○
コンテナ CTcont_Copy
データオブジェクトのコピー
○
○
×
○
管理
CTcont_Create
コンテナの新規作成
○
○
×
○
CTcont_Destroy
コンテナの削除
○
○
×
○
CTcont_GetObjectList
コンテナのオブジェクトリスト取得
○
○
×
○
CTcont_GetParameters
コンテナのパラメータ取得
○
○
×
○
CTcont_SetParameters
コンテナにパラメータ設定
○
○
×
○
SCR
CTscr_AnswerCall
着信待ち
○
○
×
○
(System
CTscr_DropCall
回線切断
○
○
×
○
Call
CTscr_MakeCall
発信
○
○
×
○
Router)
CTscr_MakeConsultationCall
転送開始
○
○
×
×
Copyright © 1998-2003 NTT DATA CORPORATION
All rights reserved 複製・無断転載厳禁
42
アプリケーション開発入門ガイド
分類
API
機能
402MC
403MC
401SC
201MC
CTscr_Transfercall
転送完了
○
○
×
×
NDscr_Flash
フッキング
○
○
×
×
NDscr_RejectCall
着信拒否
×
○
×
×
NDscr_MakePartyCall
三者通話のための第三者呼出し
○
○
×
×
NDscr_BeginParty
三者通話開始
○
○
×
×
NDscr_FinishParty
三者通話終了
○
○
×
×
NDscr_ChangeParty
三者通話切り替え
×
○
×
×
NDscr_Hold
回線を保留
○
○
○
○
NDscr_UnHold
回線を保留解除
○
○
○
○
NDscr_CallWaiting
コールウェイティング着信
×
○
×
×
NDscr_SendMessage
SCR にサービス要求
×
○
×
×
NDscr_TransferCancel
転送中断
○
○
×
×
シグナル CTsd_RetrieveSignals
DTMF 取得
○
○
○
○
処理
CTsd_FlushBuffer
DTMF バッファをクリア
○
○
○
○
CTsg_SendSignals
DTMF/トーン出力
○
○
×
○
NDsg_SendDial
PB/DP 出力
○
○
×
○
音声再生
○
○
×
○
CTrcdr_Record
音声録音
○
○
×
○
NDprompt_VoiceInit
プロンプト環境の初期化
○
○
×
○
NDprompt_VoiceEnd
プロンプト環境終了
○
○
×
○
NDprompt_VoicePlay
プロンプト再生
○
○
×
○
NDrcdr_GetData
音声データメモリ受信
○
○
×
×
NDrcdr_Start
音声データメモリ受信開始
○
○
×
×
NDrcdr_Stop
音声データメモリ受信終了
○
○
×
×
NDplyr_PutData
音声データメモリ送信
○
○
×
×
Ndplyr_Start
音声データメモリ送信開始
○
○
×
×
Ndplyr_Stop
音声データメモリ送信終了
○
○
×
×
音声合成 NDtts_Init
音声合成初期化
○
○
×
○
処理
NDtts_End
音声合成終了
○
○
×
○
NDtts_FileSpeech
テキストファイル中の文字を音声合成
○
○
×
○
NDtts_FiletoWav
テキストファイル中の文字を音声合成し ○
○
×
○
音声処理 CTplyr_Play
WAVE 出力
NDtts_TextSpeech
テキスト文字を音声合成
○
○
×
○
NDtts_TexttoWav
テキスト文字を音声合成し、WAVE 出力
○
○
×
○
音声認識 NDasr_Init
音声認識初期化
○
○
×
○
処理
NDasr_End
音声認識終了
○
○
×
○
NDasr_GetValue
音声認識パラメータ取得
○
○
×
○
NDasr_ThreadInit
音声認識スレッド初期化
○
○
×
○
NDasr ThreadEnd
音声認識スレッド終了
○
○
×
○
Copyright © 1998-2003 NTT DATA CORPORATION
All rights reserved 複製・無断転載厳禁
43
アプリケーション開発入門ガイド
分類
API
機能
402MC
403MC
401SC
201MC
NDasr_ProcEnd
音声認識プロセス終了
○
○
×
○
NDasr ProcInit
音声認識プロセス初期化
○
○
×
○
NDasr_Noise
音声認識のノイズ測定
○
○
×
○
NDasr_Voice
音声認識
○
○
×
○
FAX 受信
○
○
×
×
CTfaxhl_Send
FAX 送信
○
○
×
×
CTfaxhl_Stop
FAX の停止
○
○
×
×
NDfax_HeadSet
FAX のヘッダ作成
○
○
×
×
チャネル NDconn_Create
チャネル間接続準備
○
○
×
×
間通話処 NDconn_Make
チャネル間接続実行
○
○
×
×
理
NDconn_Destroy
チャネル間接続準備解除
○
○
×
×
NDconn_Link
CT バス接続
○
○
○
×
NDconn_UnLink
CT バス接続解除
○
○
○
×
データ通 NDdat_Rec
データ受信
○
○
×
×
信処理
NDdat_Send
データ送信
○
○
×
×
NDdat_FileRec
ファイル受信
○
○
×
×
NDdat_FileSend
ファイル送信
○
○
×
×
内線ボー NDstn_RingStart
リング送出
×
×
○
×
ド制御
リング送出停止
×
×
○
×
ユーティ NDcnv_VSXToWAV
音声ファイルを WAVE ファイルに変換
○
○
×
○
リティ
NDcnv_WAVToVSX
WAVE ファイルを音声ファイルに変換
○
○
×
○
NDcnv_TIFToFAX
TIFF ファイルを FAX ファイルの変換
○
○
×
○
NDcnv FAXToTIF
FAX ファイルを TIFF ファイルに変換
○
○
×
○
NDcnv_TEXTToFAX
TEXT ファックスを FAX ファイルに変換
○
○
×
○
NDcnv_TEXTToIMAGE
TEXT ファイルを画像ファイルに変換
○
○
×
○
NDcnv_OVERLAYIMAGE
2 つの画像ファイルを重ね合わせて、
○
○
×
○
FAX 処理 CTfaxhl_Receive
NDstn_RingStop
画像ファイルを出力
NDutl_FAXCheck
FAX ファイルのページ数取得
○
○
×
○
NDutl_FAXPCheck
FAX ファイルのページの属性を取得
○
○
×
○
NDutl_VoiceCheck
音声メッセージの属性を取得
○
○
×
○
NDutl_VoiceCopy
音声メッセージコピー
○
○
×
○
NDutl_VoiceDelete
音声メッセージ削除
○
○
×
○
NDutl_VoicePack
音声ファイルのガベージ
○
○
×
○
NDutl_VSXCheck
音声メッセージのメッセージ取得
○
○
×
○
NDutl_VSXMsgFindFirst
音声ファイルのメッセージ番号検索開始 ○
○
×
○
NDutl_VSXMsgFindNext
次の音声ファイルのメッセージ番号検索 ○
○
×
○
NDutl_VSXMsgFindEnd
音声ファイルメッセージ番号検索終了
○
○
×
○
NDcnv_BMPToJBG
BMP ファイルを JBIG ファイルに変換
○
○
×
○
NDcnv_BMPToJPG
BMP ファイルを JPEG ファイルに変換
○
○
×
○
Copyright © 1998-2003 NTT DATA CORPORATION
All rights reserved 複製・無断転載厳禁
44
アプリケーション開発入門ガイド
分類
API
機能
402MC
403MC
401SC
201MC
NDcnv_JBGToBMP
JBIG ファイルを BMP ファイルに変換
○
○
×
○
NDcnv_JBGToFAX
JBIG ファイルを FAX ファイルに変換
○
○
×
○
NDcnv_JPGToBMP
JPEG ファイルを BMP ファイルに変換
○
○
×
○
NDcnv_JPGToFAX
JPEG ファイルを FAX ファイルに変換
○
○
×
○
NDcnv_JPGToFPG
JPEG ファイルを FPG ファイルに変換
○
○
×
○
NDcnv_FAXToJBG
FAX ファイルを JBIG ファイルに変換
○
○
×
○
NDcnv_FPGToJPG
FAXJPEG ファイルを JPEG ファイルに変換 ○
○
×
○
注) VS-402MC/403MC/201MC はマルチメディアカード、VS-401SC は内線ボード
Copyright © 1998-2003 NTT DATA CORPORATION
All rights reserved 複製・無断転載厳禁
45
アプリケーション開発入門ガイド
3.6 TAPI テレフォニー ライブラリ
VOISTAGE 基本ソフトウェアでは Microsoft の Telephony Application Programming Interface(以下 TAPI)
に対応したテレフォニーライブラリを提供します。
3.6.1 テレフォニードライバの登録
① [コントロールパネル]の[テレフォニー]アイコンをダブルクリックし、[ダイヤルのプロパティ]
ダイアログを表示して下さい。
②[テレフォニー ドライバ]タブをクリックする。
③[追加]ボタンをクリックすると、[ドライバの追加]ダイアログが表示されるので、[VSMTAPI2.TSP]
を選択し、[追加]ボタンをクリック。
[VSMTAPI2.TSP]を選択
し、[追加]ボタンを押し
て下さい。
④[ダイヤルのプロパティ]ダイアログで[テレフォニードライバ]タブをクリックします。
Copyright © 1998-2003 NTT DATA CORPORATION
All rights reserved 複製・無断転載厳禁
46
アプリケーション開発入門ガイド
⑤[VSMTAPI2.TSP]を選択して、[構成]ボタンをクリックすると下記ダイアログが表示されます。
⑥ 各回線の情報を設定します。設定する項目は以下のものです。
[回線数]:使用する回線数を設定します。(1∼32)
[回線名]:各回線の回線名を設定します。
[回線番号]:回線番号を設定します。(1∼32)
[カテゴリーファイル]:使用するカテゴリーファイルを設定します。
[回線特性データファイル]:回線特性データファイルを設定します。
設定なしの場合は NTT 回線設定となります。
⑦[OK]ボタンを押下し、設定を保存します。
Copyright © 1998-2003 NTT DATA CORPORATION
All rights reserved 複製・無断転載厳禁
47
アプリケーション開発入門ガイド
3.6.2 TAPI アプリケーションの作成
プログラムは、以下のような構成で記述します。
①初期処理
TAPI を使用してアプリケーションを作成する際は、まず、回線の初期化処理およびオープン処理が必要
です。
//初期処理
LINEINITIALIZEEXPARAMS exparams;
memset(&exparams,'¥0',sizeof(LINEINITIALIZEEXPARAMS));
exparams.dwTotalSize = sizeof(LINEINITIALIZEEXPARAMS);
exparams.dwOptions = LINEINITIALIZEEXOPTION_USEHIDDENWINDOW ;
DWORD dwAPIVersion = 0x00020000;
errCode = lineInitializeEx(
&ghLineApp,
ghInst,
(LINECALLBACK) tapiCallback,
"demo.exe",
&gnAvailDevices,
&dwAPIVersion,
&exparams);
②回線オープン処理
この処理により、発着信処理をはじめ、各処理を実行する際に必要な回線デバイスのハンドル(ghLine)
を取得します。
errCode = lineOpen (
ghLineApp,
0,
&ghLine,
0x00020000,
0,
0,
LINECALLPRIVILEGE_OWNER,
LINEMEDIAMODE_INTERACTIVEVOICE,
NULL
);
Copyright © 1998-2003 NTT DATA CORPORATION
All rights reserved 複製・無断転載厳禁
48
アプリケーション開発入門ガイド
③発信処理
発信処理を行うには、以下の関数を使用します。
この関数により、各処理を実行する際に必要な通話ハンドル(ghCall)を取得します。
lineMakeCall(
Line,
&ghCall,
(LPCTSTR)m_sDialNum,
0,
NULL);
④着信処理
電話がかかってくると、コールバック関数に”LINECALLSTATE_OFFERING”メッセージが通知されます。こ
のメッセージが通知された際に以下の関数を使用することにより、着信することができます。
LineAnswer(
&ghCall,
NULL,
0);
Copyright © 1998-2003 NTT DATA CORPORATION
All rights reserved 複製・無断転載厳禁
49
アプリケーション開発入門ガイド
⑤回線状態の取得
回線の状態や DTMF の入力検知などは、メッセージによって通知されます。
そこで、このメッセージを受け取るためのコールバック関数を作成する必要があります。
VOID CALLBACK
tapiCallback
(
DWORD
hDevice,
DWORD
dwMsg,
DWORD
dwCBInstance,
DWORD
dwParam1,
DWORD
dwParam2,
DWORD
dwParam3
)
{
switch (dwMsg)
{
INT errCode;
case LINE_ADDRESSSTATE:
break;
case LINE_CALLINFO:
break;
case LINE_CALLSTATE:
switch ( dwParam1 )
{
case LINECALLSTATE_IDLE://回線がアイドル状態の時の処理
break;
case LINECALLSTATE_BUSY: //通話相手が話し中の時の処理
break;
case LINECALLSTATE_SPECIALINFO:
break;
case LINECALLSTATE_DISCONNECTED//通話相手の切断を検知した時の処理
break;
case LINECALLSTATE_OFFERING://電話がかかってきた時の処理
break;
case LINECALLSTATE_CONNECTED//通話相手との接続が完了したときの処理
break;
}
break;
case LINE_CLOSE:
break;
:
:
Copyright © 1998-2003 NTT DATA CORPORATION
All rights reserved 複製・無断転載厳禁
50
アプリケーション開発入門ガイド
3.7 UnPBX システム開発キット(オプション)
VOISTAGE UnPBX システム開発キットは、マルチメディアカード(VS-402MC/403MC)とステーションカー
ド(VS-401SC 内線ボード)を用いて UnPBX システムを開発するためのオプションソフトウェアです。本開
発キットにより、内線ボードの制御が可能となります。UnPBX システム開発のために VsClient コントロー
ルモジュールと、ECTF(Enterprise Computer Telephony Forum)の S.100 API に準拠したテレフォニーライ
ブラリを提供します。アプリケーション作成のためには Microsoft Visual Basic 6.0、Microsoft Visual
C++ 6.0 でのコーディングが必要となります。
UnPBX 開発キットに添付されている ActiveX コンポーネントの VsClient コントロールを使用しますと、
内線電話機を用いた UnPBX クライアントアプリケーションの発信、転送、着信等を制御することができ、
非同期で実行するプログラムを作成できます。
・VSCLIENT.OCX
同期/非同期型 UnPBX クライアントコントロールモジュール
VSClient コントロールは UnPBX システム開発キットに添付されている
ActiveX コンポーネントです。内線電話機を用いた UnPBX クライアントアプリ
ケーションの発信、転送、着信等を制御することができます。
Copyright © 1998-2003 NTT DATA CORPORATION
All rights reserved 複製・無断転載厳禁
51
アプリケーション開発入門ガイド
3.7.1 UnPBX システムの概要
UnPBX システム開発キットをインストールすると、内線ボードデバイスサービス及び内線ボードデバイ
スドライバがインストールされ実行環境が構築されます。
アプリケーション(Visual C++ 6.0)
S.100API
VSMS100.DLL
メッセージ
名前つき
名前つき
通信
パイプ通信
パイプ通信
マルチメディアカード
内線ボード
デバイスサービス
デバイスサービス
(VMCSRV.EXE)
(VSMSTSRV.EXE)
WindowsNT4.0
マルチメディアカード
内線ボード
デバイスドライバ
デバイスドライバ
(VMCDRVPC.SYS)
(CTI10401.SYS)
図 3.7.1-1 UnPBX ソフトウェア構成図
外線はマルチメディアカードデバイスサービスと通信し制御します。
内線は内線ボードデバイスサービスと通信し制御します。
(内線ボードに送出するリング信号、コールプログレストーンは NTT アナログ回線の仕様に準拠して
います。)
Copyright © 1998-2003 NTT DATA CORPORATION
All rights reserved 複製・無断転載厳禁
52
アプリケーション開発入門ガイド
3.7.2 UnPBX シーケンス
UnPBX システムの一般的な処理の例を示します。例は外線からの着信時に内線を呼出し外線と内線を通
話状態にする処理シーケンスです。また、シーケンス図を図 3.7.2-1 に示します。
例
① 外線からの呼出しをマルチメディアカードが検出します。
② ステーションカードから内線へリング信号を送出します。
③ 内線電話が応答後、内線へのリング信号送出を解除しマルチメディアカードが外線に対して応答します。
④ マルチメディアカードとステーションカードをバス接続します。
図 3.7.2-1 UnPBX シーケンス図
Copyright © 1998-2003 NTT DATA CORPORATION
All rights reserved 複製・無断転載厳禁
53
アプリケーション開発入門ガイド
3.7.3 UnPBX システム作成
UnPBX システムのプログラムは、以下のような構成で記述します。発行できる関数については「3.5.3
S.100 API 関数一覧」を参照して下さい。
① セションの作成
プログラムの最初にまず、CTses_Create 関数でセションを作成します。
② グループの作成
内線ボードを使用するには、CTgrp_Create 関数でステーションカード(VS-401SC)を制御するグル
ープを作成します。作成するグループは、回線毎に作成します。1つのセション中には、1つのグル
ープのみ作成することができます。
③ KVSet(Key Value Set)の作成
KVSet(Key Value Set)というあらかじめ定義された定義値をパラメータとして作成します。
その作成したパラメータを各関数のパラメータリストとして指定します。
Key には、関数のパラメータ値や回線の状態をチェックしたり、非同期で動作中の関数の戻り値やエ
ラー情報などを取得することができます。
④ リング信号の送出/停止
内線に対してリング信号を送出するには、NDstn_RingStart 関数を利用します。
リング信号の送出を停止するには、NDstn_RingStop 関数を利用します。
⑤ コールプログレストーンの送出/停止
内線に対してコールプログレストーン(ダイヤルトーン、リングバックトーン、ビジートーン)を
送出します。
ダイヤルトーンを送出するには、CTsg_SendSignals 関数でシグナルリスト“H”を指定します。
リングバックトーンを送出するには、CTsg_SendSignals 関数でシグナルリスト“J”を指定します。
ビジートーンを送出するには、CTsg_SendSignals 関数でシグナルリスト“I”を指定します。
送出中のコールプログレストーンを停止するには、CTsg_SendSignals 関数でシグナルリスト“S”を
指定します。
⑥ DTMF の受信
内線電話機で入力した DTMF 信号を受信するには、CTsd_RetriveSignals 関数を利用します。
⑦ 保留/保留解除
内線を保留状態(保留音送出)にするには、NDscr_Hold 関数を利用します。
内線を保留解除(保留音停止)するには、NDscr_UnHold 関数を利用します。
なお、この機能を用いた保留音は変更することはできません。
⑧ CT バス接続
内線と外線で通話をできるようにするには、内線のグループ、外線のグループ双方が OFFHOOK 状態
になったら、お互いに CT バス接続をする必要があります。
CT バス接続をするには、NDconn_Link 関数を利用します。本関数は内線、外線それぞれのグループで
発行する必要があります。
CT バス接続解除をするには NDconn_UnLink 関数を利用します。本関数は内線、外線それぞれのグル
ープで発行する必要があります。
Copyright © 1998-2003 NTT DATA CORPORATION
All rights reserved 複製・無断転載厳禁
54
アプリケーション開発入門ガイド
(注)本開発キットは内線電話機を制御する API のみ提供しています。開発キットでは ACD 機能、一斉
着信機能などの関数を用意していません。利用形態にあわせて自由に構築することが可能です。
/*----------------------------------初期処理-------------------------------------*/
#include
<ct_apps.h>
/* S.100API を使用するために必要
*/
#include
<nd_def.h>
/* S.100API 拡張命令を使用するために必要 */
#include
<windows.h>
int main(int argc,char *argv[])
{
CTses_ct
Ses1;
/* 内線1セション
*/
CTgrp_ct
Grp1;
/* 内線1グループ
*/
CTkvs_ct
hkvs1;
/* 内線1KVS
*/
TRANINFO
trn1;
/* 内線1トランザクションテーブル
*/
CTstatus
status;
/* 関数戻り値
*/
CTerror
error;
/* エラー情報
*/
int
ret;
/* 関数戻り値
*/
/* 内線1トランザクションテーブル初期化 */
CTtrn_Initialize( trn1, CTkvs_Null );
/* 内線1セション作成
*/
status = CTses_Create(&Ses1,"VSS100PF","",CTkvs_Null,&trn1,CT_modeSync );
/* 内線1グループ作成
*/
status = CTgrp_Create(&Grp1,Ses1,"VSSGRP33",0,60*100,CTkvs_Null,&trn1,
CT_modeSync);
/* 内線1KVS 作成
*/
status = CTkvs_Create(&hkvs1,&error );
/* 外線トランザクションテーブル初期化
*/
CTtrn_Initialize( trn3, CTkvs_Null );
/* 外線セション作成
*/
status = CTses_Create(&Ses3,"VSS100PF","",CTkvs_Null,&trn3,CT_modeSync );
/* 外線グループ作成
*/
status = CTgrp_Create(&Grp3,Ses3,"VSSGRP01",0,60*1000,
CTkvs_Null,&trn3,CT_modeSync);
/* 外線 KVS 作成
*/
status = CTkvs_Create(&hkvs3,&error );
:
:
}
Copyright © 1998-2003 NTT DATA CORPORATION
All rights reserved 複製・無断転載厳禁
55
アプリケーション開発入門ガイド
/*-----------------内線を呼び出し、受話器が上がるのを待つ------------------------*/
int
nai_yobi(CTgrp_ct *Grp,CTkvs_ct *hkvs,TRANINFO *trn)
{
CTstatus
status;
/* S.100API 関数戻り値
*/
CTerror
error;
/* エラー情報
*/
CTsymbol
sym;
/* キー定義
*/
int
dat;
/* キーデータ
*/
/* リング信号送出
*/
status=NDstn_RingStart(*Grp,*hkvs,trn, CT_modeSync);
/* 現在の状態取得
*/
/* 受話器があがるまで待つ
*/
sym=CCR_ECTF_LineCallState;
for(;;)
{
status=CTgrp_GetParameters(*Grp,&sym,1,hkvs,trn,CT_modeSync);
status=CTkvs_GetInt(*hkvs,sym,&dat,&error);
if (dat != CCR_ECTF_OnHoldCondition)
{
break;
}
}
/* リング信号送出停止
*/
status=NDstn_RingStop(*Grp,*hkvs,trn,CT_modeSync);
return 0;
}
UnPBX システムのコーディング例
Copyright © 1998-2003 NTT DATA CORPORATION
All rights reserved 複製・無断転載厳禁
56
アプリケーション開発入門ガイド
4 StagePalette
StagePalette は、StageWriter で作成(スクリプトソースを直接作成、ActiveX によるプログラム作成も
含む)した電話応答処理プログラムを StagePlayer で実行するために必要なデータ登録および実行環境の
構築を行います。
4.1 StagePalette の画面
StagePalette のメイン画面です。運用するシステムの環境設定、回線設定、プログラム設定、タイマー
設定、イベント設定などを行います。また各種ツールを使用しシステムの運用に必要な音声データや、FAX
データ等を作成することが可能です。
Copyright © 1998-2003 NTT DATA CORPORATION
All rights reserved 複製・無断転載厳禁
57
アプリケーション開発入門ガイド
4.2 StagePalette の機能
StagePalette には以下の機能があります。
・マルチメディアカードを搭載しているシステムの環境情報(回線数、使用ディスク容量等)を設定し
ます。
→4.3 システム設定、4.4 環境設定、4.5 回線設定
・StageWriter などで作成したプログラムの起動情報を設定します。
→4.6 プログラム設定
・条件(日時、間隔、ファイル有無)を設定してプログラムを起動する場合に設定します。
→4.7 タイマー設定
・StagePlayer のモニター画面に表示するイベント(処理内容)を登録します。
→4.8 イベント設定
・異常を検知した場合に管理者に通知する異常通知プロセスが通知する手段や通知先を設定します。
→4.9 異常通知先設定
・マルチメディアカードに接続する回線の特性情報(ダイヤルトーン、ビジートーン、リングバックト
ーン)を自動で設定します。
→4.10 回線特性設定
・マルチメディアカードに対する各種設定情報を格納しているカテゴリーファイルを編集します。
→4.11 カテゴリー編集ツール
・ISDN 回線使用時のダイヤルイン番号や、サブアドレスなどを設定します。
→4.12 INS ネットサービス設定
・音声ファイルの作成や音声メッセージの確認を行います。
→4.13 メッセージ登録ツール
・FAX ファイルの作成や確認を行います。
→4.14 FAX 登録ツール
・マルチメディアカードの機能の実行や動作確認を行います。また作成したアプリケーションが正常に
動作しない場合に不具合の切り分けに使用します。
→4.15 テストツール
・標準の音声合成辞書以外にユーザー辞書を作成し単語の読みを登録することが可能です。
→4.16 音声合成ユーティリティ
Copyright © 1998-2003 NTT DATA CORPORATION
All rights reserved 複製・無断転載厳禁
58
アプリケーション開発入門ガイド
4.3 システム設定
StagePalette では StagePlayer で動作させる複数の業務をまとめてシステムとして管理します。
システム設定では各システムの基本設定を行います。
【基本設定】
【詳細設定】
・システム ID
設定されているシステムの ID です。システム ID の変更はできません。
・システム名
システム名称を指定、または変更します。
・管理者名
システムの管理者名を指定、または変更します。
・スタートアップシステム
StagePlayer 起動時に運用されるシステムです。
・異常通知を行う
「異常通知を行う」にチェックすることで StagePlayer が異常を検出した場合にプロセス管理番号
99999901 に登録されている異常通知プロセスを起動します。起動されるアプリケーションはあらか
じめ作成する必要があります。初期設定は¥VOISTAGE¥EXEC¥VSSERREP.IL のサンプルプログラムが設
定されます。サンプルプログラムでは異常通知コード出力ファイル¥VOISTAGE¥DATA¥VSSERCOD.VST か
ら異常通知コードを取得し発生した状態を FAX 送信により外部に通知します。
異常通知コードは以下のものです。
Copyright © 1998-2003 NTT DATA CORPORATION
All rights reserved 複製・無断転載厳禁
59
アプリケーション開発入門ガイド
1000
電圧降下
1001
ファン停止
1002
温度上昇
1003
UPS 停電
1004
UPS バッテリーロー
1005
UPS トラブル
1006
HDD トラブル
1007
UPS 複電
1010
ディスク容量不足
2000
アプリケーションからの異常
・リカバリを行う
「リカバリを行う」にチェックすることで StagePlayer が異常を検出した場合(StagePlayer 配下
でスクリプトエンジンや VOISTAGE ActiveX を使用したアプリケーションを動作させるとマルチメデ
ィアカードの初期化失敗でエラー0005 通知が StagePlayer に送信されます。)にプロセス管理番号
99999801 に登録されているリカバリプロセスを起動します。起動されるアプリケーションはあらか
じめ作成する必要があります。初期設定は¥VOISTAGE¥EXEC¥VSARECOV.IL のサンプルプログラムが設
定されます。サンプルプログラムでは起動中のプロセスを停止し、全てのプロセスが停止した後にプ
ロセスを起動します。
Copyright © 1998-2003 NTT DATA CORPORATION
All rights reserved 複製・無断転載厳禁
60
アプリケーション開発入門ガイド
4.4 環境設定
運用するシステムの運用環境を設定します。設定する項目は以下のものです。
・回線数
システムで使用する回線数を設定します。
・推奨 UPS を使用する(マルチメディアサーバー使用時)
推奨 UPS(オムロン社製 BU606F)を使用して停電監視を行う場合に指定します。
・UPS 運転時間
停電発生からシステム停止するまでの時間を設定します。
・システム停止後から再起動までの時間
システム停止してからシステム再起動を行うまでの時間を設定します。
・ディスク残り容量をチェックする
ディスクの残り容量をチェックする場合に指定します。
・ドライブ
ディスクの残り容量をチェックするドライブを指定します。
・残り容量
エラーを検出するディスクの残り容量を設定します。
Copyright © 1998-2003 NTT DATA CORPORATION
All rights reserved 複製・無断転載厳禁
61
アプリケーション開発入門ガイド
・チェック間隔
ディスクの残り容量のチェック間隔を設定します。
・終了時待ち時間
システム停止操作開始後の待機時間を設定します。
・モニター表示方法
モニターの表示方法を設定します。(自動または手動)
・モニター処理間隔
モニター画面のリフレッシュ間隔を設定します。
・モニター画面ファイル
ユーザー作成モニター画面の登録を行います。(初期設定は標準添付のモニター画面になっていま
す。)
・異常時にシステムリセットを行う
プロセスの再起動が上限回数を超えた場合にシステムリセットを行うか設定します。
・再起動回数の上限
システムリセットを行うまでのプロセス再起動回数の上限値を設定します。
・マルチメディアサーバーを使用する
システムをマルチメディアサーバー(VS-3201MC/VS-3202MC)で運用する場合に設定します。
(HDD 異常、ファン停止などが検出可能です。)
Copyright © 1998-2003 NTT DATA CORPORATION
All rights reserved 複製・無断転載厳禁
62
アプリケーション開発入門ガイド
4.5 回線設定
運用する回線の設定を行います。設定する項目は以下のものです。
・回線種別
着信専用回線、または発着信回線を指定します。
・トーン種別
プッシュ(PB)、またはダイヤル(DP)を指定します。
・電話番号
接続する回線の電話番号を入力します。(この設定はシステムの運用には影響しません。)
・代表番号
回線が代表番号になっている場合に指定します。(この設定はシステムの運用には影響しません。)
Copyright © 1998-2003 NTT DATA CORPORATION
All rights reserved 複製・無断転載厳禁
63
アプリケーション開発入門ガイド
4.6 プログラム設定
実行するプログラムを設定します。設定する項目は以下のものです。
【基本設定】
作成したプログラムを各回線に割り当てる設定を行います。プロセス数を複数にすれば複数回線で同じ
プログラムが動作するようになります。
・プログラム管理番号
各プログラムの管理番号を指定します。6 桁の数字で「000001∼999899」番まで登録できます。プ
ログラム管理番号を重複して登録することはできません。
・プロセス数
プログラムの起動プロセス数を指定します。
・プログラム種別
登録するプログラムの種別を指定します。
1:IL ファイル
StageWriter、VOISTAGE スクリプト言語で作成した実行ファイル
2:VOISTAGE 専用 EXE ファイル
IL ファイル、ActiveX 使用 EXE ファイル以外でマルチメディアカ
ード、スーパーバイザーにアクセスするプログラム
3:一般 EXE ファイル
IL ファイル、ActiveX 使用 EXE ファイル以外でマルチメディアカ
ード、スーパーバイザーにアクセスしないプログラム
4:ActiveX 使用 EXE ファイル
VOISTAGE の ActiveX を使用したプログラム
・プログラムファイル
プログラムファイル名をフルパスで指定します。
Copyright © 1998-2003 NTT DATA CORPORATION
All rights reserved 複製・無断転載厳禁
64
アプリケーション開発入門ガイド
・タイトル
StagePlayer(モニター画面)で表示されるタイトルを指定します。
・回線取得種別
プログラムで使用する回線の取得方法を指定します。
1:回線取得なし
2:着信専用回線を取得
3:発着信回線を取得
4:着信専用回線を強制取得
5:発着信回線を強制取得
・回線番号
プログラムが回線を使用して実行する場合、回線番号を指定します。複数のプロセスを実行する場
合は指定した回線番号から昇順にプロセス数分設定します。後にプロセス設定でプロセス毎の回線番
号を変更することも可能です。
・常駐指定
StagePlayer を起動すると同時にプログラム起動させたい場合や、何らかの異常でプログラムが終
了した時に自動的に再起動させたい場合は選択します。
・タイマー起動指定
以下の条件によりプロセスを起動する場合指定します。時間やファイルの指定はタイマー設定画面
で行います。
条件1:時間および時間間隔を条件としてプログラムを起動させる。
条件2:ファイルの生成を条件としてプログラムを起動させる。
【詳細設定】
プロセスが異常となった場合の後処理を設定します。またプロセス起動時の設定を行います。
Copyright © 1998-2003 NTT DATA CORPORATION
All rights reserved 複製・無断転載厳禁
65
アプリケーション開発入門ガイド
・異常処理種別
異常発生時の動作を指定します。
1:システムリセット
各プロセスを停止後、システムリセットします。
2:プロセス再起動
プロセスを一時停止後、再起動させます。
3:プロセス停止
プロセスを停止させます。常駐指定を行っていると自動的にプロセス
が再起動します。
・優先順位
プロセス実行時の優先順位を指定します。優先順位が高いほどより多くのプロセッサ時間が割り当
てられます。通常は「2:普通」を選択して下さい。
1:高
2:普通
3:低
・起動モード
プロセス起動時のウィンドウ状態を指定します。
バックグラウンドで起動
起動時には最小化された状態になります。
フォアグラウンドで起動
起動時にはウィンドウが開かれた状態になります。
・ヘルスチェックを行う
ヘルスチェックの有無を指定します。また、ヘルスチェックを行う間隔(監視時間)を設定できま
す。ヘルスチェックとは StagePlayer が行う各プロセスの動作確認のことで、各プロセスからは
StagePlayer へ常に動作通知を行っています。しかし、異常が発生し監視時間以上動作通知が行えな
い場合 StagePlayer はそのプロセスを異常とみなし、異常処理種別に基づき処理を行います。
Copyright © 1998-2003 NTT DATA CORPORATION
All rights reserved 複製・無断転載厳禁
66
アプリケーション開発入門ガイド
4.7 タイマー設定
タイマー設定を使うことにより、時間またはファイルの有無によってプログラムの起動を行うことがで
きます。これにより時間帯によってアプリケーションを変更することも可能です。
・トリガ
プログラム起動のトリガをタイマー(時間)、またはファイルの有無で行うかを指定します。
・リトライ
起動失敗時のリトライ回数を指定します。
・一度のみ起動
プログラム起動を繰り返すか指定します。繰り返し指定時に、タイマー(時間)指定の場合は次回
起動までの間隔を指定します。ファイル指定の場合はトリガに使用したファイルは削除するようにし
て下さい。(削除しない場合、1 分ごとに起動を繰り返します。)
Copyright © 1998-2003 NTT DATA CORPORATION
All rights reserved 複製・無断転載厳禁
67
アプリケーション開発入門ガイド
4.8 イベント設定
イベントとは、StagePlayer のモニター画面で表示される各プロセスの実行状態です。
各プロセスから REPORT 命令でコードを指定することにより、モニターにイベント内容が表示されます。
初期設定では「着信待ち」、「着信待ち終了」等しか表示されませんが、イベント設定を行うことでより
細かな実行状態を表示することができます。
・コード
イベントのコードを指定します。0000∼0999 はシステム固定となっています。
・イベント内容
イベントの内容を設定します。
Copyright © 1998-2003 NTT DATA CORPORATION
All rights reserved 複製・無断転載厳禁
68
アプリケーション開発入門ガイド
4.9 異常通知先設定
システムが異常となった場合、システム管理者等に通知を行うプログラムを設定できます。そのプログ
ラムが通知する手段および通知先などの情報を設定します。
設定できる項目は以下のものです。
・通知種別
通知手段をドロップダウンリストから選択します。
1:通知しない
2 :電話
3:FAX
4:ポケットベル
・通知先番号
通知先の番号を指定します。
・ポケットベル待ち時間
通知手段をポケットベルに選択した場合に設定します。
着信してメッセージを送出するまでの時間を設定します。
・ポケットベルメッセージ
通知手段をポケットベルに選択した場合に設定します。
送出するメッセージを設定します。
異常通知先設定で設定された内容は¥VOISTAGE¥DATA¥VSEMGCAL.VST に保存されます。
異常通知プログラムを作成する場合このファイルから通知手段、通知先番号などの情報を取得して下さ
い。
Copyright © 1998-2003 NTT DATA CORPORATION
All rights reserved 複製・無断転載厳禁
69
アプリケーション開発入門ガイド
4.10 回線特性設定
回線特性設定とは、マルチメディアカードに実際に運用する回線(接続された回線)のコールプログレ
ストーンの特性を設定することです。
マルチメディアカードでは自動的に各種トーンのパターン、周波数を認識することができます。
PBX を使用する場合はメーカ及び機種によりコールプログレストーンの特性が異なるので回線特性設定
が必要となります。(初期値は NTT 回線の特性が設定されています。)
【VS-402MC】
VS-402MC では回線特性設定の結果を回線特性データファイル(¥VOISTAGE¥DATA¥PROPERTY¥xxx.INI)と
して保存します。使用する回線の特性をウィザード形式で自動設定できます。また手動で回線特性の設定
を行うことも可能です。
同じ特性の回線を使用する場合、回線特性設定を一度行ない、作成された回線特性データファイルを各
回線に指定することで回線が使用できるようになります。
回線特性データファイル名
使用する回線にあった回線特性データファイルを指定します。初めて接続する回線の場合は「なし」を選択
し、新規作成を行って下さい。インストール時には NTT アナログ回線のデータファイルのみ存在します。
Copyright © 1998-2003 NTT DATA CORPORATION
All rights reserved 複製・無断転載厳禁
70
アプリケーション開発入門ガイド
回線特性データファイルを作成する場合は、回線特性設定画面の新規ボタンを押下します。
回線特性をウィザード形式で自動検出し、検出結果を指定した回線特性データファイルに設定します。
・ファイル名
新規作成する回線特性データファイル名を指定します。
・コメント
新規作成する回線特性データファイルにコメントを登録できます。
・回線
回線特性の自動検出で使用する回線番号を指定します。PBX を使用する場合は、PBX を使用している
にチェックをし、自動検出でセカンドトーンの検出を行います。
・自動検出せずに後で手動で設定する
回線特性の自動検出を行わない場合はチェックをして下さい。NTT 回線の特性を初期値として回線特
性データファイルを作成します。
Copyright © 1998-2003 NTT DATA CORPORATION
All rights reserved 複製・無断転載厳禁
71
アプリケーション開発入門ガイド
回線特性を手動で設定する場合は、回線特性設定画面で設定する回線特性データファイルを選択し参照
ボタンを押下します。各トーン毎にパターン、周波数などの設定を行います。
・トーン種別
設定するコールプログレストーンを選択します。
・単位パターン
設定するトーンの ON 時間、OFF 時間、誤差、1 つのパターンと見なす ON、OFF の回数を指定します。
・インターバル時間
単位パターン間のインターバルの時間を設定します。
・周波数
トーンの周波数を設定します。
・検出回数
単位パターンとインターバルを検出する回数を設定します。
【VS-403MC】
VS-403MC は INS ネット64回線を使用する為、回線特性設定を行う必要はありません。しかし回線特性
データファイルには回線特性以外にも設定されている項目があります。基本的にその項目を設定する必要
はありませんが、項目を変更する場合は回線特性データファイルの詳細タグから設定します。
Copyright © 1998-2003 NTT DATA CORPORATION
All rights reserved 複製・無断転載厳禁
72
アプリケーション開発入門ガイド
4.11 カテゴリー編集ツール
カテゴリー編集ツールは、マルチメディアカード用の設定情報の初期値を格納しているカテゴリーファ
イルを編集するためのツールです。(¥VOISTAGE¥EXEC¥VSCATEED.EXE)
カテゴリー編集ツールの主な機能は以下の通りです。
・カテゴリーパラメータ編集
パラメータの設定値を変更することが可能です。さらにウィザード機能によって主な設定値を簡単
に変更することができます。
・カテゴリーファイル編集
カテゴリーファイルの内容を他の回線へコピー、または初期値へ戻すことが可能です。
Copyright © 1998-2003 NTT DATA CORPORATION
All rights reserved 複製・無断転載厳禁
73
アプリケーション開発入門ガイド
設定したいパラメータをダブルクリックすると設定値変更画面が表示されます。パラメータの設定値の
説明を参考に設定を行います。
編集メニューのウィザードからカテゴリー設定ウィザードの起動が行えます。画面の指示に従い設定す
るだけで主な設定を行えます。
Copyright © 1998-2003 NTT DATA CORPORATION
All rights reserved 複製・無断転載厳禁
74
アプリケーション開発入門ガイド
4.12 INS ネットサービス設定
実際に使用する回線ごとの INS ネットサービスを設定します。
また回線ごと(4 回線単位)に使用するマルチメディアカードの種別を設定します。
設定できる項目は以下のものです。
・カード種別の設定
回線(4 回線単位)ごとにマルチメディアカードの種別を設定します。
・グローバル着信する
グローバル着信をする場合はチェックします。
・着信拒否する
着信拒否する場合はチェックします。(VS-201MC では利用不可)
・コールウェイティングを使用する
コールウェイティングを使用する場合はチェックします。
INS ネット付加サービスのフレックスホン(コールウェイティング機能)
の契約が必要です。(VS-201MC
では利用不可)
Copyright © 1998-2003 NTT DATA CORPORATION
All rights reserved 複製・無断転載厳禁
75
アプリケーション開発入門ガイド
・着信転送する
着信転送を利用する場合はチェックボックスを ON にします。
INS ネット付加サービスのフッレクスホン(着信転送機能)の契約が必要です。なお、着信転送は 1 回
線で同時に 1 つしか利用できませんのでご注意願います。(VS-201MC では利用不可)
・転送先電話番号
着信転送する場合は着信転送先電話番号を数字のみで入力します。
・トーキパターン
着信転送する場合は着信転送のトーキパターンをドロップダウンリストから選択します。
・ダイヤルイン番号
ダイヤルイン番号の設定およびグローバル着信の有無の設定により着信するチャネルを指定する
ことができます。1 チャネルにつき最大 4 つまでダイヤルイン番号の設定が可能です。INS ネット付
加サービスのダイヤルインサービスの契約が必要です。(VS-201MC ではダイヤルイン番号の取得のみ
可能)
・通知電話番号
相手に通知する通知電話番号を入力します。契約者回線番号またはダイヤルイン番号を入力します。
・発信者番号通知
発信者番号通知の有無を設定します。
・サブアドレス
INS ネット64回線相互間の通信に限り、着信するチャネルを指定することができます。1 チャネ
ルにつき最大 4 つまで着サブアドレスの指定が可能です。サブアドレスの入力は電話番号に続けて*
とサブアドレス番号で指定します。
・発サブアドレス
相手に通知する発サブアドレスを入力します。
Copyright © 1998-2003 NTT DATA CORPORATION
All rights reserved 複製・無断転載厳禁
76
アプリケーション開発入門ガイド
4.13 メッセージ登録ツール
メッセージ登録ツールは、音声メッセージの作成および作成した音声メッセージの確認を行うことがで
きます。
メッセージ登録ツールの主な機能は以下の通りです。
・メッセージの登録
電話機、WAVE ファイルからの登録が可能です。
・メッセージの確認
電話機、スピーカーからの再生が可能です。
・音声ファイルの操作
音声ファイルにコメントをつけたり、削除されたメッセージ番号をファイル上から物理的に削除
することができます。
・メッセージの操作
メッセージのコピー、WAVE ファイルへの出力、圧縮タイプの変更などが可能です。
・StageWriter で定義した音声情報の編集
StageWriter との間で音声メッセージの定義情報(メッセージ番号、コメント)の入出力が可能
です。
StageWriter でプログラミングされた音声メッセージ定義情報に StagePalette で登録された音声
データ(コンテンツ)を関連付けることができます。
Copyright © 1998-2003 NTT DATA CORPORATION
All rights reserved 複製・無断転載厳禁
77
アプリケーション開発入門ガイド
4.14 FAX 登録ツール
FAX 登録ツールは、FAX ファイルの作成および作成した FAX ファイルの確認を行うことができます。
(FAX ファイルとは VOISTAGE 専用の FAX データを格納するファイル形式です。)
FAX 登録ツールの主な機能は以下の通りです。
・FAX ファイル登録
FAX 機、画像ファイル(TIFF、BMP)からの登録が可能です。
・FAX ファイル確認
FAX ファイル画像の表示、FAX 機への出力が可能です。
・FAX ファイル操作
画像ファイル(TIFF、BMP)への出力、ページの追加、削除などが可能です。
・StageWriter で定義した FAX 情報の編集
StageWriter との間で FAX 定義情報(ファイル名、コメント)の入出力が可能です。
StageWriter でプログラミングされた FAX 定義情報に StagePalette で登録された FAX データ(コ
ンテンツ)を関連付けることができます。
Copyright © 1998-2003 NTT DATA CORPORATION
All rights reserved 複製・無断転載厳禁
78
アプリケーション開発入門ガイド
4.15 テストツール
テストツールはマルチメディアカードの機能をボタン操作により、実行できるものです。これによりマ
ルチメディアカードの動作を確認することができます。
テストツールは作成したアプリケーションが正常に動作しない場合、環境設定が正しく行われているか、
アプリケーションが正しく作成されているかの切り分けに使用する事ができます。
テストツールが正常に動作する場合、作成したアプリケーションに問題がある可能性があります。反対
にテストツールが正常に動作しない場合は、環境設定が正しく行われていない可能性があります。
テストツールの主な機能は以下の通りです。
・マルチメディアカード機能の実行
マルチメディアカードが有する機能を実行することができます。主な機能はボタンで操作を行う
ことができ、その他の機能に関しては[ファイル(F)]-[実効命令表示]を選択することにより命令
単位での実行が可能です。実行結果などはすべて[STATE ウィンドウ]に表示されます。
Copyright © 1998-2003 NTT DATA CORPORATION
All rights reserved 複製・無断転載厳禁
79
アプリケーション開発入門ガイド
4.16 音声合成ユーティリティ
音声合成ユーティリティは、標準の音声合成辞書では読むことのできない単語をユーザー辞書として登
録できます。また、テキスト文書を読み上げスピーカーに出力することも可能です。
音声合成辞書ツールの主な機能は以下の通りです。
・音声合成のユーザー辞書への単語の追加、削除、および編集
ユーザー辞書を新規作成でき、ユーザー辞書内の単語を追加、削除、編集が可能です。
・音声合成結果をパソコンのスピーカーで確認
登録した単語ごとに発音を確認、またはテキスト文書を読み込んで文書全体の発声も確認できま
す。
・WAVE ファイルの再生および音声合成結果の WAVE ファイルへの保存
音声合成した音声を WAVE ファイル形式で保存することや保存した音声を確認することが可能で
す。
音声合成辞書ツールは以下のプログラムです。
¥VOISTAGE¥EXEC¥VSTTSDIC.EXE
Copyright © 1998-2003 NTT DATA CORPORATION
All rights reserved 複製・無断転載厳禁
80
アプリケーション開発入門ガイド
5 StagePlayer
StagePlayer は StageWriter などで作成されたプログラムを StagePalette で設定された環境で動作させ
るための実行プログラムです。
StageWriter などで開発したプログラムをコンパイルして作成した IL ファイル(中間言語ファイル)を解
釈して実行するスクリプトエンジン、ミドルウェア、実行状態の監視制御を行うスーパーバイザー、モニ
ター処理から構成されます。
5.1 StagePlayer の機能
StagePlayer は StageWriter などで作成したプログラムを、自動起動し、起動したプロセスの状態監視を
行います。プロセスが異常となった場合は再起動や停止をさせることも可能です。モニター画面により各
プロセスの動作状態が表示され、プロセスの手動起動、手動停止が行えます。また、ディスク容量や PC の
内部温度(マルチメディアサーバー使用時)などの監視を行ない、異常発生時はアプリケーションの停止
や PC の停止および再起動処理を行います。
環境情報ファイル
StagePlayer
スクリプトエンジン
スクリプトエンジン
スクリプトエンジン
IL
IL
IL
StagePalette
図 5.1-1 StagePlayer 構成図
Copyright © 1998-2003 NTT DATA CORPORATION
All rights reserved 複製・無断転載厳禁
81
アプリケーション開発入門ガイド
5.2 StagePlayer 画面
StagePlayer のメイン画面です。ボタンによりモニター画面、エラーログ画面を表示します。また常時、
環境や各プロセスの動作や、ハードウェアの状態(マルチメディアサーバー使用時)を監視しています。
・ステータス
現在の動作状態を表示します。正常に動作している場合は「動作中」の表示となります。表示内容
には以下のものがあります。
1:動作中
2:終了
3:電圧降下
4:温度上昇
5:ファン停止
6:UPS トラブル
7:UPS バッテリーロー
8:停電中
9:HDD トラブル
10:ディスク容量不足
11:初期化失敗
※ 3∼7 はマルチメディアサーバー使用時のみ検出可能です。
・モニター
モニター画面を表示します。
・エラーログ
StagePlayer のエラーログを表示します。
Copyright © 1998-2003 NTT DATA CORPORATION
All rights reserved 複製・無断転載厳禁
82
アプリケーション開発入門ガイド
5.3 モニター画面
モニター画面はユーザーで作成することができます。初期設定ではサンプルのモニター画面が設定され
ています。(サンプルのソースは ¥VOISTAGE¥TUTORIAL¥VSMONTR のフォルダにあります。)
サンプルのモニター画面では各プロセスの動作を確認することができます。また、プロセスの起動、停
止を行うことができます。
・起動
選択されているプログラムを起動します。
・停止
選択されているプロセスを停止します。
・ミドルウエアログ表示
選択されているプロセスの動作ログを表示します。ログを出力するにはログ出力の指定を行ってお
く必要があります。
・スクリプトトレース表示
選択されているプロセスのスクリプトプログラムのトレースを表示します。StageWriter またはス
クリプト言語で作成されたプログラムのみ出力可能です。トレースを出力するにはトレース出力の指
定を行っておく必要があります。
・終了
モニター画面を終了します。
Copyright © 1998-2003 NTT DATA CORPORATION
All rights reserved 複製・無断転載厳禁
83
アプリケーション開発入門ガイド
5.4 ログ、トレース
StagePlayer では動作の確認、検証のためログ、トレースの出力が可能です。ログ、トレースを出力する
には以下の設定が必要です。(StagePlayer エラーログは常に出力されます。)
① StagePlayer 画面からオプション画面を表示させます。
画面、左上部をクリックし、オプ
ション(O)を選択して下さい。
② オプション画面より出力させるログ、トレースにチェックをつけ、[設定]ボタンを押します。
設定状態を初期値として保存する場合は、初期値のタグで各ログ、トレースにチェックをつけます。
出力させるログ、トレースにチェ
ックをつけて、[設定]ボタンを押
します。
Copyright © 1998-2003 NTT DATA CORPORATION
All rights reserved 複製・無断転載厳禁
84
アプリケーション開発入門ガイド
・StagePlayer エラーログ
StagePlayer エラーログにはシステム起動、停止などシステム全体としてのログが出力されます。
表示方法
StagePlayer 画面で「エラーログ」ボタンを押して下さい。
表示内容
発生日付 : 発生時刻 : メッセージコード : メッセージ
ファイル
VOISTAGE¥EXEC¥Spv_err.er1
Copyright © 1998-2003 NTT DATA CORPORATION
All rights reserved 複製・無断転載厳禁
85
アプリケーション開発入門ガイド
・ミドルウエアログ
ミドルウエアログは各プロセスごとに作成され、主にプロセスとマルチメディアカードの動作状態
が出力されます。
表示方法
モニター画面でプロセスを選択後、「ログ」ボタンを押して下さい。尚、ミドルウエアログの出力
には予めログ出力の指定が必要です。
表示内容
発生日付 : 発生時刻 : メッセージコード : 内部関数名 : メッセージ
尚、内容の詳細については弊社解析用ログとなっている為公開しておりません。
ファイル
VOISTAGE¥EXEC¥xxxxxxxx.er1(xxxxxxxx:プログラム番号+回線番号)
VOISTAGE¥EXEC¥xxxxxxxx.er2
ログは、初め拡張子 er1 に出力されますが、約 1MB で拡張子 er2 に内容がコピーされ、新たに er1
に出力されます。
Copyright © 1998-2003 NTT DATA CORPORATION
All rights reserved 複製・無断転載厳禁
86
アプリケーション開発入門ガイド
・スクリプトトレース
スクリプトトレースは各プロセスごとに作成され、スクリプトの実行結果が出力されます。
表示方法
モニター画面でプロセスを選択後、「スクリプトトレース表示」ボタンを押して下さい。尚、ス
クリプトトレースの出力には予めスクリプトトレース出力の指定が必要です。
表示内容
発生日付 : 発生時刻 : MPS 行番号 : 実行命令名 : RETVAL 値 : 命令パラメータ
RETVAL 値については1つ前の命令の戻り値が表示されます。
ファイル
VOISTAGE¥EXEC¥xxxxxxxx.vt1(xxxxxxxx:プログラム番号+回線番号)
VOISTAGE¥EXEC¥xxxxxxxx.vt2
スクリプトトレースは、初め拡張子 vt1 に出力されますが、約 1MB で拡張子 vt2 に内容がコピー
され、新たに vt1 に出力されます。
Copyright © 1998-2003 NTT DATA CORPORATION
All rights reserved 複製・無断転載厳禁
87
アプリケーション開発入門ガイド
・S.100 ログ
S.100 ログには内部で実行している S.100 API 関数の実行結果が出力されます。
表示方法
S.100 ログはバイナリ形式で出力されており、内容を参照するときは、ログ表示ツールを利用し
ます。尚、S.100 ログの出力には予め S.100 ログ出力の指定が必要です。
ファイル
VOISTAGE¥EXEC¥Vss10xxx.lg1(xxx:S.100 セション)
VOISTAGE¥EXEC¥Vss10xxx.lg2
S.100 ログは、初め拡張子 lg1 に出力されますが、約 1MB で拡張子 lg2 に内容がコピーされ、新
たに lg1 に出力されます。
・ファームウエアログ
現在ファームウエアログについては未サポートです。
・ISDN プロトコルログ
ISDN プロトコルログには VS-403MC 使用時に ISDN の通信プロトコルが出力されます。
VS-402MC 時には出力できません。
表示方法
ISDN プロトコルログは弊社解析用のログの為、表示ツールは提供しておりません。
ファイル
VOISTAGE¥EXEC¥Vslgisdn.vl1
VOISTAGE¥EXEC¥Vslgisdn.vl2
ISDN プロトコルログは、初め Vslgisdn.vl1 に出力されますが、約 1MB で Vslgisdn.vl2 に内容が
コピーされ、新たに Vslgisdn.vl1 に出力されます。
・FAX プロトコルログ
FAX プロトコルログには VS-402MC/403MC 使用時に FAX の通信プロトコルが出力されます。
表示方法
FAX プロトコルログは弊社解析用のログの為、表示ツールは提供しておりません。
ファイル
VOISTAGE¥EXEC¥Vslgfax.vl1
VOISTAGE¥EXEC¥Vslgfax.vl2
FAX プロトコルログは、初め Vslgfax.vl1 に出力されますが、約 1MB で Vslgfax.vl2 に内容がコ
ピーされ、新たに Vslgfax.vl1 に出力されます。
Copyright © 1998-2003 NTT DATA CORPORATION
All rights reserved 複製・無断転載厳禁
88
アプリケーション開発入門ガイド
6 開発・運用のポイント
6.1 回線特性設定について
マルチメディアカード(VS-402MC)をご利用の場合は回線特性設定を行う必要があります。回線特性設
定とは、アナログ NTT 回線、PBX 回線、TA アナログポートなどの各種回線環境の特性(コールプログレス
トーン)を検知し、カテゴリーファイル、回線特性データファイルに情報を設定する機能です。マルチメ
ディアカードは、その情報をもとに電話回線の発信や回線断などを正しく処理できるようになります。
各コールプログレストーン検出が正常に行えない場合は以下のポイントに注意してみて下さい。
・ダイヤルトーン
受話器を上げた(OFFHOOK)際に聞こえるトーンです。マルチメディアカードではこのトーンを認
識することで、回線が接続されており発信が可能であると判断します。通常の回線では受話器を上げ
たままの状態を数十秒保持するとダイヤルトーンが違うトーンに変化したり、トーンの送出が途絶え
ます。一度、使用する回線に通常の電話機を接続しダイヤルトーンの送出時間を確認の上、解析時間
を設定して下さい。
・ビジートーン
発信時に相手側が話中であったとき、または通話中に相手側が回線を切断したときのトーンです。
マルチメディアカードではこのトーンを認識することで、発信時の話中、通話中の相手側回線切断を
判断します。自動検出では発信先が受話器を上げている状態(話中状態)で検出を行っていますが、
使用する回線によってはこのトーンと通話中に相手側が回線を切断したときのトーンが違う場合が
あります。このような場合はビジートーンの自動検出を受話器を置いた状態で行ない、電話が鳴った
瞬間に回線を切断してみて下さい。
・リングバックトーン
発信時に相手側を呼び出しているときのトーンです。マルチメディアカードではこのトーンを認識
することで、相手の呼出し中を判断し、またこのトーンが途切れることで相手側の回線接続(OFFHOOK)
を判断します。自動検出が正常に行えない場合は解析時間を長くして下さい。
何度操作を行っても正常終了しない場合は、マルチメディアカードの環境が正しく設定されていないか、
またはトーンが検知できない可能性があります。PBX や TA のコールプログレストーンの仕様を確認して
VS-402MC の場合は回線特性設定ツールで変更して下さい。
Copyright © 1998-2003 NTT DATA CORPORATION
All rights reserved 複製・無断転載厳禁
89
アプリケーション開発入門ガイド
6.2 音声認識プログラムについて
6.2.1 音声認識について
人間にとってもっとも自然なコミュニケーション手段である音声をコンピュータが理解する技術が音声
認識技術です。音声認識をアプリケーションプログラムに組み込むことにより、様々な入力に対して自分
の声で操作ができるようになります。VOISTAGE で使用している音声認識エンジンには以下の技術が採用さ
れています。
・不特定話者電話音声認識技術
不特定話者音声認識アルゴリズムを採用しており、ノイズや歪みの多い電話回線においても高い認
識性能を誇ります。また、各種高速化処理手法によりレスポンスの良い認識応答を実現できます。不
特定話者対応の音声認識モデルを使っているため、ユーザーごとに長時間発声して登録する必要はあ
りません。
・連続音声認識技術
これまでの音声認識では、離散単語認識と呼ばれる技術が多く使われていました。これは、一度に
1つの単語しか認識できないため、1単語ずつ認識を行っていました。連続音声認識技術を導入する
ことにより、連続して発声した複数の単語を一度に認識することができます。
6.2.2 文法
VOISTAGE の音声認識では、一般的にはどのような言葉を認識するか、つまり認識対象の言葉をあらかじ
め規定しておきます。これを「文法」と呼び、テキストファイルに記述します。このテキストファイルを
コンパイラを使用してコンパイルすることで、音声認識時に必要となる、音声認識モデルを作成します。
文法の記述方法および音声認識モデルの作成方法に関しては、「認識用文法の書き方」
(¥VOISTAGE¥RECOGN¥DOCS¥GRAMMAR.DOC)を参照して下さい。
音声認識を実行するにあたり、どのような発声を認識するのかを文法名で指定する必要があります。
なお、文法で規定した言葉以外の発声が入力された場合、音声認識エンジンは文法に規定された範囲の
言葉しか認識結果として返すことができません。よって誤認識あるいは認識結果が「なし」となります。
特に、音声認識技術の性格上、音声認識エンジンは一定の音声認識性能(認識率、認識速度)を保証す
るものではありません。従って、音声認識エンジンを利用したアプリケーションプログラムの実行時に音
声認識の誤認識により損害が生じた場合の責任は負いかねますので、あらかじめご了承下さい。
・文法における注意点
認識させようとしている単語の発声にあった記述が必要です。
実際に発声する場合と文字で書く場合に違いが出るので、いかに発声に近い記述ができるかが重要で
す。
Copyright © 1998-2003 NTT DATA CORPORATION
All rights reserved 複製・無断転載厳禁
90
アプリケーション開発入門ガイド
6.2.3 アプリケーションへの組み込み
音声認識処理をアプリケーションに組み込む場合にはいくつかの注意点があります。下記に示す内容を
考慮し、アプリケーションを作成して下さい。
・ノイズ測定の重要性
音声認識エンジンでは、ユーザーの発声終了を自動的に検出するために、あらかじめノイズ測定命
令を発行して周辺ノイズの測定を行わなければいけません。ノイズ測定が正しく行なわれていないと、
音声認識自体が正しく動作せず、正しい認識結果が得られないことがあります。
・ノイズ測定のタイミング
1つの対話において回線接続後、音声認識処理を行うまでに必ず1度ノイズ測定を実施する必要が
あります。実施タイミングとしては、対話シーケンスにより異なりますが、一般的には回線接続後の
ガイダンスの間などに実施します。ポイントとしては、相手側がまず喋らないだろうと思うところで
測定することです。
・認識の処理タイミング
実際に対話シーケンス内で音声認識を行う場合、相手側の発声するタイミングを、ユーザーが意識
しない範囲で上手に誘導することです。たとえば、音声認識処理が始まっていないのに発声されてし
まうと、声の途中からの認識となるため正しい認識ができません。ポイントとしては、認識処理実行
前のガイダンス終了部分に無音が長時間あると、その無音部分でユーザーが発声してしまう場合があ
るので、無音部分を極力なくすこと。また、BEEP 音を発生させるなど、相手側が発声のタイミング
を取りやすくすることです。
認識率を向上させるには、前項までに記述した内容を考慮した上で音声認識モデルを作成し、実際に使
用する環境に近い試験環境で、音声認識部分の試験を繰り返し実施して頂き、その試験結果に基づき文法
の記述をチューニングしていくことをお勧めします。
実際に使用する環境とは、使用する電話環境(周辺ノイズ、回線品質、電話機の種類など)の他に、音
声認識の対象と想定される語彙が、使用される話者の喋り方(発声しだすタイミング、声の大小、声質、
なまり、方言、間違いなど)等の要素を分析し、できる限りの要素条件を網羅することです。
Copyright © 1998-2003 NTT DATA CORPORATION
All rights reserved 複製・無断転載厳禁
91
アプリケーション開発入門ガイド
6.2.4 誤認識時の処理
一般的に音声認識技術はいつも完璧に正しく認識できるとは限りません。(正しく認識できないことを
「誤認識」と呼びます。)そのため音声認識機能を持つシステムやアプリケーションプログラムを開発す
る場合には、常に誤認識を考慮に入れたプログラミングが必要となります。
たとえば、都道府県名認識で認識結果が「東京都」であった場合には、
「都道府県名は東京都でよろしいですか?
はい・いいえでお答え下さい」
のように、認識結果を確認し、認識誤りのときには再入力を促すなどの方法が考えられます。また電話回
線の状態が悪いときなど、何度認識しても誤認識となってしまう場合もあります。
また、通常の単語(地名や商品名)に比べ、数字(0∼9)などの比較的短い単語では、認識率は低下し
ます。数字の入力に関しては、できるだけ PB 信号入力を併用することをお勧めします。
VOISTAGE が使用している音声認識エンジンはあらかじめ認識する単語を登録した辞書を用意しその中か
ら最も近いと思われる単語を認識結果とします。ゆえに辞書にない単語を入力した場合も何らかの結果を
正常として返します。このような場合は以下のような方法で対処して下さい。
例:「あなたの好きな動物は犬ですか?猫ですか?」
認識単語 認識時の戻り値
いぬ
Dog
ねこ
Cat
うし
Error
ぶた
Error
とり
Error
きりん
Error
ぞう
Error
たぬき
Error
上記のような認識辞書を用意し、期待する戻り値(Dog,Cat)以外はエラーとする。
また単語を増やすことで認識辞書にない単語を入力された場合もエラーとなる可能性が増えます。
Copyright © 1998-2003 NTT DATA CORPORATION
All rights reserved 複製・無断転載厳禁
92
アプリケーション開発入門ガイド
6.3 24時間運用について
VOISTAGE 基本ソフトウェアは、24 時間運用を前提としています。そのためシステムの異常時の回復手段
として以下の方法を用いています。
・自動ログイン機能(Windows NT の機能)
・自動再起動機能(Windows NT の機能)
・リモートアクセス機能(pcANYWHERE などの市販ツールの利用)
6.3.1 自動ログインの設定
システムに異常が発生し Windows NT の再起動を行うとログオン画面で停止した状態となり、システムを
自動的に起動させることができません。そこで以下の設定を行ない自動的にログオンを行えるようにしま
す。
①
レジストリエディタ(WINNT¥SYSTEM32¥REGEDT32.EXE)を起動する。
②
レジストリエディタで、次のサブキーを選択。
HKEY_LOCAL_MACHINE¥SOFTWARE¥Microsoft¥Windows NT¥CurrentVersion¥Winlogon
③
REG_SZ 型で AutoAdminLogon という名前の値エントリを追加し、
1という値を指定。
④
REG_SZ 型で DefaultPassword という名前のエントリを追加し、
DefaultUserName 値の下にリストされているユーザーのパスワードを
入力。
(ご注意):空のパスワードを指定すると 1 回しか自動ログインができません。
6.3.2 システムの設定
・メモリダンプ発生時に自動リセット
メモリダンプ発生時に自動リセットを行いたい場合は、以下の設定を行って下さい。自動リセット
されると、イベントビューアのログにメモリダンプの履歴が残るようになります。
①
「コントロールパネル」から「システム」アイコンを起動して下さい。
②
「起動/シャットダウン」タブを選択して下さい。
③
「回復」の項目から以下の設定を行って下さい。
「システムログにイベントを書き込む」にチェック。
「自動的に再起動する」にチェック。
④
「OK」ボタンをクリックし、システムを再起動する。
(ご注意):WatchDogTimer を使用している場合は、本機能は使用しないで下さい
Copyright © 1998-2003 NTT DATA CORPORATION
All rights reserved 複製・無断転載厳禁
93
アプリケーション開発入門ガイド
・起動時間の短縮
起動時間を短縮したい場合は、以下の設定を行って下さい。
①
「コントロールパネル」から「システム」アイコンを起動して下さい。
②
「起動/シャットダウン」タブを選択して下さい。
③
「起動システム」の項目から「待ち時間」に時間をセットして下さい。2秒程度を推奨しま
す。
④
「OK」ボタンをクリックし、システムを再起動する。
・仮想メモリの設定
実装メモリ容量の大小に関わらず、必ず仮想メモリの最大値を変更して下さい。
①
「コントロールパネル」から「システム」アイコンを起動して下さい。
②
「パフォーマンス」タブを選択して下さい。
③
「仮想メモリ」項目から変更ボタンを押して下さい。
④
C ドライブのページファイルサイズの「最大サイズ」を 200MB に変更して下さい。
⑤
「設定」ボタンをクリック。
⑥
「OK」ボタンをクリックし、システムを再起動する。
・マルチタスクの設定
マルチタスクの設定は必ず変更して下さい。
①
「コントロールパネル」から「システム」アイコンを起動して下さい。
②
「パフォーマンス」タブを選択して下さい。
③
「アプリケーションの処理優先度」項目のフォアグラウンドアプリケーションの処理優先
度を「低」に設定して下さい。
④
「OK」ボタンをクリックし、システムを再起動する。
(ご注意):本設定は、VOISTAGE 基本ソフトウェアインストール時に自動設定されます。
Copyright © 1998-2003 NTT DATA CORPORATION
All rights reserved 複製・無断転載厳禁
94
アプリケーション開発入門ガイド
6.4 マルチメディアカード種別による機能比較
マルチメディアカードの設定機能の違いについて各マルチメディアカードでサポートしている機能を示
します。
項番
スクリプト言語命令
概要
402MC
403MC
201MC
1
ADD
加算
○
○
○
2
ADDREC
新規レコード作成
○
○
○
3
AFTERDATE
現在から指定日数後の日付取得
○
○
○
4
AFTERDATE2
指定日付から指定日数後の日付取得
○
○
○
5
AFTERTIME
現在から指定時間後の時間取得
○
○
○
6
AFTERTIME2
指定日時から指定時間後の時間取得
○
○
○
7
BEEP
ビープ音の発生
○
○
○
8
CALL
CALL 命令
○
○
○
9
CALLIL
IL を呼び出す
○
○
○
10
CALLREJECT
着信拒否
×
○
×
11
CHCONNECT
チャネル間接続
○
○
×
12
CHECKDATE
日付の形式チェック、曜日計算
○
○
○
13
CHECKDTMF
タッチトーンバッファのチェック
○
○
○
14
CHECKTIME
時間の形式チェック
○
○
○
15
CHHOLD
チャネル保留
○
○
×
16
CHR
文字コードを文字に変換
○
○
○
17
CHUNHOLD
チャネル保留解除
○
○
×
18
CLEAR
変数のクリア
○
○
○
19
CLEARDTMF
タッチトーンバッファクリア
○
○
○
20
CLOSEIL
IL をクローズ
○
○
○
21
CLOSETBL
DB,テーブルのクローズ
○
○
○
22
CNGCHECK
FAX 受信か電話かをチェック
○
○
×
23
COPYFILE
ファイルコピー
○
○
○
24
CREATEDB
データベースの作成
○
○
○
25
CREATETBL
テーブルの作成
○
○
○
26
CSV
CSV 形式変換
○
○
○
27
DATAREC
データ受信
○
○
×
28
DATASEND
データ送信
○
○
×
29
DBPATH
データベースディレクトリの変更
○
○
○
30
DELDB
データベース削除
○
○
○
31
DELDIR
ディレクトリ削除
○
○
○
32
DELFILE
ファイル削除
○
○
○
33
DELREC
カレントレコード削除
○
○
○
Copyright © 1998-2003 NTT DATA CORPORATION
All rights reserved 複製・無断転載厳禁
95
アプリケーション開発入門ガイド
項番
スクリプト言語命令
概要
402MC
403MC
201MC
34
DELTBL
テーブル削除
○
○
○
35
DEVICECHECK
ドライブ状態チェック
○
○
○
36
DIAL
ダイヤルコールする
○
○
○
37
DIFFDATE
2つの日付の日数差
○
○
○
38
DISKFREE
ドライブの空き領域取得
○
○
○
39
DISPLAY
画面出力
○
○
○
40
DIV
割り算
○
○
○
41
EDIT
レコード更新開始
○
○
○
42
EXBEEP
秒数、周波数指定のビープ音
○
○
○
43
EXECDLL
ロードした DLL を呼び出す
○
○
○
44
EXECSQL
SQL 文発行
○
○
○
45
FAXCHECK
FAX のページ数取得
○
○
○
46
FAXHEADCUT
FAX のヘッドカットサイズ設定
○
○
○
47
FAXHEADSET
FAX のヘッドデータ設定
○
○
×
48
FAXIMCNV
FAX データインチ・ミリ属性変更
○
○
○
49
FAXPCHECK
FAX の属性取得
○
○
○
50
FAXREC
FAX の受信
○
○
×
51
FAXSEND
FAX の送信
○
○
×
52
FAXTCGET
TSI 又は CSI を取得する
○
○
×
_53
FAXTCSET
TSI 又は CSI を設定する
○
○
×
54
FAXTOTIF
FAX ファイルを TIFF-F ファイルに変換
○
○
○
55
FCLOSE
ファイルクローズ
○
○
○
56
FCREATE
テキストファイル作成
○
○
○
57
FGETS
テキストファイル読み込み
○
○
○
58
FILEFINDEND
ファイル検索終了
○
○
○
59
FILEFINDFIRST
ファイル検索開始
○
○
○
_60
FILEFINDNEXT
次ファイル検索
○
○
○
_61
FILEREC
ファイル受信
○
○
×
_62
FILESEND
ファイル送信
○
○
×
63
FILESIZE
ファイルサイズ取得
○
○
○
64
FILESPEECH
テキスト中の文字を音声合成
○
○
○
65
FILETOWAV
テキスト文字を音声合成し、WAVE 出力
○
○
○
66
FLASH
フッキング
○
○
×
67
FOPEN
テキストファイルオープン
○
○
○
68
FORMATL
文字列操作(左詰め)
○
○
○
69
FORMATR
文字列操作(右詰め)
○
○
○
70
FPUTS
テキストファイル書き込み
○
○
○
71
FREEDLL
ロードした DLL をアンロードする
○
○
○
72
FSEEK
テキストファイルカレント位置変更
○
○
○
Copyright © 1998-2003 NTT DATA CORPORATION
All rights reserved 複製・無断転載厳禁
96
アプリケーション開発入門ガイド
項番
スクリプト言語命令
概要
402MC
403MC
201MC
73
GETAPPPARAM
プログラムの起動パラメータ取得
○
○
○
74
GETCALLID
発信者番号の取得
○
○
○
※ VS-402MC の場合は着信前に取得可能
VS-403MC の場合は回線種別の設定を INS ネットサービス設定で取得可能、電話網からの発信者番号を
取得するには、INS ナンバーディスプレイ契約が必要
75
GETCSV
CSV 形式から値取得
○
○
○
76
GETDATE
現在日付、曜日取得
○
○
○
77
GETDIRSIZE
ディレクトリ下の使用容量取得
○
○
○
78
GETDTMF
タッチトーンの取得
○
○
○
79
GETHENFIELD
フィールドの値を取得
○
○
○
80
GETILPARAM
IL のパラメータ取得
○
○
○
81
GETLINENO
使用回線番号の取得
○
○
○
82
GETLINESTATUS
回線接続状態取得
○
○
○
83
GETTIME
現在時間取得
○
○
○
84
GOTO
GOTO 命令
○
○
○
85
HANTOZEN
半角文字を全角文字に変換
○
○
○
86
IF,ELSE,ENDIF
IF,ELSE,ENDIF 命令
○
○
○
87
INSTR
文字列検索
○
○
○
88
INT
小数点以下切り捨て
○
○
○
89
JOIN
文字列連結
○
○
○
90
LEFT
文字列左から抽出
○
○
○
91
LEN
文字列の長さ取得
○
○
○
92
LOADDLL
DLL モジュールをローディング
○
○
○
93
LOADIL
IL を再ロードする
○
○
○
94
LOADPRO
プロファイルの一括設定
○
○
○
95
LOGOFF
ログ出力 OFF
○
○
○
96
LOGON
ログ出力 ON
○
○
○
97
MAKEDIR
指定ディレクトリ作成
○
○
○
98
MAXREC
レコード数取得
○
○
○
99
MOD
割り算の余り取得
○
○
○
100
MOVE
変数の代入
○
○
○
101
MUL
掛け算
○
○
○
102
NCHECK
数値チェック
○
○
○
103
NETSRVCMD
サービス制御コマンド発行
×
○
×
104
NFORM
数値文字列正規化
○
○
○
105
ONHOOK
回線切断
○
○
○
106
OPENIL
IL ファイルをオープン
○
○
○
107
OPENTBL
DB,テーブルオープン
○
○
○
108
OUTDIAL
ダイヤル信号送出
○
○
×
Copyright © 1998-2003 NTT DATA CORPORATION
All rights reserved 複製・無断転載厳禁
97
アプリケーション開発入門ガイド
項番
スクリプト言語命令
概要
402MC
403MC
201MC
109
OUTDTMF
トーンの出力
○
○
○
110
OVERLAYIMAGE
BMP を重ねあわせて BMP 出力
○
○
○
111
PARAMGET
パラメータ値の取得
○
○
○
※VS-403MC の場合、着信転送電話番号 AUTO_TRANSFER と着信拒否 CALLREJECT の取得ができる。
112
PARAMSET
パラメータ値の変更
○
○
○
※VS-403MC の場合、 着信転送電話番号 AUTO_TRANSFER と着信拒否 CALLREJECT の設定ができる。
113
PARTYBEGIN
三者通話開始
○
○
×
114
PARTYCHANGE
三者通話切り替え
×
○
×
115
PARTYFINISH
三者通話終了
○
○
×
116
PARTYPREPARE
三者通話の第三者呼出し
○
○
×
117
QUIT
QUIT 命令
○
○
○
118
READREC
次レコード読み込み
○
○
○
119
RECOGNEND
音声認識終了
○
○
○
120
RECOGNINIT
音声認識初期化
○
○
○
121
RECOGNNOISE
ノイズ測定
○
○
○
122
RECOGNVOICE
音声認識
○
○
○
123
RENAMEFILE
ファイル名の変更
○
○
○
124
REPORT
スーパーバイザーに通知
○
○
○
125
REQUEST
スーパーバイザーに要求
○
○
○
126
RETURN
RETURN 命令
○
○
○
127
RIGHT
文字列右から抽出
○
○
○
128
SEARCHFILE
ファイルの存在チェック
○
○
○
129
SELECT
レコード検索、ソート
○
○
○
130
SELECTCLEAR
検索条件クリア
○
○
○
131
SELECTSET
検索条件設定
○
○
○
132
SENSE
各種情報取得
○
○
○
※取得できる情報は各カードにより異なる。
133
SETDATE
現在日付設定
○
○
○
134
SETHENFIELD
フィールドに値を設定
○
○
○
135
SETILPARAM
IL のパラメータ設定
○
○
○
136
SETTIME
現在時間設定
○
○
○
137
SLEEP
指定秒数休止
○
○
○
138
SORTCLEAR
ソート順設定クリア
○
○
○
139
SORTSET
ソート順設定
○
○
○
140
SQR
平方根
○
○
○
141
SUB
減算
○
○
○
142
SUBSTR
文字列から文字列の抽出
○
○
○
143
SWITCH
SWITCH 命令
○
○
○
144
SYSCALL
外部プログラム起動
○
○
○
Copyright © 1998-2003 NTT DATA CORPORATION
All rights reserved 複製・無断転載厳禁
98
アプリケーション開発入門ガイド
項番
スクリプト言語命令
概要
402MC
403MC
201MC
145
TBLCLEAR
全レコードの削除
○
○
○
146
TEXTIN
CSV 形式でレコード追加
○
○
○
147
TEXTOUT
テーブル内内容 CSV 形式出力
○
○
○
148
TEXTSPEECH
テキスト文字を音声合成
○
○
○
149
TEXTTOFAX
テキストファイルを FAX 変換
○
○
○
150
TEXTTOIMAGE
テキストを BMP に変換
○
○
○
151
TEXTTOWAV
テキスト文字を音声合成し、WAVE 出力
○
○
○
152
TIFTOFAX
TIFF-F を FAX に変換
○
○
○
153
TRANSFER
電話転送
○
○
○
154
TTSEND
音声合成終了処理
○
○
○
155
TTSINIT
音声合成初期処理
○
○
○
156
TXVOICECLOSE
プロンプトファイルのクローズ
○
○
○
157
TXVOICELOAD
プロンプトファイルのオープン
○
○
○
158
TXVOICEPLAY
プロンプトファイルの再生
○
○
○
159
UUIGET
ユーザー間情報取得
×
○
○
160
UUISET
ユーザー間情報設定
×
○
○
161
UPDATE
レコード更新終了
○
○
○
162
UPDATECANCEL
レコード更新キャンセル
○
○
○
163
VOICECHECK
音声メッセージの属性取得
○
○
○
164
VOICECHECKBG
非同期音声再生動作確認
○
○
×
165
VOICECOPY
音声ファイルのコピー
○
○
○
166
VOICEDELETE
音声ファイルの削除
○
○
○
167
VOICEPACK
音声ファイルのガベ−ジ
○
○
○
168
VOICEPLAY
音声再生
○
○
○
169
VOICEPLAYBG
非同期音声再生
○
○
×
170
VOICERECORD
音声録音
○
○
○
171
VOICESTOPBG
非同期音声再生停止
○
○
×
172
VSXCHECK
音声メッセージ数取得
○
○
○
173
VSXTOWAV
音声ファイルを WAVE に変換
○
○
○
174
WAITCONNECT
接続待ち
○
○
×
175
WAITRING
着信待ち
○
○
○
※VS-403MC の場合、着信転送設定、着信拒否設定が行われていると命令が異常(-1)で終了する。
176
WAVTOVSX
WAVE を音声ファイルに変換
○
○
○
177
WHILE
WHILE 命令
○
○
○
Copyright © 1998-2003 NTT DATA CORPORATION
All rights reserved 複製・無断転載厳禁
99
アプリケーション開発入門ガイド
6.5 発信時相手応答検出
マルチメディアカード(VS-402MC)での発信時の相手応答検出には以下の3種類の方法があります。
相手応答検出の設定はデフォルトでは全て ON になっており、設定を変更する場合はカテゴリー編集ツール
から値を変更しアプリケーションの再起動後に有効となります。
①極性反転による回線接続検出
発呼時の極性反転による回線接続検出の有無を指定します。NTT アナログ回線では極性反転があります
が、PBX 等では機種により極性反転のないものも存在します。
設定パラメータ: №16
発呼時極性反転確認
CALL_REVERSE_ON
②リングバックトーンによる回線接続検出
発呼時のリングバックトーンによる回線接続検出の有無を指定します。マルチメディアカードがリング
バックトーンのパターンを検出した後、相手側の OFFHOOK によりリングバックトーンが途切れたことで回
線接続とみなします。リングバックトーンのパターン検出には NTT アナログ回線の場合最大 9 秒ほどかか
ります。そのためリングバックトーンのパターンを検出する前に相手側が OFFHOOK すると回線接続を検出
することができません。また、PBX の機種により相手側にリング信号を送出する前にあらかじめマルチメ
ディアカードにリングバックトーンを送出することが可能です。詳しくは PBX のメーカにお問い合わせ下
さい。
設定パラメータ: №17
発呼時リングバックトーン確認
CALL_RINGBACK_ON
③相手側の音声による回線接続検出
発呼時の相手側の音声による回線接続検出の有無を指定します。相手側の OFFHOOK 後のエネルギー(音
声等)で検出を行います。
設定パラメータ: №18
Copyright © 1998-2003 NTT DATA CORPORATION
All rights reserved 複製・無断転載厳禁
発呼時キャリア受信確認
100
CALL_CARRIER_ON
アプリケーション開発入門ガイド
6.6 回線切断検出
マルチメディアカード(VS-402MC)での回線接続後の切断検出には以下の 3 種類の方法があります。
回線切断検出の設定はデフォルトでは全て ON になっています。設定を変更する場合はカテゴリー編集ツー
ルにより値を変更しアプリケーションの再起動後に有効となります。
①極性反転による回線切断検出
極性反転による回線切断検出の有無を指定します。NTT アナログ回線では極性反転がありますが、PBX 等
では機種により極性反転のないものも存在します。
設定パラメータ: №20
回線極性反転確認
LINE_REVERSE_ON
②回線瞬断による回線切断検出
回線瞬断による回線切断検出の有無を指定します。
設定パラメータ: №21
回線断回線瞬断検出
LINE_POWER_FAIL_ON
③ビジートーンによる回線切断検出
ビジートーンによる回線切断検出の有無を指定します。NTT アナログ回線の場合、マルチメディアカー
ドがビジートーンを検出するには 5 秒ほどかかります。
設定パラメータ: №22
Copyright © 1998-2003 NTT DATA CORPORATION
All rights reserved 複製・無断転載厳禁
回線断ビジートーン検出
101
LINE_BUSY_ON
アプリケーション開発入門ガイド
6.7 VS-402MC 使用時の使用回線別留意点
6.7.1 NTT アナログ回線
●回線特性設定の必要性
NTT アナログ回線を使用する場合、回線特性はデフォルト値の設定が NTT アナログ回線であるため設定
変更を行う必要はありません。
●相手側 DP 出力時の NTT 局側の回線切断
NTT アナログ回線を使用時にトーン取得のため相手側からダイヤルパルスを送出すると、まれに NTT 局
側で回線を切断することがあります。そのような場合、プッシュ式電話機をお使いの方はトーン切り替え
を行う必要があります。切り替え方法は電話機の機種によって異なりますが、一般的に下記の操作で切り
替えることができます。
・電話機のトーンボタンまたは「*」ボタンを押す。
・切り替えスイッチを「PB」の位置にする。
6.7.2 PBX 回線
●回線特性設定の必要性
PBX を使用する際に NTT アナログ回線と回線特性の仕様が異なる場合は回線特性設定を行う必要があり
ます。
●転送処理
転送処理には PBX やボイスワープ回線などの転送を行う機器が必要となります。
PBX を使用する場合には転送時のショートフック時間を 500ms∼700ms 程度に設定して下さい。(PBX の機
種により値は異なります)
設定方法は下記に示したところから行うことができます。
設定方法 VS-402MC:回線特性データファイルの NCU→フラッシュ時間の設定
スクリプト言語で転送のアプリケーションを作成する場合は基本的に TRANSFER 命令を使用して下さい。
(OUTDIAL と WAITCONNECT 命令で処理を行うことも可能です。)
また PBX の機種によってはショートフックによる通話相手の切り替えに時間がかかり、その際に音声再生
処理を行うと音声の最初の部分が相手側に聞こえない可能性があります。回避するには SLEEP 命令を入れ
るか、切れてしまう長さの無音の後に再生する音声を録音するようにして下さい。
転送時の相手応答検出としては、①リングバックトーンの終了、②極性反転、③音声エネルギー検出の 3
つが上げられます。また音声エネルギー検出ができない場合がありますので①のリングバックトーンの終
了で相手応答の検出を行って下さい。
Copyright © 1998-2003 NTT DATA CORPORATION
All rights reserved 複製・無断転載厳禁
102
アプリケーション開発入門ガイド
なお、①のリングバックトーンの終了での応答検出はマルチメディアカードがリングバックトーンを検
出した後でしか判断できないため、相手側がコール後すぐに着信応答した場合には検知できません。(PBX
によっては相手側にリンガを送出する前にマルチメディアカードに数コールのリングバックトーンを送出
することが可能な機種もあります。)
PBX での転送処理でよく発生するトラブルの回避策を示します。
① マルチメディアカードで転送処理がタイムアウトになる。
・カテゴリーが正しく設定されていない可能性があります。
カテゴリー編集ツールで以下のパラメータを設定して下さい。
№16
発呼時極性反転確認
CALL_REVERSE_ON=1
№17
発呼時リングバックトーン確認
CALL_RINGBACK_ON=1
№18
発呼時キャリア受信確認
CALL_CARRIER_ON=1
・PBX で極性反転を出すことができる場合、PBX で極性反転を出して下さい。
・リングバックトーンの終了をマルチメディアカードが検出できていない可能性があります。
転送側で呼出し音が数回(4回以上)なった後で受話器を上げて下さい。
・リングバックトーンが正しく設定されていない可能性があります。
回線特性設定を行って下さい。
② 転送先電話機で受話器を上げる前にマルチメディアカードが応答する。
・PBX から何らかの音が送出され、それを音声エネルギーとして検出している可能性があります。
カテゴリー編集ツールで以下のパラメータを設定して下さい。
№18
発呼時キャリア受信確認
CALL_CARRIER_ON=0
③ 転送先電話機では呼出音が鳴るが、マルチメディアカードで話し中になる。
・ビジートーンが正しく設定されていない可能性があります。
回線特性設定を行って下さい。
④ 転送先電話機で受話器を上げたが、マルチメディアカードで切断される。
・ビジートーンが正しく設定されていない可能性があります。
回線特性設定を行って下さい。
⑤ 転送処理で発信側電話機が保留状態にならない。
・ショートフックの時間が短い可能性があります。
下記の設定でショートフックの時間を長くして下さい。
回線特性データファイルの NCU→フラッシュ時間の設定
⑥ 転送処理で発信側電話機が切断される。
・ショートフックの時間が長い可能性があります。
下記の設定でショートフックの時間を短くして下さい。
回線特性データファイルの NCU→フラッシュ時間の設定
Copyright © 1998-2003 NTT DATA CORPORATION
All rights reserved 複製・無断転載厳禁
103
アプリケーション開発入門ガイド
6.7.3 TA(ターミナルアダプター)アナログポート
6.7.4 ナンバーディスプレイ回線
ナンバーディスプレイ回線を使用する場合にはカテゴリー編集ツールにより以下の設定をする必要があり
ます。またナンバーディスプレイの契約を行っていない回線で以下の設定を行った場合はマルチメディア
カードが着信しなくなりますのでご注意下さい。
№9 ID受信端末起動着信有無 GET_ID_CALL=2
№12 ID受信端末起動着信通知 GET_ID_CALL_NOTE=1
Copyright © 1998-2003 NTT DATA CORPORATION
All rights reserved 複製・無断転載厳禁
104
アプリケーション開発入門ガイド
マルチメディアカード基本ソフトウェア
アプリケーション開発入門ガイド
第5.1 版
2003 年 5 月
株式会社NTTデータ
VOISTAGE 製品については以下のホームページ・テレホンサービスで案内しています。
●VOISTAGE-ONLINE http://www.voistage.com
VOISTAGEの応用例やFAQ、最新モジュールのダウンロードサービス等を行なっています。
●VOISTAGEインフォメーションダイヤル 0120−00−5062
音声認識・音声合成等のデモンストレーションを24時間サービスしています。
Copyright © 1998-2003 NTT DATA CORPORATION
All rights reserved 複製・無断転載厳禁
105
アプリケーション開発入門ガイド
Fly UP