Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Функция linePickup выбирает оповещение о вызове по указанному целевому адресу и возвращает дескриптор вызова для выбранного вызова. Если вызывается null для параметра lpszDestAddress, выполняется сбор группы. Если устройство требуется, lpszGroupID указывает идентификатор группы, к которому принадлежит станция оповещений.
Синтаксис
LONG linePickupA(
HLINE hLine,
DWORD dwAddressID,
LPHCALL lphCall,
LPCSTR lpszDestAddress,
LPCSTR lpszGroupID
);
Параметры
hLine
Обработайте устройство открытой строки, на котором должен быть выбран вызов.
dwAddressID
Адрес hLine, в котором должна быть получена пикап. Идентификатор адреса постоянно связан с адресом; Идентификатор остается постоянным в обновлениях операционной системы.
lphCall
Указатель на расположение памяти, в котором возвращается дескриптор выбранного вызова. Приложение является первоначальным владельцем вызова.
lpszDestAddress
Указатель на null-завершенный буфер символов, содержащий адрес, вызов которого требуется забрать. Адрес находится в стандартном формате абонентского адреса.
lpszGroupID
Указатель на null-завершенный буфер символов, содержащий идентификатор группы, к которому принадлежит станция оповещений. Этот параметр необходим для некоторых коммутаторов для получения вызовов за пределами текущей группы сбора.
Параметр lpszGroupID можно указать с помощью указателя NULL для lpszDestAddress. Кроме того, lpszGroupID можно указать в дополнение к lpszDestAddress, если требуется устройством.
Возвращаемое значение
Возвращает положительный идентификатор запроса, если функция завершена асинхронно, или отрицательный номер ошибки при возникновении ошибки. Параметр dwParam2 соответствующего сообщения LINE_REPLY равен нулю, если функция завершается успешно или является отрицательным номером ошибки при возникновении ошибки. Возможные возвращаемые значения:
LINEERR_INVALADDRESS, LINEERR_NOMEM, LINEERR_INVALADDRESSID, LINEERR_OPERATIONUNAVAIL, LINEERR_INVALGROUPID, LINEERR_OPERATIONFAILED, LINEERR_INVALLINEHANDLE, LINEERR_RESOURCEUNAVAIL, LINEERR_INVALPOINTER, LINEERR_UNINITIALIZED.
Замечания
Когда звонок был успешно выбран, приложение уведомляется LINE_CALLSTATE сообщении об изменении состояния вызова. Структура LINECALLINFO предоставляет сведения о вызове, который был выбран. В нем перечислены причины вызова как . Эта структура доступна с помощью lineGetCallInfo.
Если LINEADDRCAPFLAGS_PICKUPCALLWAIT TRUE, linePickup можно использовать для получения звонка, для которого пользователь обнаружил сигнал ожидания звонка, но для которого поставщик не может выполнить обнаружение. Это дает пользователю механизм "ответить" на ожидающий вызов, даже если поставщик услуг не смог обнаружить сигнал ожидания звонка. Параметры указателя lpszDestAddress и lpszGroupID должны быть NULL для получения вызова ожидания звонка. Функция linePickup создает новый дескриптор вызова ожидания и передает его пользователю. Параметр dwAddressID чаще всего равен нулю (особенно в однострочных жилых случаях).
После linePickup используется для получения второго вызова, lineSwapHold можно использовать для переключения между ними. Функцию lineDrop можно использовать для удаления одного (и переключения на другой) и т. д. Если пользователь хочет удалить текущий звонок и забрать второй вызов, он должен вызвать lineDrop, когда он получает сигнал ожидания звонка, дождитесь второго вызова звонка, а затем вызовите lineAnswer на новый дескриптор вызова. Флаг LINEADDRFEATURE_PICKUP в dwAddressFeatures в LINEADDRESSSTATUS указывает, когда на самом деле это возможно.
Заметка
Заголовок tapi.h определяет linePickup как псевдоним, который автоматически выбирает версию ANSI или Юникод этой функции на основе определения константы препроцессора ЮНИКОДа. Сочетание использования псевдонима, нейтрального для кодирования, с кодом, не зависящим от кодирования, может привести к несоответствиям, которые приводят к ошибкам компиляции или среды выполнения. Дополнительные сведения см. в соглашениях о прототипах функций.
Требования
| Требование | Ценность |
|---|---|
| целевая платформа | Виндоус |
| заголовка | tapi.h |
| библиотеки |
Tapi32.lib |
| DLL | Tapi32.dll |
См. также
Обзор выбора
дополнительных функций службы
Обзор