Cisco WebDialer ガイド Version 1.0(3) Cisco CallManager Release 3.3(3)
Cisco WebDialer API リファレンス
Cisco WebDialer API リファレンス
発行日;2012/01/15 | ドキュメントご利用ガイド | ダウンロード ; この章pdf | フィードバック

目次

Cisco WebDialer API リファレンス

対象とする読者

定義

コール フロー

デスクトップベースのクライアント アプリケーション コール フロー

ブラウザベースのアプリケーション コール フロー

インターフェイス

SOAP over HTTP インターフェイス

makeCallSoap

endCallSoap

getProfileSoap

isClusterUserSoap

HTML over HTTP インターフェイス

makeCall

makeCallProxy

Cisco WebDialer WSDL

JavaScript の例

Cisco WebDialer API リファレンス

この章では、Simple Object Access Protocol(SOAP)および HTML over HTTP インターフェイスについて説明します。これらのインターフェイスは、Cisco WebDialer Version 1.0(3) 用にカスタマイズされた電話帳検索アプリケーションの開発に使用します。この章の内容は次のとおりです。

「対象とする読者」

「定義」

「コール フロー」

「インターフェイス」

「Cisco WebDialer WSDL」

「JavaScript の例」

対象とする読者

この章は、Cisco WebDialer を使用して Cisco CallManager IP テレフォニー システムと互換性のあるクライアント アプリケーションを開発するソフトウェア開発者を対象としています。 ここでは、開発者が次のテクノロジーおよび言語を十分に理解していることを前提としています。

Simple Object Access Protocol(SOAP)

Extensible Markup Language(XML)

Hypertext Transfer Protocol(HTTP)

Hypertext Markup Language(HTML)

Web Service Definition Language(WSDL)

開発者は Cisco CallManager およびそのアプリケーションについても理解している必要があります。 Cisco CallManager および関連するほかのテクノロジーに関するドキュメントは、「このマニュアルについて」の 「関連資料」にあります。

定義

 

Cisco WebDialer サーバ

Cisco WebDialer アプリケーションを制御する Cisco CallManager サーバ。

Cisco WebDialer
アプリケーション

Cisco CallManager サーバにインストールされているソフトウェア。 ハイパーリンクされた電話番号を社内電話帳に作成することにより、クリックツーダイヤル機能を有効にします。 この機能によって、ユーザは電話をかけようとしている相手の電話番号をクリックして、Web ページから電話をかけることができます。 Cisco WebDialer アプリケーションは、WebDialer Servlet と Redirector Servlet という 2 つの Java Servlet で構成されます。

WebDialer Servlet

特定クラスタ内の Cisco CallManager ユーザがコールを開始および終了できるようにすると共に、電話機および回線の設定にアクセスできるようにする Java Servlet。

Redirector Servlet

Cisco WebDialer ユーザの要求に対して Cisco CallManager クラスタを検出する Java Servlet。 要求をユーザの Cisco CallManager クラスタ内にある特定の Cisco WebDialer サーバにリダイレクトします。

コール フロー

この項で説明するコール フローは、Cisco WebDialer を使用するクライアントおよびブラウザベースのアプリケーションに対するイベントのフローを示すもので、Cisco WebDialer 向けのカスタマイズされたアプリケーションを設計する際に役に立ちます。

デスクトップベースのクライアント アプリケーション コール フロー

図 3-1は、Microsoft Outlook プラグインなどのクライアント アプリケーションから WebDialer Servlet に対する発信コールのコール フローを示しています。 ユーザはクライアント アプリケーションのアドレス帳で、 ダイヤル または 電話をかける 操作を行います。 ユーザが初めて電話をかける場合、アプリケーションにはそのユーザに関する認証情報も設定情報もありません。

図 3-1 クライアントベース アプリケーションの場合の Cisco WebDialer コール フロー

 

ユーザが初めて電話をかける場合は、次のようなフローになります。

1. クライアントは設定された WebDialer Servlet に makeCallSoap 要求を送信します。

2. WebDialer Servlet はユーザの認証を試みます。図 3-1 では、認証情報が不完全であるかまたは存在しないために、認証に失敗したことが示されています。

3. WebDialer Servlet は認証失敗応答をクライアント アプリケーションに送信します。

4. クライアント アプリケーションは、ユーザ ID とパスワードの入力を求めるダイアログボックスをユーザのコンピュータ画面に表示します。 ユーザはこの情報を入力して[ サブミット] ボタンをクリックします。 この時点で、今後アプリケーションが呼び出される場合に備えて、ユーザ ID とパスワードが保存されます。

5. アプリケーションは再送 SOAP 要求を WebDialer Servlet に送信します。 要求にはユーザに関する資格情報が含まれます。

6. WebDialer Servlet がユーザを認証します。

7. WebDialer Servlet は要求内に不足している設定情報を読み取ります。

8. WebDialer Servlet はクライアント アプリケーションに設定エラー メッセージを返します。

9. クライアント アプリケーションは getConfigSoap 要求を WebDialer Servlet に送信します。

10. WebDialer Servlet は電話帳に保管されたユーザの設定情報を使用して応答します。

11. クライアント アプリケーションは、ユーザに設定の選択またはアップデートを求める 設定ダイアログボックスをユーザのコンピュータ場面に表示します。 ユーザはこの情報を入力して[ サブミット] ボタンをクリックします。 今後アプリケーションが呼び出される場合に備えて、ユーザの設定情報が保存されました。

12. クライアントは makeCallSoap 要求を WebDialer Servlet に再送信します。 この要求にはユーザの設定情報が含まれます。

13. WebDialer Servlet はユーザを認証し、makeCallSoap 要求に含まれる情報を使用して電話番号をダイヤルします。 クライアントに成功または失敗のメッセージを返します。


) 次の場合、コール フローは直接、12. に進みます。

アプリケーションのインストール時に、資格情報および設定情報がすでに保存されている場合

ユーザによる後続の要求すべて


 

ブラウザベースのアプリケーション コール フロー

図 3-2 は、HTTP ベースのブラウザ アプリケーションを使用した場合のコール フローを示しています。このようなアプリケーションには、ディレクトリ検索ページ、個人用アドレス帳、または Cisco CallManager に組み込まれた Cisco CallManager ディレクトリ検索ページ(directory.asp)などがあります。

ユーザはクライアント アプリケーションのアドレス帳で、 ダイヤル または 電話をかける 操作を行います。 ユーザが初めて電話をかける場合、アプリケーションにはそのユーザに関する認証情報も設定情報もありません。

ユーザが初めて電話をかける場合は、次のようなフローになります。

1. クライアントは設定された WebDialer Servlet に makeCall HTTP 要求を送信します。 クエリー文字列には通話先の番号が含まれます。

2. WebDialer Servlet がユーザを認証します。 認証情報が不完全であるかまたは存在しないため、認証は失敗します。


) ユーザの資格情報が要求と共に送信される場合、認証は成功し、コール フローは直接 7. に進みます。


3. WebDialer Servlet は、ユーザ認証のための認証ダイアログをクライアント ブラウザに送信します。

4. ユーザはユーザ ID とパスワードを入力して[ サブミット] ボタンをクリックします。

5. クライアントはユーザの資格情報を含む makeCallHTTP 要求を WebDialer Servlet に送信します。

6. WebDialer Servlet がユーザを認証します。

7. WebDialer Servlet は要求と共に送信された Cookie 内の設定情報を読み取ります。

8. 要求が初めて行われた場合、Servlet は応答に Cookie を含めてクライアントのブラウザに送信します。 クライアントの資格情報を含んだ Cookie はクライアントのブラウザに保存されます。 クライアントの資格情報は、ユーザ ID、IP アドレス、および要求時刻です。

9. ユーザは設定ダイアログボックスにアップデート内容を入力して[ サブミット] ボタンをクリックします。

10. クライアントのブラウザは WebDialer Servlet に makeCall HTTP 要求を送信します。 要求には、資格情報および設定情報がパラメータ形式で入っている Cookie が含まれます。

11. WebDialer Servlet は資格情報を使用してユーザを認証し、設定情報をメモリに保存します。

12. WebDialer Servlet は makeCall 確認ダイアログを Cookie に保存された設定情報と共にクライアントのブラウザに送信します。 Cookie は今後呼び出される場合に備えて、クライアントのブラウザに保存されます。

13. ユーザのコンピュータ画面に[コールの開始] ダイアログボックスが表示されます。 ユーザは、別の makeCall HTTP 要求を WebDialer Servlet に送信する[ ダイヤル] ボタンをクリックします。

14. WebDialer Servlet は Cookie 内の資格情報を使用してユーザを認証し、Cookie から設定情報を取得して電話をかけます。

15. Servlet は、通話を終了するために endCall 確認ダイアログをユーザに送信して応答します。 End Call ダイアログボックスがユーザのコンピュータ画面に表示され、サービス パラメータに設定した時間だけ表示され続けます。

後続の要求のコール フローはすべて 12. で始まり、15. で終わります。

図 3-2 ブラウザベース アプリケーションの場合の Cisco WebDialer コール フロー

 

インターフェイス

Cisco WebDialer アプリケーションは次の 2 つのインターフェイス経由で WebDialer Servlet と相互に対話します。

SOAP over HTTP インターフェイス:このインターフェイスは Simple Object Access Protocol(SOAP)に基づいており、Microsoft Outlook アドインや SameTime Client プラグインなどのデスクトップ アプリケーションの開発に使用します。開発者は isClusterUserSoap インターフェイスを使用して Redirector Servlet と同様の機能性が必要なマルチクラスタ アプリケーションを設計できます。

HTML over HTTP インターフェイス:このインターフェイスは HTTP プロトコルに基づいており、Cisco CallManager ディレクトリ検索ページ(directory.asp)などの Web ベースのアプリケーション開発に使用します。 開発者はこのインターフェイスを使用すると、マルチクラスタ アプリケーションの設計に Redirector Servlet を使用できます。

SOAP over HTTP インターフェイス

Cisco WebDialer の SOAP インターフェイスにアクセスするには、「Cisco WebDialer WSDL」の Cisco WebDialer Web Service Definition Language(WSDL)を使用します。

makeCallSoap

makeCallSoap インターフェイスは、サービス名 WebdialerSoap について、URL http://ipaddress/wdsoap/servlet/rpcrouter への SOAP 要求を開始することによってアクセスします。 この URL で、ipaddress は Cisco CallManager サーバの IP アドレスです。 この SOAP インターフェイスは Microsoft Outlook プラグインなどのプラグイン クライアントに使用されます。

パラメータ

 

表 3-1 makeCallSoap のパラメータ

パラメータ
必須
説明
データ型
値の範囲
デフォルト値

Destination

必須

標準形。 たとえば +1 408 5551212、または内線 2222 などです。

文字列

なし

なし

Credential

必須

ユーザまたはプロキシ ユーザのユーザ ID かパスワード。 プロキシ ユーザ作成方法の詳細については、「プロキシ ユーザの作成(オプション)」を参照してください。

「Cisco WebDialer WSDL」にある資格情報のデータ型を参照してください。

なし

なし

Profile

必須

コールの開始に使用されるプロファイル。 一般的なプロファイルの例は、IP Phone または回線などの発信側デバイスです。

「Cisco WebDialer WSDL」にあるプロファイルのデータ型を参照してください。

なし

なし

結果

戻り値とそのデータ型については、「Cisco WebDialer WSDL」を参照してください。

 

表 3-2 makeCallSoap の結果

エラー コード
名前
説明
アプリケーションによる動作

0

responseCode

整数

成功。

コンピュータ画面にダイアログボックスを表示する。

responseDescription

文字列

成功。

1

responseCode

整数

コール失敗エラー。

関連するエラー メッセージを表示する。

responseDescription

文字列

コール失敗エラー。

2

responseCode

整数

認証エラー。

ユーザが ID およびパスワード情報を入力する認証ダイアログを表示する。

responseDescription

文字列

ユーザ認証エラー。

3

responseCode

整数

認証プロキシ権限がない。

ユーザベースのアプリケーションでは無効。

responseDescription

文字列

認証プロキシ権限がない。

4

responseCode

整数

電話帳エラー。

適切な電話帳エラー メッセージを表示する。

responseDescription

文字列

電話帳エラー。

5

responseCode

整数

ユーザに設定されたデバイスがないか、または要求内のパラメータが欠けている。

getConfigSOAP 要求を開始し、選択されたデバイスおよび回線をユーザに表示する。

responseDescription

文字列

ユーザに設定されたデバイスがないか、または要求内のパラメータが欠けている。

6

responseCode

整数

サービスは一時的に利用できない。

再試行オプションのある適切なエラー ダイアログを表示する。

responseDescription

文字列

サービスは一時的に利用できない。

7

responseCode

整数

宛先に到達できない。

ユーザがダイヤルした番号を編集できる適切なエラー ダイアログを表示する。

responseDescription

文字列

宛先に到達できない。

8

responseCode

整数

サービス エラー。

適切なエラー ダイアログを表示する。

responseDescription

文字列

サービス エラー。

9

responseCode

整数

サービスが過負荷。

再試行オプションのある適切なエラー ダイアログを表示する。

responseDescription

文字列

サービスが過負荷。

endCallSoap

endCallSoap インターフェイスは、サービス名 WebdialerSoap について、
URL http://ipaddress/wdsoap/servlet/rpcrouter への SOAP 要求を開始することによってアクセスします。 この URL で、ipaddress は Cisco WebDialer を設定した Cisco CallManager サーバの IP アドレスです。

この SOAP インターフェイスは Microsoft Outlook アドインなどのプラグイン ベースのクライアントに使用されます。

パラメータ

 

表 3-3 endCallSoap のパラメータ

パラメータ
必須
説明
データ型
値の範囲
デフォルト値

Credential

必須

ユーザまたはプロキシ ユーザのユーザ ID またはパスワード。 プロキシ ユーザを作成する方法については、「プロキシ ユーザの作成(オプション)」を参照してください。

「Cisco WebDialer WSDL」にある資格情報のデータ型を参照してください。

なし

なし

Profile

必須

通話の開始に使用されるプロファイル。 一般的なプロファイルの例は、IP Phone または回線などの発信側デバイスです。

「Cisco WebDialer WSDL」にあるプロファイルのデータ型を参照してください。

なし

なし

結果

戻り値とそのデータ型については、「Cisco WebDialer WSDL」を参照してください。

 

表 3-4 endCallSoap の結果

エラー コード
名前
説明
アプリケーションによる動作

0

responseCode

整数

成功。

コンピュータ画面にダイアログボックスを表示する。

responseDescription

文字列

成功。

1

responseCode

整数

コール失敗エラー。

関連するエラー メッセージを表示する。

responseDescription

文字列

コール失敗エラー。

2

responseCode

整数

認証エラー。

ユーザが ID およびパスワードを入力する認証ダイアログを表示する。

responseDescription

文字列

ユーザ認証エラー。

3

responseCode

整数

認証プロキシ権限がない。

ユーザベースのアプリケーションでは無効。

responseDescription

文字列

認証プロキシ権限がない。

4

responseCode

整数

電話帳エラー。

適切な電話帳エラー メッセージを表示する。

responseDescription

文字列

電話帳エラー。

5

responseCode

整数

ユーザに設定されたデバイスがないか、または要求内のパラメータが欠けている。

getConfigSOAP 要求を開始し、選択されたデバイスおよび回線をユーザに表示する。

responseDescription

文字列

ユーザに設定されたデバイスがないか、または要求内のパラメータが欠けている。

6

responseCode

整数

サービスは一時的に利用できない。

再試行オプションのある適切なエラー ダイアログを表示する。

responseDescription

文字列

サービスは一時的に利用できない。

7

responseCode

整数

宛先に到達できない。

ユーザがダイヤルした番号を編集できる適切なエラー ダイアログを表示する。

responseDescription

文字列

宛先に到達できない。

8

responseCode

整数

サービス エラー。

適切なエラー ダイアログを表示する。

responseDescription

文字列

サービス エラー。

9

responseCode

整数

サービスが過負荷。

再試行オプションのある適切なエラー ダイアログを表示する。

responseDescription

文字列

サービスが過負荷。

getProfileSoap

getProfileSoap インターフェイスは、サービス名 WebdialerSoap について、
URL http://ipaddress/wdsoap/servlet/rpcrouter への SOAP 要求を開始することによってアクセスします。 この URL で、ipaddress は Cisco WebDialer を設定した Cisco CallManager サーバの IP アドレスです。

この SOAP インターフェイスは Microsoft Outlook アドインなどのプラグイン ベースのクライアントに使用されます。

パラメータ

 

表 3-5 getProfileSoap のパラメータ

パラメータ
必須
説明
データ型
値の範囲
デフォルト値

Credential

必須

ユーザまたはプロキシ ユーザのユーザ ID またはパスワード。 プロキシ ユーザを作成する方法については、「プロキシ ユーザの作成(オプション)」を参照してください。

「Cisco WebDialer WSDL」にある資格情報のデータ型を参照してください。

なし

なし

UserID

必須

設定が要求されたユーザ ID。

文字列

なし

なし

結果

戻り値とそのデータ型については、「Cisco WebDialer WSDL」を参照してください。

 

表 3-6 get ProfileSoap の結果

エラー コード
名前
説明
プラグイン アプリケーションによる動作

0

responseCode

整数

ユーザに関連付けられた電話機について、一連の電話機または回線を返す。 WDDeviceInfo データ型については、Cisco WebDialer WSDL を参照してください。

コンピュータ画面にダイアログボックスを表示します。

responseDescription

文字列

成功。

deviceInfoList

配列

一連の WDDeviceInfo データ型を返す。

1

responseCode

整数

ユーザに設定されたデバイスがない。

適切なエラー メッセージを表示する。

responseDescription

文字列

ユーザに設定されたデバイスがない。

2

responseCode

整数

認証エラー。

ユーザが ID およびパスワード情報を入力する認証ダイアログを表示する。

responseDescription

文字列

ユーザ認証エラー。

3

responseCode

整数

認証プロキシ権限がない。

ユーザベースのアプリケーションでは無効。

responseDescription

文字列

認証プロキシ権限がない。

4

responseCode

整数

電話帳エラー。

適切な電話帳エラー メッセージを表示する。

responseDescription

文字列

電話帳エラー。

6

responseCode

整数

サービスは一時的に利用できない。

再試行オプションのある適切なエラー ダイアログを表示する。

responseDescription

文字列

サービスは一時的に利用できない。

9

responseCode

整数

サービスが過負荷。

再試行オプションのある適切なエラー ダイアログを表示する。

responseDescription

文字列

サービスが過負荷。

isClusterUserSoap

isClusterUserSoap インターフェイスは、サービス名 WebdialerSoap について、
URL http://ipaddress/wdsoap/servlet/rpcrouter への SOAP 要求を開始することによってアクセスします。 この URL で、ipaddress は Cisco WebDialer を設定した Cisco CallManager サーバの IP アドレスです。

この SOAP インターフェイスは Microsoft Outlook アドインなどのプラグイン ベースのクライアントに使用されます。Cisco WebDialer がネットワーク上にインストールされているさまざまな場所に通話をリダイレクトする、Redirector Servlet と同様の機能性が必要なマルチクラスタ アプリケーションに使用されます。 アプリケーションはこのインターフェイスを使用してユーザにサービスを提供している Cisco WebDialer の場所を見つけて確認します。この後に、その Cisco WebDialer に対する makeCall、endCall または getProfile 要求が続きます。

パラメータ

 

表 3-7 isClusterSoap のパラメータ

パラメータ
必須
説明
データ型
値の範囲
デフォルト値

UserID

必須

要求を実施したユーザ ID。

文字列

なし

なし

結果

戻り値とそのデータ型については、「Cisco WebDialer WSDL」を参照してください。

 

表 3-8 isClusterSoap の結果

名前
説明

result

ブール

ユーザがクラスタの電話帳に存在する場合、結果は true。 ユーザがクラスタの電話帳に存在しない場合、結果は false。

HTML over HTTP インターフェイス

この項では、HTML over HTTP インターフェイスについて説明します。

makeCall

makeCall インターフェイスは、カスタマイズされた電話帳検索アプリケーションで使用されます。 また、Cisco CallManager に組み込まれているディレクトリ検索ページ(directory.asp)でも使用されます。 makeCall インターフェイスは、URL http://ipaddress/webdialer/Webdialer への HTTP 要求を開始することによってアクセスします。 この URL で、ipaddress は Cisco WebDialer を設定した Cisco CallManager サーバの IP アドレスです。

このインターフェイスは、ブラウザが Cookie を受け入れるブラウザベースのアプリケーションで使用されます。 ブラウザで Cookie を使用できない場合、ユーザ プロファイルはそのセッションの間だけ存在します。 ディレクトリ検索ページの有効化に使用するスクリプトの例は、「JavaScript の例」を参照してください。

パラメータ

 

表 3-9 makeCall のパラメータ

パラメータ
必須
説明
データ型
値の範囲
デフォルト値

destination

必須

アプリケーションがコールを行う宛先の番号。 この番号はアプリケーション ダイヤル ルールを適用することにより、通常の電話番号に変換されます。 ダイヤル ルールの説明については、「アプリケーション ダイヤル ルールの設定(オプション)」を参照してください。

文字列

なし

なし

結果

 

表 3-10 makeCall の結果

名前
説明

result

Cisco WebDialer が適切なダイアログと、成功またはエラーの該当するメッセージを表示する。 アクティブ セッションがない場合は認証ダイアログを表示する。

makeCallProxy

makeCallProxy インターフェイスは、URL http://ipaddress/webdialer/Webdialer?cmd=doMakeCallProxy への HTTP 要求を開始することによってアクセスします。 このインターフェイスは、ブラウザが Cookie を受け入れるブラウザベースのアプリケーションで使用されます。 ブラウザで Cookie を使用できない場合、ユーザ プロファイルはそのセッションの間だけ存在します。

makeCallProxy インターフェイスは個人用アドレス帳などのアプリケーションで使用され、http://cmserver/CCMUser の CCMUser ページ内で定義されます。 アプリケーションの資格情報を使用し、プロキシとしてユーザに代わって通話を開始します。 これらのユーザは、CCMUser ページにアクセスする前に自身を認証しているため、ユーザ ID とパスワードの再入力は求められません。 アプリケーションは、プロキシ ユーザのユーザ ID とパスワードを要求内でクエリー文字列形式で送信するか、または POST メッセージ本文内のパラメータとして送信します。

ディレクトリ検索ページの有効化に使用するスクリプトの例は、「JavaScript の例」を参照してください。

パラメータ

 

表 3-11 makeCallProxy のパラメータ

パラメータ
必須
説明
データ型
値の範囲
デフォルト値

uid

必須

要求を実施したユーザ ID。

文字列

なし

なし

appuid

必須

ユーザに代わって要求を実施したアプリケーションの userid。 たとえば、アプリケーションで認証プロキシ権限を許可している Cisco CallManager の個人用アドレス帳を考えてみます。 appuid パラメータは、ユーザのログイン時に CCMUser ページなどで 1 回使用されます。 このログインの後は、ほかのページで再度ログインする必要はありません。 統合されていない Web ページ アプリケーションの場合、appuid は userid と同じです。

文字列

なし

なし

pwd

必須

appuid のパスワード。

文字列

なし

なし

destination

必須

コール先の番号。 この番号はダイヤル プラン サービスによって E.164 番号に変換されます。

文字列

なし

なし

結果

 

表 3-12 makeCallProxy の結果

名前
説明

result

Cisco WebDialer が適切なダイアログと、成功またはエラーの該当するメッセージを表示する。

Cisco WebDialer WSDL

次に説明する Cisco WebDialer 用 Web Service Definition Language(WSDL)は WSDL 仕様に基づいています。 この Cisco WebDialer 用 WSDL は、Cisco WebDialer サーバ インストールでは次の場所でも使用できます。

http://<WebDialer サーバ名>/webdialer/wsdl/WebdialerSoap.wsdl

この特定の WSDL と、このドキュメントで説明したインターフェイスを使用して、Cisco WebDialer 用にカスタマイズされたアプリケーションを開発できます。 Cisco CallManager、SOAP、および WSDL の参照文献の一覧は、「このマニュアルについて」の 「関連資料」を参照してください。

 
<wsdl:definitions xmlns:tns="urn:WebdialerSoap" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:http="http://schemas.xmlsoap.org/wsdl/http/" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns="http://schemas.xmlsoap.org/wsdl/" targetNamespace="urn:WebdialerSoap" name="urn:WebdialerSoap">
<wsdl:types>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:tns="urn:WebdialerSoap" targetNamespace="urn:WebdialerSoap">
<xsd:import namespace="http://schemas.xmlsoap.org/soap/encoding/"/>
<xsd:complexType name="CallResponse">
<xsd:sequence>
<xsd:element name="responseCode" type="xsd:int"/>
<xsd:element name="description" nillable="true" type="xsd:string"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="Credential">
<xsd:sequence>
<xsd:element name="userID" nillable="true" type="xsd:string"/>
<xsd:element name="password" nillable="true" type="xsd:string"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="UserProfile">
<xsd:sequence>
<xsd:element name="user" nillable="true" type="xsd:string"/>
<xsd:element name="deviceName" nillable="true" type="xsd:string"/>
<xsd:element name="lineNumber" nillable="true" type="xsd:string"/>
<xsd:element name="supportEM" type="xsd:boolean"/>
<xsd:element name="locale" nillable="true" type="xsd:string"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="GetConfigResponse">
<xsd:sequence>
<xsd:element name="responseCode" type="xsd:int"/>
<xsd:element name="description" nillable="true" type="xsd:string"/>
<xsd:element name="deviceInfoList" nillable="true" type="tns:ArrayOfWDDeviceInfo"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="WDDeviceInfo">
<xsd:sequence>
<xsd:element name="deviceName" nillable="true" type="xsd:string"/>
<xsd:element name="lines" nillable="true" type="tns:ArrayOfstring"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="ArrayOfWDDeviceInfo">
<xsd:complexContent>
<xsd:restriction base="soapenc:Array">
<xsd:attribute ref="soapenc:arrayType" wsdl:arrayType="tns:WDDeviceInfo[]"/>
</xsd:restriction>
</xsd:complexContent>
</xsd:complexType>
<xsd:complexType name="ArrayOfstring">
<xsd:complexContent>
<xsd:restriction base="soapenc:Array">
<xsd:attribute ref="soapenc:arrayType" wsdl:arrayType="xsd:string[]"/>
</xsd:restriction>
</xsd:complexContent>
</xsd:complexType>
</xsd:schema>
</wsdl:types>
<wsdl:message name="makeCallSoap0In">
<wsdl:part name="cred" type="tns:Credential"/>
<wsdl:part name="dest" type="xsd:string"/>
<wsdl:part name="prof" type="tns:UserProfile"/>
</wsdl:message>
<wsdl:message name="makeCallSoap0Out">
<wsdl:part name="Result" type="tns:CallResponse"/>
</wsdl:message>
<wsdl:message name="endCallSoap1In">
<wsdl:part name="cred" type="tns:Credential"/>
<wsdl:part name="prof" type="tns:UserProfile"/>
</wsdl:message>
<wsdl:message name="endCallSoap1Out">
<wsdl:part name="Result" type="tns:CallResponse"/>
</wsdl:message>
<wsdl:message name="getProfileSoap2In">
<wsdl:part name="cred" type="tns:Credential"/>
<wsdl:part name="userid" type="xsd:string"/>
</wsdl:message>
<wsdl:message name="getProfileSoap2Out">
<wsdl:part name="Result" type="tns:GetConfigResponse"/>
</wsdl:message>
<wsdl:message name="isClusterUser3In">
<wsdl:part name="userid" type="xsd:string"/>
</wsdl:message>
<wsdl:message name="isClusterUser2Out">
<wsdl:part name="Result" type="xsd:boolean"/>
</wsdl:message>
<portType name="WebdialerSoapService">
<wsdl:operation name="makeCallSoap">
<wsdl:input message="tns:makeCallSoap0In"/>
<wsdl:output message="tns:makeCallSoap0Out"/>
</wsdl:operation>
<wsdl:operation name="endCallSoap">
<wsdl:input message="tns:endCallSoap1In"/>
<wsdl:output message="tns:endCallSoap1Out"/>
</wsdl:operation>
<wsdl:operation name="getProfileSoap">
<wsdl:input message="tns:getProfileSoap2In"/>
<wsdl:output message="tns:getProfileSoap2Out"/>
</wsdl:operation>
<wsdl:operation name="isClusterUserSoap">
<wsdl:input message="tns:isClusterUser3In"/>
<wsdl:output message="tns:isClusterUser2Out"/>
</wsdl:operation>
</portType>
<binding name="WebdialerSoapService" type="tns:WebdialerSoapService">
<soap:binding style="rpc" transport="http://schemas.xmlsoap.org/soap/http"/>
<wsdl:operation name="makeCallSoap">
<soap:operation soapAction="urn:makeCallSoap"/>
<input>
<soap:body use="encoded" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="urn:WebdialerSoap"/>
</input>
<output>
<soap:body use="encoded" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="urn:WebdialerSoap"/>
</output>
</wsdl:operation>
<wsdl:operation name="endCallSoap">
<soap:operation soapAction="urn:endCallSoap"/>
<input>
<soap:body use="encoded" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="urn:WebdialerSoap"/>
</input>
<output>
<soap:body use="encoded" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="urn:WebdialerSoap"/>
</output>
</wsdl:operation>
<wsdl:operation name="getProfileSoap">
<soap:operation soapAction="urn:getProfileSoap"/>
<input>
<soap:body use="encoded" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="urn:WebdialerSoap"/>
</input>
<output>
<soap:body use="encoded" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="urn:WebdialerSoap"/>
</output>
</wsdl:operation>
<wsdl:operation name="isClusterUserSoap">
<soap:operation soapAction="urn:isClusterUserSoap"/>
<input>
<soap:body use="encoded" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="urn:WebdialerSoap"/>
</input>
<output>
<soap:body use="encoded" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="urn:WebdialerSoap"/>
</output>
</wsdl:operation>
</binding>
<service name="WebdialerSoap">
<port name="WebdialerSoapService" binding="tns:WebdialerSoapService">
<soap:address location="http://WebDialer_server_name/wdsoap/servlet/rpcrouter"/>
</port>
</service>
</wsdl:definitions>
 

JavaScript の例

この JavaScript は、ディレクトリ検索ページから Cisco WebDialer を有効にするサンプル スクリプトです。

単一クラスタ アプリケーション

このスクリプトは、すべてのユーザが 1 クラスタだけに存在する場合、単一クラスタ アプリケーションに対して使用されます。

 
function launchWebDialerWindow( url ) {
webdialer=window.open( url, "webdialer", "status=no, width=420, height=300, scrollbars=no, resizable=yes, toolbar=no" );
}
 
function launchWebDialerServlet( destination ) {
url = 'http://<%=server_name%>/webdialer/Webdialer?destination=' + escape(destination);
launchWebDialerWindow( url );
}
!These functions can be called from the HTML page which has a hyperlink to the phone number to be called. An example of it is:
<TD><A href="javascript:launchWebDialerServlet( <%= userInfo.TelephoneNumber %> )"><%= userInfo.TelephoneNumber %></A>&nbsp;</TD>
 

マルチクラスタ アプリケーション

このスクリプトは、すべてのユーザがさまざまなクラスタに分散する場合に使用されます。

function launchWebDialerWindow( url ) {
webdialer=window.open( url, "webdialer", "status=no, width=420, height=300, scrollbars=no, resizable=yes, toolbar=no" );
}
 
function launchWebDialerServlet( destination ) {
url= 'http://<%=server_name%>/webdialer/Redirector?destination='+escape(destination);
launchWebDialerWindow( url );
}
!These functions can be called from the HTML page which has a hyperlink to the phone number to be called. An example of it is:
<TD><A href="javascript:launchWebDialerServlet( <%= userInfo.TelephoneNumber %> )"><%= userInfo.TelephoneNumber %></A>&nbsp;</TD>