функция lineParkA (tapi.h)

Функция linePark парков указанный вызов в соответствии с указанным режимом парка.

Синтаксис

LONG lineParkA(
  HCALL       hCall,
  DWORD       dwParkMode,
  LPCSTR      lpszDirAddress,
  LPVARSTRING lpNonDirAddress
);

Параметры

hCall

Дескриптор вызова, который будет припаркован. Приложение должно быть владельцем вызова. Состояние вызова hCall должно быть подключено.

dwParkMode

Режим парка, с которым должен быть припаркован вызов. Этот параметр может иметь только один набор флагов и использовать одну из LINEPARKMODE_ констант.

lpszDirAddress

Указатель на строку null-terminated, указывающую адрес, в котором должен быть припаркован вызов при использовании управляемого парка. Адрес находится в формате номера с телефонным подключением. Этот параметр игнорируется для ненаправленного парка.

lpNonDirAddress

Указатель на структуру типа VARSTRING. Для ненаправленного парка адрес, в котором выполняется припаркованный вызов, возвращается в этой структуре. Этот параметр игнорируется для управляемого парка. В структуре VARSTRING dwStringFormat необходимо задать значение STRINGFORMAT_ASCII (буфер строки ASCII, содержащий строку null-terminated string), а завершающий NULL должен быть учтен в dwStringSize. Перед вызовом lineParkприложение должно задать dwTotalSize элемент этой структуры, чтобы указать объем памяти, доступной TAPI для возврата информации.

Возвращаемое значение

Возвращает положительный идентификатор запроса, если функция завершена асинхронно, или отрицательный номер ошибки при возникновении ошибки. Параметр dwParam2 соответствующего сообщения LINE_REPLY равен нулю, если функция завершается успешно или является отрицательным номером ошибки при возникновении ошибки. Возможные возвращаемые значения:

LINEERR_INVALADDRESS, LINEERR_NOTOWNER, LINEERR_INVALCALLHANDLE, LINEERR_OPERATIONUNAVAIL, LINEERR_INVALCALLSTATE, LINEERR_OPERATIONFAILED, LINEERR_INVALPARKMODE, LINEERR_RESOURCEUNAVAIL, LINEERR_INVALPOINTER, LINEERR_STRUCTURETOOSMALL, LINEERR_NOMEM, LINEERR_UNINITIALIZED.

Замечания

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

Припаркованный вызов обычно вводит состояние простоя после успешного припарковки, а затем приложение должно освободить его дескриптор для вызова. Если приложение выполняет lineUnpark на припаркованном вызове, для непаркованного вызова создается новый дескриптор вызова, даже если приложение не разблокировало его старый дескриптор вызова.

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

Если элемент dwTotalSize в структуре VARSTRING не указывает достаточно памяти для получения адреса парка, соответствующее сообщение ответа возвращает значение ошибки LINEERR_STRUCTURETOOSMALL. В таких случаях нет способа получить полный адрес парка. При возврате значения ошибки LINEERR_STRUCTURETOOSMALL dwNeededSize элемента структуры NonDirAddress не содержит допустимое значение. Если значение ошибки LINEERR_STRUCTURETOOSMALL получено из ненаправленного linePark, увеличьте размер буфера и вызовите linePark, пока не вернется результат успешного или другого LINEERR_XXX.

Заметка

Заголовок tapi.h определяет linePark как псевдоним, который автоматически выбирает версию ANSI или Юникод этой функции на основе определения константы препроцессора ЮНИКОД. Сочетание использования псевдонима, нейтрального для кодирования, с кодом, не зависящим от кодирования, может привести к несоответствиям, которые приводят к ошибкам компиляции или среды выполнения. Дополнительные сведения см. в соглашениях о прототипах функций.

Требования

Требование Ценность
целевая платформа Виндоус
заголовка tapi.h
библиотеки Tapi32.lib
DLL Tapi32.dll

См. также

LINE_REPLY

Обзор парка

дополнительных функций службы

Обзор TAPI 2.2

VARSTRING

lineUnpark