LINEDEVCAPS 構造体 (tapi.h)

LINEDEVCAPS 構造体は、ライン デバイスの機能を記述します。 lineGetDevCaps 関数と TSPI_lineGetDevCaps 関数は、LINEDEVCAPS 構造体を返します。

構文

typedef struct linedevcaps_tag {
  DWORD          dwTotalSize;
  DWORD          dwNeededSize;
  DWORD          dwUsedSize;
  DWORD          dwProviderInfoSize;
  DWORD          dwProviderInfoOffset;
  DWORD          dwSwitchInfoSize;
  DWORD          dwSwitchInfoOffset;
  DWORD          dwPermanentLineID;
  DWORD          dwLineNameSize;
  DWORD          dwLineNameOffset;
  DWORD          dwStringFormat;
  DWORD          dwAddressModes;
  DWORD          dwNumAddresses;
  DWORD          dwBearerModes;
  DWORD          dwMaxRate;
  DWORD          dwMediaModes;
  DWORD          dwGenerateToneModes;
  DWORD          dwGenerateToneMaxNumFreq;
  DWORD          dwGenerateDigitModes;
  DWORD          dwMonitorToneMaxNumFreq;
  DWORD          dwMonitorToneMaxNumEntries;
  DWORD          dwMonitorDigitModes;
  DWORD          dwGatherDigitsMinTimeout;
  DWORD          dwGatherDigitsMaxTimeout;
  DWORD          dwMedCtlDigitMaxListSize;
  DWORD          dwMedCtlMediaMaxListSize;
  DWORD          dwMedCtlToneMaxListSize;
  DWORD          dwMedCtlCallStateMaxListSize;
  DWORD          dwDevCapFlags;
  DWORD          dwMaxNumActiveCalls;
  DWORD          dwAnswerMode;
  DWORD          dwRingModes;
  DWORD          dwLineStates;
  DWORD          dwUUIAcceptSize;
  DWORD          dwUUIAnswerSize;
  DWORD          dwUUIMakeCallSize;
  DWORD          dwUUIDropSize;
  DWORD          dwUUISendUserUserInfoSize;
  DWORD          dwUUICallInfoSize;
  LINEDIALPARAMS MinDialParams;
  LINEDIALPARAMS MaxDialParams;
  LINEDIALPARAMS DefaultDialParams;
  DWORD          dwNumTerminals;
  DWORD          dwTerminalCapsSize;
  DWORD          dwTerminalCapsOffset;
  DWORD          dwTerminalTextEntrySize;
  DWORD          dwTerminalTextSize;
  DWORD          dwTerminalTextOffset;
  DWORD          dwDevSpecificSize;
  DWORD          dwDevSpecificOffset;
  DWORD          dwLineFeatures;
  DWORD          dwSettableDevStatus;
  DWORD          dwDeviceClassesSize;
  DWORD          dwDeviceClassesOffset;
  GUID           PermanentLineGuid;
  DWORD          dwAddressTypes;
  GUID           ProtocolGuid;
  DWORD          dwAvailableTracking;
} LINEDEVCAPS, *LPLINEDEVCAPS;

メンバー

dwTotalSize

このデータ構造に割り当てられた合計サイズ (バイト単位)。

dwNeededSize

このデータ構造が返されるすべての情報をバイト単位で保持するために必要なサイズ。

dwUsedSize

有用な情報を含むこのデータ構造の部分のサイズ (バイト単位)。

dwProviderInfoSize

サービス プロバイダー情報を含む可変サイズのフィールドのサイズ (バイト単位)。

dwProviderInfoOffset

構造体の先頭からサービス プロバイダー情報へのオフセット (バイト単位)。

dwProviderInfoSize メンバーと dwProviderInfoOffset メンバーは、プロバイダーのハードウェアやソフトウェア (ハードウェアとソフトウェアのベンダー名やバージョン番号など) に関する情報を提供することを目的としています。 この情報は、ユーザーがプロバイダーに関する問題を含むカスタマー サービスを呼び出す必要がある場合に役立ちます。

dwSwitchInfoSize

スイッチ情報を含む可変サイズのデバイス フィールドのサイズ (バイト単位)。

dwSwitchInfoOffset

構造体の先頭からスイッチ情報までのオフセット (バイト単位)。

dwSwitchInfoSize メンバーと dwSwitchInfoOffset メンバーは、スイッチの製造元、モデル名、ソフトウェア バージョンなど、回線デバイスが接続されているスイッチに関する情報を提供することを目的としています。 この情報は、ユーザーがスイッチに関する問題を含むカスタマー サービスを呼び出す必要がある場合に役立ちます。

dwPermanentLineID

システムの構成で回線デバイスが認識される永続的な識別子。 これは、回線デバイスの永続的な名前です。 この永続的な名前 ( dwDeviceID ではなく) は、行がシステムに追加または削除され、オペレーティング システムのアップグレードによって保持されるため、変更されません。 したがって、他の行を追加または削除したり、オペレーティング システムを変更したりしても影響を受けないように、.ini ファイル (またはその他のファイル) 内の行固有の情報をリンクするために使用できます。

dwLineNameSize

このライン デバイスのユーザー構成可能な名前を含む可変サイズのデバイス フィールドのサイズ (バイト単位)。

dwLineNameOffset

このデータ構造の先頭からこのライン デバイスの名前までのオフセット。 この名前は、回線デバイスのサービス プロバイダーを構成するときにユーザーが構成でき、ユーザーの便宜のために提供されます。 フィールドのサイズは dwLineNameSize で指定します。

dwStringFormat

この行デバイスで使用される文字列形式。 このメンバーは、 STRINGFORMAT_定数のいずれかを使用します。

dwAddressModes

送信元アドレスを指定するモード。 このメンバーは、 LINEADDRESSMODE_定数を使用します

dwNumAddresses

この回線デバイスに関連付けられているアドレスの数。 個々のアドレスは、アドレス識別子によって参照されます。 アドレス識別子の範囲は、 dwNumAddresses によって示される値より 0 から 1 未満です。

dwBearerModes

アドレスでサポートできるさまざまなベアラー モードを示すフラグ配列。 このメンバーは、1 つ以上の LINEBEARERMODE_定数を使用します

dwMaxRate

呼び出しを介した情報交換の最大データ レート (1 秒あたりのビット数)。

dwMediaModes

アドレスがサポートできるさまざまなメディアの種類を示すフラグ配列。 このメンバーは、1 つ以上の LINEMEDIAMODE_定数を使用します

dwGenerateToneModes

この行で生成できるトーン。 このメンバーは、1 つ以上の LINETONEMODE_定数を使用します

dwGenerateToneMaxNumFreq

lineGenerateTone を使用してトーンを生成するときに、LINEGENERATETONE データ構造を使用して一般的なトーンを記述する際に指定できる最大周波数数。 値 0 は、トーン生成が使用できないことを示します。

dwGenerateDigitModes

この行で生成できる数字モード。 このメンバーは、1 つ以上の LINEDIGITMODE_定数を使用します

dwMonitorToneMaxNumFreq

lineMonitorTones を使用して一般的なトーンを監視するときに、LINEMONITORTONE データ構造を使用して一般的なトーンを記述する際に指定できる最大周波数数。 値 0 は、トーン モニターが使用できないことを示します。

dwMonitorToneMaxNumEntries

トーン リストで lineMonitorTones に指定できるエントリの最大数。

dwMonitorDigitModes

この行で検出できる数字モード。 このメンバーは、1 つ以上の LINEDIGITMODE_定数を使用します

dwGatherDigitsMinTimeout

lineGatherDigits で使用される最初の数字と数字間のタイムアウト値の両方に指定できる最小値 (ミリ秒単位)。 dwGatherDigitsMinTimeoutdwGatherDigitsMaxTimeout の両方がゼロの場合、タイムアウトはサポートされません。

dwGatherDigitsMaxTimeout

lineGatherDigits で使用される最初の数字と数字間のタイムアウト値の両方に指定できる最大値 (ミリ秒単位)。 dwGatherDigitsMinTimeoutdwGatherDigitsMaxTimeout の両方がゼロの場合、タイムアウトはサポートされません。

dwMedCtlDigitMaxListSize

lineSetMediaControl の digit list パラメーターで指定できるエントリの最大数。

dwMedCtlMediaMaxListSize

lineSetMediaControl のメディア リスト パラメーターで指定できるエントリの最大数。

dwMedCtlToneMaxListSize

lineSetMediaControl のトーン リスト パラメーターで指定できるエントリの最大数。

dwMedCtlCallStateMaxListSize

lineSetMediaControl の呼び出し状態リスト パラメーターで指定できるエントリの最大数。

dwDevCapFlags

ブール型デバイスの機能。 このメンバーは、1 つ以上の LINEDEVCAPFLAGS_定数を使用します

dwMaxNumActiveCalls

回線で一度にアクティブ (接続) できる (最小帯域幅) 呼び出しの最大数。 回線で帯域幅の高い呼び出しが確立されている場合は、アクティブな呼び出しの実際の数が少ない可能性があります。

dwAnswerMode

回線デバイスで別のオファリング通話に応答するときのアクティブな通話に対する影響。 このメンバーは 、LINEANSWERMODE_定数のいずれかを使用します。

dwRingModes

LINE_LINEDEVSTATE メッセージで 、呼び出しを示すメッセージで報告できるさまざまな 呼び出し モードの数。 リング モードは 1 つから dwRingModes までさまざまです。 0 はリングがないことを示します。

dwLineStates

この行のLINE_LINEDEVSTATEメッセージでアプリケーションに通知される可能性がある、さまざまな行状況コンポーネント。 このメンバーは、1 つ以上の LINEDEVSTATE_定数を使用します

dwUUIAcceptSize

呼び出しの受け入れ中に送信できるユーザーユーザー情報の最大サイズ ( null 終端記号を含む)。

dwUUIAnswerSize

呼び出し応答中に送信できる 、null 終端記号を含むユーザーユーザー情報の最大サイズ。

dwUUIMakeCallSize

呼び出し中に送信できるユーザーユーザー情報の最大サイズ ( null 終端記号を含む)。

dwUUIDropSize

呼び出しドロップ中に送信できるユーザーユーザー情報の最大サイズ ( null ターミネータを含む)。

dwUUISendUserUserInfoSize

lineSendUserUserInfo を使用した呼び出し中にいつでも個別に送信できる、null 終端記号を含むユーザーユーザー情報の最大サイズ。

dwUUICallInfoSize

LINECALLINFO 構造体で受信できるユーザーユーザー情報の最大サイズ (null 終端記号を含む)。

MinDialParams

この回線の呼び出しに設定できるダイヤル パラメーターの最小値 (ミリ秒単位)。 ダイヤル パラメーターは、 MinDialParams から MaxDialParams の範囲内の値に設定できます。 実際の設定の粒度は、サービス プロバイダー固有です。

MaxDialParams

この行の呼び出しに設定できるダイヤル パラメーターの最大値 (ミリ秒単位)。 ダイヤル パラメーターは、 MinDialParams から MaxDialParams の範囲内の値に設定できます。 実際の設定の粒度は、サービス プロバイダー固有です。

DefaultDialParams

この回線の呼び出しに使用される既定のダイヤル パラメーター。 これらのパラメーター値は、呼び出しごとにオーバーライドできます。

dwNumTerminals

この回線デバイス、そのアドレス、またはその呼び出しに設定できる端末の数。 個々のターミナルは、ターミナル ID によって参照され、 dwNumTerminals で示される値より 0 から 1 未満の範囲です。

dwTerminalCapsSize

LINETERMCAPS 型のエントリを含む配列を含む可変サイズのデバイス フィールドのサイズ (バイト単位)。

dwTerminalCapsOffset

この構造体の先頭から、 LINETERMCAPS 型のエントリを含む配列を含む可変サイズのデバイス フィールドまでのオフセット。 この配列は、0 から dwNumTerminals から 1 を引いた範囲のターミナル ID によってインデックスが作成されます。 配列内の各エントリは、対応するターミナルのターミナル デバイス機能を指定します。 フィールドのサイズは dwTerminalCapsSize によって指定されます。

dwTerminalTextEntrySize

dwTerminalTextSizedwTerminalTextOffset が指す null 終端記号を含む各ターミナル テキスト記述のサイズ (バイト単位)。

dwTerminalTextSize

null 終端記号を含む、行の使用可能な各ターミナルに関する説明テキストを含む可変サイズのフィールドのサイズ (バイト単位)

dwTerminalTextOffset

この構造体の先頭から、行の使用可能な各ターミナルに関する説明テキストまでのオフセット (バイト単位)。 各メッセージは dwTerminalTextEntrySize バイト長です。 これらのテキスト記述の文字列形式は、行のデバイス機能で dwStringFormat によって示されます。 フィールドのサイズは dwTerminalTextSize で指定します。

dwDevSpecificSize

可変サイズのデバイス固有フィールドのサイズ (バイト単位)。 デバイス固有の情報が文字列へのポインターである場合、サイズには null 終端記号を含める必要があります。

dwDevSpecificOffset

この構造体の先頭からデバイス固有のフィールドへのオフセット (バイト単位)。 フィールドのサイズは dwDevSpecificSize によって指定されます。

dwLineFeatures

LINEFEATURE_定数を使用して、このラインで使用できる機能。 サポートされている機能を呼び出すには、回線が適切な状態であり、基になる回線デバイスが互換モードで開かれている必要があります。 ビット位置の 0 は、対応する機能が使用できないことを示します。 1 つは、ラインが操作が意味を持つ適切な状態にある場合に、対応するフィーチャが使用可能であることを示します。 このメンバーを使用すると、アプリケーションは、デバイスでサポートできる回線機能 (およびサポートできないライン機能) を検出できます。

dwSettableDevStatus

lineSetLineDevStatus を使用して変更できる LINEDEVSTATUSFLAGS 値。

dwDeviceClassesSize

この行の 1 つ以上のアドレス ( null 終端記号を含む) でサポートされているデバイス クラス識別子を含む文字列のサイズ (バイト単位)。

dwDeviceClassesOffset

この構造体の先頭から、この行の 1 つ以上のアドレスでサポートされているデバイス クラス識別子を含む文字列へのオフセット (バイト単位)。 これらの文字列は 、lineGetID で使用されます。これらは NULLs で区切られ、リスト内の最後の識別子の後に 2 つの NULLが続きます。 フィールドのサイズは dwDeviceClassesSize によって指定されます。

PermanentLineGuid

ライン デバイスに永続的に関連付けられている GUID。

dwAddressTypes

呼び出しに使用されるアドレスの種類。 構造体のこのメンバーは、ネゴシエートされた TAPI バージョンが 3.0 以上の場合にのみ使用できます。

ProtocolGuid

現在の TAPI プロトコル。 構造体のこのメンバーは、ネゴシエートされた TAPI バージョンが 3.0 以上の場合にのみ使用できます。 プロトコルは tapi3.h で宣言されています。

dwAvailableTracking

LINECALLHUBTRACKING.constant で表される、使用可能な追跡。 構造体のこのメンバーは、ネゴシエートされた TAPI バージョンが 3.0 以上の場合にのみ使用できます。

注釈

デバイス固有の拡張機能では、このデータ構造の DevSpecific (dwDevSpecificSizedwDevSpecificOffset) の可変サイズ領域を使用する必要があります。

古いアプリケーションは、 LINEDEVCAPS 構造体に新しいメンバーなしでコンパイルされ、新しいサイズより小さい SIZEOF LINEDEVCAPS を使用します。 アプリケーションは、lineGetDevCaps 関数を使用して dwAPIVersion パラメーターを渡します。これは、このような状況を処理する TAPI によるガイダンスに使用できます。 指定した dwAPIVersion で定義されている構造体の固定部分のサイズより小さい dwTotalSize メンバーをアプリケーションが渡すと、LINEERR_STRUCTURETOOSMALLが返されます。 アプリケーションによって十分なメモリが割り当てられている場合、 TSPI_lineGetDevCapsを呼び出す前に、TAPI は dwNeededSize メンバーと dwUsedSize メンバーを、指定された API バージョンに存在していた構造体の固定サイズに設定します。

新しいアプリケーションは、ネゴシエートされた API バージョンを認識し、ネゴシエートされた API バージョンの構造体の固定部分の元の末尾を超える固定部分のメンバーの内容を調べないようにする必要があります。

dwBearerModes メンバーでLINEBEARERMODE_DATA ビットが設定されている場合、dwMaxRate メンバーはベアラー チャネルでのデジタル伝送の最大レートを示します。 LINEDEVCAPS 構造体の dwMaxRate メンバーは、LINEDEVCAPS 構造体の dwBearerModes メンバーが LINEBEARERMODE_DATA に設定されていない場合でも、有効な値を含めることができます。

LINEBEARERMODE_DATAが dwBearerModes で設定されていないが、LINEBEARERMODE_VOICE値が設定され、LINEMEDIAMODE_DATAMODEM値が dwMediaModes メンバーに設定されている場合、dwMaxRate メンバーは、接続されているモデムまたは同等の機能に対応する電話回線の最大 SYNCHRONOUS (DCE) ビット レートを示します。 たとえば、モデムの最速の変調速度が 14,400bps の V.32bis の場合、 dwMaxRate は 14400 になります。 これは、最も高速な DTE ポート レート (38400、57600、または 115200) ではなく、モデムが電話回線でサポートする最速のビット レートです。

dwMaxRate メンバーを誤って解釈しないように、アプリケーションでLINEBEARERMODE_DATAが設定されていないことを確認チェック注意する必要があります。 LINEBEARERMODE_DATAが設定されている場合は、64000 以上になる可能性があります。

また、モデムが明確に識別されていない場合 (たとえば、"汎用" モデム)、示されている図はモデムの検査に基づく "最適な推測" になることにも注意してください。

dwDeviceClassesOffset を介した dwSettableDevStatus メンバーは、TAPI バージョンが 2.0 以降の回線デバイスを開くアプリケーションでのみ使用できます。

要件

要件
Header tapi.h

こちらもご覧ください

LINECALLINFO

LINEGENERATETONE

LINEMONITORTONE

LINETERMCAPS

LINETRANSLATECAPS

LINE_LINEDEVSTATE

TSPI_lineGetDevCaps

lineClose

lineDial

lineGatherDigits

lineGenerateTone

lineGetDevCaps

lineGetID

lineGetTranslateCaps

lineMakeCall

lineMonitorTones

lineSendUserUserInfo

lineSetMediaControl

lineTranslateAddress

lineUncompleteCall