lineDialW 関数 (tapi.h)

lineDial 関数は、指定した呼び出しで指定されたダイヤル可能な番号をダイヤルします。

構文

LONG lineDialW(
  HCALL   hCall,
  LPCWSTR lpszDestAddress,
  DWORD   dwCountryCode
);

パラメーター

hCall

番号をダイヤルする呼び出しを処理します。 アプリケーションは、呼び出しの所有者である必要があります。 hCall の呼び出し状態は、アイドル状態 と切断を除く任意の状態にすることができます。

lpszDestAddress

ダイヤル可能な標準の番号形式を使用してダイヤルされる宛先。

dwCountryCode

宛先の国または地域コード。 これは、宛先アドレスの呼び出し進行状況プロトコルを選択するために実装によって使用されます。 値 0 を指定すると、サービス プロバイダー定義の既定の呼び出し進行状況プロトコルが使用されます。

戻り値

関数が非同期的に完了した場合は正の要求識別子を返し、エラーが発生した場合は負のエラー番号を返します。 対応する LINE_REPLY メッセージの dwParam2 パラメーターは、関数が成功した場合は 0、エラーが発生した場合は負のエラー番号です。 可能な戻り値は次のとおりです。

LINEERR_ADDRESSBLOCKED、LINEERR_INVALPOINTER、LINEERR_DIALBILLING、LINEERR_NOMEM、LINEERR_DIALDIALTONE、LINEERR_NOTOWNER、LINEERR_DIALPROMPT、LINEERR_OPERATIONFAILED、LINEERR_DIALQUIET、LINEERR_OPERATIONUNAVAIL、LINEERR_INVALCALLHANDLE、LINEERR_RESOURCEUNAVAIL、LINEERR_INVALCALLSTATE、LINEERR_UNINITIALIZED、LINEERR_INVALCOUNTRYCODE。

備考

LINEERR_INVALADDRESSが返された場合、ダイヤルは行われません。 LINEERR_DIALBILLING、LINEERR_DIALQUIET、LINEERR_DIALDIALTONE、またはLINEERR_DIALPROMPTが返された場合、lineDial によって実行されたアクションは発生しません。 たとえば、問題のある文字の前にダイヤル可能なアドレスがダイヤルされていない、フックスイッチの状態が変更されていないなどです。

lineDial 関数は、既存の呼び出しの外観でダイヤルするために使用されます。 たとえば、通話が転送または会議用に設定された後、コンサルテーションコールが自動的に割り当てられ、このコンサルテーションコールのダイヤルを実行するために lineDial 機能が使用されます。 lineDial 関数は、回線のデバイス機能で許可されている場合、マルチステージ ダイヤルの過程で複数回呼び出すことができます。 また、CRLF で区切られた 1 つのダイヤル文字列に複数のアドレスを指定することもできます。 逆多重化を提供するサービス プロバイダーは、各アドレスで個々の物理呼び出しを確立し、アプリケーションへのすべての呼び出しの集計に 1 つの呼び出しハンドルを返すことができます。 すべてのアドレスは、同じ国または地域コードを使用します。

アドレスがサービス プロバイダーに渡された後、ダイヤルは完了と見なされます。呼び出しが最終的に接続された後ではありません。 逆多重化を提供するサービス プロバイダーでは、複数のアドレスを一度に提供できます。 サービス プロバイダーは、LINE_CALLSTATEメッセージをアプリケーションに送信して、呼び出しの進行状況を通知します。 呼び出しの確立中に呼び出しの試行を中止するには、呼び出し元のアプリケーションで lineDrop使用する必要があります。

アプリケーションは、lineDial 関数の lpszDestAddress パラメーターを空の文字列のアドレスに設定して、ダイヤルが完了したことを示すことができますが、前の lineMakeCall および lineDial 関数の呼び出しで、lpszDestAddress で指定された文字列がセミコロンで終了した場合に限られます。

lineDial 機能は、部分ダイヤルにも使用できます。 部分ダイヤルを使用して呼び出しを開始するために、アプリケーションは lineMakeCall 呼び出し、部分ダイヤル文字列を指定します。 部分的なダイヤル文字列は、セミコロンで終わる任意のダイヤル文字列です。 通常、呼び出しは LINECALLSTATE_DIALING に遷移します。その後、lineDial を呼び出して、より多くのダイヤル文字列を指定できます。各文字列はセミコロンで終わります。 ダイヤルは、セミコロン (空の文字列など) で終了しないダイヤル文字列 lineDial を呼び出すことによって完了します。 この手法を使用すると、アプリケーションは、ユーザーと対話形式の部分ダイヤルを実行したり、TSP よりも高度なダイヤルを有効にしたりできるようになります。

null 変換先の文字列、またはセミコロン (";") で終わる空の文字列を lineMakeCall 入力すると、アプリケーションはLINE_CALLSTATE_DIALTONEに遷移。 lineDial 関数は、この状態で呼び出して、1 つのダイヤル文字列または複数の部分ダイヤル文字列を入力できます。それぞれセミコロンで区切られます。 最初の桁が入力された後、アプリケーションはLINECALLSTATE_DIALING状態に遷移します。

注lineDial 関数は、呼び出しがLINECALLSTATE_DIALINGまたはLINE_CALLSTATE_DIALTONEにある場合にのみ使用できます。 通話が接続されている間に DTMF が必要な場合 (LINECALLSTATE_CONNECTED)、lineGenerateDigitsを使用します。
 

手記

tapi.h ヘッダーは、UNICODE プリプロセッサ定数の定義に基づいて、この関数の ANSI または Unicode バージョンを自動的に選択するエイリアスとして lineDial を定義します。 エンコードに依存しないエイリアスをエンコードに依存しないコードと組み合わせて使用すると、コンパイルエラーやランタイム エラーが発生する不一致が発生する可能性があります。 詳細については、「関数プロトタイプの 規則」を参照してください。

必要条件

要件 価値
ターゲット プラットフォーム の ウィンドウズ
ヘッダー tapi.h
ライブラリ Tapi32.lib
DLL Tapi32.dll

関連項目

基本的なテレフォニー サービス リファレンス

ダイヤルの概要

ダイヤル可能なアドレス を する

LINE_CALLSTATE

LINE_REPLY

TAPI 2.2 リファレンスの概要

lineDrop

lineMakeCall を する