lineForward 関数は、指定した転送命令に従って、指定した行の指定したアドレス宛ての呼び出しを転送します。 送信元アドレス (dwAddressID) が転送されると、そのアドレスに対して指定された着信呼び出しは、スイッチによって他の番号に偏向されます。 この関数は、転送機能と応答不可機能の組み合わせを提供します。 この関数は、現在有効になっている転送を取り消すこともできます。
構文
LONG lineForwardA(
HLINE hLine,
DWORD bAllAddresses,
DWORD dwAddressID,
LPLINEFORWARDLIST const lpForwardList,
DWORD dwNumRingsNoAnswer,
LPHCALL lphConsultCall,
LPLINECALLPARAMS const lpCallParams
);
パラメーター
hLine
ライン デバイスへのハンドル。
bAllAddresses
行のすべての発信元アドレスを転送するか、指定されたアドレスだけを転送するかを指定します。 TRUE
dwAddressID
着信呼び出しを転送する指定した行のアドレス。 このパラメーターは、
アドレス識別子は、アドレスに永続的に関連付けられます。識別子はオペレーティング システムのアップグレード間で一定のままです。
lpForwardList
LINEFORWARDLIST型の特定の転送命令
dwNumRingsNoAnswer
通話が "応答なし" と見なされる前のリングの数。dwNumRingsNoAnswer
lphConsultCall
HCALL の場所へのポインター。 一部のテレフォニー環境では、転送先のパーティに問い合わせて使用されるコンサルテーション呼び出しへのハンドルがこの場所に読み込まれ、アプリケーションがこの呼び出しの最初の唯一の所有者になります。 このポインターは、着信転送にコンサルテーション呼び出しが必要ない環境でも有効である必要があります。 コンサルテーション呼び出しが作成されない場合、このハンドルは NULL を
lpCallParams
LINECALLPARAMS
戻り値
関数が非同期的に完了した場合は正の要求識別子を返し、エラーが発生した場合は負のエラー番号を返します。 対応する LINE_REPLY メッセージの dwParam2 パラメーターは、関数が成功した場合は 0、エラーが発生した場合は負のエラー番号です。 可能な戻り値は次のとおりです。
LINEERR_INVALLINEHANDLE、LINEERR_NOMEM、LINEERR_INVALADDRESSID、LINEERR_OPERATIONUNAVAIL、LINEERR_INVALADDRESS、LINEERR_OPERATIONFAILED、LINEERR_INVALCOUNTRYCODE、LINEERR_RESOURCEUNAVAIL、LINEERR_INVALPOINTER、LINEERR_STRUCTURETOOSMALL、LINEERR_INVALPARAM、LINEERR_UNINITIALIZED。
備考
転送が成功した場合は、要求がサービス プロバイダーによって受け入れられただけで、転送はスイッチで設定されていないことを示します。 LINE_ADDRESSSTATE (転送) メッセージは、スイッチで設定された転送の確認を提供します。
アドレスの転送は、この関数が再度呼び出されるまで有効です。 最新の転送リストが古い転送リストに置き換えられます。 転送は、lpForwardListとして
アドレスの転送状態も外部から影響を受ける可能性があります。たとえば、スイッチでの管理アクションや、別のステーションからのユーザーによる操作などです。 サービス プロバイダーがこの状態の変化を認識できない可能性があり、スイッチに認識されている転送状態との同期を維持できない場合があります。
サービス プロバイダーはアドレスの転送状態を "確実に" 知らない可能性があるため (つまり、不明な方法で転送または転送されていない可能性があります)、lineForward は、新しい転送手順の設定に失敗しない限り成功します。 つまり、転送が有効でないことを一度にすべての転送を取り消す要求は成功します。 これは、"不転送" がないためです。前の転送手順のセットのみを変更できます。
この操作の成功または失敗は、前の転送命令のセットに依存せず、異なる転送命令を設定する場合も同じことが当てはまります。 プロバイダーは、新しい転送手順を設定する前に、"すべてを転送しない" 必要があります。 アナログ テレフォニー環境では時間がかかる可能性があるため、プロバイダーは現在の転送と新しい転送を比較し、最終的な状態に到達するための命令のみをスイッチに発行する必要があります (変更されていない転送は影響を受けません)。
LINEFORWARDLIST
手記
tapi.h ヘッダーは、UNICODE プリプロセッサ定数の定義に基づいて、この関数の ANSI または Unicode バージョンを自動的に選択するエイリアスとして lineForward を定義します。 エンコードに依存しないエイリアスをエンコードに依存しないコードと組み合わせて使用すると、コンパイルエラーやランタイム エラーが発生する不一致が発生する可能性があります。 詳細については、「関数プロトタイプの 規則」を参照してください。
必要条件
| 要件 | 価値 |
|---|---|
| ターゲット プラットフォーム の |
ウィンドウズ |
| ヘッダー | tapi.h |
| ライブラリ | Tapi32.lib |
| DLL | Tapi32.dll |