Поделиться через


Классы устройств TAPI

Класс устройств — это группа связанных физических устройств или драйверов устройств, с помощью которых приложения отправляют и получают информацию или данные, составляющие вызов. Каждый класс устройства имеет имя класса устройства , которое однозначно идентифицирует класс и предоставляет сведения об интерфейсе программирования и командах, которые можно использовать для открытия устройств в классе и взаимодействия с ними.

Интерфейс TAPI связывает устройства из одного или нескольких классов устройств с каждым устройством линии или телефона. Чтобы получить доступ к одному из этих устройств, извлеките идентификатор устройства с помощью функции lineGetID или phoneGetID . Вы указываете имя класса устройства, а функция возвращает конкретное имя порта, имя устройства, дескриптор устройства или идентификатор устройства, необходимые для открытия устройства и доступа к устройству. Формат возвращаемых сведений зависит от класса устройства и описывается в последующих разделах этого раздела.

Имена классов устройств также используются с функциями lineConfigDialog и phoneConfigDialog , чтобы пользователь мог задать параметры конфигурации для данного устройства, с функциями lineGetIcon и phoneGetIcon для получения значка, представляющего данное устройство, и с функциями lineGetDevConfig и lineSetDevConfig для непосредственного получения и задания параметров конфигурации для данного устройства.

В следующем списке показаны имена классов устройств.

Имя класса устройства Описание
Comm Порт связи.
comm/datamodem Модем через порт связи.
comm/datamodem/portname Имя устройства, к которому подключен модем.
волна/в Звуковое устройство волны (только для ввода).
волна/выход Звуковое устройство волны (только для вывода).
волна, вход и выход Волновой звуковой аппарат, полный дуплекс.
midi/in Секвенсор MIDI (только входные данные).
midi/out MidI sequencer (только выходные данные).
tapi/line Устройство линии.
tapi/телефон Телефонное устройство.
Ndis Сетевое устройство.
tapi/terminal Устройство терминала.

 

Примечание

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

 

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

Формат данных конфигурации, используемых с функциями lineSetDevConfig и lineGetDevConfig , также зависит от класса устройства. Как правило, lineGetDevConfig используется для сохранения копии текущих данных конфигурации устройства, а затем используется lineSetDevConfig с сохраненными данными конфигурации для восстановления конфигурации устройства до предыдущего состояния. Это удобный способ временного изменения конфигурации без необходимости вручную восстанавливать ее до предыдущего состояния. Поскольку точный формат данных конфигурации устройства может отличаться для каждого поставщика услуг, не следует использовать lineSetDevConfig и lineGetDevConfig для непосредственного управления данными конфигурации устройства. Некоторые форматы предоставляются только для сведений.