Интерфейсы API UPnP
Обзор технологии API UPnP.
Для разработки API UPnP требуются следующие заголовки:
Рекомендации по программированию для этой технологии см. в следующих разделах:
Функции
Прервать Метод Abort останавливает асинхронную операцию загрузки, запущенную IUPnPDescriptionDocument::LoadAsync. |
AddCallback Метод AddCallback регистрирует обратный вызов приложения с помощью платформы UPnP. |
AddRequestHeaders Добавляет предоставленный заголовок HTTP в HTTP-запрос. |
Советую Метод Advise вызывается узлом устройства, чтобы начать получать события от размещенной службы. |
AsyncOperationComplete Метод обратного вызова AsyncOperationComplete предоставляет уведомление о завершении асинхронной операции ввода-вывода. |
BeginInvokeAction Метод BeginInvokeAction вызывает действие на устройстве в асинхронном режиме. Кроме того, если отложенное скачивание SCPD и подписка на события выбраны, но это еще не было сделано, этот метод инициирует загрузку SCPD. |
BeginQueryStateVariable Метод BeginQueryStateVariable инициирует асинхронный запрос значения переменной состояния от определенной службы. |
BeginSCPDDownload Метод BeginSCPDDownload инициирует асинхронное скачивание документа SCPD. |
BeginSubscribeToEvents BeginSubscribeToEvents инициирует подписку на события в асинхронном режиме и регистрирует обратный вызов приложения в платформе UPnP. |
CancelAsyncFind Метод CancelAsyncFind отменяет асинхронный поиск. |
CancelAsyncOperation Метод CancelAsyncOperation отменяет ожидающие асинхронные операции, инициированные методами BeginInvokeAction, BeginQueryStateVariable, BeginSubscribeToEvents или BeginSCPDDownload. |
CreateAsyncFind Метод CreateAsyncFind создает асинхронную операцию поиска. |
УстройствоДобавлено Метод DeviceAdded вызывается платформой UPnP для уведомления приложения о добавлении устройства в сеть. |
DeviceAddedWithInterface Метод DeviceAddedWithInterface вызывается платформой UPnP для уведомления приложения о добавлении устройства в сеть. |
DeviceByUDN Метод DeviceByUDN возвращает устройство с указанным уникальным именем устройства (UDN), содержащимся в загруженном документе описания. |
Устройство удалено Метод DeviceRemoved вызывается платформой UPnP для уведомления приложения об удалении устройства из сети. |
EndInvokeAction Метод EndInvokeAction извлекает результаты предыдущей операции BeginInvokeAction и извлекает результирующий выходной аргумент. |
EndQueryStateVariable Метод EndQueryStateVariable извлекает результаты предыдущей операции BeginQueryStateVariable и возвращает результирующей переменной состояния для конкретной службы. |
EndSCPDDownload Метод EndSCPDDownload извлекает результаты предыдущей асинхронной загрузки документа SCPD. |
EndSubscribeToEvents Метод EndSubscribeToEvents извлекает результаты предыдущей операции BeginSubscribeToEvents. |
FindByType Метод FindByType выполняет синхронный поиск устройств по типу устройства или типу службы. |
FindByUDN Метод FindByUDN выполняет синхронный поиск устройства по его уникальному имени (UDN). |
get__NewEnum Свойство _NewEnum указывает интерфейс перечислителя IEnumVARIANT или IEnumUnknown для коллекции. (IUPnPDevices.get__NewEnum) |
get__NewEnum Свойство _NewEnum указывает интерфейс перечислителя IEnumVARIANT или IEnumUnknown для коллекции. (IUPnPServices.get__NewEnum) |
get_Children Свойство Children указывает все дочерние устройства устройства. Устройства хранятся в коллекции IUPnPDevices. |
get_Count Свойство Count указывает количество устройств в коллекции. |
get_Count Свойство Count указывает количество служб в коллекции. |
get_Description Свойство Description задает удобочитаемую сводку функциональных возможностей устройства. |
get_FriendlyName Свойство FriendlyName указывает отображаемое имя устройства. |
get_HasChildren Свойство HasChildren указывает, есть ли у устройства какие-либо дочерние устройства. |
get_Id Свойство Id указывает идентификатор службы для службы. |
get_IsRootDevice Свойство IsRootDevice указывает, является ли устройство самым верхним устройством в дереве устройств. |
get_Item Свойство Item указывает интерфейс IUPnPDevice для устройства, определяемого определяемым пользователем, в коллекции. |
get_Item Свойство Item указывает интерфейс IUPnPService для службы, определяемый идентификатором службы, в коллекции. |
get_LastTransportStatus Для запросов, связанных с событиями переменных, свойство LastTransportStatus указывает состояние HTTP последней операции IUPnPService::InvokeAction. |
get_LoadResult Свойство LoadResult указывает код успешного или неудачного завершения операции загрузки. |
get_ManufacturerName Свойство ManufacturerName указывает удобочитаемую форму имени производителя устройства. |
get_ManufacturerURL Свойство ManufacturerURL указывает URL-адрес веб-сайта производителя. |
get_ModelName Свойство ModelName указывает удобочитаемую форму имени модели устройства. |
get_ModelNumber Свойство ModelNumber задает удобочитаемую форму номера модели устройства. |
get_ModelURL Свойство ModelURL указывает URL-адрес веб-страницы, содержащей сведения о конкретной модели для устройства. |
get_ParentDevice Свойство ParentDevice указывает родительский элемент устройства. |
get_PresentationURL Свойство PresentationURL указывает URL-адрес презентации для веб-страницы, которая управляет устройством. |
get_ReadyState Свойство ReadyState указывает состояние операции загрузки документа. |
get_RootDevice Свойство RootDevice указывает самое верхнее устройство в дереве устройств. Корневое устройство представляет физический объект. |
get_SerialNumber Свойство SerialNumber указывает удобочитаемую форму серийного номера устройства. |
get_Services Свойство Services указывает список служб, предоставляемых устройством. |
get_ServiceTypeIdentifier Свойство ServiceTypeIdentifier указывает идентификатор типа службы для устройства. |
get_Type Метод Type указывает универсальный код ресурса (URI) типа устройства. |
get_UniqueDeviceName Свойство UniqueDeviceName указывает уникальное имя устройства (UDN). Определяемые пользователем идентификаторы являются уникальными; два устройства не могут иметь одинаковые UDN. |
get_UPC Свойство СКП задает удобочитаемую форму кода продукта. |
GetAddressFamily Метод GetAddressFamily извлекает текущее значение флага семейства адресов объекта Device Finder. |
GetDocument Извлекает документ описания XML-устройства для устройства UPnP. |
GetDocument Метод GetDocument извлекает документ Service Control Protocol Description (SCPD) для объекта службы. |
GetDocumentURL Метод GetDocumentURL возвращает URL-адрес, с которого можно загрузить документ описания устройства. |
GetDocumentURL Метод GetDocumentURL получает URL-адрес SCPD для объекта службы. С помощью этого URL-адреса точка управления UPnP может скачать полный документ SCPD. |
GetDwordValue Метод GetDwordValue получает 4-байтовое значение, которое предоставляет сведения о запросе или инициаторе запроса. |
GetGuidValue Метод GetGuidValue в настоящее время не поддерживается. |
GetServiceObject Метод GetServiceObject используется для получения указателя IDispatch на конкретный объект службы. Узел устройства вызывает этот метод один раз для каждой службы, при первом получении запроса на службу. |
GetStringValue Метод GetStringValue получает строку, которая предоставляет сведения о запросе или инициаторе запроса. |
GetUniqueDeviceName Метод GetUniqueDeviceName извлекает UDN для указанного устройства. |
ЗначокURL Метод IconURL возвращает URL-адрес, из которого можно загрузить значок указанного формата. |
Initialize Метод Initialize используется для инициализации устройства. Узел устройства вызывает этот метод. |
InvokeAction Вызывает метод на устройстве. |
Загрузить Метод Load загружает документ синхронно. Этот метод не возвращает управление вызывающей объекту до завершения операции загрузки. |
LoadAsync Метод LoadAsync загружает документ асинхронно. Этот метод немедленно возвращает управление вызывающей объекту и использует указанный обратный вызов для уведомления вызывающей стороны о завершении операции. |
LoadComplete Метод LoadComplete вызывается, когда платформа UPnP завершает загрузку описания устройства. |
OnStateChanged Метод OnStateChanged отправляет событие на узел устройства со списком DISPID измененных переменных состояния. Узел устройства должен запросить объект службы, чтобы получить новое значение для каждой измененной переменной состояния. |
OnStateChangedSafe Метод OnStateChangedSafe отправляет событие на узел устройства со списком измененных DISPID. Узел устройства должен запросить объект службы, чтобы получить новое значение для каждой измененной переменной состояния. |
QueryStateVariable Метод QueryStateVariable возвращает значение переменной состояния указанной службы. |
RegisterDevice Метод RegisterDevice регистрирует устройство на узле устройства. Сведения об устройстве хранятся на узле устройства. Затем узел устройства возвращает идентификатор устройства, публикует и объявляет устройство в сети. |
RegisterDeviceProvider Метод RegisterDeviceProvider регистрирует поставщика устройств на узле устройства. Поставщик устройства не опубликован в сети. Вместо этого он динамически создает устройства и регистрирует их с помощью RegisterRunningDevice. |
RegisterRunningDevice Метод RegisterRunningDevice регистрирует работающее устройство на узле устройства. |
ReregisterDevice Метод ReregisterDevice повторно регистрирует устройство на узле устройства. Сведения об устройстве хранятся на узле устройства. Затем узел устройства возвращает идентификатор устройства, публикует и объявляет устройство в сети. |
Повторная регистрацияRunningDevice Метод ReregisterRunningDevice повторно регистрирует работающее устройство на узле устройства. |
RootDevice Метод RootDevice возвращает корневое устройство дерева устройств загруженного документа. |
SearchComplete Метод SearchComplete вызывается платформой UPnP для уведомления приложения о завершении первоначального поиска сетевых устройств. |
ServiceInstanceDied Метод ServiceInstanceDied вызывается, когда служба больше не отправляет события. |
SetAddressFamily Метод SetAddressFamily задает флаг семейства адресов объекта Device Finder, который использует этот флаг для фильтрации найденных устройств. |
SetServiceEnumProperty Метод SetServiceEnumProperty используется для указания согласия на отложенное скачивание SCPD и подписку на события для объектов IUPnPService, перечисленных из объекта IUPnPServices. |
Запуск Метод Start запускает поставщика устройства. Узел устройства вызывает этот метод после загрузки поставщика устройства. Этот метод выполняет любую инициализацию, необходимую поставщику устройства. |
StartAsyncFind Метод StartAsyncFind запускает асинхронную операцию поиска. |
StateVariableChanged Метод StateVariableChanged вызывается при изменении переменной состояния. |
Остановить Метод Stop останавливает поставщика устройства. |
Отмена отмены Метод Unadvise вызывается узлом устройства, чтобы остановить получение событий. Узел устройства передает тот же указатель, что и при вызове метода IUPnPEventSource::Advise. |
Отмена регистрацииDevice Метод UnregisterDevice отменяет регистрацию устройства с узла устройства. Устройство временно или окончательно отменено. |
UnregisterDeviceProvider Метод UnregisterDeviceProvider окончательно отменяет регистрацию и выгружает поставщик устройств с узла устройства. Вызывается метод IUPnPDeviceProvider::Stop. |
Интерфейсы
IUPnPAddressFamilyControl Интерфейс IUPnPAddressFamilyControl обращается к флагу семейства адресов объекта Device Finder. |
IUPnPAsyncResult Интерфейс IUPnPAsyncResult используется для уведомления точки управления UPnP о завершенной асинхронной операции ввода-вывода. |
IUPnPDescriptionDocument Интерфейс IUPnPDescriptionDocument позволяет приложению загружать описание устройства. |
IUPnPDescriptionDocumentCallback Интерфейс IUPnPDescriptionDocumentCallback позволяет платформе UPnP передавать результаты асинхронной операции загрузки приложению. |
IUPnPDevice Интерфейс IUPnPDevice позволяет приложению получать сведения о конкретном устройстве. |
IUPnPDeviceControl Интерфейс IUPnPDeviceControl является центральной точкой управления для устройства и его объектов службы. |
IUPnPDeviceDocumentAccess Интерфейс IUPnPDeviceDocumentAccess позволяет приложению получить URL-адрес документа описания устройства. |
IUPnPDeviceDocumentAccessEx Предоставляет метод для получения всего документа описания XML-устройства для определенного устройства. |
IUPnPDeviceFinder Интерфейс IUPnPDeviceFinder позволяет приложению найти устройство. |
IUPnPDeviceFinderAddCallbackWithInterface Интерфейс IUPnPDeviceFinderAddCallbackWithInterface позволяет платформе UPnP взаимодействовать с приложением. |
IUPnPDeviceFinderCallback Интерфейс IUPnPDeviceFinderCallback позволяет платформе UPnP передавать результаты асинхронного поиска приложению. |
IUPnPDeviceProvider Интерфейс IUPnPDeviceProvider позволяет поставщику устройств запускать и останавливать свою обработку. |
IUPnPDevices Интерфейс IUPnPDevices перечисляет коллекцию устройств. |
IUPnPEventSink Интерфейс IUPnPEventSink позволяет размещенной службе отправлять уведомления о событиях на узел устройства. |
IUPnPEventSource Интерфейс IUPnPEventSource позволяет узлу устройства управлять подписками на события для размещенной службы. |
IUPnPHttpHeaderControl Позволяет вызывающей объекту указать дополнительные заголовки HTTP, отправляемые в HTTP-запросах на устройство. |
IUPnPRegistrar Интерфейс IUPnPRegistrar регистрирует устройства, которые выполняются в контексте узла устройства. |
IUPnPRemoteEndpointInfo Интерфейс IUPnPRemoteEndpointInfo позволяет размещенное устройство получать сведения о инициаторе запроса (то есть контрольной точке) и запросе. |
IUPnPReregistrar Интерфейс IUPnPReregistrar позволяет приложению повторно зарегистрировать устройство на основе UPnP на узле устройства. |
IUPnPService Интерфейс IUPnPService позволяет приложению запрашивать переменные состояния и вызывать действия для экземпляра службы. |
IUPnPServiceAsync Используйте этот интерфейс для асинхронного запроса переменных состояния и вызова действий в экземпляре службы . |
IUPnPServiceCallback Интерфейс IUPnPServiceCallback используется для отправки уведомлений о событиях клиентам объектов Service. |
IUPnPServiceDocumentAccess Используйте этот интерфейс для получения и предоставления документа Service Control Protocol Description (SCPD) приложению точки управления UPnP для предоставления действий, поддерживаемых службой, и предоставления сведений о переменных состояния. |
IUPnPServiceEnumProperty Используйте этот интерфейс для задержки скачивания и подписки на события SCPD для объектов IUPnPService, перечисленных из объекта IUPnPServices. |
IUPnPServices Интерфейс IUPnPServices перечисляет коллекцию служб. |