Структура LINECALLPARAMS (tapi.h)

Структура LINECALLPARAMS описывает параметры, предоставляемые при выполнении вызовов с помощью функций lineMakeCall и TSPI_lineMakeCall . Структура LINECALLPARAMS также используется в качестве параметра в других операциях, таких как функция lineOpen .

В комментариях справа от блока синтаксиса указываются значения по умолчанию, используемые, когда эта структура не предоставляется для lineMakeCall.

Синтаксис

typedef struct linecallparams_tag {
  DWORD          dwTotalSize;
  DWORD          dwBearerMode;
  DWORD          dwMinRate;
  DWORD          dwMaxRate;
  DWORD          dwMediaMode;
  DWORD          dwCallParamFlags;
  DWORD          dwAddressMode;
  DWORD          dwAddressID;
  LINEDIALPARAMS DialParams;
  DWORD          dwOrigAddressSize;
  DWORD          dwOrigAddressOffset;
  DWORD          dwDisplayableAddressSize;
  DWORD          dwDisplayableAddressOffset;
  DWORD          dwCalledPartySize;
  DWORD          dwCalledPartyOffset;
  DWORD          dwCommentSize;
  DWORD          dwCommentOffset;
  DWORD          dwUserUserInfoSize;
  DWORD          dwUserUserInfoOffset;
  DWORD          dwHighLevelCompSize;
  DWORD          dwHighLevelCompOffset;
  DWORD          dwLowLevelCompSize;
  DWORD          dwLowLevelCompOffset;
  DWORD          dwDevSpecificSize;
  DWORD          dwDevSpecificOffset;
  DWORD          dwPredictiveAutoTransferStates;
  DWORD          dwTargetAddressSize;
  DWORD          dwTargetAddressOffset;
  DWORD          dwSendingFlowspecSize;
  DWORD          dwSendingFlowspecOffset;
  DWORD          dwReceivingFlowspecSize;
  DWORD          dwReceivingFlowspecOffset;
  DWORD          dwDeviceClassSize;
  DWORD          dwDeviceClassOffset;
  DWORD          dwDeviceConfigSize;
  DWORD          dwDeviceConfigOffset;
  DWORD          dwCallDataSize;
  DWORD          dwCallDataOffset;
  DWORD          dwNoAnswerTimeout;
  DWORD          dwCallingPartyIDSize;
  DWORD          dwCallingPartyIDOffset;
  DWORD          dwAddressType;
} LINECALLPARAMS, *LPLINECALLPARAMS;

Члены

dwTotalSize

Общий размер, выделенный для этой структуры данных, в байтах. Этот размер должен быть достаточно большим, чтобы вместить все фиксированные и изменчивые по размеру части этой структуры данных.

dwBearerMode

Режим носителя для вызова. Этот элемент использует одну из констант LINEBEARERMODE_.

Если параметр dwBearerMode равен нулю, значение по умолчанию — LINEBEARERMODE_VOICE.

dwMinRate

Минимальная скорость передачи данных, запрашиваемая для потока данных вызова, в битах (бит в секунду).

dwMaxRate

Максимальная скорость передачи данных, запрашиваемая для потока данных вызова, в битах (бит в секунду). При выполнении вызова поставщик услуг пытается предоставить самую высокую доступную частоту в запрошенном диапазоне (dwMinRate в dwMaxRate). Если требуется определенная скорость передачи данных, необходимо задать для этого значения значения dwMinRate и dwMaxRate . Если приложение лучше всего работает с одной скоростью, но может снизиться до более низкой скорости, приложение должно указать их в качестве максимальной и минимальной скорости соответственно. Если параметр dwMaxRate равен нулю, значение по умолчанию определяется элементом dwMaxRate структуры LINEDEVCAPS . Это максимальная скорость, поддерживаемая устройством.

dwMediaMode

Ожидаемый тип носителя вызова. Этот элемент использует одну из констант LINEMEDIAMODE_.

Если параметр dwMediaMode равен нулю, значение по умолчанию — LINEMEDIAMODE_INTERACTIVEVOICE.

dwCallParamFlags

Коллекция логических параметров настройки вызовов. Этот элемент использует одну или несколько констант LINECALLPARAMFLAGS_.

dwAddressMode

Режим, в котором указан исходный адрес. Этот элемент использует одну из констант LINEADDRESSMODE_.

Примечание Член dwAddressMode не может быть LINEADDRESSMODE_ADDRESSID для вызова функции lineOpen . Однако это ограничение не применяется к lineMakeCall.
 

dwAddressID

Идентификатор исходного адреса, если параметру dwAddressMode присвоено значение LINEADDRESSMODE_ADDRESSID. Идентификатор адреса постоянно связан с адресом; идентификатор остается неизменным при обновлении операционной системы.

DialParams

Параметры набора, используемые в этом вызове, типа LINEDIALPARAMS. Если для этого поля задано значение 0, используется значение по умолчанию для поля, указанное в элементе DefaultDialParams структуры LINEDEVCAPS . Если для поля, находящегося за пределами диапазона, заданного соответствующими полями в MinDialParams и MaxDialParams в структуре LINEDEVCAPS , используется ближайшее значение в допустимом диапазоне.

dwOrigAddressSize

Размер исходного поля адреса в байтах.

dwOrigAddressOffset

Смещение от начала структуры до поля изменяющегося размера, вмещающего исходный адрес. Формат этого адреса зависит от члена dwAddressMode . Размер поля определяется dwOrigAddressSize.

dwDisplayableAddressSize

Размер отображаемой строки, включая признак конца null , в байтах.

dwDisplayableAddressOffset

Отображаемая строка, используемая для ведения журнала. Содержимое этих элементов записывается в элементы dwDisplayableAddressOffset и dwDisplayableAddressSize сообщения LINECALLINFO вызова. Функция lineTranslateAddress возвращает соответствующие сведения для размещения в этом поле в членах dwDisplayableAddressSize и dwDisplayableAddressOffset структуры LINETRANSLATEOUTPUT . Размер поля определяется параметром dwDisplayableAddressSize.

dwCalledPartySize

Размер сведений о вызываемой стороне в байтах.

dwCalledPartyOffset

Смещение от начала структуры к полю изменяющегося размера, вмещающего сведения о вызываемой стороне. Эта информация может быть указана приложением, которое выполняет вызов, и становится доступной в информационной структуре вызова для ведения журнала. Формат этого поля соответствует формату dwStringFormat, как указано в LINEDEVCAPS. Размер поля определяется параметром dwCalledPartySize.

dwCommentSize

Размер поля комментария к вызову в байтах.

dwCommentOffset

Смещение от начала структуры до поля изменяющегося размера, вмещающего комментарии о вызове. Эта информация может быть указана приложением, которое выполняет вызов, и становится доступной в информационной структуре вызова для ведения журнала. Формат этого поля соответствует формату dwStringFormat, как указано в LINEDEVCAPS. Размер поля определяется параметром dwCommentSize.

dwUserUserInfoSize

Размер сведений пользователя и пользователя, включая признак конца null , в байтах.

dwUserUserInfoOffset

Смещение от начала структуры до поля изменяющегося размера, вмещающего сведения о пользователе. Поле дискриминатора протокола для сведений о пользователе и пользователе, если это необходимо, должно отображаться в качестве первого байта данных, на которые указывает dwUserUserInfoOffset, и должно учитываться в dwUserUserInfoSize.

dwHighLevelCompSize

Размер сведений о совместимости высокого уровня в байтах.

dwHighLevelCompOffset

Смещение от начала структуры к полю изменяющегося размера, вмещающего сведения о совместимости высокого уровня. Размер поля определяется dwHighLevelCompSize.

dwLowLevelCompSize

Размер сведений о совместимости низкого уровня в байтах.

dwLowLevelCompOffset

Смещение от начала структуры до поля изменяющегося размера, вмещающего сведения о совместимости низкого уровня. Размер поля определяется dwLowLevelCompSize.

dwDevSpecificSize

Размер сведений об устройстве в байтах.

dwDevSpecificOffset

Смещение от начала структуры до поля изменяющегося размера, вмещающего сведения об устройстве. Размер поля определяется dwDevSpecificSize.

dwPredictiveAutoTransferStates

LINECALLSTATE_ констант, запись в которых приводит к слепой передаче вызова на указанный целевой адрес. Установите значение 0, если автоматическая передача не требуется.

dwTargetAddressSize

Размер целевой строки набираемого адреса, включая признак конца null , в байтах.

dwTargetAddressOffset

Смещение от начала структуры к строке, указывающей целевой адрес для набора (не dwAddressID); используется в случае определенных автоматических действий. В случае прогнозного набора номера указывает адрес, на который должен быть автоматически передан вызов. Размер строки определяется dwTargetAddressSize.

По сути, это та же строка, которая будет передана в lineBlindTransfer , если бы не использовалась автоматическая передача. Установите значение 0, если автоматическая передача не требуется. В случае без удержания конференции указывает адрес, который должен быть конференцией для звонка. В случае одношагового переноса указывает адрес для набора во время консультационного звонка.

dwSendingFlowspecSize

Размер сведений о качестве обслуживания в байтах.

dwSendingFlowspecOffset

Смещение от начала структуры к структуре FLOWSPEC , за которой следуют данные, относящиеся к поставщику WinSock, эквивалентные тому, что хранилось бы в SendingFlowspec в структуре QOS . Указывает требуемое качество обслуживания в направлении отправки при вызове. Часть поставщика, следующая за структурой FLOWSPEC , не должна содержать указателей на другие блоки памяти, так как TAPI не знает, как маршалировать данные, на которые указывают частные указатели, и передавать их через межпроцессное взаимодействие с приложением. Размер поля определяется dwSendingFlowspecSize.

dwReceivingFlowspecSize

Размер сведений о качестве обслуживания в байтах.

dwReceivingFlowspecOffset

Смещение от начала структуры к структуре FLOWSPEC , за которой следуют данные, относящиеся к поставщику WinSock, эквивалентные тому, что было бы сохранено в ReceivingFlowspec в структуре QOS . Указывает требуемое качество обслуживания в направлении приема вызова. Часть поставщика, следующая за структурой FLOWSPEC , не должна содержать указателей на другие блоки памяти, так как TAPI не знает, как маршалировать данные, на которые указывают частные указатели, и передавать их через межпроцессное взаимодействие с приложением. Размер поля определяется dwReceivingFlowspecSize.

dwDeviceClassSize

Размер строки класса устройства, включая признак конца NULL , в байтах.

dwDeviceClassOffset

Смещение от начала структуры до строки, заканчивающейся null, которая указывает класс устройства устройства, конфигурация которого указана в DeviceConfig. Допустимые строки класса устройства совпадают с строками, указанными для функции lineGetID . Размер строки определяется dwDeviceClassSize.

dwDeviceConfigSize

Размер данных конфигурации устройства в байтах.

dwDeviceConfigOffset

Смещение от начала структуры к непрозрачной структуре данных конфигурации. Это значение возвращается в члене dwStringSize в структуре VARSTRING , возвращаемой lineGetDevConfig. Если размер равен нулю, используется конфигурация устройства по умолчанию. Это позволяет приложению задать конфигурацию устройства до инициации вызова. Размер поля определяется dwDeviceConfigSize.

dwCallDataSize

Размер данных вызова, устанавливаемых приложением, в байтах.

dwCallDataOffset

Смещение от начала структуры к данным вызова, устанавливаемым приложением, которые должны быть изначально присоединены к вызову. Размер поля определяется dwCallDataSize.

dwNoAnswerTimeout

В секундах после завершения набора номера вызов должен быть разрешен для ожидания в состояниях PROCEEDING или RINGBACK, прежде чем поставщик услуг автоматически откажется с LINECALLSTATE_DISCONNECTED и LINEDISCONNECTMODE_NOANSWER. Значение 0 указывает, что приложению не требуется автоматический отказ от вызова.

dwCallingPartyIDSize

Размер строки идентификатора вызывающей стороны, включая признак конца null , в байтах, включая символ конца null.

dwCallingPartyIDOffset

Смещение от начала структуры к строке, завершающейся null, которая указывает удостоверение стороны, которая размещает вызов. Если содержимое идентификатора приемлемо, а путь доступен, поставщик услуг передает идентификатор вызывающей стороне, чтобы указать удостоверение вызывающей стороны. Размер поля определяется dwCallingPartyIDSize.

dwAddressType

Тип адреса , используемый для вызова. Этот элемент структуры доступен только в том случае, если согласованная версия TAPI 3.0 или выше.

Комментарии

Расширения, относящиеся к устройству, должны использовать область DevSpecific (dwDevSpecificSize и dwDevSpecificOffset) с переменным размером этой структуры данных.

Эта структура используется в качестве параметра для lineMakeCall при настройке вызова. Его поля позволяют приложению указать качество обслуживания, запрашиваемое из сети, а также различные параметры настройки вызовов ISDN. Если в lineMakeCall не указана структура LINECALLPARAMS, запрашивается голосовой вызов по умолчанию POTS со значениями по умолчанию, перечисленными выше.

Примечание Поля DialParams через dwDevSpecificOffset игнорируются при указании параметра lpCallParams с помощью функции lineOpen .
 
Члены dwPredictiveAutoTransferStates через dwCallingPartyIDOffset доступны только для приложений, которые открывают линейное устройство с API версии 2.0 или более поздней.

Требования

   
Верхняя часть tapi.h

См. также раздел

LINEDEVCAPS

LINEDIALPARAMS

LINETRANSLATEOUTPUT

TSPI_lineMakeCall

VARSTRING

lineBlindTransfer

lineGetDevConfig

lineGetID

lineMakeCall

LineОткрыть

lineTranslateAddress