Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Сценарий событий проверяет событийную модель, ограниченную в профиле устройств для веб-служб (DPWS).
Цель этого сценария — не обнаружение конечных точек размещенной службы. В этом сценарии предполагается, что эти конечные точки были обнаружены или предоставлены перед началом этого сценария.
В целях этих сценариев форматы адресов NotifyTo и EndTo должны быть физическими адресами, а не виртуальными адресами типа uuid: f014e8aa-fc6a-49f5-b862-1e53663a85ff.
Дополнительные сведения см. в схеме начальной настройки устройства в среде тестирования WSDBIT.
| Случай | Действие клиента | Действие сервера | критерии Pass-Fail |
|---|---|---|---|
| 4.1 | Подписка и продление событий. | ||
| 4.1.1 | Подписывается на SimpleEvent, с помощью: - wse:Filter/@Dialect == "<http://schemas.xmlsoap.org/ws/2006/02/devprof/Action>"- wse:Filter == http://schemas.example.org/EventingService/SimpleEvent. Клиент может указать срок действия типа xs:duration. |
Отправляет SubscribeResponse на достаточно продолжительный срок, чтобы завершить шаг 4.1.2. Срок действия должен быть типа xs:duration. Для этого теста сервер не обязан использовать тот же xs:duration, как запросил клиент. |
Клиент получает ответ и может перейти к шагу 4.1.2. |
| 4.1.2 | Ничто | Запускает SimpleEvent. | Событие получено у клиента. |
| 4.1.3 | Отправляет обновление в SimpleEvent. Когда клиенты отправляют обновления для событий, они могут вручную инициировать продление или автоматически отправлять продление, когда половина периода продления, указанного в исходном сообщении SubscribeResponse, истекла. |
Отправляет обновление ответа с сроком действия достаточной продолжительности, чтобы завершить шаг 4.1.4. Срок действия должен иметь тип xs:duration. | Ответ получен на стороне клиента и может перейти к шагу 4.1.4. |
| 4.1.4 | Ничто | Запускает SimpleEvent. | Событие получено на клиенте. |
| 4.1.5 | Отправляет отмену подписки на TestDevice для SimpleEvent. | Отправляет ответ на отказ от подписки. | Клиент получает ответ и может перейти к шагу 4.1.6. |
| 4.1.6 | Ничто | Запускает SimpleEvent. | Клиент не получает событие. |
| 4.2 | подписки с истекающим сроком действия | ||
| 4.2.1 | Подписывается на SimpleEvent с истечением срока действия: - wse:Filter/@Dialect == "<http://schemas.xmlsoap.org/ws/2006/02/devprof/Action>"- wse:Filter == http://schemas.example.org/EventingService/SimpleEvent— срок действия должен быть достаточно длинным, чтобы завершить шаг 4.2.2. Срок действия должен иметь значение xs:duration. wsdbit_client использует 60 минут в качестве длительности. |
Отправляет SubscribeResponse с помощью: — срок действия, отправленный в запросе на подписку, возвращается в SubscribeResponse. |
Клиент получает ответ с правильным сроком действия и может перейти к шагу 4.2.2. |
| 4.2.2 | Ничто | Запускает SimpleEvent. | Событие получено у клиента. |
| 4.2.3 | Отправляет продление с датой истечения срока действия на TestDevice для подписки SimpleEvent. Срок действия должен быть достаточно длинным, чтобы завершить шаг 4.2.4. Срок действия должен иметь значение xs:duration. Когда клиенты отправляют обновления для событий, они могут вручную инициировать продление или автоматически отправлять продление, когда половина периода продления, указанного в исходном сообщении SubscribeResponse, истекла. |
Отправляет RenewResponse с: — срок действия, отправленный в запросе на продление, возвращается в RenewResponse. |
Клиент получает ответ с правильным сроком действия и может перейти к шагу 4.2.4. |
| 4.2.4 | Ничто | Запускает SimpleEvent. | Событие получено клиентом. |
| 4.3 | Подписки, продления и истечения сроков действия для нескольких источников событий | ||
| 4.3.1 | Подписывается на SimpleEvent с - wse:Filter/@Dialect == "<http://schemas.xmlsoap.org/ws/2006/02/devprof/Action>"- wse:Filter == http://schemas.example.org/EventingService/SimpleEvent. Клиент может выбрать включение срока действия типа "xs:duration". |
Отправляет SubscribeResponse со сроком действия, достаточным для завершения шага 4.3.3. Срок действия должен иметь тип xs:duration. Для этого теста от сервера не требуется использовать тот же xs:duration, как запросил клиент. |
Клиент получает ответ и может перейти к шагу 4.3.3. |
| 4.3.2 | Подписывается на SimpleEvent с помощью: - wse:Filter/@Dialect == "<http://schemas.xmlsoap.org/ws/2006/02/devprof/Action>"- wse:Filter == http://schemas.example.org/EventingService/IntegerEventклиент может включить срок действия типа xs:duration. |
Отправляет SubscribeResponse со сроком действия, который достаточно велик, чтобы завершить шаг 4.3.4. Срок действия должен иметь тип xs:duration. Для этого теста сервер не обязан использовать тот же xs:duration, как запросил клиент. |
Клиент получает ответ и может перейти к шагу 4.3.4. |
| 4.3.3 | Ничто | Запускает SimpleEvent. | Событие получено клиентом. |
| 4.3.4 | Ничто | Вызывает событие IntegerEvent. | Событие получено клиентом и отображается правильное целое число. |
| 4.3.5 | Отправляет обновление в IntegerEvent. Когда клиенты отправляют обновления для событий, они могут вручную инициировать продление или автоматически отправлять продление, когда половина периода продления, указанного в исходном сообщении SubscribeResponse, истекла. |
Отправляет RenewResponse со сроком действия, достаточным для завершения шага 4.3.8. Срок действия должен иметь тип xs:duration. | Ответ получен на стороне клиента. |
| 4.3.6 | Отправляет отмену подписки на TestDevice для SimpleEvent. | Отправляет ответ на отмену подписки. | Клиент получает ответ и может перейти к шагу 4.3.7. |
| 4.3.7 | Ничто | Запускает SimpleEvent. | У клиента не получено ни одно событие. |
| 4.3.8 | Ничто | Запускает целочисленное событие. | Событие получено на клиенте, и корректное целое число отображается. |
| 4.3.9 | Отправляет отписку к TestDevice для события типа IntegerEvent. | Отправляет ответ на отмену подписки. | Клиент получает ответ и может перейти к шагу 4.3.10. |
| 4.3.10 | Ничто | Инициирует событие типа Integer. | На клиенте не получено ни одного события. |
| 4.4 | сбои и неисправности подписок | ||
| 4.4.1 | Подписывается на FaultingEvent с помощью: - wse:Filter/@Dialect == "<http://schemas.xmlsoap.org/ws/2006/02/devprof/Action>"- wse:Filter == http://schemas.example.org/EventingService/FaultingEvent |
Поскольку это событие не поддерживается, необходимо отправить SOAP ошибку wsdp:FilterActionNotSupported. | Ошибка подписки наблюдается у клиента. |