From cdedf5a3390fe766057cda04840618b3e290fdb6 Mon Sep 17 00:00:00 2001 From: yakovlevdmv Date: Fri, 24 Nov 2017 17:08:48 +0300 Subject: [PATCH] Initial commit --- Device.go | 13 + README.md | 1 + soap.go | 10 + wsdl/accesscontrol.wsdl | 746 +++++++ wsdl/accessrules.wsdl | 589 +++++ wsdl/actionengine.wsdl | 1265 +++++++++++ wsdl/advancedsecurity.wsdl | 3215 +++++++++++++++++++++++++++ wsdl/analytics.wsdl | 683 ++++++ wsdl/analyticsdevice.wsdl | 709 ++++++ wsdl/credential.wsdl | 1396 ++++++++++++ wsdl/deviceio.wsdl | 1417 ++++++++++++ wsdl/devicemgmt.wsdl | 4237 ++++++++++++++++++++++++++++++++++++ wsdl/display.wsdl | 517 +++++ wsdl/doorcontrol.wsdl | 1064 +++++++++ wsdl/event.wsdl | 741 +++++++ wsdl/imaging.wsdl | 597 +++++ wsdl/media (1).wsdl | 2267 +++++++++++++++++++ wsdl/media.wsdl | 3692 +++++++++++++++++++++++++++++++ wsdl/provisioning.wsdl | 587 +++++ wsdl/ptz.wsdl | 1370 ++++++++++++ wsdl/receiver.wsdl | 398 ++++ wsdl/recording.wsdl | 1137 ++++++++++ wsdl/replay.wsdl | 221 ++ wsdl/schedule.wsdl | 1288 +++++++++++ wsdl/search.wsdl | 882 ++++++++ wsdl/thermal.wsdl | 777 +++++++ 26 files changed, 29819 insertions(+) create mode 100644 Device.go create mode 100644 README.md create mode 100644 soap.go create mode 100644 wsdl/accesscontrol.wsdl create mode 100644 wsdl/accessrules.wsdl create mode 100644 wsdl/actionengine.wsdl create mode 100644 wsdl/advancedsecurity.wsdl create mode 100644 wsdl/analytics.wsdl create mode 100644 wsdl/analyticsdevice.wsdl create mode 100644 wsdl/credential.wsdl create mode 100644 wsdl/deviceio.wsdl create mode 100644 wsdl/devicemgmt.wsdl create mode 100644 wsdl/display.wsdl create mode 100644 wsdl/doorcontrol.wsdl create mode 100644 wsdl/event.wsdl create mode 100644 wsdl/imaging.wsdl create mode 100644 wsdl/media (1).wsdl create mode 100644 wsdl/media.wsdl create mode 100644 wsdl/provisioning.wsdl create mode 100644 wsdl/ptz.wsdl create mode 100644 wsdl/receiver.wsdl create mode 100644 wsdl/recording.wsdl create mode 100644 wsdl/replay.wsdl create mode 100644 wsdl/schedule.wsdl create mode 100644 wsdl/search.wsdl create mode 100644 wsdl/thermal.wsdl diff --git a/Device.go b/Device.go new file mode 100644 index 0000000..d7d8d26 --- /dev/null +++ b/Device.go @@ -0,0 +1,13 @@ +package goonvif + +import "net" + +type Device struct { + + xaddr net.IP + login string + password string + + token [64]uint8 +} + diff --git a/README.md b/README.md new file mode 100644 index 0000000..9f3e0a1 --- /dev/null +++ b/README.md @@ -0,0 +1 @@ +# goonvif diff --git a/soap.go b/soap.go new file mode 100644 index 0000000..0813988 --- /dev/null +++ b/soap.go @@ -0,0 +1,10 @@ +package goonvif + +import "github.com/achiku/xml" + +type Envelope struct { + + Name xml.Name + + +} diff --git a/wsdl/accesscontrol.wsdl b/wsdl/accesscontrol.wsdl new file mode 100644 index 0000000..867b7dc --- /dev/null +++ b/wsdl/accesscontrol.wsdl @@ -0,0 +1,746 @@ + + + + + + + + + + + +The service capabilities reflect optional functionality of a service. +The information is static and does not change during device operation. +The following capabilities are available: + + + + + + + The maximum number of entries returned by a single GetList request. The device shall never return more than this number of entities in a single response. + + + + + + + +Used as extension base for AccessPointInfo. + + + + + + + A user readable name. It shall be up to 64 characters. + + + Optional user readable description for the AccessPoint. It shall be up to 1024 characters. + + + Optional reference to the Area from which access is requested. + + + Optional reference to the Area to which access is requested. + + + Optional entity type; if missing, a Door type as defined by the ONVIF DoorControl service should be assumed. This can also be represented by the QName value "tdc:Door" - where tdc is the namespace of the Door Control service: "http://www.onvif.org/ver10/doorcontrol/wsdl". This field is provided for future extensions; it will allow an AccessPoint being extended to cover entity types other than Doors as well. + + + Reference to the entity used to control access; the entity type may be specified by the optional EntityType field explained below but is typically a Door. + + + + + + + + + +The AccessPointInfo structure contains basic information about an AccessPoint instance. +An AccessPoint defines an entity a Credential can be granted or denied access to. The +AccessPointInfo provides basic information on how access is controlled in one direction for a +door (from which area to which area). +</p><p> + door is the typical device involved, but other type of +devices may be supported as well. +Multiple AccessPoints may cover the same Door. +A typical case is one AccessPoint for entry and another for exit, both referencing +the same Door. +</p><p> + +An ONVIF compliant device shall provide the following fields for each AccessPoint instance: + + + + + + + The capabilities for the AccessPoint. + + + + + + + + + + + +The AccessPoint capabilities reflect optional functionality of a particular physical entity. +Different AccessPoint instances may have different set of capabilities. This information may +change during device operation, e.g. if hardware settings are changed. +The following capabilities are available: + + + + + + Indicates whether or not this AccessPoint instance supports EnableAccessPoint and DisableAccessPoint commands. + + + Indicates whether or not this AccessPoint instance supports generation of duress events. + + + Indicates whether or not this AccessPoint has a REX switch or other input that allows anonymous access. + + + Indicates whether or not this AccessPoint instance supports generation of AccessTaken and AccessNotTaken events. If AnonymousAccess and AccessTaken are both true, it indicates that the Anonymous versions of AccessTaken and AccessNotTaken are supported. + + + Indicates whether or not this AccessPoint instance supports the ExternalAuthorization operation and the generation of Request events. If AnonymousAccess and ExternalAuthorization are both true, it indicates that the Anonymous version is supported as well. + + + + + + + +Basic information about an Area. Used as extension base. + + + + + + + User readable name. It shall be up to 64 characters. + + + User readable description for the Area. It shall be up to 1024 characters. + + + + + + + + + +The AreaInfo structure contains basic information about an Area. +An ONVIF compliant device shall provide the following fields for each Area: + + + + + + + + + + + + + + +The AccessPointState contains state information for an AccessPoint. +An ONVIF compliant device shall provide the following fields for each AccessPoint instance: + + + + + Indicates that the AccessPoint is enabled. By default this field value shall be True, if the DisableAccessPoint capabilities is not supported. + + + + + + + + + +The Decision enumeration represents a choice of two available options for an access request: + + + + + The decision is to grant access. + + + The decision is to deny access. + + + + + + + +Non-normative enum that describes the various reasons for denying access. +The following strings shall be used for the reason field: + + + + + The device shall provide the following event, whenever a valid credential is not enabled or has been disabled (e.g., due to credential being lost etc.) to prevent unauthorized entry. + + + The device shall provide the following event, whenever a valid credential is presented though it is not active yet;: e.g, the credential was presented before the start date. + + + The device shall provide the following event, whenever a valid credential was presented after its expiry date. + + + The device shall provide the following event, whenever an entered PIN code does not match the credential. + + + The device shall provide the following event, whenever a valid credential is denied access to the requested AccessPoint because the credential is not permitted at the moment. + + + The device shall provide the following event, whenever the presented credential is not authorized. + + + The device shall provide the following event, whenever the request is denied and no other specific event matches it or is supported by the service. + + + + + + + + + + + + + + + + + The capability response message contains the requested Access Control service capabilities using a hierarchical XML capability structure. + + + + + + + + + + Maximum number of entries to return. If not specified, less than one or higher than what the device supports, the number of items is determined by the device. + + + Start returning entries from this start reference. If not specified, entries shall start from the beginning of the dataset. + + + + + + + + + + StartReference to use in next call to get the following items. If absent, no more items to get. + + + List of AccessPointInfo items. + + + + + + + + + + Tokens of AccessPointInfo items to get. + + + + + + + + + + List of AccessPointInfo items. + + + + + + + + + + Maximum number of entries to return. If not specified, less than one or higher than what the device supports, the number of items is determined by the device. + + + Start returning entries from this start reference. If not specified, entries shall start from the beginning of the dataset. + + + + + + + + + + StartReference to use in next call to get the following items. If absent, no more items to get. + + + List of AreaInfo items. + + + + + + + + + + Tokens of AreaInfo items to get. + + + + + + + + + + List of AreaInfo items. + + + + + + + + + + Token of AccessPoint instance to get AccessPointState for. + + + + + + + + + + AccessPointState item. + + + + + + + + + + Token of the AccessPoint instance to enable. + + + + + + + + + + + + + + + + + Token of the AccessPoint instance to disable. + + + + + + + + + + + + + + + + + Token of the Access Point instance. + + + Optional token of the Credential involved. + + + Optional reason for decision. + + + Decision - Granted or Denied. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +This operation returns the capabilities of the Access Control service. +</p><p> +An ONVIF compliant device which provides the Access Control service shall +implement this method. + + + + + + +This operation requests a list of all AccessPointInfo items provided by the device. +An ONVIF compliant device which provides the Access Control service shall implement this method. +</p><p> +A call to this method shall return a StartReference when not all data is returned and more +data is available. The reference shall be valid for retrieving the next set of data. +Please refer section [Retrieving system configuration] for more details. +</p><p> +The number of items returned shall not be greater than Limit parameter. +</p><p> + + + + + + +This operation requests a list of AccessPointInfo items matching the given tokens. +</p><p> +An ONVIF compliant device which provides Access Control service shall implement this method. +</p><p> +The device shall ignore tokens it cannot resolve and shall return an empty list if there +are no items matching specified tokens. The device shall not return a fault in this case. +</p><p> +If the number of requested items is greater than MaxLimit, a TooManyItems +fault shall be returned. +</p><p> + + + + + + +This operation requests a list of all AreaInfo items provided by the device. +An ONVIF compliant device which provides the Access Control service shall implement this method. +</p><p> +A call to this method shall return a StartReference when not all data is returned and more +data is available. The reference shall be valid for retrieving the next set of data. +Please refer section [Retrieving system configuration] for more details. +</p><p> +The number of items returned shall not be greater than Limit parameter. +</p><p> + + + + + + + +This operation requests a list of AreaInfo items matching the given tokens. +</p><p> +An ONVIF compliant device which provides Access Control service shall implement this method. +</p><p> +The device shall ignore tokens it cannot resolve and shall return an empty list if there +are no items matching specified tokens. The device shall not return a fault in this case. +</p><p> +If the number of requested items is greater than MaxLimit, a TooManyItems +fault shall be returned. +</p><p> + + + + + + +This operation requests the AccessPointState for the AccessPoint instance specified by Token. +</p><p> +An ONVIF compliant device that provides Access Control service shall implement this method. + + + + + + +This operation allows enabling an access point. +</p><p> +A device that signals support for DisableAccessPoint capability for a particular AccessPoint +instance shall implement this command. +</p><p> + + + + + + +This operation allows disabling an access point. +</p><p> +A device that signals support for DisableAccessPoint capability for a particular AccessPoint +instance shall implement this command. +</p><p> + + + + + + +This operation allows to Deny or Grant decision at an AccessPoint instance. +</p><p> +A device that signals support for ExternalAuthorization capability for a particular +AccessPoint instance shall implement this method. + + + + + + + + +Copyright (c) 2010-2013 by ONVIF: Open Network Video Interface Forum. All rights reserved.
+This is the initial minimized version of the Access Control service +aimed at the first PACS Profile C.
+ + + + + + + +The AccessControl service implements the Authentication and +Authorization functionality and controls the actions to get +access to various Access Points controlling access to Doors and Areas.
+ + +The basic data structures used by the service are: + +* CredentialInfo holding basic information of a credential.
+* AccessPointInfo holding basic information on how access is controlled in +one direction for a door (from which area to which area) defined in the DoorControl service.
+ + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
diff --git a/wsdl/accessrules.wsdl b/wsdl/accessrules.wsdl new file mode 100644 index 0000000..26f0457 --- /dev/null +++ b/wsdl/accessrules.wsdl @@ -0,0 +1,589 @@ + + + + + + + + + + + + The service capabilities reflect optional functionality of a service. The information is static and does not change during device operation. The following capabilities are available: + + + + + + + + + The maximum number of entries returned by a single Get<Entity>List or Get<Entity> request. The device shall never return more than this number of entities in a single response. + + + + + + + + + + + + Indicates the maximum number of access profiles supported by the device. + + + + + + + + + + + + Indicates the maximum number of access policies per access profile supported by the device. + + + + + + + + + + + + Indicates whether or not several access policies can refer to the same access point in an access profile. + + + + + + + + + + + The access policy is an association of an access point and a schedule. It defines when an access point can be accessed using an access profile which contains this access policy. If an access profile contains several access policies specifying different schedules for the same access point will result in a union of the schedules. + + + + + + Reference to the schedule used by the access policy + + + + + + Reference to the entity used by the rule engine, the entity type may be specified by the optional EntityType field explained below but is typically an access point. + + + + + + + Optional entity type; if missing, an access point type as defined by the ONVIF Access Control service should be assumed. This can also be represented by the QName value “tac:AccessPoint” where tac is the namespace of Access Control Service Specification. This field is provided for future extensions; it will allow an access policy being extended to cover entity types other than access points as well. + + + + + + + + + + + + + + + + + + The AccessProfileInfo structure contains basic information about an access profile. The device shall provide the following fields for each AccessProfileInfo. + + + + + + + + A user readable name. It shall be up to 64 characters. + + + + + User readable description for the access profile. It shall be up to 1024 characters. + + + + + + + + + + + + The access profile structure contains information about the collection of access policies. The device shall include all properties of the AccessProfileInfo structure and also a list of access policies. + + + + + + + + A list of access policy structures, where each access policy defines during which schedule an access point can be accessed. + + + + + + + + + + + + + + + + + + + + + + + + + + + + The capability response message contains the requested access rules service capabilities using a hierarchical XML capability structure. + + + + + + + + + + + + Tokens of AccessProfileInfo items to get. + + + + + + + + + + + + List of AccessProfileInfo items. + + + + + + + + + + + + Maximum number of entries to return. If not specified, less than one or higher than what the device supports, the number of items is determined by the device. + + + + + Start returning entries from this start reference. If not specified, entries shall start from the beginning of the dataset. + + + + + + + + + + + + StartReference to use in next call to get the following items. If absent, no more items to get. + + + + + List of AccessProfileInfo items. + + + + + + + + + + + + Tokens of AccessProfile items to get. + + + + + + + + + + + + List of Access Profile items. + + + + + + + + + + + + Maximum number of entries to return. If not specified, less than one or higher than what the device supports, the number of items is determined by the device. + + + + + Start returning entries from this start reference. If not specified, entries shall start from the beginning of the dataset. + + + + + + + + + + + + StartReference to use in next call to get the following items. If absent, no more items to get. + + + + + List of Access Profile items. + + + + + + + + + + + + The AccessProfile to create. + + + + + + + + + + + + The Token of created AccessProfile. + + + + + + + + + + + + The details of Access Profile + + + + + + + + + + + + + + + + + + + The token of the access profile to delete. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + This operation returns the capabilities of the access rules service. + + + + + + This operation requests a list of AccessProfileInfo items matching the given tokens. The device shall ignore tokens it cannot resolve and shall return an empty list if there are no items matching specified tokens. The device shall not return a fault in this case. + If the number of requested items is greater than MaxLimit, a TooManyItems fault shall be returned. + + + + + + + This operation requests a list of all of AccessProfileInfo items provided by the device. + A call to this method shall return a StartReference when not all data is returned and more data is available. The reference shall be valid for retrieving the next set of data. Please refer Access Control Service Specification for more details. + The number of items returned shall not be greater than Limit parameter. + + + + + + + This operation returns the specified access profile item matching the given tokens. + The device shall ignore tokens it cannot resolve and shall return an empty list if there are no items matching specified tokens. The device shall not return a fault in this case. + + + + + + + This operation requests a list of all of access profile items provided by the device. + A call to this method shall return a StartReference when not all data is returned and more data is available. The reference shall be valid for retrieving the next set of data. Please refer Access Control Service Specification for more details. + The number of items returned shall not be greater the Limit parameter. + + + + + + + This operation creates the specified access profile. The token field of the access profile shall be empty, the service shall allocate a token for the access profile. The allocated token shall be returned in the response. If the client sends any value in the token field, the device shall return InvalidArgVal as generic fault code. + In an access profile, if several access policies specifying different schedules for the same access point will result in a union of the schedule. + + + + + + + This operation will modify the access profile for the specified access profile token. If several access policies specifying different schedules for the same access point will result in a union of the schedule. + If the device could not store the access profile information then a fault will be generated. + + + + + + + This operation will delete the specified access profile. + If it is associated with one or more entities some devices may not be able to delete the access profile, and consequently a ReferenceInUse fault shall be generated. + If the access profile is deleted, all access policies associated to the access profile will also be deleted. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/wsdl/actionengine.wsdl b/wsdl/actionengine.wsdl new file mode 100644 index 0000000..a4662ce --- /dev/null +++ b/wsdl/actionengine.wsdl @@ -0,0 +1,1265 @@ + + + + + + + + + + + + + + + + + + + Array of supported Action types + + + + + + + + + + + + + + + Array of current Action configurations + + + + + + + + + + + + Array of Actions to be configured on service provider + + + + + + + + + + + Array of configured Actions with service provider assigned unique identifiers + + + + + + + + + + + + Array of tokens referencing existing Action configurations to be removed + + + + + + + + + + + + + + + Array of Action configurations to update the existing action configurations + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Array of current Action Trigger configurations + + + + + + + + + + + + Action Triggers to be configured + + + + + + + + + + + Returns configured Action Triggers with service provider assigned unique identifers + + + + + + + + + + + + Array of Action Trigger configurations to be updated. + + + + + + + + + + + + + + + Array of tokens referencing existing Action Trigger configurations to be removed + + + + + + + + + + + + + + + Describes the configuration parameters of an action. + + + + + Action configuration parameter descriptions + + + + + + Action type name + + + + + + + + SupportedActions data structure lists the available action types that service provider supports. For each action type, data structure contains the action configuration parameters. + + + + + + Lists the location of all schemas that are referenced in the supported actions. If the action descriptions reference data types in the ONVIF schema file,the ONVIF schema file MUST be explicitly listed. + + + + + + List of actions supported by Action Engine Service provider. + + + + + + + + + + + + + + + + + Action Engine Capabilities data structure contains the maximum number of supported actions and number of actions in use for generic as well as specific action types + + + + + Limits for each action type + + + + + + + The maximum number of trigger configurations that the service provider can concurrently support + + + + + The maximum number of actions that the service provider can concurrently support + + + + + + + + + + + + + + + ActionTypeLimits data structure contains maximum and current usage information for a specific action type in the service provider + + + + + + + Action Type + + + + + For the specific action type, the maximum number of actions that could be concurrently supported by the service provider + + + + + For the specific action type, the number of actions in use by the service provider + + + + + + + + Action Configuration data type contains the configuration settings of action configuration parameters, service requester given action Name, and service provider supported action type value + + + + + Action configuration parameter settings. + + + + + + + User given name. + + + + + Denotes the action type. + + + + + + + + Action data type contains the configuration settings of one action instance and service provider assigned unique identifier for this action configuration. + + + + + Action configuration contains action type, user given action name, and configuratin parameter settings. + + + + + + + Unique Action identifier that service provider assigned to the action configuration. + + + + + + + + Action Trigger configuration data type contains mandatory Topic Expression (Section Topic Filter in [Core Specification]), optional Message content expression (Section Message Content Filter in [Core Specification]), and set of actions to be triggered. + + + + + Topic expression, for example, to trigger only for relays. Trigger based on event topic. + + + + + Content expression, for example, to trigger only when the relay value is on. Trigger based on content data in event. + + + + + Reference to actions to be triggered when the conditions are satisfied. + + + + + + + + + + + + + + + + + Action Trigger data type contains the service provider assigned unique identifier for the configuration and action trigger configuration data. + + + + + Action Trigger Configuration + Action Trigger Configuration + + + + + + + Unique Action Trigger identifier that service provider assigned to the action trigger configuration. + + + + + + + + + + + + + + + + + + + SMTP EMail Server configuration + + + + + POP EMail Server configuration + + + + + Credentials configuration + + + + + + + + + + + + Destination SMTP Address configuration + + + + + + + + + + + + + + + + + Destination POP Server Address configuration + + + + + + + + + + + + IP Address + + + + + + + IP Address format type such as IPv4 or IPv6 + + + + + + + + + + + + + + + + + + + Username + + + + + Password + + + + + + + + + + + + + + + + + + Username-password + + + + + + + Email server authentication mode + + + + + + + + + + + + + + + + + + + Configuration for E-mail TO + + + + + Configuration for E-mail CC + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Whether content of E-mail message contains event data + + + + + + + + + + + + + + + MediaSource profile reference token + + + + + + + + + + + + Destination HTTP Server configuration + + + + + + + + + + + + + + + + + + + + + + + Destination HTTP Server address configuration + + + + + User Credentials configuration for destination HTTP Server + + + + + + + + + + + URI for POST Message destination + + + + + HTTP/HTTPS protocol selection (default is http) + + + + + + + + + + + + + + + + + + + + + + + + + User credentials + + + + + + + + + + + HTTP Authentication Method + + + + + + + + + + + + + + + + + + + + + + + + + Destination HTTP Server IP Address + + + + + + + IPv4 or IPv6 + + + + + Port Number if different from 80 + + + + + + + + + + MediaSource reference when the media is attached to POST message + + + + + Configuration for POST Message content + + + + + + + + + + + + + + + + + + + Whether include event into POST message + + + + + Whether attach media into POST message + + + + + + + + + + FTP Action destination configuration + + + + + + + + + + + + + + + + + + + + + + + FTP Server IP Address + + + + + Upload Directory Path + + + + + User credentials confguration for target FTP Server + + + + + + + + + + + + + + + + + + + User Credentials + + + + + + + + + + + + + + + + + + + FTP Server IP Address + + + + + + + IPv4 or IPv6 + + + + + Port Number + + + + + + + + + + + + + + + + + + + + + + + + Name of file + + + + + Suffix of file + + + + + + + + + + + + + + + + + + + + Upload Images action configuration + + + + + Upload files action configuration + + + + + + + + Type of FTP Upload action + + + + + + + + + + Upload Image action; how long? + + + + + Upload Image action; sample interval? + + + + + Upload Image action; name of destination file + + + + + + + + + + + + Name of source file + + + + + Name of destination file + + + + + + + + + + + + SMS Provider's URL + + + + + Username and password + + + + + + + + + + + + Sender's e-mail address + + + + + + + + + + + + Text Message + + + + + + + + + + + + Length of recording time before the triggering event + + + + + Recording after alarm recording duration + + + + + Record duration + + + + + Recording frame rate + + + + + Whether Audio recording on/off + + + + + + + + + + + + Recording configuration + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + The service provider returns the supported action types. +
The response returns a list of Action Descriptions according to the Action Description Language. +
The response also contains a list of URLs that provide the location of the schema files. These schema files describe the types and elements used in the Action Descriptions. If action descriptions reference types or elements of the ONVIF schema file, the ONVIF schema file shall be explicitly listed.
+ + +
+ + The service provider returns currently installed Actions. + + + + + The create action operation adds actions to configuration. The create action operation is atomic. If a service provider can not create all of requested actions, the service provider responds with a fault message. + + + + + The delete operation deletes actions. The delete action operation is atomic. If a service provider can not delete all of requested actions, the service provider responds with a fault message. + + + + + The modify action operation modifies action configurations.
The modify action operation is atomic. If a service provider can not modify all of requested action configurations, the service provider responds with a fault message.
All action parameters, except the action type, can be modified. The service provider shall return InvalidAction error if the request attempts to change the action type with modify action request.
+ + +
+ + The get capabilities operation returns the Action Engine capabilities + + + + + The service provider returns existing action triggers + + + + + Creates action triggers. The create action triggers operation is atomic. If a service provider can not create all of requested action triggers, the service provider responds with a fault message. + + + + + Deletes action triggers. The delete action triggers operation is atomic. If a service provider can not delete all of requested action triggers, the service provider responds with a fault message. + + + + + Modifies existing action triggers. The modify action triggers operation is atomic. If a service provider can not modify all of requested action trigger configurations, the service provider responds with a fault message. + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
diff --git a/wsdl/advancedsecurity.wsdl b/wsdl/advancedsecurity.wsdl new file mode 100644 index 0000000..dc0ecdb --- /dev/null +++ b/wsdl/advancedsecurity.wsdl @@ -0,0 +1,3215 @@ + + + + + + + + + + + + Unique identifier for keys in the keystore. + + + + + + + + + Unique identifier for certificates in the keystore. + + + + + + + + + Unique identifier for certification paths in the keystore. + + + + + + + + + Unique identifier for passphrases in the keystore. + + + + + + + + + Unique identifier for 802.1X configurations in the keystore. + + + + + + + + + The status of a key in the keystore. + + + + + Key is ready for use + + + + + Key is being generated + + + + + Key has not been successfully generated and cannot be used. + + + + + + + + An object identifier (OID) in dot-decimal form as specified in RFC4512. + + + + + + + + + The distinguished name attribute type encoded as specified in RFC 4514. + + + + + + + + The distinguished name attribute values are encoded in UTF-8 or in hexadecimal form as specified in RFC 4514. + + + + + + + The attributes of a key in the keystore. + + + + + The ID of the key. + + + + + The client-defined alias of the key. + + + + + Absent if the key is not a key pair. True if and only if the key is a key pair and contains a private key. False if and only if the key is a key pair and does not contain a private key. + + + + + The status of the key. The value should be one of the values in the tas:KeyStatus enumeration. + + + + + + True if and only if the key was generated outside the device. + + + + + True if and only if the key is stored in a specially protected hardware component inside the device. + + + + + + + + + + + + + + + + A distinguished name attribute type and value pair. + + + + + The attribute type. + + + + + The value of the attribute. + + + + + + + + + + A multi-valued RDN + + + + + A list of types and values defining a multi-valued RDN + + + + + + + + + + A country name as specified in + X.500. + + + + + An organization name as specified in + X.500. + + + + + An organizational unit name as specified in + X.500. + + + + + A distinguished name qualifier as specified in + X.500. + + + + + A state or province name as specified in + X.500. + + + + + A common name as specified in + X.500. + + + + + A serial number as specified in + X.500. + + + + + A locality as specified in X.500. + + + + + A title as specified in X.500. + + + + + A surname as specified in X.500. + + + + + A given name as specified in X.500. + + + + + Initials as specified in X.500. + + + + + A pseudonym as specified in X.500. + + + + + A generation qualifier as specified in + X.500. + + + + + A generic type-value pair + attribute. + + + + + A multi-valued RDN + + + + + + Required extension point. It is recommended to not use this element, and instead use GenericAttribute and the numeric Distinguished Name Attribute Type. + + + + + + + + + + + + + + + An identifier of an algorithm. + + + + + The OID of the algorithm in dot-decimal form. + + + + + Optional parameters of the algorithm (depending on the algorithm). + + + + + + + + + + + + + + + + A CSR attribute as specified in RFC 2986. + + + + + The OID of the attribute. + + + + + The value of the attribute as a base64-encoded DER representation of an ASN.1 value. + + + + + + + + + + A CSR attribute as specified in PKCS#10. + + + + + An X.509v3 extension field. + + + + + A basic CSR attribute. + + + + + + + + + + + + + + + + A base64-encoded ASN.1 value. + + + + + + + An X.509v3 extension field as specified in RFC 5280 + + + + + The OID of the extension field. + + + + + True if and only if the extension is critical. + + + + + The value of the extension field as a base64-encoded DER representation of an ASN.1 value. + + + + + + + + + + An X.509 cerficiate as specified in RFC 5280. + + + + + The ID of the certificate. + + + + + The ID of the key that this certificate associates to the certificate subject. + + + + + The client-defined alias of the certificate. + + + + + The base64-encoded DER representation of the X.509 certificate. + + + + + + + + + + A sequence of certificate IDs. + + + + + A certificate ID. + + + + + + + + + An X.509 certification path as defined in RFC 5280. + + + + + A certificate in the certification path. + + + + + The client-defined alias of the certification path. + + + + + + + + + + + + + + + + + + The ID of the passphrase. + + + + + The alias of the passphrase. + + + + + + + + + + A list of supported 802.1X authentication methods, such as "EAP-PEAP/MSCHAPv2" and "EAP-MD5". The '/' character is used as a separator between the outer and inner methods. + + + + + + + The capabilities of the 802.1X implementation on a device. + + + + + + + The maximum number of 802.1X configurations that may be defined simultaneously. + + + + + The authentication methods supported by the 802.1X implementation. + + + + + + + + The configuration parameters required for a particular authentication method. + + + + + The identity used in this authentication method, if required. + + + + + The unique identifier of the certification path used in this authentication method, if required. + + + + + The identifier for the password used in this authentication method, if required. If Identity is used as an anonymous identity for this authentication method, PassphraseID is ignored. + + + + + The configuration of the next stage of authentication, if required. + + + + + + + The authentication method for this stage (e.g., "EAP-PEAP"). + + + + + + + + + + + + + + + The unique identifier of the IEEE 802.1X configuration. + + + + + The client-defined alias of the 802.1X configuration. + + + + + The outer level authentication method used in this 802.1X configuration. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + True if and only if the TLS server shall not authenticate client certificates that do not contain the TLS WWW client authentication key usage extension as specified in RFC 5280, Sect. 4.2.1.12. + + + + + True if and only if delta CRLs, if available, shall be applied to CRLs. + + + + + + + + + + + + + + + + + The certificate ID of the certificate to be used as trust anchor. + + + + + + + + + + + + + + + + + + + + + + + + + + + A list of RSA key lenghts in bits. + + + + + + A list of X.509 versions. + + + + + + A list of TLS versions. + + + + + + A list of password based encryption algorithms. + + + + + + A list of password based MAC algorithms. + + + + + + + The capabilities of a keystore implementation on a device. + + + + + The signature algorithms supported by the keystore implementation. + + + + + + + + + + + + + Indicates the maximum number of keys that the device can store simultaneously. + + + + + Indicates the maximum number of certificates that the device can store simultaneously. + + + + + Indicates the maximum number of certification paths that the device can store simultaneously. + + + + + Indication that the device supports on-board RSA key pair generation. + + + + + Indicates which RSA key lengths are supported by the device. + + + + + Indicates support for creating PKCS#10 requests for RSA keys and uploading the certificate obtained from a CA.. + + + + + Indicates support for creating self-signed certificates for RSA keys. + + + + + Indicates which X.509 versions are supported by the device. + + + + + Indicates the maximum number of passphrases that the device is able to store simultaneously. + + + + + Indicates support for uploading an RSA key pair in a PKCS#8 data structure. + + + + + Indicates support for uploading a certificate along with an RSA private key in a PKCS#12 data structure. + + + + + Indicates which password-based encryption algorithms are supported by the device. + + + + + Indicates which password-based MAC algorithms are supported by the device. + + + + + + + + Indicates the maximum number of CRLs that the device is able to store simultaneously. + + + + + Indicates the maximum number of certification path validation policies that the device is able to store simultaneously. + + + + + Indicates whether a device supports checking for the TLS WWW client auth extended key usage extension while validating certification paths. + + + + + + + + + + + The capabilities of a TLS server implementation on a device. + + + + + + + Indicates which TLS versions are supported by the device. + + + + + Indicates the maximum number of certification paths that may be assigned to the TLS server simultaneously. + + + + + + + + Indicates whether the device supports TLS client authentication. + + + + + Indicates the maximum number of certification path validation policies that may be assigned to the TLS server simultaneously. + + + + + + + + + + + The capabilities of an Advanced Security Service implementation on a device. + + + + + The capabilities of the keystore implementation. + + + + + The capabilities of the TLS server implementation. + + + + + The capabilities of the 802.1X implementation. + + + + + + + + + + + + + + + + + + + + + The capabilities for the advanced secuirty service is returned in the Capabilities element. + + + + + + + + + + + + The length of the key to be created. + + + + + The client-defined alias of the key. + + + + + + + + + + + The key ID of the key pair being generated. + + + + + Best-effort estimate of how long the key generation will take. + + + + + + + + + + + + The key pair to be uploaded in a PKCS#8 data structure. + + + + + The client-defined alias of the key pair. + + + + + The ID of the passphrase to use for decrypting the uploaded key pair. + + + + + The passphrase to use for decrypting the uploaded key pair. + + + + + + + + + + + The key ID of the uploaded key pair. + + + + + + + + + + + + The certificates and key pair to be uploaded in a PKCS#12 data structure. + + + + + The client-defined alias of the certification path. + + + + + The client-defined alias of the key pair. + + + + + True if and only if the device shall behave as if the client had only supplied the first certificate in the sequence of certificates. + + + + + The ID of the passphrase to use for integrity checking of the uploaded PKCS#12 data structure. + + + + + The ID of the passphrase to use for decrypting the uploaded PKCS#12 data structure. + + + + + The passphrase to use for integrity checking and decrypting the uploaded PKCS#12 data structure. + + + + + + + + + + + The certification path ID of the uploaded certification path. + + + + + The key ID of the uploaded key pair. + + + + + + + + + + + + The ID of the key for which to return the status. + + + + + + + + + + + Status of the requested key. The value should be one of the values in the tas:KeyStatus enumeration. + + + + + + + + + + + + The ID of the key pair for which to return whether it contains a private key. + + + + + + + + + + + True if and only if the key pair contains a private key. + + + + + + + + + + + + + + + + + Information about a key in the keystore. + + + + + + + + + + + + The ID of the key that is to be deleted from the keystore. + + + + + + + + + + + + + + + + + The subject to be included in the CSR. + + + + + The ID of the key for which the CSR shall be created. + + + + + An attribute to be included in the CSR. + + + + + The signature algorithm to be used to sign the CSR. Defaults to SHA1 with RSA Encryption. + + + + + + + + + + + The DER encoded PKCS#10 certification request. + + + + + + + + + + + + The X.509 version that the generated certificate shall comply to. + + + + + Distinguished name of the entity that the certificate shall belong to. + + + + + The ID of the key for which the certificate shall be created. + + + + + The client-defined alias of the certificate to be created. + + + + + The X.509 not valid before information to be included in the certificate. Defaults to the device's current time or a time before the device's current time. + + + + + The X.509 not valid after information to be included in the certificate. Defaults to the time 99991231235959Z as specified in RFC 5280. + + + + + The signature algorithm to be used for signing the certificate. Defaults to SHA1 with RSA Encryption. + + + + + An X.509v3 extension to be included in the certificate. + + + + + + + + + + + The ID of the generated certificate. + + + + + + + + + + + + The base64-encoded DER representation of the X.509 certificate to be uploaded. + + + + + The client-defined alias of the certificate. + + + + + The client-defined alias of the key pair. + + + + + Indicates if the device shall verify that a matching key pair with a private key exists in the keystore. + + + + + + + + + + + The ID of the uploaded certificate. + + + + + The ID of the key that the uploaded certificate certifies. + + + + + + + + + + + + The ID of the certificate to retrieve. + + + + + + + + + + + The DER representation of the certificate. + + + + + + + + + + + + + + + A list with all certificates stored in the keystore. + + + + + A certificate stored in the keystore. + + + + + + + + + + + + The ID of the certificate to delete. + + + + + + + + + + + + + + + + + The IDs of the certificates to include in the certification path, where each certificate signature except for the last one in the path must be verifiable with the public key certified by the next certificate in the path. + + + + + The client-defined alias of the certification path. + + + + + + + + + + + The ID of the generated certification path. + + + + + + + + + + + + The ID of the certification path to retrieve. + + + + + + + + + + + The certification path that is stored under the given ID in the keystore. + + + + + + + + + + + + + + + + + An ID of a certification path in the keystore. + + + + + + + + + + + + The ID of the certification path to delete. + + + + + + + + + + + + + + + + + The passphrase to upload. + + + + + The alias for the passphrase to upload. + + + + + + + + + + + The PassphraseID of the uploaded passphrase. + + + + + + + + + + + + + + + + A list with information about all passphrases in the keystore. + + + + Information about a passphrase in the keystore. + + + + + + + + + + + + The ID of the passphrase that is to be deleted from the keystore. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + The IDs of all certification paths that are assigned to the TLS server on the device. + + + + + + + + + + + + + + + The CRL to be uploaded to the device. + + + + + + + The alias to assign to the uploaded CRL. + + + + + + + + + + + + + + + + + + + + The ID of the uploaded CRL. + + + + + + + + + + + + + + The ID of the CRL to be returned. + + + + + + + + + + + + + The CRL with the requested ID. + + + + + + + + + + + + + + + + + + + A list of all CRLs that are stored in the keystore on the device. + + + + + + + + + + + + + + The ID of the CRL to be deleted. + + + + + + + + + + + + + + + + + + + The alias to assign to the created certification path validation policy. + + + + + + + The parameters of the certification path validation policy to be created. + + + + + + + The trust anchors of the certification path validation policy to be created. + + + + + + + + + + + + + + + + + + + + The ID of the created certification path validation policy. + + + + + + + + + + + + + + The ID of the certification path validation policy to be created. + + + + + + + + + + + + + The certification path validation policy that is stored under the requested ID. + + + + + + + + + + + + + + + + + + + A list of all certification path validation policies that are stored in the keystore on the device. + + + + + + + + + + + + + + The ID of the certification path validation policy to be deleted. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + The ID of the certification path validation policy to assign to the TLS server. + + + + + + + + + + + + + + + + + + + The ID of the certification path validation policy to de-assign from the TLS server. + + + + + + + + + + + + + + + + + + + The ID of the certification path validation policy to be de-assigned from the TLS server. + + + + + + + The ID of the certification path validation policy to assign to the TLS server. + + + + + + + + + + + + + + + + + + + + + + + + A list of IDs of the certification path validation policies that are assigned to the TLS server. + + + + + + + + + + + + + + + + The desired 802.1X configuration. + + + + + + + + + + + The unique identifier of the created 802.1X configuration. + + + + + + + + + + + + + + + + + The list of unique identifiers of 802.1X configurations on the device. + + + + + + + + + + + + The unique identifier of the desired 802.1X configuration. + + + + + + + + + + + The 802.1X configuration, without password information. + + + + + + + + + + + + The unique identifier of the 802.1X configuration to be deleted. + + + + + + + + + + + + + + + + + The unique identifier of the Network Interface on which the 802.1X configuration is to be set. (NOTE: the network interface token is defined in devicemgmt.wsdl as tt:ReferenceToken, which is a derived type of xs:string. To avoid importing all of onvif.xsd for this single type, the base type is used here.) + + + + + The unique identifier of the 802.1X configuration to be set. + + + + + + + + + + + Indicates whether or not a reboot is required after configuration updates. + + + + + + + + + + + + The unique identifier of the Network Interface for which the 802.1X configuration is to be retrieved. (NOTE: the network interface token is defined in devicemgmt.wsdl as tt:ReferenceToken, which is a derived type of xs:string. To avoid importing all of onvif.xsd for this single type, the base type is used here.) + + + + + + + + + + + The unique identifier of 802.1X configuration assigned to the Network Interface. + + + + + + + + + + + + The unique identifier of the Network Interface for which the 802.1X configuration is to be deleted. (NOTE: the network interface token is defined in devicemgmt.wsdl as tt:ReferenceToken, which is a derived type of xs:string. To avoid importing all of onvif.xsd for this single type, the base type is used here.) + + + + + + + + + + + Indicates whether or not a reboot is required after configuration updates. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Common functionality for all advanced security service parts. + + Returns the capabilities of the advanced security service. The result is returned in a typed answer. + + + + + + Basic keystore functionality. + + + This operation triggers the asynchronous generation of an RSA key pair of a particular key length (specified as the number of bits) as specified in [RFC 3447], with a suitable key generation mechanism on the device. + Keys, especially RSA key pairs, are uniquely identified using key IDs.
+ If the device does not have not enough storage capacity for storing the key pair to be created, the maximum number of keys reached fault shall be produced and no key pair shall be generated. + Otherwise, the operation generates a keyID for the new key and associates the generating status to it.
+ Immediately after key generation has started, the device shall return the keyID to the client and continue to generate the key pair. + The client may query the device with the GetKeyStatus operation whether the generation has finished. + The client may also subscribe to Key Status events to be notified about key status changes.
+ The device also returns a best-effort estimate of how much time it requires to create the key pair. + A client may use this information as an indication how long to wait before querying the device whether key generation is completed.
+ After the key has been successfully created, the device shall assign it the ok status. If the key generation fails, the device shall assign the key the corrupt status. +
+ + +
+ + + This operation uploads a key pair in a PKCS#8 data structure as specified in [RFC 5958, RFC 5959].
+ If an encryption passphrase ID is supplied in the request, the device shall assume that the KeyPair parameter contains an EncryptedPrivateKeyInfo ASN.1 + structure that is encrypted under the passphrase in the keystore that corresponds to the supplied ID, where the EncryptedPrivateKeyInfo structure contains + both the private key and the corresponding public key. If no encryption passphrase ID is supplied, the device shall assume that the KeyPair parameter contains a + OneAsymmetricKey ASN.1 structure which contains both the private key and the corresponding public key. +
+ + +
+ + + This operation uploads a certification path consisting of X.509 certificates as specified by [RFC 5280] in DER encoding along with a private key to a device’s keystore. + Certificates and private key are supplied in the form of a PKCS#12 file as specified in [PKCS#12].
+ The device shall support PKCS#12 files that contain the following safe bags:
+ * one or more instances of CertBag [PKCS#12, Sect. 4.2.3] + * either exactly one instance of KeyBag [PKCS#12, Sect. 4.3.1] or exactly one instance of PKCS8ShroudedKeyBag [PKCS#12, Sect. 4.2.2].
+ If the IgnoreAdditionalCertificates parameter has the value true, the device shall behave as if the client had supplied only the first CertBag in the sequence of CertBag instances. + The device shall support PKCS#12 passphrase integrity mode for integrity protection of the PKCS#12 PFX as specified in [PKCS#12, Sect. 4]. + The device shall support PKCS8ShroudedKeyBags that are encrypted with the same passphrase as the CertBag instances. + If an integrity passphrase ID is supplied, the device shall use the corresponding passphrase in the keystore to check the integrity of the supplied PKCS#12 PFX. + If an integrity passphrase ID is supplied, but the supplied PKCS#12 PFX has no integrity protection, the device shall produce a BadPKCS12File fault and shall + not store the uploaded certificates nor the uploaded key pair in the keystore. + If an encryption passphrase ID is supplied, the device shall use the corresponding passphrase in the keystore to decrypt the PKCS8ShroudedKeyBag and the CertBag instances. + If an EncryptionPassphraseID is supplied, but a CertBag is not encrypted, the device shall ignore the supplied EncryptionPassphraseID when processing this CertBag. + If an EncryptionPassphraseID is supplied, but a KeyBag is provided instead of a PKCS8ShroudedKeyBag, the device shall ignore the supplied EncryptionPassphraseID when processing the KeyBag. +
+ + +
+ + + This operation returns the status of a key.
+ Keys are uniquely identified using key IDs. If no key is stored under the requested key ID in the keystore, an InvalidKeyID fault is produced. + Otherwise, the status of the key is returned. +
+ + +
+ + + This operation returns whether a key pair contains a private key.
+ Keys are uniquely identified using key IDs. If no key is stored under the requested key ID in the keystore or the key identified by the requested key ID does not identify a key pair, + the device shall produce an InvalidKeyID fault. + Otherwise, this operation returns true if the key pair identified by the key ID contains a private key, and false otherwise. +
+ + +
+ + + This operation returns information about all keys that are stored in the device’s keystore.
+ This operation may be used, e.g., if a client lost track of which keys are present on the device. + If no key is stored on the device, an empty list is returned. +
+ + +
+ + + This operation deletes a key from the device’s keystore.
+ Keys are uniquely identified using key IDs. If no key is stored under the requested key ID in the keystore, a device shall produce an InvalidArgVal fault. + If a reference exists for the specified key, a device shall produce the corresponding fault and shall not delete the key. + If there is a key under the requested key ID stored in the keystore and the key could not be deleted, a device shall produce a KeyDeletion fault. + If the key has the status generating, a device shall abort the generation of the key and delete from the keystore all data generated for this key. + After a key is successfully deleted, the device may assign its former ID to other keys. +
+ + +
+ + + This operation generates a DER-encoded PKCS#10 v1.7 certification request (sometimes also called certificate signing request or CSR) as specified in RFC 2986 + for a public key on the device.
+ The key pair that contains the public key for which a certification request shall be produced is specified by its key ID. + If no key is stored under the requested KeyID or the key specified by the requested KeyID is not an asymmetric key pair, an invalid key ID fault shall be produced and + no CSR shall be generated.
+ + A device that supports this command shall as minimum support the sha-1WithRSAEncryption signature algorithm as specified in RFC 3279. + If the specified signature algorithm is not supported by the device, an UnsupportedSignatureAlgorithm fault shall be produced and no CSR shall be generated.
+ + If the public key identified by the requested Key ID is an invalid input to the specified signature algorithm, a KeySignatureAlgorithmMismatch fault shall be produced + and no CSR shall be generated. + If the key pair does not have status ok, a device shall produce an InvalidKeyStatus fault and no CSR shall be generated. +
+ + +
+ + + This operation generates for a public key on the device a self-signed X.509 certificate that complies to RFC 5280.
+ The X509Version parameter specifies the version of X.509 that the generated certificate shall comply to. + A device that supports this command shall support the generation of X.509v3 certificates as specified in RFC 5280 and may additionally be able to handle other X.509 certificate formats + as indicated by the X.509Versions capability.
+ The key pair that contains the public key for which a self-signed certificate shall be produced is specified by its key pair ID. + The subject parameter describes the entity that the public key belongs to. + If the key pair does not have status ok, a device shall produce an InvalidKeyStatus fault and no certificate shall be generated. + + The signature algorithm parameter determines which signature algorithm shall be used for signing the certification request with the public key specified by the key ID parameter. + A device that supports this command shall as minimum support the sha-1WithRSAEncryption signature algorithm as specified in RFC 3279. + The Extensions parameter specifies potential X509v3 extensions that shall be contained in the certificate. + A device that supports this command shall support the extensions that are defined in [RFC 5280], Sect. 4.2] as mandatory for CAs that issue self-signed certificates.
+ + Certificates are uniquely identified using certificate IDs. If the command was successful, the device generates a new ID for the generated certificate and returns this ID.
+ If the device does not have not enough storage capacity for storing the certificate to be created, the maximum number of certificates reached fault shall be produced and no certificate shall be generated. +
+ + +
+ + + This operation uploads an X.509 certificate as specified by [RFC 5280] in DER encoding and the public key in the certificate to a device’s keystore.
+ A device that supports this command shall be able to handle X.509v3 certificates as specified in RFC 5280 and may additionally be able to handle other X.509 certificate formats as indicated by the X.509Versions capability. + A device that supports this command shall support sha1-WithRSAEncryption as certificate signature algorithm.
+ + Certificates are uniquely identified using certificate IDs, and key pairs are uniquely identified using key IDs. + The device shall generate a new certificate ID for the uploaded certificate.
+ Certain certificate usages, e.g. TLS server authentication, require the private key that corresponds to the public key in the certificate to be present in the keystore. + In such cases, the client may indicate that it expects the device to produce a fault if the matching private key for + the uploaded certificate is not present in the keystore by setting the PrivateKeyRequired argument in the upload request to true.
+ + The uploaded certificate has to be linked to a key pair in the keystore. + If no private key is required for the public key in the certificate and a key pair exists in the keystore with a public key equal to the public key in the certificate, + the uploaded certificate is linked to the key pair identified by the supplied key ID by adding a reference from the certificate to the key pair. + If no private key is required for the public key in the certificate and no key pair exists with the public key equal to the public key in the certificate, + a new key pair with status ok is created with the public key from the certificate, and this key pair is linked to the uploaded certificate by adding a reference from + the certificate to the key pair. + If a private key is required for the public key in the certificate, and a key pair exists in the keystore with a private key that matches the public key in the certificate, + the uploaded certificate is linked to this keypair by adding a reference from the certificate to the key pair. + If a private key is required for the public key and no such keypair exists in the keystore, the NoMatchingPrivateKey fault shall be produced and the certificate + shall not be stored in the keystore. + If the key pair that the certificate shall be linked to does not have status ok, an InvalidKeyID fault is produced, and the uploaded certificate is not stored in the keystore. + If the device cannot process the uploaded certificate, a BadCertificate fault is produced and neither the uploaded certificate nor the public key are stored in the device’s keystore. + The BadCertificate fault shall not be produced based on the mere fact that the device’s current time lies outside the interval defined by the notBefore and notAfter fields as specified by [RFC 5280], Sect. 4.1 . + This operation shall not mark the uploaded certificate as trusted.
+ + If the device does not have not enough storage capacity for storing the certificate to be uploaded, the maximum number of certificates reached fault shall be produced + and no certificate shall be uploaded. + If the device does not have not enough storage capacity for storing the key pair that eventually has to be created, the device shall generate a maximum number of keys reached fault. + Furthermore the device shall not generate a key pair and no certificate shall be stored. +
+ + +
+ + + This operation returns a specific certificate from the device’s keystore.
+ Certificates are uniquely identified using certificate IDs. If no certificate is stored under the requested certificate ID in the keystore, an InvalidArgVal fault is produced. + It shall be noted that this command does not return the private key that is associated to the public key in the certificate. +
+ + +
+ + + This operation returns the IDs of all certificates that are stored in the device’s keystore.
+ This operation may be used, e.g., if a client lost track of which certificates are present on the device. + If no certificate is stored in the device’s keystore, an empty list is returned. +
+ + +
+ + + This operation deletes a certificate from the device’s keystore.
+ The operation shall not delete the public key that is contained in the certificate from the keystore. + Certificates are uniquely identified using certificate IDs. If no certificate is stored under the requested certificate ID in the keystore, an InvalidArgVal fault is produced. + If there is a certificate under the requested certificate ID stored in the keystore and the certificate could not be deleted, a CertificateDeletion fault is produced. + If a reference exists for the specified certificate, the certificate shall not be deleted and the corresponding fault shall be produced. + After a certificate has been successfully deleted, the device may assign its former ID to other certificates. +
+ + +
+ + + This operation creates a sequence of certificates that may be used, e.g., for certification path validation or for TLS server authentication.
+ Certification paths are uniquely identified using certification path IDs. Certificates are uniquely identified using certificate IDs. + A certification path contains a sequence of certificate IDs. + If there is a certificate ID in the sequence of supplied certificate IDs for which no certificate exists in the device’s keystore, the corresponding fault shall be produced + and no certification path shall be created.
+ + The signature of each certificate in the certification path except for the last one must be verifiable with the public key contained in the next certificate in the path. + If there is a certificate ID in the request other than the last ID for which the corresponding certificate cannot be verified with the public key in the certificate identified + by the next certificate ID, an InvalidCertificateChain fault shall be produced and no certification path shall be created. +
+ + +
+ + + This operation returns a specific certification path from the device’s keystore.
+ Certification paths are uniquely identified using certification path IDs. + If no certification path is stored under the requested ID in the keystore, an InvalidArgVal fault is produced. +
+ + +
+ + + This operation returns the IDs of all certification paths that are stored in the device’s keystore.
+ This operation may be used, e.g., if a client lost track of which certificates are present on the device. + If no certification path is stored on the device, an empty list is returned. +
+ + +
+ + + This operation deletes a certification path from the device’s keystore.
+ This operation shall not delete the certificates that are referenced by the certification path. + Certification paths are uniquely identified using certification path IDs. + If no certification path is stored under the requested certification path ID in the keystore, an InvalidArgVal fault is produced. + If there is a certification path under the requested certification path ID stored in the keystore and the certification path could not be deleted, + a CertificationPathDeletion fault is produced. + If a reference exists for the specified certification path, the certification path shall not be deleted and the corresponding fault shall be produced. + After a certification path is successfully deleted, the device may assign its former ID to other certification paths. +
+ + +
+ + + This operation uploads a passphrase to the keystore of the device. + + + + + + + This operation returns information about all passphrases that are stored in the keystore of the device. + This operation may be used, e.g., if a client lost track of which passphrases are present on the device. + If no passphrase is stored on the device, the device shall return an empty list. + + + + + + + This operation deletes a passphrase from the keystore of the device. + + + + + + + + + + This operation uploads a certificate revocation list (CRL) as specified in [RFC 5280] to the keystore on the device. + If the device does not have enough storage space to store the CRL to be uploaded, the device shall produce a MaximumNumberOfCRLsReached fault and shall not store the supplied CRL. + If the device is not able to process the supplied CRL, the device shall produce a BadCRL fault and shall not store the supplied CRL. + If the device does not support the signature algorithm that was used to sign the supplied CRL, the device shall produce an UnsupportedSignatureAlgorithm fault and shall not store the supplied CRL. + + + + + + + This operation returns a specific certificate revocation list (CRL) from the keystore on the device. + Certification revocation lists are uniquely identified using CRLIDs. If no CRL is stored under the requested CRLID, the device shall produce a CRLID fault. + + + + + + + This operation returns all certificate revocation lists (CRLs) that are stored in the keystore on the device. + If no certificate revocation list is stored in the device’s keystore, an empty list is returned. + + + + + + + This operation deletes a certificate revocation list (CRL) from the keystore on the device. + Certification revocation lists are uniquely identified using CRLIDs. If no CRL is stored under the requested CRLID, the device shall produce a CRLID fault. + If a reference exists for the specified CRL, the device shall produce a ReferenceExists fault and shall not delete the CRL. + After a CRL has been successfully deleted, a device may assign its former ID to other CRLs. + + + + + + + This operation creates a certification path validation policy. + Certification path validation policies are uniquely identified using certification path validation policy IDs. The device shall generate a new certification path validation policy ID for the created certification path validation policy. + For the certification path validation parameters that are not represented in the certPathValidationParameters data type, the device shall use the default values specified in Sect. 3. + If the device does not have enough storage capacity for storing the certification path validation policy to be created, the device shall produce a maximum number of certification path validation policies reached fault and shall not create a certification path validation policy. + If there is at least one trust anchor certificate ID in the request for which there exists no certificate in the device’s keystore, the device shall produce a CertificateID fault and shall not create a certification path validation policy. + If the device cannot process the supplied certification path validation parameters, the device shall produce a CertPathValidationParameters fault and shall not create a certification path validation policy. + + + + + + + This operation returns a certification path validation policy from the keystore on the device. + Certification path validation policies are uniquely identified using certification path validation policy IDs. If no certification path validation policy is stored under the requested certification path validation policy ID, the device shall produce a CertPathValidationPolicyID fault. + + + + + + + This operation returns all certification path validation policies that are stored in the keystore on the device. + If no certification path validation policy is stored in the device’s keystore, an empty list is returned. + + + + + + + This operation deletes a certification path validation policy from the keystore on the device. + Certification path validation policies are uniquely identified using certification path validation policy IDs. If no certification path validation policy is stored under the requested certification path validation policy ID, the device shall produce an InvalidCertPathValidationPolicyID fault. + If a reference exists for the requested certification path validation policy, the device shall produce a ReferenceExists fault and shall not delete the certification path validation policy. + After the certification path validation policy has been deleted, the device may assign its former ID to other certification path validation policies. + + + + + + + +
+ + TLS server functionality. + + + This operation assigns a key pair and certificate along with a certification path (certificate chain) to the TLS server on the device. + The TLS server shall use this information for key exchange during the TLS handshake, particularly for constructing server certificate messages as specified in RFC 4346 and RFC 2246.
+ + Certification paths are identified by their certification path IDs in the keystore. The first certificate in the certification path must be the TLS server certificate. + Since each certificate has exactly one associated key pair, a reference to the key pair that is associated with the server certificate is not supplied explicitly. + Devices shall obtain the private key or results of operations under the private key by suitable internal interaction with the keystore.
+ If a device chooses to perform a TLS key exchange based on the supplied certification path, it shall use the key pair that is associated with the server certificate for + key exchange and transmit the certification path to TLS clients as-is, i.e., the device shall not check conformance of the certification path to RFC 4346 norRFC 2246. + In order to use the server certificate during the TLS handshake, the corresponding private key is required. + Therefore, if the key pair that is associated with the server certificate, i.e., the first certificate in the certification path, does not have an associated private key, + the NoPrivateKey fault is produced and the certification path is not associated to the TLS server.
+ A TLS server may present different certification paths to different clients during the TLS handshake instead of presenting the same certification path to all clients. + Therefore more than one certification path may be assigned to the TLS server.
+ If the maximum number of certification paths that may be assigned to the TLS server simultaneously is reached, the device shall generate a MaximumNumberOfCertificationPathsReached + fault and the requested certification path shall not be assigned to the TLS server. +
+ + +
+ + + This operation removes a key pair and certificate assignment (including certification path) to the TLS server on the device.
+ Certification paths are identified using certification path IDs. If the supplied certification path ID is not associated to the TLS server, an InvalidArgVal fault is produced. +
+ + +
+ + + This operation replaces an existing key pair and certificate assignment to the TLS server on the device by a new key pair and certificate assignment (including certification paths).
+ + After the replacement, the TLS server shall use the new certificate and certification path exactly in those cases in which it would have used the old certificate and certification path. + Therefore, especially in the case that several server certificates are assigned to the TLS server, clients that wish to replace an old certificate assignment by a new assignment + should use this operation instead of a combination of the Add TLS Server Certificate Assignment and the Remove TLS Server Certificate Assignment operations.
+ + Certification paths are identified using certification path IDs. If the supplied old certification path ID is not associated to the TLS server, or no certification path exists + under the new certification path ID, the corresponding InvalidArgVal faults are produced and the associations are unchanged. + The first certificate in the new certification path must be the TLS server certificate.
+ Since each certificate has exactly one associated key pair, a reference to the key pair that is associated with the new server certificate is not supplied explicitly. + Devices shall obtain the private key or results of operations under the private key by suitable internal interaction with the keystore.
+ If a device chooses to perform a TLS key exchange based on the new certification path, it shall use the key pair that is associated with the server certificate + for key exchange and transmit the certification path to TLS clients as-is, i.e., the device shall not check conformance of the certification path to RFC 4346 norRFC 2246. + In order to use the server certificate during the TLS handshake, the corresponding private key is required. + Therefore, if the key pair that is associated with the server certificate, i.e., the first certificate in the certification path, does not have an associated private key, + the NoPrivateKey fault is produced and the certification path is not associated to the TLS server. +
+ + +
+ + + This operation returns the IDs of all key pairs and certificates (including certification paths) that are assigned to the TLS server on the device.
+ This operation may be used, e.g., if a client lost track of the certification path assignments on the device. + If no certification path is assigned to the TLS server, an empty list is returned. +
+ + +
+ + + + + + This operation activates or deactivates TLS client authentication for the TLS server on the device. + The TLS server on the device shall require client authentication if and only if clientAuthenticationRequired is set to true. + If TLS client authentication is requested to be enabled and no certification path validation policy is assigned to the TLS server, the device shall return an EnablingTLSClientAuthenticationFailed fault and shall not enable TLS client authentication. + The device shall execute this command regardless of the TLS enabled/disabled state configured in the ONVIF Device Management Service. + + + + + + + This operation returns whether TLS client authentication is active. + + + + + + + This operation assigns a certification path validation policy to the TLS server on the device. The TLS server shall enforce the policy when authenticating TLS clients and consider a client authentic if and only if the algorithm returns valid. + If no certification path validation policy is stored under the requested CertPathValidationPolicyID, the device shall produce a CertPathValidationPolicyID fault. + A TLS server may use different certification path validation policies to authenticate clients. Therefore more than one certification path validation policy may be assigned to the TLS server. If the maximum number of certification path validation policies that may be assigned to the TLS server simultaneously is reached, the device shall produce a MaximumNumberOfTLSCertPathValidationPoliciesReached fault and shall not assign the requested certification path validation policy to the TLS server. + + + + + + + This operation removes a certification path validation policy assignment from the TLS server on the device. + If the certification path validation policy identified by the requested CertPathValidationPolicyID is not associated to the TLS server, the device shall produce a CertPathValidationPolicy fault. + + + + + + + This operation replaces a certification path validation policy assignment to the TLS server on the device with another certification path validation policy assignment. + If the certification path validation policy identified by the requested OldCertPathValidationPolicyID is not associated to the TLS server, the device shall produce an OldCertPathValidationPolicyID fault and shall not associate the certification path validation policy identified by the NewCertPathValidationPolicyID to the TLS server. + If no certification path validation policy exists under the requested NewCertPathValidationPolicyID in the device’s keystore, the device shall produce a NewCertPathValidationPolicyID fault and shall not remove the association of the old certification path validation policy to the TLS server. + + + + + + + This operation returns the IDs of all certification path validation policies that are assigned to the TLS server on the device. + + + + + + + +
+ + 802.1X configuration. + + + (to be written) + + + + + + + (to be written) + + + + + + + (to be written) + + + + + + + (to be written) + + + + + + + (to be written) + + + + + + + (to be written) + + + + + + + (to be written) + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
diff --git a/wsdl/analytics.wsdl b/wsdl/analytics.wsdl new file mode 100644 index 0000000..22c806b --- /dev/null +++ b/wsdl/analytics.wsdl @@ -0,0 +1,683 @@ + + + + + + + + + + + + + + + + + + + + The capabilities for the analytics service is returned in the Capabilities element. + + + + + + + + + + + + + Indication that the device supports the rules interface and the rules syntax. + + + + + Indication that the device supports the scene analytics module interface. + + + + + Indication that the device produces the cell based scene description + + + + + Indication that the device supports the GetRuleOptions operation on the rules interface + + + + + Indication that the device supports the GetAnalyticsModuleOptions operation on the analytics interface + + + + + + + + + + + + + References an existing Video Analytics configuration. The list of available tokens can be obtained + via the Media service GetVideoAnalyticsConfigurations method. + + + + + + + + + + + + + + + + + + + + Reference to an existing VideoAnalyticsConfiguration. + + + + + + + + + + + + + + + + Reference to an existing VideoAnalyticsConfiguration. + + + + + References the specific rule to be deleted (e.g. "MyLineDetector"). + + + + + + + + + + + + + + + Reference to an existing VideoAnalyticsConfiguration. + + + + + + + + + + + + + + + + Reference to an existing VideoAnalyticsConfiguration. + + + + + + + + + + + + + + + + + + + Reference to an SupportedRule Type returned from GetSupportedRules. + + + + + Reference to an existing analytics configuration. + + + + + + + + + + + A device shall provide respective ConfigOptions.RuleType for each RuleOption if the request does not specify RuleType. + + + + + + + + + + + + XML tree containing the element value as defined in the Type attribute. + + + + + + + + The RuleType the ConfigOptions applies to if the Name attribute is ambiguous. + + + + + + + The Name of the SimpleItemDescription/ElementItemDescription + the ConfigOptions applies to. + + + + + + + Type of the Rule Options represented by a unique QName. + The Type defines the element contained in this structure. + + + + + + + + + + + + + Reference to an existing VideoAnalyticsConfiguration. + + + + + + + + + + + + + + + + + + + Reference to an existing VideoAnalyticsConfiguration. + + + + + + + + + + + + + + + + Reference to an existing Video Analytics configuration. + + + + + Name of the AnalyticsModule to be deleted. + + + + + + + + + + + + + + + Reference to an existing VideoAnalyticsConfiguration. + + + + + + + + + + + + + + + + Reference to an existing VideoAnalyticsConfiguration. + + + + + + + + + + + + + + + + + + + Reference to an SupportedAnalyticsModule Type returned from GetSupportedAnalyticsModules. + + + + + Reference to an existing AnalyticsConfiguration. + + + + + + + + + + + + + + + + + + XML tree containing the element value as defined in the Type attribute. + + + + + + + + Type of the Analytics Module Options represented by a unique QName. + The Type defines the element contained in this structure. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + List all rules that are supported by the given VideoAnalyticsConfiguration. + The result of this method may depend on the overall Video analytics configuration of the device, + which is available via the current set of profiles. + + + + + + + Add one or more rules to an existing VideoAnalyticsConfiguration. + The available supported types can be retrieved via GetSupportedRules, + where the Name of the supported rule correspond to the type of an rule instance.
+ Pass unique module names which can be later used as reference. + The Parameters of the rules must match those of the corresponding description. +
+ Although this method is mandatory a device implementation must not support adding rules. + Instead it can provide a fixed set of predefined configurations via the media service function + GetCompatibleVideoAnalyticsConfigurations. +
+ + +
+ + + Remove one or more rules from a VideoAnalyticsConfiguration. + + + + + + + List the currently assigned set of rules of a VideoAnalyticsConfiguration. + + + + + + + Return the options for the supported rules that specify an Option attribute. + + + + + + + Modify one or more rules of a VideoAnalyticsConfiguration. The rules are referenced by their names. + + + + +
+ + + Returns the capabilities of the analytics service. The result is returned in a typed answer. + + + + + + List all analytics modules that are supported by the given VideoAnalyticsConfiguration. + The result of this method may depend on the overall Video analytics configuration of the device, + which is available via the current set of profiles. + + + + + + + Return the options for the supported analytics modules that specify an Option attribute. + + + + + + + Add one or more analytics modules to an existing VideoAnalyticsConfiguration. + The available supported types can be retrieved via GetSupportedAnalyticsModules, + where the Name of the supported AnalyticsModules correspond to the type of an AnalyticsModule instance.
+ Pass unique module names which can be later used as reference. The Parameters of the analytics module must match those of the corresponding AnalyticsModuleDescription. +
+ Although this method is mandatory a device implementation must not support adding modules. + Instead it can provide a fixed set of predefined configurations via the media service function + GetCompatibleVideoAnalyticsConfigurations. +
+ The device shall ensure that a corresponding analytics engine starts operation when a client + subscribes directly or indirectly for events produced by the analytics or rule engine or when a + client requests the corresponding scene description stream. + An analytics module must be attached to a Video source using the media profiles before it can be used. + In case differing analytics configurations are attached to the same profile it is undefined which + of the analytics module configuration becomes active if no stream is activated or multiple streams + with different profiles are activated at the same time. +
+ + +
+ + + Remove one or more analytics modules from a VideoAnalyticsConfiguration referenced by their names.
+
+ + +
+ + + List the currently assigned set of analytics modules of a VideoAnalyticsConfiguration. + + + + + + + Modify the settings of one or more analytics modules of a VideoAnalyticsConfiguration. The modules are referenced by their names. + It is allowed to pass only a subset to be modified. + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
diff --git a/wsdl/analyticsdevice.wsdl b/wsdl/analyticsdevice.wsdl new file mode 100644 index 0000000..299dd9b --- /dev/null +++ b/wsdl/analyticsdevice.wsdl @@ -0,0 +1,709 @@ + + + + + + + + + + + + + + + + + + + The capabilities for the analytics device service is returned in the Capabilities element. + + + + + + + + + + + + + + + + + + + + Token of the Analytics Engine Control configuration to be deleted. + + + + + + + + + + + + + + + + + Settings of the configurations to be created. + + + + + + + + + + + + Configurations containing token generated. + + + + + + + + + + + Settings of the Analytics Engine Control configuration to be created. Mode shall be set to "idle". + + + + + + + + + + + Configuration containing token generated. + + + + + + + + + + + Contains the modified Analytics Engine Control configuration. + + + + + + + + + + + + + + + + + + Token of the requested AnalyticsEngineControl configuration. + + + + + + + + + + + Configuration of the AnalyticsEngineControl. + + + + + + + + + + + + + + + + List of available AnalyticsEngineControl configurations. + + + + + + + + + + + Token of the requested AnalyticsEngine configuration. + + + + + + + + + + + Configuration of the AnalyticsEngine. + + + + + + + + + + + + + + + + + List of available AnalyticsEngine configurations. + + + + + + + + + + + Contains the modified video analytics configuration. The configuration shall exist in the device. + + + + + + + + + + + + + + + + + + Contains the modified Analytics Engine Input configuration. The configuration shall exist in the device. + + + + + + + + + + + + + + + + + + Token of the requested AnalyticsEngineInput configuration. + + + + + + + + + + + Configuration of the AnalyticsEngineInput. + + + + + + + + + + + + + + + + + List of available AnalyticsEngineInput configurations. + + + + + + + + + + + Configuration of the URI requested. + + + + + Token of the AnalyticsEngineControl whose URI is requested. + + + + + + + + + + + Streaming URI. + + + + + + + + + + + Token of the VideoAnalyticsConfiguration requested. + + + + + + + + + + + Settings of the VideoAnalyticsConfiguration. + + + + + + + + + + + LIst of tokens of Analytics Engine Input configurations to be deleted. + + + + + + + + + + + + + + + + + Token of the AnalyticsEngineControl whose state information is requested. + + + + + + + + + + + Current status information. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Returns the capabilities of the analytics device service. The result is returned in a typed answer. + + + + + DeleteAnalyticsEngineControl shall delete a control object . + + + + + CreateAnalyticsEngineControl shall create a new control object. + + + + + This command modifies the AnalyticsEngineControl configuration. + + + + + The GetAnalyticsEngineControl command fetches the analytics engine control if the analytics engine control token is known. + + + + + This operation lists all available analytics engine controls for the device. + + + + + The GetAnalyticsEngine command fetches the analytics engine configuration if the token is known. + + + + + This operation lists all available analytics engine configurations for the device. + + + + + A video analytics configuration is modified using this command. + + + + + This command modifies the analytics engine input configuration. + + + + + The GetAnalyticsEngineInput command fetches the input configuration if the analytics engine input configuration token is known. + + + + + This operation lists all available analytics engine input configurations for the device. + + + + + This operation requests a URI that can be used to initiate a live stream using RTSP as the control protocol if the token of the AnalyticsEngineControl is known. + + + + + The GetVideoAnalyticsConfiguration command fetches the video analytics configuration if the video analytics configuration token is known. + + + + + This command generates one or more analytics engine input configurations. + + + + + This command deletes analytics engine input configurations if the tokens are known. + + + + + GetAnalyticsState returns status information of the referenced AnalyticsEngineControl object. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/wsdl/credential.wsdl b/wsdl/credential.wsdl new file mode 100644 index 0000000..1de5275 --- /dev/null +++ b/wsdl/credential.wsdl @@ -0,0 +1,1396 @@ + + + + + + + + + + + + + The service capabilities reflect optional functionality of a service. The information is static + and does not change during device operation. The following capabilities are available: + + + + + + + A list of identifier types that the device supports. Supported identifiers starting with + the prefix pt: are reserved to define PACS specific identifier types and these reserved + identifier types shall all share the "pt:<Name>" syntax. + + + + + + + + + The maximum number of entries returned by a single Get<Entity>List or Get<Entity> + request. + The device shall never return more than this number of entities in a single response. + + + + + + + Indicates that the device supports credential validity. + + + + + + + Indicates that the device supports validity on the association between a credential and an + access profile. + + + + + + + Indicates that the device supports both date and time value for validity. If set to false, + then the time value is ignored. + + + + + + + The maximum number of credential supported by the device. + + + + + + + The maximum number of access profiles for a credential. + + + + + + + Indicates the device supports resetting of anti-passback violations and notifying on + anti-passback violations. + + + + + + + + + + + A list of exemptions that the device supports. Supported exemptions starting with the + prefix pt: are reserved to define PACS specific exemption types and these reserved + exemption types shall all share "pt:<Name>" syntax. + + + + + + + + + + + + The CredentialInfo type represents the credential as a logical object. The structure contains + the basic information of a specific credential instance. The device shall provide the following + fields for each credential. + + + + + + + + + User readable description for the credential. It shall be up to 1024 characters. + + + + + + An external reference to a person holding this credential. The + reference is a username or used ID in an external system, such as a directory + service. + + + + + + + + + + + + + + + The start date/time validity of the credential. If the + ValiditySupportsTimeValue capability is set to false, then only date is + supported (time is ignored). + + + + + + The expiration date/time validity of the credential. If the + ValiditySupportsTimeValue capability is set to false, then only date is + supported (time is ignored). + + + + + + + + + + + + + + A Credential is a physical/tangible object, a piece of knowledge, or a facet of a person's + physical being, that enables an individual access to a given physical facility or computer-based + information system. A credential holds one or more credential identifiers. To gain access one or + more identifiers may be required. + + + + + + + + A list of credential identifier structures. At least one + credential identifier is required. Maximum one credential identifier structure + per type is allowed. + + + + + + A list of credential access profile structures. + + + + + A list of credential attributes as name value pairs. Key names + starting with the prefix pt: are reserved to define PACS specific attributes + following the "pt:<Name>" syntax. + + + + + + + + + + + + + + + + + + + A credential identifier is a card number, unique card information, PIN or + biometric information such as fingerprint, iris, vein, face recognition, that can be validated + in an access point. + + + + + + Contains the details of the credential identifier type. Is of type + CredentialIdentifierType. + + + + + + If set to true, this credential identifier is not considered for + authentication. + + + + + + The value of the identifier in hexadecimal representation. + + + + + + + + + + Specifies the name of credential identifier type and its format for the credential + value. + + + + + + The name of the credential identifier type, such as pt:Card, pt:PIN, + etc. + + + + + + Specifies the format of the credential value for the specified identifier + type name. + + + + + + + + + + + + + The association between a credential and an access profile. + + + + + + The reference token of the associated access profile. + + + + + The start date/time of the validity for the association between the + credential and the access profile. If the ValiditySupportsTimeValue capability is set to + false, then only date is supported (time is ignored). + + + + + + The end date/time of the validity for the association between the + credential and the access profile. If the ValiditySupportsTimeValue capability is set to + false, then only date is supported (time is ignored). + + + + + + + + + + + The CredentialState structure contains information about the state of the credential and + optionally the reason of why the credential was disabled. + + + + + + True if the credential is enabled or false if the credential is + disabled. + + + + + + Predefined ONVIF reasons as mentioned in the section 4.2.1.8 + DisabledReasons of credential service specification document. For any other reason, free + text can be used. + + + + + + A structure indicating the anti-passback state. This field shall be + supported if the ResetAntipassbackSupported capability is set to true. + + + + + + + + + + + + + + + + + + A structure containing anti-passback related state information. + + + + + + Indicates if anti-passback is violated for the credential. + + + + + + + + + + + + Contains information about a format type. + + + + + A format type supported by the device. A list of supported format types is + provided in [ISO 16484-5:2014-09 Annex P]. The BACnet type "CUSTOM" is not used in this + specification. Instead device manufacturers can define their own format types. + + + + + + User readable description of the credential identifier format type. It + shall be up to 1024 characters. For custom types, it is recommended to describe how the + octet string is encoded (following the structure in column Authentication Factor Value + Encoding of [ISO 16484-5:2014-09 Annex P]). + + + + + + + + + + + + + + + + + + + + + + + + + + + The capability response message contains the requested credential + service capabilities using a hierarchical XML capability structure. + + + + + + + + + + + + + Name of the credential identifier type + + + + + + + + + + + + Identifier format types + + + + + + + + + + + + Tokens of CredentialInfo items to get. + + + + + + + + + + + + List of CredentialInfo items. + + + + + + + + + + + + Maximum number of entries to return. If not specified, less than one + or higher than what the device supports, the number of items is determined by the + device. + + + + + + Start returning entries from this start reference. If not specified, + entries shall start from the beginning of the dataset. + + + + + + + + + + + + + StartReference to use in next call to get the following items. If + absent, no more items to get. + + + + + + List of CredentialInfo items. + + + + + + + + + + + + Token of Credentials to get + + + + + + + + + + + + List of Credential items. + + + + + + + + + + + + Maximum number of entries to return. If not specified, less than one + or higher than what the device supports, the number of items is determined by the + device. + + + + + + Start returning entries from this start reference. If not specified, + entries shall start from the beginning of the dataset. + + + + + + + + + + + + + StartReference to use in next call to get the following items. If + absent, no more items to get. + + + + + + List of Credential items. + + + + + + + + + + + + The credential to create. + + + + + The state of the credential. + + + + + + + + + + + + The token of the created credential + + + + + + + + + + + + Details of the credential. + + + + + + + + + + + + + + + + + + + The token of the credential to delete. + + + + + + + + + + + + + + + + + + Token of Credential + + + + + + + + + + + + State of the credential. + + + + + + + + + + + + The token of the credential + + + + + Reason for enabling the credential. + + + + + + + + + + + + + + + + + + Token of the Credential + + + + + Reason for disabling the credential + + + + + + + + + + + + + + + + + + Token of the Credential + + + + + + + + + + + + + + + + + + + Token of the Credential + + + + + + + + + + + + Identifiers of the credential + + + + + + + + + + + + Token of the Credential + + + + + Identifier of the credential + + + + + + + + + + + + + + + + + + Token of the Credential + + + + + Identifier type name of a credential + + + + + + + + + + + + + + + + + + Token of the Credential + + + + + + + + + + + + Access Profiles of the credential + + + + + + + + + + + + Token of the Credential + + + + + Access Profiles of the credential + + + + + + + + + + + + + + + + + + Token of the Credential + + + + + Tokens of Access Profiles + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + This operation returns the capabilities of the credential service. + + + + + + This method returns all the supported format types of a specified identifier type that is supported by + the device. + + + + + + + This method returns a list of credential info items matching the given tokens. Only found credentials + shall be returned i.e., the returned number of elements can differ from the requested number of + elements. + The device shall ignore tokens it cannot resolve and may return an empty list if there are no + credentials matching the specified token. If the number of requested items are greater than MaxLimit, a + TooManyItems fault shall be returned. + + + + + + + This operation requests a list of all credential info items provided by the device. + A call to this method shall return a StartReference when not all data is returned and more data is + available. The reference shall be valid for retrieving the next set of data. Please refer section 4.8.3 + in [Access Control Service Specification] for more details. + The number of items returned shall not be greater than the Limit parameter. + + + + + + + This operation returns the specified credential items matching the given tokens. + The device shall ignore tokens it cannot resolve and shall return an empty list if there are no items + matching specified tokens. The device shall not return a fault in this case. + If the number of requested items is greater than MaxLimit, a TooManyItems fault shall be returned. + + + + + + + This operation requests a list of all credential items provided by the device. + A call to this method shall return a StartReference when not all data is returned and more data is + available. The reference shall be valid for retrieving the next set of data. Please refer section 4.8.3 + in [Access Control Service Specification] for more details. The number of items returned shall not be + greater the Limit parameter. + + + + + + + This operation creates a credential. A call to this method takes a credential structure and a credential + state structure as input parameters. The credential state can be created in disabled or enabled state. + The token field of the credential shall be empty, the device shall allocate a token for the credential. + The allocated token shall be returned in the response. If the client sends any value in the token field, + the device shall return InvalidArgVal as generic fault code. + + + + + + + This operation modifies the specified credential. When an existing credential is modified, the state is + not modified explicitly. The only way for a client to change the state of a credential is to explicitly + call the EnableCredential, DisableCredential or ResetAntipassback command. + All existing credential identifiers and credential access profiles are removed and replaced with the + specified entities. + + + + + + + This method deletes the specified credential. + If it is referred to by another entity some devices may not be able to delete the credential, and + consequently a ReferenceInUse fault shall be generated. + + + + + + + This method returns the state for the specified credential. + If the capability ResetAntipassbackSupported is set to true, then the device shall supply the + anti-passback state in the returned credential state structure. + + + + + + + This method is used to enable a credential. + + + + + + + This method is used to disable a credential. + + + + + + + This method is used to reset anti-passback violations for a specified credential. + + + + + + + This method returns all the credential identifiers for a credential. + + + + + + + This operation creates or updates a credential identifier for a credential. + If the type of specified credential identifier already exists, the current credential identifier of that + type is replaced. Otherwise the credential identifier is added. + + + + + + + This method deletes all the identifier values for the specified type. However, if the identifier type + name doesn’t exist in the device, it will be silently ignored without any response. + + + + + + + This method returns all the credential access profiles for a credential. + + + + + + + This operation add or updates the credential access profiles for a credential. + The device shall update the credential access profile if the access profile token in the specified + credential access profile matches. Otherwise the credential access profile is added. + + + + + + + This method deletes credential access profiles for the specified credential token. + However, if no matching credential access profiles are found, the corresponding access profile tokens + are silently ignored without any response. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/wsdl/deviceio.wsdl b/wsdl/deviceio.wsdl new file mode 100644 index 0000000..3d24c01 --- /dev/null +++ b/wsdl/deviceio.wsdl @@ -0,0 +1,1417 @@ + + + + + + + + + + + + + + + + + + + + The capabilities for the device IO service is returned in the Capabilities element. + + + + + + + + + + + + + Number of video sources (defaults to none). + + + + + Number of video outputs (defaults to none). + + + + + Number of audio sources (defaults to none). + + + + + Number of audio outputs (defaults to none). + + + + + Number of relay outputs (defaults to none). + + + + + Number of serial ports (defaults to none). + + + + + Number of digital inputs (defaults to none). + + + + + Indicates support for DigitalInput configuration of the idle state (defaults to false). + + + + + + + + + + + + + Optional reference token to the relay for which the options are requested. + + + + + + + + + + + + + Valid values and ranges for the configuration of a relay output. + + + + + + + + + + + Supported Modes. + + + + + Supported delay time range or discrete values in seconds. This element must be present if MonoStable mode is supported. + + + + + True if the relay only supports the exact values for the DelayTimes listed. Default is false. + + + + + + + Token of the relay output. + + + + + + + + + + + + + + + + + + + + + + List tokens of a physical IO of a device. + + + + + + + + + + + + + + + + + + + + + + + List containing all physical Video output connections of a device. + + + + + + + + + + + + Token of the requested AudioSource. + + + + + + + + + + + + Current configuration of the Audio input. + + + + + + + + + + + + + Token of the physical Audio output. + + + + + + + + + + + + Current configuration of the Audio output. + + + + + + + + + + + + + Token of the requested VideoSource. + + + + + + + + + + + + Current configuration of the Video input. + + + + + + + + + + + + + Token of the requested VideoOutput. + + + + + + + + + + + + Current configuration of the Video output. + + + + + + + + + + + + + + The ForcePersistence element determines how configuration + changes shall be stored. If true, changes shall be persistent. If false, changes MAY revert to previous values + after reboot. + + + + + + + + + + + + + + + + + + + + + The ForcePersistence element determines how configuration + changes shall be stored. If true, changes shall be persistent. If false, changes MAY revert to previous values + after reboot. + + + + + + + + + + + + + + + + + + + + + The ForcePersistence element determines how configuration + changes shall be stored. If true, changes shall be persistent. If false, changes MAY revert to previous values + after reboot. + + + + + + + + + + + + + + + + + + + + + The ForcePersistence element determines how configuration + changes shall be stored. If true, changes shall be persistent. If false, changes MAY revert to previous values + after reboot. + + + + + + + + + + + + + + + + + + + + Token of the Video input whose options are requested.. + + + + + + + + + + + + + + + + + + + + + Token of the Video Output whose options are requested.. + + + + + + + + + + + + + + + + + + + + + Token of the physical Audio input whose options are requested.. + + + + + + + + + + + + Returns the AudioSourceToken available. + + + + + + + + + + + + + Token of the physical Audio Output whose options are requested.. + + + + + + + + + + + + Available settings and ranges for the requested Audio output. + + + + + + + + + + + + + + + + + + + + + + + + Get the available digital inputs of a device. + + + + + + + + + Requested digital inputs. + + + + + + + + + + + + + Configuration Options for a digital input. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + The physical serial port on the device that allows serial data to be read and written. + + + + + + + + + Requested serial ports. + + + + + + + + + + + Gets the configuration that relates to serial port configuration. + + + + + + + + + + Requested serial port configuration. + + + + + + + + + + + Sets the configuration that relates to serial port configuration. + + + + + + + + + + + + + + + + + + Gets the configuration options that relates to serial port configuration. + + + + + + + + + + Requested serial port configuration options. + + + + + + + + + + + Transmitting arbitrary data to the connected serial device and then receiving its response data. + + + + + + The physical serial port reference to be used when this request is invoked. + + + + + The serial port data. + + + + + Indicates that the command should be responded back within the specified period of time. + + + + + This element may be put in the case that data length returned from the connected serial device is already determined as some fixed bytes length. It indicates the length of received data which can be regarded as available. + + + + + This element may be put in the case that the delimiter codes returned from the connected serial device is already known. It indicates the termination data sequence of the responded data. In case the string has more than one character a device shall interpret the whole string as a single delimiter. Furthermore a device shall return the delimiter character(s) to the client. + + + + + + + + Receiving the response data. + + + + + + + + + + + + + The serial port data. + + + + + + + + + + + Lists all available serial ports of a device + + + + + + + + + + + + + + The type of serial port.Generic can be signaled as a vendor specific serial port type. + + + + + + + + + + + + + + The parameters for configuring the serial port. + + + + + The transfer bitrate. + + + + + The parity for the data error detection. + + + + + The bit length for each character. + + + + + The number of stop bits used to terminate each character. + + + + + + + + + + + + The parity for the data error detection. + + + + + + + + + + + + + + The configuration options that relates to serial port. + + + + + The list of configurable transfer bitrate. + + + + + The list of configurable parity for the data error detection. + + + + + The list of configurable bit length for each character. + + + + + The list of configurable number of stop bits used to terminate each character. + + + + + + + + + + + The list of configurable parity for the data error detection. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Returns the capabilities of the device IO service. The result is returned in a typed answer. + + + + + Request the available settings and ranges for one or all relay outputs. A device that has one or more RelayOutputs should support this command.
+ Two examples that illustrate usage: +
    +
  • + 1) Device supports range PT1S to PT120S: +
    +<tmd:RelayOutputOptions token='44'>
    +  <tmd:Mode>Monostable</tmd:Mode>
    +  <tmd:DelayTimes>1 120</tmd:DelayTimes>
    +</tmd:RelayOutputOptions>
    +							
    +
  • +
  • + 2) Device supports values PT0.5S, PT1S, PT2s and PT1M: +
    +<tmd:RelayOutputOptions token='123'>
    +  <tmd:Mode>Monostable</tmd:Mode>
    +  <tmd:DelayTimes>0.5 1 2 60</tmd:DelayTimes>
    +  <tmd:Discrete>True</tmd:Discrete>
    +</tmd:RelayOutputOptions>
    +								
    +
  • +
+
+ + +
+ + List all available audio sources for the device. The device that has one or more audio sources shall support the listing of available audio inputs through the GetAudioSources command. + + + + + List all available audio outputs of a device. A device that has one ore more physical audio outputs shall support listing of available audio outputs through the GetAudioOutputs command. + + + + + List all available video sources for the device. The device that has one or more video inputs shall support the listing of available video sources through the GetVideoSources command. + + + + + List all available video outputs of a device. A device that has one or more physical video outputs shall support listing of available video outputs through the GetVideoOutputs command. + + + + + + Get the video source configurations of a VideoSource. A device with one or more video sources shall support the GetVideoSourceConfigurations command.
This method is deprecated.
+ + +
+ + Get the configuration of a Video Output. A device that has one or more Video Outputs shall support the retrieval of the VideoOutputConfiguration through this command. + + + + + List the configuration of an Audio Input. A device with one or more audio inputs shall support the GetAudioSourceConfiguration command.
This method is deprecated.
+ + +
+ + Request the current configuration of a physical Audio output. A device that has one or more AudioOutputs shall support the retrieval of the AudioOutputConfiguration through this command.
This method is deprecated.
+ + +
+ + + Modify a video input configuration. A device that has one or more video sources shall support the setting of the VideoSourceConfiguration through this command.
This method is deprecated.
+ + +
+ + Modify a video output configuration. A device that has one or more video outputs shall support the setting of its video output configuration through this command. + + + + + Modify an audio source configuration. A device that has a one or more audio sources shall support the setting of the AudioSourceConfiguration through this command.
This method is deprecated.
+ + +
+ + Modify an audio output configuration. A device that has one ore more audio outputs shall support the setting of the AudioOutputConfiguration through this command.
This method is deprecated.
+ + +
+ + + Request the VideoSourceConfigurationOptions of a VideoSource. A device with one or more video sources shall support this command.
This method is deprecated.
+ + +
+ + Request the VideoOutputConfigurationOptions of a VideoOutput. A device that has one or more video outputs shall support the retrieval of VideoOutputConfigurationOptions through this command. + + + + + Request the AudioSourceConfigurationOptions of an AudioSource. A device with one ore more AudioSources shall support this command.
This method is deprecated.
+ + +
+ + Request the available settings and ranges for a physical Audio output. A device that has one or more AudioOutputs shall support this command.
This method is deprecated.
+ + +
+ + This operation gets a list of all available relay outputs and their settings. + + + + + This operation sets the settings of a relay output. + The relay can work in two relay modes:
    +
  • + Bistable – After setting the state, the relay remains in this state.
  • +
  • + Monostable – After setting the state, the relay returns to its idle state after the + specified time.
  • +
+ The physical idle state of a relay output can be configured by setting the IdleState to ‘open’ or + ‘closed’ (inversion of the relay behaviour).
+ Idle State ‘open’ means that the relay is open when the relay state is set to ‘inactive’ through + the trigger command (see Section 8.5.3) and closed when the state is set to ‘active’ through + the same command.
+ Idle State ‘closed’ means, that the relay is closed when the relay state is set to ‘inactive’ + through the trigger command (see Section 8.5.3) and open when the state is set to ‘active’ + through the same command.
+ + +
+ + Modify the relay state. + + + + + This operation gets a list of all available digital inputs. + + + + + This operation lists what configuration is available for digital inputs. + + + + + Modify a digital input configuration. + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
diff --git a/wsdl/devicemgmt.wsdl b/wsdl/devicemgmt.wsdl new file mode 100644 index 0000000..14a8ea9 --- /dev/null +++ b/wsdl/devicemgmt.wsdl @@ -0,0 +1,4237 @@ + + + + + + + + + + + + + + Indicates if the service capabilities (untyped) should be included in the response. + + + + + + + + + + + Each Service element contains information about one service. + + + + + + + + + + + Namespace of the service being described. This parameter allows to match the service capabilities to the service. Note that only one set of capabilities is supported per namespace. + + + + + The transport addresses where the service can be reached. The scheme and IP part shall match the one used in the request (i.e. the GetServices request). + + + + + + + + The placeholder for the service capabilities. The service capability element shall be returned here. For example for the device service that would be the tds:DeviceServiceCapabilities element (not complextype). + + + + + + + + The version of the service (not the ONVIF core spec version). + + + + + + + + + + + + + + + + + + The capabilities for the device service is returned in the Capabilities element. + + + + + + + + + + + Network capabilities. + + + + + Security capabilities. + + + + + System capabilities. + + + + + Capabilities that do not fit in any of the other categories. + + + + + + + + + + Indicates support for IP filtering. + + + + + Indicates support for zeroconf. + + + + + Indicates support for IPv6. + + + + + Indicates support for dynamic DNS configuration. + + + + + Indicates support for IEEE 802.11 configuration. + + + + + Indicates the maximum number of Dot1X configurations supported by the device + + + + + Indicates support for retrieval of hostname from DHCP. + + + + + Maximum number of NTP servers supported by the devices SetNTP command. + + + + + Indicates support for Stateful IPv6 DHCP. + + + + + + + + + + + + Indicates support for TLS 1.0. + + + + + Indicates support for TLS 1.1. + + + + + Indicates support for TLS 1.2. + + + + + Indicates support for onboard key generation. + + + + + Indicates support for access policy configuration. + + + + + Indicates support for the ONVIF default access policy. + + + + + Indicates support for IEEE 802.1X configuration. + + + + + Indicates support for remote user configuration. Used when accessing another device. + + + + + Indicates support for WS-Security X.509 token. + + + + + Indicates support for WS-Security SAML token. + + + + + Indicates support for WS-Security Kerberos token. + + + + + Indicates support for WS-Security Username token. + + + + + Indicates support for WS over HTTP digest authenticated communication layer. + + + + + Indicates support for WS-Security REL token. + + + + + EAP Methods supported by the device. The int values refer to the IANA EAP Registry. + + + + + The maximum number of users that the device supports. + + + + + Maximum number of characters supported for the username by CreateUsers. + + + + + Maximum number of characters supported for the password by CreateUsers and SetUser. + + + + + + + + + Indicates support for WS Discovery resolve requests. + + + + + Indicates support for WS-Discovery Bye. + + + + + Indicates support for remote discovery. + + + + + Indicates support for system backup through MTOM. + + + + + Indicates support for retrieval of system logging through MTOM. + + + + + Indicates support for firmware upgrade through MTOM. + + + + + Indicates support for firmware upgrade through HTTP. + + + + + Indicates support for system backup through HTTP. + + + + + Indicates support for retrieval of system logging through HTTP. + + + + + Indicates support for retrieving support information through HTTP. + + + + + Indicates support for storage configuration interfaces. + + + + + Indicates maximum number of storage configurations supported. + + + + + If present signals support for geo location. The value signals the supported number of entries. + + + + + List of supported automatic GeoLocation adjustment supported by the device. Valid items are defined by tds:AutoGeoMode. + + + + + Enumerates the supported StorageTypes, see tds:StorageType. + + + + + + + + + + Automatic adjustment of the device location. + + + + + Automatic adjustment of the device orientation relative to the compass also called yaw. + + + + + Automatic adjustment of the deviation from the horizon also called pitch and roll. + + + + + + + + + Lists of commands supported by SendAuxiliaryCommand. + + + + + + + + + + + + + + + + The manufactor of the device. + + + + + The device model. + + + + + The firmware version in the device. + + + + + The serial number of the device. + + + + + The hardware ID of the device. + + + + + + + + + + + + Defines if the date and time is set via NTP or manually. + + + + + Automatically adjust Daylight savings if defined in TimeZone. + + + + + The time zone in POSIX 1003.1 format + + + + + Date and time in UTC. If time is obtained via NTP, UTCDateTime has no meaning + + + + + + + + + + + + + + + + + + + + + + + Contains information whether system date and time are set manually or by NTP, daylight savings is on or off, time zone in POSIX 1003.1 format and system date and time in UTC and also local system date and time. + + + + + + + + + + + + Specifies the factory default action type. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Contains the reboot message sent by the device. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Contains the arbitary device diagnostics information. + + + + + + + + + + + + Specifies the type of system log to get. + + + + + + + + + + + Contains the system log information. + + + + + + + + + + + + + + + + + + Contains a list of URI definining the device scopes. Scope parameters can be of two types: fixed and configurable. Fixed parameters can not be altered. + + + + + + + + + + + + Contains a list of scope parameters that will replace all existing configurable scope parameters. + + + + + + + + + + + + + + + + + + Contains a list of new configurable scope parameters that will be added to the existing configurable scope. + + + + + + + + + + + + + + + + + + Contains a list of URIs that should be removed from the device scope.
+ Note that the response message always will match the request or an error will be returned. The use of the response is for that reason deprecated. +
+
+
+
+
+
+ + + + + + Contains a list of URIs that has been removed from the device scope + + + + + + + + + + + + + + + + + + + Indicator of discovery mode: Discoverable, NonDiscoverable. + + + + + + + + + + + + + + Indicator of discovery mode: Discoverable, NonDiscoverable. + + + + + + + + + + + + + + + + + + + + + + + + + + Indicator of discovery mode: Discoverable, NonDiscoverable. + + + + + + + + + + + + + + Indicator of discovery mode: Discoverable, NonDiscoverable. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Contains a list of the onvif users and following information is included in each entry: username and user level. + + + + + + + + + + + + Creates new device users and corresponding credentials. Each user entry includes: username, password and user level. Either all users are created successfully or a fault message MUST be returned without creating any user. If trying to create several users with exactly the same username the request is rejected and no users are created. If password is missing, then fault message Too weak password is returned. + + + + + + + + + + + + + + + + + + Deletes users on an device and there may exist users that cannot be deleted to ensure access to the unit. Either all users are deleted successfully or a fault message MUST be returned and no users be deleted. If a username exists multiple times in the request, then a fault message is returned. + + + + + + + + + + + + + + + + + + Updates the credentials for one or several users on an device. Either all change requests are processed successfully or a fault message MUST be returned. If the request contains the same username multiple times, a fault message is returned. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + List of categories to retrieve capability information on. + + + + + + + + + + + + + Capability information. + + + + + + + + + + + + + + + + + + + Contains the hostname information. + + + + + + + + + + + + The hostname to set. + + + + + + + + + + + + + + + + + + True if the hostname shall be obtained via DHCP. + + + + + + + + + + + + Indicates whether or not a reboot is required after configuration updates. + + + + + + + + + + + + + + + + + + + + DNS information. + + + + + + + + + + + + + + Indicate if the DNS address is to be retrieved using DHCP. + + + + + + + DNS search domain. + + + + + + + DNS address(es) set manually. + + + + + + + + + + + + + + + + + + + + + + + + + + NTP information. + + + + + + + + + + + + + + Indicate if NTP address information is to be retrieved using DHCP. + + + + + + + Manual NTP settings. + + + + + + + + + + + + + + + + + + + + + + + + + + Dynamic DNS information. + + + + + + + + + + + + + + Dynamic DNS type. + + + + + + + DNS name. + + + + + + + DNS record time to live. + + + + + + + + + + + + + + + + + + + + + + + + + + List of network interfaces. + + + + + + + + + + + + + + Symbolic network interface name. + + + + + + + Network interface name. + + + + + + + + + + + + + Indicates whether or not a reboot is required after configuration updates. + If a device responds with RebootNeeded set to false, the device can be reached + via the new IP address without further action. A client should be aware that a device + may not be responsive for a short period of time until it signals availability at + the new address via the discovery Hello messages. + If a device responds with RebootNeeded set to true, it will be further available under + its previous IP address. The settings will only be activated when the device is + rebooted via the SystemReboot command. + + + + + + + + + + + + + + + + + + + Contains an array of defined protocols supported by the device. There are three protocols defined; HTTP, HTTPS and RTSP. The following parameters can be retrieved for each protocol: port and enable/disable. + + + + + + + + + + + + Configures one or more defined network protocols supported by the device. There are currently three protocols defined; HTTP, HTTPS and RTSP. The following parameters can be set for each protocol: port and enable/disable. + + + + + + + + + + + + + + + + + + + + + + + + Gets the default IPv4 and IPv6 gateway settings from the device. + + + + + + + + + + + + Sets IPv4 gateway address used as default setting. + + + + + Sets IPv6 gateway address used as default setting. + + + + + + + + + + + + + + + + + + + + + + + + Contains the zero-configuration. + + + + + + + + + + + + Unique identifier referencing the physical interface. + + + + + Specifies if the zero-configuration should be enabled or not. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Certificate id. + + + + + Identification of the entity associated with the public-key. + + + + + Certificate validity start date. + + + + + Certificate expiry start date. + + + + + + + + + + + + base64 encoded DER representation of certificate. + + + + + + + + + + + + + + + + + + + + Id and base64 encoded DER representation of all available certificates. + + + + + + + + + + + + + + + + + + + + Indicates if a certificate is used in an optional HTTPS configuration of the device. + + + + + + + + + + + + + + Indicates if a certificate is to be used in an optional HTTPS configuration of the device. + + + + + + + + + + + + + + + + + + + + List of ids of certificates to delete. + + + + + + + + + + + + + + + + + + + + List of ids of certificates to delete. + + + + + + + Relative Dinstinguished Name(RDN) CommonName(CN). + + + + + + + Optional base64 encoded DER attributes. + + + + + + + + + + + + + base64 encoded DER representation of certificate. + + + + + + + + + + + + + + Optional id and base64 encoded DER representation of certificate. + + + + + + + + + + + + + + + + + + + + + + + + + + Indicates whether or not client certificates are required by device. + + + + + + + + + + + + + + Indicates whether or not client certificates are required by device. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + User name + + + + + optional password + + + + + + + + + + + + + + + + + NFS protocol + + + + + CIFS protocol + + + + + CDMI protocol + + + + + FTP protocol + + + + + + + + + + local path + + + + + Storage server address + + + + + User credential for the storage server + + + + + + + + + + + + + StorageType lists the acceptable values for type attribute + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Returns information about services on the device. + + + + + Returns the capabilities of the device service. The result is returned in a typed answer. + + + + + This operation gets basic device information from the device. + + + + + This operation sets the device system date and time. The device shall support the + configuration of the daylight saving setting and of the manual system date and time (if + applicable) or indication of NTP time (if applicable) through the SetSystemDateAndTime + command.
+ If system time and date are set manually, the client shall include UTCDateTime in the request.
+ A TimeZone token which is not formed according to the rules of IEEE 1003.1 section 8.3 is considered as invalid timezone.
+ The DayLightSavings flag should be set to true to activate any DST settings of the TimeZone string. + Clear the DayLightSavings flag if the DST portion of the TimeZone settings should be ignored. +
+ + +
+ + This operation gets the device system date and time. The device shall support the return of + the daylight saving setting and of the manual system date and time (if applicable) or indication + of NTP time (if applicable) through the GetSystemDateAndTime command.
+ A device shall provide the UTCDateTime information.
+ + +
+ + This operation reloads the parameters on the device to their factory default values. + + + + + This operation upgrades a device firmware version. After a successful upgrade the response + message is sent before the device reboots. The device should support firmware upgrade + through the UpgradeSystemFirmware command. The exact format of the firmware data is + outside the scope of this standard. + + + + + This operation reboots the device. + + + + + This operation restores the system backup configuration files(s) previously retrieved from a + device. The device should support restore of backup configuration file(s) through the + RestoreSystem command. The exact format of the backup configuration file(s) is outside the + scope of this standard. If the command is supported, it shall accept backup files returned by + the GetSystemBackup command. + + + + + This operation is retrieves system backup configuration file(s) from a device. The device + should support return of back up configuration file(s) through the GetSystemBackup command. + The backup is returned with reference to a name and mime-type together with binary data. + The exact format of the backup configuration files is outside the scope of this standard. + + + + + This operation gets a system log from the device. The exact format of the system logs is outside the scope of this standard. + + + + + This operation gets arbitary device diagnostics information from the device. + + + + + This operation requests the scope parameters of a device. The scope parameters are used in + the device discovery to match a probe message, see Section 7. The Scope parameters are of + two different types:
    +
  • Fixed
  • +
  • Configurable
  • +
+ Fixed scope parameters are permanent device characteristics and cannot be removed through the device management interface. + The scope type is indicated in the scope list returned in the get scope parameters response. A device shall support + retrieval of discovery scope parameters through the GetScopes command. As some scope parameters are mandatory, + the device shall return a non-empty scope list in the response.
+ + +
+ + This operation sets the scope parameters of a device. The scope parameters are used in the + device discovery to match a probe message. + This operation replaces all existing configurable scope parameters (not fixed parameters). If + this shall be avoided, one should use the scope add command instead. The device shall + support configuration of discovery scope parameters through the SetScopes command. + + + + + This operation adds new configurable scope parameters to a device. The scope parameters + are used in the device discovery to match a probe message. The device shall + support addition of discovery scope parameters through the AddScopes command. + + + + + This operation deletes scope-configurable scope parameters from a device. The scope + parameters are used in the device discovery to match a probe message, see Section 7. The + device shall support deletion of discovery scope parameters through the RemoveScopes + command. + Table + + + + + This operation gets the discovery mode of a device. See Section 7.2 for the definition of the + different device discovery modes. The device shall support retrieval of the discovery mode + setting through the GetDiscoveryMode command. + + + + + This operation sets the discovery mode operation of a device. See Section 7.2 for the + definition of the different device discovery modes. The device shall support configuration of + the discovery mode setting through the SetDiscoveryMode command. + + + + + This operation gets the remote discovery mode of a device. See Section 7.4 for the definition + of remote discovery extensions. A device that supports remote discovery shall support + retrieval of the remote discovery mode setting through the GetRemoteDiscoveryMode + command. + + + + + This operation sets the remote discovery mode of operation of a device. See Section 7.4 for + the definition of remote discovery remote extensions. A device that supports remote discovery + shall support configuration of the discovery mode setting through the + SetRemoteDiscoveryMode command. + + + + + This operation gets the remote DP address or addresses from a device. If the device supports + remote discovery, as specified in Section 7.4, the device shall support retrieval of the remote + DP address(es) through the GetDPAddresses command. + + + + + This operation sets the remote DP address or addresses on a device. If the device supports + remote discovery, as specified in Section 7.4, the device shall support configuration of the + remote DP address(es) through the SetDPAddresses command. + + + + + A client can ask for the device service endpoint reference address property that can be used + to derive the password equivalent for remote user operation. The device shall support the + GetEndpointReference command returning the address property of the device service + endpoint reference. + + + + + This operation returns the configured remote user (if any). A device supporting remote user + handling shall support this operation. The user is only valid for the WS-UserToken profile or + as a HTTP / RTSP user.
+ The algorithm to use for deriving the password is described in section 5.12.2.1 of the core specification.
+ + +
+ + This operation sets the remote user. A device supporting remote user handling shall support this + operation. The user is only valid for the WS-UserToken profile or as a HTTP / RTSP user.
+ The password that is set shall always be the original (not derived) password.
+ If UseDerivedPassword is set password derivation shall be done by the device when connecting to a + remote device.The algorithm to use for deriving the password is described in section 5.12.2.1 of the core specification.
+ To remove the remote user SetRemoteUser should be called without the RemoteUser parameter.
+ + +
+ + This operation lists the registered users and corresponding credentials on a device. The + device shall support retrieval of registered device users and their credentials for the user + token through the GetUsers command. + + + + + This operation creates new device users and corresponding credentials on a device for authentication purposes. + The device shall support creation of device users and their credentials through the CreateUsers + command. Either all users are created successfully or a fault message shall be returned + without creating any user.
+ ONVIF compliant devices are recommended to support password length of at least 28 bytes, + as clients may follow the password derivation mechanism which results in 'password + equivalent' of length 28 bytes, as described in section 3.1.2 of the ONVIF security white paper.
+ + +
+ + This operation deletes users on a device. The device shall support deletion of device users and their credentials + through the DeleteUsers command. A device may have one or more fixed users + that cannot be deleted to ensure access to the unit. Either all users are deleted successfully or a + fault message shall be returned and no users be deleted. + + + + + This operation updates the settings for one or several users on a device for authentication purposes. + The device shall support update of device users and their credentials through the SetUser command. + Either all change requests are processed successfully or a fault message shall be returned and no change requests be processed. + + + + + It is possible for an endpoint to request a URL that can be used to retrieve the complete + schema and WSDL definitions of a device. The command gives in return a URL entry point + where all the necessary product specific WSDL and schema definitions can be retrieved. The + device shall provide a URL for WSDL and schema download through the GetWsdlUrl command. + + + + + Any endpoint can ask for the capabilities of a device using the capability exchange request + response operation. The device shall indicate all its ONVIF compliant capabilities through the + GetCapabilities command. + The capability list includes references to the addresses (XAddr) of the service implementing + the interface operations in the category. Apart from the addresses, the + capabilities only reflect optional functions. + + + + + This operation is used by an endpoint to get the hostname from a device. The device shall + return its hostname configurations through the GetHostname command. + + + + + This operation sets the hostname on a device. It shall be possible to set the device hostname + configurations through the SetHostname command.
+ A device shall accept string formated according to RFC 1123 section 2.1 or alternatively to RFC 952, + other string shall be considered as invalid strings. +
+ + +
+ + This operation controls whether the hostname is set manually or retrieved via DHCP. + + + + + This operation gets the DNS settings from a device. The device shall return its DNS + configurations through the GetDNS command. + + + + + This operation sets the DNS settings on a device. It shall be possible to set the device DNS + configurations through the SetDNS command. + + + + + This operation gets the NTP settings from a device. If the device supports NTP, it shall be + possible to get the NTP server settings through the GetNTP command. + + + + + This operation sets the NTP settings on a device. If the device supports NTP, it shall be + possible to set the NTP server settings through the SetNTP command.
+ A device shall accept string formated according to RFC 1123 section 2.1 or alternatively to RFC 952, + other string shall be considered as invalid strings.
+ Changes to the NTP server list will not affect the clock mode DateTimeType. Use SetSystemDateAndTime to activate NTP operation. +
+ + +
+ + This operation gets the dynamic DNS settings from a device. If the device supports dynamic + DNS as specified in [RFC 2136] and [RFC 4702], it shall be possible to get the type, name + and TTL through the GetDynamicDNS command. + + + + + This operation sets the dynamic DNS settings on a device. If the device supports dynamic + DNS as specified in [RFC 2136] and [RFC 4702], it shall be possible to set the type, name + and TTL through the SetDynamicDNS command. + + + + + This operation gets the network interface configuration from a device. The device shall + support return of network interface configuration settings as defined by the NetworkInterface + type through the GetNetworkInterfaces command. + + + + + This operation sets the network interface configuration on a device. The device shall support + network configuration of supported network interfaces through the SetNetworkInterfaces + command.
+ For interoperability with a client unaware of the IEEE 802.11 extension a device shall retain + its IEEE 802.11 configuration if the IEEE 802.11 configuration element isn’t present in the + request.
+ + +
+ + This operation gets defined network protocols from a device. The device shall support the + GetNetworkProtocols command returning configured network protocols. + + + + + This operation configures defined network protocols on a device. The device shall support + configuration of defined network protocols through the SetNetworkProtocols command. + + + + + This operation gets the default gateway settings from a device. The device shall support the + GetNetworkDefaultGateway command returning configured default gateway address(es). + + + + + This operation sets the default gateway settings on a device. The device shall support + configuration of default gateway through the SetNetworkDefaultGateway command. + + + + + This operation gets the zero-configuration from a device. If the device supports dynamic IP + configuration according to [RFC3927], it shall support the return of IPv4 zero configuration + address and status through the GetZeroConfiguration command.
+ Devices supporting zero configuration on more than one interface shall use the extension to list the additional interface settings.
+ + +
+ + This operation sets the zero-configuration. Use GetCapalities to get if zero-zero-configuration is supported or not. + + + + + This operation gets the IP address filter settings from a device. If the device supports device + access control based on IP filtering rules (denied or accepted ranges of IP addresses), the + device shall support the GetIPAddressFilter command. + + + + + This operation sets the IP address filter settings on a device. If the device supports device + access control based on IP filtering rules (denied or accepted ranges of IP addresses), the + device shall support configuration of IP filtering rules through the SetIPAddressFilter + command. + + + + + This operation adds an IP filter address to a device. If the device supports device access + control based on IP filtering rules (denied or accepted ranges of IP addresses), the device + shall support adding of IP filtering addresses through the AddIPAddressFilter command. + + + + + This operation deletes an IP filter address from a device. If the device supports device access + control based on IP filtering rules (denied or accepted ranges of IP addresses), the device + shall support deletion of IP filtering addresses through the RemoveIPAddressFilter command. + + + + + Access to different services and sub-sets of services should be subject to access control. The + WS-Security framework gives the prerequisite for end-point authentication. Authorization + decisions can then be taken using an access security policy. This standard does not mandate + any particular policy description format or security policy but this is up to the device + manufacturer or system provider to choose policy and policy description format of choice. + However, an access policy (in arbitrary format) can be requested using this command. If the + device supports access policy settings based on WS-Security authentication, then the device + shall support this command. + + + + + This command sets the device access security policy (for more details on the access security + policy see the Get command). If the device supports access policy settings + based on WS-Security authentication, then the device shall support this command. + + + + + This operation generates a private/public key pair and also can create a self-signed device + certificate as a result of key pair generation. The certificate is created using a suitable + onboard key pair generation mechanism.
+ If a device supports onboard key pair generation, the device that supports TLS shall support + this certificate creation command. And also, if a device supports onboard key pair generation, + the device that support IEEE 802.1X shall support this command for the purpose of key pair + generation. Certificates and key pairs are identified using certificate IDs. These IDs are either + chosen by the certificate generation requester or by the device (in case that no ID value is + given).
+ + +
+ + This operation gets all device server certificates (including self-signed) for the purpose of TLS + authentication and all device client certificates for the purpose of IEEE 802.1X authentication. + This command lists only the TLS server certificates and IEEE 802.1X client certificates for the + device (neither trusted CA certificates nor trusted root certificates). The certificates are + returned as binary data. A device that supports TLS shall support this command and the + certificates shall be encoded using ASN.1 [X.681], [X.682], [X.683] DER [X.690] encoding + rules. + + + + + This operation is specific to TLS functionality. This operation gets the status + (enabled/disabled) of the device TLS server certificates. A device that supports TLS shall + support this command. + + + + + This operation is specific to TLS functionality. This operation sets the status (enable/disable) + of the device TLS server certificates. A device that supports TLS shall support this command. + Typically only one device server certificate is allowed to be enabled at a time. + + + + + This operation deletes a certificate or multiple certificates. The device MAY also delete a + private/public key pair which is coupled with the certificate to be deleted. The device that + support either TLS or IEEE 802.1X shall support the deletion of a certificate or multiple + certificates through this command. Either all certificates are deleted successfully or a fault + message shall be returned without deleting any certificate. + + + + + This operation requests a PKCS #10 certificate signature request from the device. The + returned information field shall be either formatted exactly as specified in [PKCS#10] or PEM + encoded [PKCS#10] format. In order for this command to work, the device must already have + a private/public key pair. This key pair should be referred by CertificateID as specified in the + input parameter description. This CertificateID refers to the key pair generated using + CreateCertificate command.
+ A device that support onboard key pair generation that supports either TLS or IEEE 802.1X + using client certificate shall support this command.
+ + +
+ + TLS server certificate(s) or IEEE 802.1X client certificate(s) created using the PKCS#10 + certificate request command can be loaded into the device using this command (see Section + 8.4.13). The certificate ID in the request shall be present. The device may sort the received + certificate(s) based on the public key and subject information in the certificate(s). + The certificate ID in the request will be the ID value the client wish to have. The device is + supposed to scan the generated key pairs present in the device to identify which is the + correspondent key pair with the loaded certificate and then make the link between the + certificate and the key pair.
+ A device that supports onboard key pair generation that support either TLS or IEEE 802.1X + shall support this command.
+ The certificates shall be encoded using ASN.1 [X.681], [X.682], [X.683] DER [X.690] encoding + rules.
+ This command is applicable to any device type, although the parameter name is called for + historical reasons NVTCertificate.
+ + +
+ + This operation is specific to TLS functionality. This operation gets the status + (enabled/disabled) of the device TLS client authentication. A device that supports TLS shall + support this command. + + + + + This operation is specific to TLS functionality. This operation sets the status + (enabled/disabled) of the device TLS client authentication. A device that supports TLS shall + support this command. + + + + + This operation gets a list of all available relay outputs and their settings.
+ This method has been depricated with version 2.0. Refer to the DeviceIO service.
+ + +
+ + This operation sets the settings of a relay output. +
This method has been depricated with version 2.0. Refer to the DeviceIO service.
+ + +
+ + This operation sets the state of a relay output. +
This method has been depricated with version 2.0. Refer to the DeviceIO service.
+ + +
+ + Manage auxiliary commands supported by a device, such as controlling an Infrared (IR) lamp, + a heater or a wiper or a thermometer that is connected to the device.
+ The supported commands can be retrieved via the AuxiliaryCommands capability.
+ Although the name of the auxiliary commands can be freely defined, commands starting with the prefix tt: are + reserved to define frequently used commands and these reserved commands shall all share the "tt:command|parameter" syntax. +
    +
  • tt:Wiper|On – Request to start the wiper.
  • +
  • tt:Wiper|Off – Request to stop the wiper.
  • +
  • tt:Washer|On – Request to start the washer.
  • +
  • tt:Washer|Off – Request to stop the washer.
  • +
  • tt:WashingProcedure|On – Request to start the washing procedure.
  • +
  • tt: WashingProcedure |Off – Request to stop the washing procedure.
  • +
  • tt:IRLamp|On – Request to turn ON an IR illuminator attached to the unit.
  • +
  • tt:IRLamp|Off – Request to turn OFF an IR illuminator attached to the unit.
  • +
  • tt:IRLamp|Auto – Request to configure an IR illuminator attached to the unit so that it automatically turns ON and OFF.
  • +
+ A device that indicates auxiliary service capability shall support this command.
+ + +
+ + CA certificates will be loaded into a device and be used for the sake of following two cases. + The one is for the purpose of TLS client authentication in TLS server function. The other one + is for the purpose of Authentication Server authentication in IEEE 802.1X function. This + operation gets all CA certificates loaded into a device. A device that supports either TLS client + authentication or IEEE 802.1X shall support this command and the returned certificates shall + be encoded using ASN.1 [X.681], [X.682], [X.683] DER [X.690] encoding rules. + + + + + There might be some cases that a Certificate Authority or some other equivalent creates a + certificate without having PKCS#10 certificate signing request. In such cases, the certificate + will be bundled in conjunction with its private key. This command will be used for such use + case scenarios. The certificate ID in the request is optionally set to the ID value the client + wish to have. If the certificate ID is not specified in the request, device can choose the ID + accordingly.
+ This operation imports a private/public key pair into the device. + The certificates shall be encoded using ASN.1 [X.681], [X.682], [X.683] DER [X.690] encoding + rules.
+ A device that does not support onboard key pair generation and support either TLS or IEEE + 802.1X using client certificate shall support this command. A device that support onboard key + pair generation MAY support this command. The security policy of a device that supports this + operation should make sure that the private key is sufficiently protected.
+ + +
+ + This operation requests the information of a certificate specified by certificate ID. The device + should respond with its “Issuer DN”, “Subject DN”, “Key usage”, "Extended key usage”, “Key + Length”, “Version”, “Serial Number”, “Signature Algorithm” and “Validity” data as the + information of the certificate, as long as the device can retrieve such information from the + specified certificate.
+ A device that supports either TLS or IEEE 802.1X should support this command.
+ + +
+ + This command is used when it is necessary to load trusted CA certificates or trusted root + certificates for the purpose of verification for its counterpart i.e. client certificate verification in + TLS function or server certificate verification in IEEE 802.1X function.
+ A device that support either TLS or IEEE 802.1X shall support this command. As for the + supported certificate format, either DER format or PEM format is possible to be used. But a + device that support this command shall support at least DER format as supported format type. + The device may sort the received certificate(s) based on the public key and subject + information in the certificate(s). Either all CA certificates are loaded successfully or a fault + message shall be returned without loading any CA certificate.
+ + +
+ + This operation newly creates IEEE 802.1X configuration parameter set of the device. The + device shall support this command if it supports IEEE 802.1X. If the device receives this + request with already existing configuration token (Dot1XConfigurationToken) specification, the + device should respond with 'ter:ReferenceToken ' error to indicate there is some configuration + conflict. + + + + + While the CreateDot1XConfiguration command is trying to create a new configuration + parameter set, this operation modifies existing IEEE 802.1X configuration parameter set of + the device. A device that support IEEE 802.1X shall support this command. + + + + + This operation gets one IEEE 802.1X configuration parameter set from the device by + specifying the configuration token (Dot1XConfigurationToken).
+ A device that supports IEEE 802.1X shall support this command. + Regardless of whether the 802.1X method in the retrieved configuration has a password or + not, the device shall not include the Password element in the response.
+ + +
+ + This operation gets all the existing IEEE 802.1X configuration parameter sets from the device. + The device shall respond with all the IEEE 802.1X configurations so that the client can get to + know how many IEEE 802.1X configurations are existing and how they are configured.
+ A device that support IEEE 802.1X shall support this command.
+ Regardless of whether the 802.1X method in the retrieved configuration has a password or + not, the device shall not include the Password element in the response.
+ + +
+ + This operation deletes an IEEE 802.1X configuration parameter set from the device. Which + configuration should be deleted is specified by the 'Dot1XConfigurationToken' in the request. + A device that support IEEE 802.1X shall support this command. + + + + + This operation returns the IEEE802.11 capabilities. The device shall support + this operation. + + + + + This operation returns the status of a wireless network interface. The device shall support this + command. + + + + + This operation returns a lists of the wireless networks in range of the device. A device should + support this operation. + + + + + This operation is used to retrieve URIs from which system information may be downloaded + using HTTP. URIs may be returned for the following system information:
+ System Logs. Multiple system logs may be returned, of different types. The exact format of + the system logs is outside the scope of this specification.
+ Support Information. This consists of arbitrary device diagnostics information from a device. + The exact format of the diagnostic information is outside the scope of this specification.
+ System Backup. The received file is a backup file that can be used to restore the current + device configuration at a later date. The exact format of the backup configuration file is + outside the scope of this specification.
+ If the device allows retrieval of system logs, support information or system backup data, it + should make them available via HTTP GET. If it does, it shall support the GetSystemUris + command.
+ + +
+ + This operation initiates a firmware upgrade using the HTTP POST mechanism. The response + to the command includes an HTTP URL to which the upgrade file may be uploaded. The + actual upgrade takes place as soon as the HTTP POST operation has completed. The device + should support firmware upgrade through the StartFirmwareUpgrade command. The exact + format of the firmware data is outside the scope of this specification. + Firmware upgrade over HTTP may be achieved using the following steps:
    +
  1. Client calls StartFirmwareUpgrade.
  2. +
  3. Server responds with upload URI and optional delay value.
  4. +
  5. Client waits for delay duration if specified by server.
  6. +
  7. Client transmits the firmware image to the upload URI using HTTP POST.
  8. +
  9. Server reprograms itself using the uploaded image, then reboots.
  10. +
+ If the firmware upgrade fails because the upgrade file was invalid, the HTTP POST response + shall be “415 Unsupported Media Type”. If the firmware upgrade fails due to an error at the + device, the HTTP POST response shall be “500 Internal Server Error”.
+ The value of the Content-Type header in the HTTP POST request shall be “application/octetstream”.
+ + +
+ + This operation initiates a system restore from backed up configuration data using the HTTP + POST mechanism. The response to the command includes an HTTP URL to which the backup + file may be uploaded. The actual restore takes place as soon as the HTTP POST operation + has completed. Devices should support system restore through the StartSystemRestore + command. The exact format of the backup configuration data is outside the scope of this + specification.
+ System restore over HTTP may be achieved using the following steps:
    +
  1. Client calls StartSystemRestore.
  2. +
  3. Server responds with upload URI.
  4. +
  5. Client transmits the configuration data to the upload URI using HTTP POST.
  6. +
  7. Server applies the uploaded configuration, then reboots if necessary.
  8. +
+ If the system restore fails because the uploaded file was invalid, the HTTP POST response + shall be “415 Unsupported Media Type”. If the system restore fails due to an error at the + device, the HTTP POST response shall be “500 Internal Server Error”.
+ The value of the Content-Type header in the HTTP POST request shall be “application/octetstream”.
+ + +
+ + + + This operation lists all existing storage configurations for the device. + + + + + + + This operation creates a new storage configuration. + The configuration data shall be created in the device and shall be persistent (remain after reboot). + + + + + + + This operation retrieves the Storage configuration associated with the given storage configuration token. + + + + + + + This operation modifies an existing Storage configuration. + + + + + + + This operation deletes the given storage configuration and configuration change shall always be persistent. + + + + + + + + This operation lists all existing geo location configurations for the device. + + + + + + + This operation allows to modify one or more geo configuration entries. + + + + + + + This operation deletes the given geo location entries. + + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
diff --git a/wsdl/display.wsdl b/wsdl/display.wsdl new file mode 100644 index 0000000..6fab199 --- /dev/null +++ b/wsdl/display.wsdl @@ -0,0 +1,517 @@ + + + + + + + + + + + + + + + + + + + The capabilities for the display service is returned in the Capabilities element. + + + + + + + + + + + Indication that the SetLayout command supports only predefined layouts. + + + + + + + + + + Token of the Video Output whose Layout is requested + + + + + + + + + + + + + Current layout of the video output. + + + + + + + + + + + + + Token of the Video Output whose Layout shall be changed. + + + + + Layout to be set + + + + + + + + + + + + + + + + + + + + + Token of the Video Output whose options are requested + + + + + + + + + + + + + The LayoutOptions describe the fixed and predefined layouts of a device. If the device does +not offer fixed layouts and allows setting the layout free this element is empty. + + + + + decoding and encoding capabilities of the device + + + + + + + + + + + + + Reference Token of the Video Output whose Pane Configurations are requested + + + + + + + + + + + + + Contains a list of defined Panes of the specified VideoOutput. Each VideoOutput has at least one PaneConfiguration. + + + + + + + + + + + + Reference Token of the Video Output the requested pane belongs to + + + + + Reference Token of the Pane whose Configuration is requested + + + + + + + + + + + + + returns the configuration of the requested pane. + + + + + + + + + + + + + Token of the video output whose panes to set. + + + + + Pane Configuration to be set. + + + + + + + + + + + + + + + + + + + + Token of the video output whose panes to set. + + + + + Pane Configuration to be set. + + + + + + + + + + + + + + + + + + + + + Token of the video output where the pane shall be created. + + + + + Configuration of the pane to be created. + + + + + + + + + + + + + Token of the new pane configuration. + + + + + + + + + + + + + Token of the video output where the pane shall be deleted. + + + + + Token of the pane to be deleted. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Returns the capabilities of the display service. The result is returned in a typed answer. + + + + + Return the current layout of a video output. The Layout assigns a pane configuration to a certain area of the display. The layout settings +directly affect a specific video output. The layout consists of a list of PaneConfigurations and +their associated display areas. + + + + + Change the layout of a display (e.g. change from +single view to split screen view).The Layout assigns a pane configuration to a certain area of the display. The layout settings +directly affect a specific video output. The layout consists of a list of PaneConfigurations and +their associated display areas.
+A device implementation shall be tolerant against rounding errors when matching a layout against its fixed set of layouts by accepting differences of at least one percent. +
+ + +
+ + The Display Options contain the supported layouts (LayoutOptions) and the decoding and +encoding capabilities (CodingCapabilities) of the device. The GetDisplayOptions command +returns both, Layout and Coding Capabilities, of a VideoOutput. + + + + + List all currently defined panes of a device for a specified video output +(regardless if this pane is visible at a moment). A Pane is a display area on the monitor that is attached to a video output. A pane has a +PaneConfiguration that describes which entities are associated with the pane. A client has to configure the pane according to the connection to be established by setting the +AudioOutput and/or AudioSourceToken. If a Token is not set, the corresponding session will +not be established. + + + + + Retrieve the pane configuration for a pane token. + + + + + Modify one or more configurations of the specified video output. + This method will only modify the provided configurations and leave the others unchanged. + Use DeletePaneConfiguration to remove pane configurations. + + + + + This command changes the configuration of the specified pane (tbd) + + + + + Create a new pane configuration describing the streaming and coding settings for a display area.
+ This optional method is only supported by devices that signal support of dynamic pane creation via their capabilities.
+ The content of the Token field may be ignored by the device. +
+ + +
+ + Delete a pane configuration. A service must respond with an error if the pane configuration + is in use by the current layout.
+ This optional method is only supported by devices that signal support of dynamic pane creation via their capabilities. +
+ + +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
diff --git a/wsdl/doorcontrol.wsdl b/wsdl/doorcontrol.wsdl new file mode 100644 index 0000000..6ed2bb4 --- /dev/null +++ b/wsdl/doorcontrol.wsdl @@ -0,0 +1,1064 @@ + + + + + + + + + + + +ServiceCapabilities structure reflects optional functionality of a service. +The information is static and does not change during device operation. +The following capabilities are available: + + + + + + + The maximum number of entries returned by a single Get<Entity>List or Get<Entity> request. The device shall never return more than this number of entities in a single response. + + + + + + + +Used as extension base. + + + + + + + A user readable name. It shall be up to 64 characters. + + + A user readable description. It shall be up to 1024 characters. + + + + + + + + + +The DoorInfo type represents the Door as a physical object. +The structure contains information and capabilities of a specific door instance. +An ONVIF compliant device shall provide the following fields for each Door instance: + + + + + + + The capabilities of the Door. + + + + + + + + + + + +DoorCapabilities reflect optional functionality of a particular physical entity. +Different door instances may have different set of capabilities. +This information may change during device operation, e.g. if hardware settings are changed. +The following capabilities are available: + + + + + + + Indicates whether or not this Door instance supports AccessDoor command to perform momentary access. + + + Indicates that this Door instance supports overriding configured timing in the AccessDoor command. + + + Indicates that this Door instance supports LockDoor command to lock the door. + + + Indicates that this Door instance supports UnlockDoor command to unlock the door. + + + Indicates that this Door instance supports BlockDoor command to block the door. + + + Indicates that this Door instance supports DoubleLockDoor command to lock multiple locks on the door. + + + Indicates that this Door instance supports LockDown (and LockDownRelease) commands to lock the door and put it in LockedDown mode. + + + Indicates that this Door instance supports LockOpen (and LockOpenRelease) commands to unlock the door and put it in LockedOpen mode. + + + Indicates that this Door instance has a DoorMonitor and supports the DoorPhysicalState event. + + + Indicates that this Door instance has a LockMonitor and supports the LockPhysicalState event. + + + Indicates that this Door instance has a DoubleLockMonitor and supports the DoubleLockPhysicalState event. + + + Indicates that this Door instance supports door alarm and the DoorAlarm event. + + + Indicates that this Door instance has a Tamper detector and supports the DoorTamper event. + + + Indicates that this Door instance supports door fault and the DoorFault event. + + + + + + + +The DoorState structure contains current aggregate runtime status of Door. + + + + + Physical state of Door; it is of type DoorPhysicalState. A device that signals support for DoorMonitor capability for a particular door instance shall provide this field. + + + Physical state of the Lock; it is of type LockPhysicalState. A device that signals support for LockMonitor capability for a particular door instance shall provide this field. + + + Physical state of the DoubleLock; it is of type LockPhysicalState. A device that signals support for DoubleLockMonitor capability for a particular door instance shall provide this field. + + + Alarm state of the door; it is of type DoorAlarmState. A device that signals support for Alarm capability for a particular door instance shall provide this field. + + + Tampering state of the door; it is of type DoorTamper. A device that signals support for Tamper capability for a particular door instance shall provide this field. + + + Fault information for door; it is of type DoorFault. A device that signals support for Fault capability for a particular door instance shall provide this field. + + + The logical operating mode of the door; it is of type DoorMode. An ONVIF compatible device shall report current operating mode in this field. + + + + + + + + + +The physical state of a Door. + + + + + Value is currently unknown (possibly due to initialization or monitors not giving a conclusive result). + + + Door is open. + + + Door is closed. + + + Door monitor fault is detected. + + + + + + + +The physical state of a Lock (including Double Lock). + + + + + Value is currently not known. + + + Lock is activated. + + + Lock is not activated. + + + Lock fault is detected. + + + + + + + +Describes the state of a Door with regard to alarms. + + + + + No alarm. + + + Door is forced open. + + + Door is held open too long. + + + + + + + +Tampering information for a Door. + + + + + Optional field; Details describing tampering state change (e.g., reason, place and time).
NOTE: All fields (including this one) which are designed to give end-user prompts can be localized to the customers's native language.
+
+ + State of the tamper detector; it is of type DoorTamperState. + + +
+ +
+ + + + +Describes the state of a Tamper detector. + + + + + Value is currently not known. + + + No tampering is detected. + + + Tampering is detected. + + + + + + + +Fault information for a Door. +This can be extended with optional attributes in the future. + + + + Optional reason for fault. + + + Overall fault state for the door; it is of type DoorFaultState. If there are any faults, the value shall be: FaultDetected. Details of the detected fault shall be found in the Reason field, and/or the various DoorState fields and/or in extensions to this structure. + + + + + + + + + +Describes the state of a Door fault. + + + + + Fault state is unknown. + + + No fault is detected. + + + Fault is detected. + + + + + + + +DoorMode parameters describe current Door mode from a logical perspective. + + + + + The Door is in an Unknown state. + + + The Door is in a Locked state. In this mode the device shall provide momentary access using the AccessDoor method if supported by the Door instance. + + + The Door is in an Unlocked (Permanent Access) state. Alarms related to door timing operations such as open too long or forced are masked in this mode. + + + The Door is in an Accessed state (momentary/temporary access). Alarms related to timing operations such as "door forced" are masked in this mode. + + + The Door is in a Blocked state (Door is locked, and AccessDoor requests are ignored, i.e., it is not possible for door to go to Accessed state). + + + The Door is in a LockedDown state (Door is locked) until released using the LockDownReleaseDoor command. AccessDoor, LockDoor, UnlockDoor, BlockDoor and LockOpenDoor requests are ignored, i.e., it is not possible for door to go to Accessed, Locked, Unlocked, Blocked or LockedOpen state. + + + The Door is in a LockedOpen state (Door is unlocked) until released using the LockOpenReleaseDoor command. AccessDoor, LockDoor, UnlockDoor, BlockDoor and LockDownDoor requests are ignored, i.e., it is not possible for door to go to Accessed, Locked, Unlocked, Blocked or LockedDown state. + + + The Door is in a Double Locked state - for doors with multiple locks. If the door does not have any DoubleLock, this shall be treated as a normal Locked mode. When changing to an Unlocked mode from the DoubleLocked mode, the door may first go to Locked state before unlocking. + + + + + + + +Extension for the AccessDoor command. + + + + + + + + + + + + + + + + + + + + + The capability response message contains the requested DoorControl service capabilities using a hierarchical XML capability structure. + + + + + + + + + + Maximum number of entries to return. If not specified, or higher than what the device supports, the number of items shall be determined by the device. + + + Start returning entries from this start reference. If not specified, entries shall start from the beginning of the dataset. + + + + + + + + + + StartReference to use in next call to get the following items. If absent, no more items to get. + + + List of DoorInfo items. + + + + + + + + + + Tokens of DoorInfo items to get. + + + + + + + + + + List of DoorInfo items. + + + + + + + + + + Token of the Door instance to get the state for. + + + + + + + + + + The state of the door. + + + + + + + + + + Token of the Door instance to control. + + + Optional - Indicates that the configured extended time should be used. + + + Optional - overrides AccessTime if specified. + + + Optional - overrides OpenTooLongTime if specified (DOTL). + + + Optional - overrides PreAlarmTime if specified. + + + Future extension. + + + + + + + + + + + + + + + + + Token of the Door instance to control. + + + + + + + + + + + + + + + + + Token of the Door instance to control. + + + + + + + + + + + + + + + + + Token of the Door instance to control. + + + + + + + + + + + + + + + + + Token of the Door instance to control. + + + + + + + + + + + + + + + + + Token of the Door instance to control. + + + + + + + + + + + + + + + + + Token of the Door instance to control. + + + + + + + + + + + + + + + + + Token of the Door instance to control. + + + + + + + + + + + + + + + + + Token of the Door instance to control. + + + + + + + + + + + + +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +This operation returns the capabilities of the service. +</p><p> +An ONVIF compliant device which provides the Door Control service shall implement this method. + + + + + + +This operation requests a list of all DoorInfo items provided by the device. +An ONVIF compliant device that provides Door Control service shall implement +this method. +</p><p> + +A call to this method shall return a StartReference when not all data is returned and more data is available. +The reference shall be valid for retrieving the next set of data. +Please refer section 4.8.3 of Access Control Service Specification for more details. +The number of items returned shall not be greater than Limit parameter. +</p><p> + + + + + + +This operation requests a list of DoorInfo items matching the given tokens. +An ONVIF-compliant device that provides Door Control service shall implement this method. +</p><p> + +The device shall ignore tokens it cannot resolve and may return an empty list +if there are no items matching specified tokens. +If the number of requested items is greater than MaxLimit, a TooManyItems fault shall be returned. +</p><p> + + + + + + +This operation requests the state of a Door specified by the Token. +</p><p> +A device implementing the Door Control service shall be capable of reporting +the status of a door using a DoorState structure available from the +GetDoorState command. + + + + + + +This operation allows momentarily accessing a Door. +It invokes the functionality typically used when a card holder presents a +card to a card reader at the door and is granted access. +</p><p> +The DoorMode shall change to Accessed state. Please refer to Accessed mode in section [DoorMode] for more details. +</p><p> +The Door shall remain accessible for the defined time. When the time span +elapses, the DoorMode shall change back to its previous state. +</p><p> +If the request cannot be fulfilled, a Failure fault shall be returned. +</p><p> +Please refer to section [DoorMode] for details about Door Modes restrictions. +</p><p> +A device that signals support for Access capability for a particular Door +instance shall implement this method. A device that signals support for +AccessTimingOverride capability for a particular Door instance shall also +provide optional timing parameters (AccessTime, OpenTooLongTime and +PreAlarmTime) when performing AccessDoor command. +</p><p> +The device shall take the best effort approach for parameters not supported, +it must fallback to preconfigured time or limit the time to the closest +supported time if the specified time is out of range. + + + + + + +This operation allows locking a Door. +The DoorMode shall change to Locked state. +Please refer to Locked mode in section [DoorMode] for more details. +</p><p> +A device that signals support for Lock capability for a particular Door +instance shall implement this method. +</p><p> +If the request cannot be fulfilled, a Failure fault shall be returned. +Please refer to section [DoorMode] for more details about Door Modes restrictions. + + + + + + +This operation allows unlocking a Door. +The DoorMode shall change to Unlocked state. +Please refer to Unlocked mode in section [DoorMode] for more details. +</p><p> +A device that signals support for Unlock capability for a particular Door +instance shall implement this method. +</p><p> +If the request cannot be fulfilled, a Failure fault shall be returned. +Please refer to section [DoorMode] for more details about Door Modes restrictions. + + + + + + +This operation allows blocking a Door and preventing momentary access (AccessDoor command). +The DoorMode shall change to Blocked state. +Please refer to Blocked mode in section [DoorMode] for more details. +</p><p> +A device that signals support for Block capability for a particular Door +instance shall implement this method. +</p><p> +If the request cannot be fulfilled, a Failure fault shall be returned. +Please refer to section [DoorMode] for more details about Door Modes restrictions. + + + + + + +This operation allows locking and preventing other actions until a LockDownRelease command is invoked. +The DoorMode shall change to LockedDown state. +Please refer to LockedDown mode in section [DoorMode] for more details. +</p><p> +The device shall ignore other door control commands until a LockDownRelease command is performed. +</p><p> +A device that signals support for LockDown capability for a particular Door +instance shall implement this method. +</p><p> +If a device supports DoubleLock capability for a particular Door instance, +that operation may be engaged as well. +</p><p> +If the request cannot be fulfilled, a Failure fault shall be returned. +Please refer to section [DoorMode] for more details about Door Modes restrictions. + + + + + + +This operation allows releasing the LockedDown state of a Door. +The DoorMode shall change back to its previous/next state. +It is not defined what the previous/next state shall be, but typically - Locked. +</p><p> +This method shall only succeed if the current DoorMode is LockedDown. + + + + + + +This operation allows unlocking a Door and preventing other actions until LockOpenRelease method is invoked. +The DoorMode shall change to LockedOpen state. +Please refer to LockedOpen mode in section [DoorMode] for more details. +</p><p> +The device shall ignore other door control commands until a LockOpenRelease command is performed. +</p><p> +A device that signals support for LockOpen capability for a particular Door instance shall implement this method. +</p><p> +If the request cannot be fulfilled, a Failure fault shall be returned. +Please refer to section [DoorMode] for more details about Door Modes restrictions. + + + + + + +This operation allows releasing the LockedOpen state of a Door. +The DoorMode shall change state from the LockedOpen state back to its previous/next state. +It is not defined what the previous/next state shall be, but typically - Unlocked. +</p><p> +This method shall only succeed if the current DoorMode is LockedOpen. + + + + + + +This operation is used for securely locking a Door. +A call to this method shall change DoorMode state to DoubleLocked. +Please refer to DoubleLocked mode in section [DoorMode] for more details. +</p><p> +A device that signals support for DoubleLock capability for a particular +Door instance shall implement this method. Otherwise this method can be +performed as a standard Lock operation (see [LockDoor command]). +</p><p> +If the door has an extra lock that shall be locked as well. +</p><p> +If the request cannot be fulfilled, a Failure fault shall be returned. + + + + + + + + +Copyright (c) 2010-2013 by ONVIF: Open Network Video Interface Forum. All rights reserved.
+ + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
diff --git a/wsdl/event.wsdl b/wsdl/event.wsdl new file mode 100644 index 0000000..9690def --- /dev/null +++ b/wsdl/event.wsdl @@ -0,0 +1,741 @@ + + + + + + + + + + + + + + + + + + + + + + + The capabilities for the event service is returned in the Capabilities element. + + + + + + + + + + + + + Indicates that the WS Subscription policy is supported. + + + + + Indicates that the WS Pull Point is supported. + + + + + Indicates that the WS Pausable Subscription Manager Interface is supported. + + + + + Maximum number of supported notification producers as defined by WS-BaseNotification. + + + + + Maximum supported number of notification pull points. + + + + + Indication if the device supports persistent notification storage. + + + + + + + + + + + + Optional XPATH expression to select specific topics. + + + + + Initial termination time. + + + + + Refer to Web Services Base Notification 1.3 (WS-BaseNotification). + + + + + + + + + + + + + + + + + Endpoint reference of the subscription to be used for pulling the messages. + + + + + Current time of the server for synchronization purposes. + + + + + Date time when the PullPoint will be shut down without further pull requests. + + + + + + + + + + + + + Maximum time to block until this method returns. + + + + + Upper limit for the number of messages to return at once. A server implementation may decide to return less messages. + + + + + + + + + + + + The date and time when the messages have been delivered by the web server to the client. + + + + + Date time when the PullPoint will be shut down without further pull requests. + + + + + List of messages. This list shall be empty in case of a timeout. + + + + + + + + + + + Maximum timeout supported by the device. + + + + + Maximum message limit supported by the device. + + + + + + + + + + + The date and time to match against stored messages. + Reverse the pull direction of PullMessages. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + List of topic namespaces supported. + + + + + True when topicset is fixed for all times. + + + + + Set of topics supported. + + + + + + Defines the XPath expression syntax supported for matching topic expressions.
+ The following TopicExpressionDialects are mandatory for an ONVIF compliant device : +
    +
  • http://docs.oasis-open.org/wsn/t-1/TopicExpression/Concrete
  • +
  • http://www.onvif.org/ver10/tev/topicExpression/ConcreteSet.
  • +
+
+
+
+ + + + Defines the XPath function set supported for message content filtering.
+ The following MessageContentFilterDialects should be returned if a device supports the message content filtering: +
    +
  • http://www.onvif.org/ver10/tev/messageContentFilter/ItemFilter.
  • +
+ A device that does not support any MessageContentFilterDialect returns a single empty url. +
+
+
+ + + + Optional ProducerPropertiesDialects. Refer to Web Services Base Notification 1.3 (WS-BaseNotification) for advanced filtering. + + + + + + The Message Content Description Language allows referencing + of vendor-specific types. In order to ease the integration of such types into a client application, + the GetEventPropertiesResponse shall list all URI locations to schema files whose types are + used in the description of notifications, with MessageContentSchemaLocation elements.
+ This list shall at least contain the URI of the ONVIF schema file.
+
+
+ + + + + +
+
+
+ + + Optional ONVIF defined pull point subscription policies + + + + + The pullpoint should not provide Initialized nor Deleted events for Properties. + + + + +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Returns the capabilities of the event service. The result is returned in a typed answer. + + + + + This method returns a PullPointSubscription that can be polled using PullMessages. + This message contains the same elements as the SubscriptionRequest of the WS-BaseNotification without the ConsumerReference.
+ If no Filter is specified the pullpoint notifies all occurring events to the client.
+ This method is mandatory.
+ + + + + + + + + + + + + + +
+ + The WS-BaseNotification specification defines a set of OPTIONAL WS-ResouceProperties. + This specification does not require the implementation of the WS-ResourceProperty interface. + Instead, the subsequent direct interface shall be implemented by an ONVIF compliant device + in order to provide information about the FilterDialects, Schema files and topics supported by + the device. + + + +
+ + + + This method pulls one or more messages from a PullPoint. + The device shall provide the following PullMessages command for all SubscriptionManager + endpoints returned by the CreatePullPointSubscription command. This method shall not wait until + the requested number of messages is available but return as soon as at least one message is available.
+ The command shall at least support a Timeout of one minute. In case a device supports retrieval of less messages + than requested it shall return these without generating a fault.
+ + + +
+ + + This method readjusts the pull pointer into the past. + A device supporting persistent notification storage shall provide the + following Seek command for all SubscriptionManager endpoints returned by + the CreatePullPointSubscription command. The optional Reverse argument can + be used to reverse the pull direction of the PullMessages command.
+ The UtcTime argument will be matched against the UtcTime attribute on a + NotificationMessage. +
+ + +
+ + Properties inform a client about property creation, changes and + deletion in a uniform way. When a client wants to synchronize its properties with the + properties of the device, it can request a synchronization point which repeats the current + status of all properties to which a client has subscribed. The PropertyOperation of all + produced notifications is set to “Initialized”. The Synchronization Point is + requested directly from the SubscriptionManager which was returned in either the + SubscriptionResponse or in the CreatePullPointSubscriptionResponse. The property update is + transmitted via the notification transportation of the notification interface. This method is mandatory. + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
diff --git a/wsdl/imaging.wsdl b/wsdl/imaging.wsdl new file mode 100644 index 0000000..c9531a6 --- /dev/null +++ b/wsdl/imaging.wsdl @@ -0,0 +1,597 @@ + + + + + + + + + + + + + + + + + + + + The capabilities for the imaging service is returned in the Capabilities element. + + + + + + + + + + + + + Indicates whether or not Image Stabilization feature is supported. + + + + + Indicates whether or not Imaging Presets feature is supported. + + + + + + + + + + + + + Reference token to the VideoSource for which the ImagingSettings. + + + + + + + + + + + + + ImagingSettings for the VideoSource that was requested. + + + + + + + + + + + + + + + + + + + + + + + + + + + Reference token to the VideoSource for which the imaging parameter options are requested. + + + + + + + + + + + + + Valid ranges for the imaging parameters that are categorized as device specific. + + + + + + + + + + + + + + Reference to the VideoSource for the requested move (focus) operation. + + + + + + + Content of the requested move (focus) operation. + + + + + + + + + + + + + + + + + + + Reference token to the VideoSource for the requested move options. + + + + + + + + + + + + + Valid ranges for the focus lens move options. + + + + + + + + + + + + + + Reference token to the VideoSource where the focus movement should be stopped. + + + + + + + + + + + + + + + + + + + + Reference token to the VideoSource where the imaging status should be requested. + + + + + + + + + + + + + Requested imaging status. + + + + + + + + + + Describes standard Imaging Preset types, used to facilitate Multi-language support and client display. + "Custom" Type shall be used when Imaging Preset Name does not match any of the types included in the standard classification. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Type describing the Imaging Preset settings. + + + + + Human readable name of the Imaging Preset. + + + + + + Unique identifier of this Imaging Preset. + + + + + Indicates Imaging Preset Type. Use timg:ImagingPresetType. + Used for multi-language support and display. + + + + + + + + + + + + A reference to the VideoSource where the operation should take place. + + + + + + + + + + + + + List of Imaging Presets which are available for the requested VideoSource. + + + + + + + + + + + + + Reference token to the VideoSource where the current Imaging Preset should be requested. + + + + + + + + + + + Current Imaging Preset in use for the specified Video Source. + + + + + + + + + + + + + Reference token to the VideoSource to which the specified Imaging Preset should be applied. + + + + + + Reference token to the Imaging Preset to be applied to the specified Video Source. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Returns the capabilities of the imaging service. The result is returned in a typed answer. + + + + + Get the ImagingConfiguration for the requested VideoSource. + + + + + Set the ImagingConfiguration for the requested VideoSource. + + + + + This operation gets the valid ranges for the imaging parameters that have device specific ranges. + This command is mandatory for all device implementing the imaging service. The command returns all supported parameters and their ranges + such that these can be applied to the SetImagingSettings command.
+ For read-only parameters which cannot be modified via the SetImagingSettings command only a single option or identical Min and Max values + is provided.
+ + +
+ + The Move command moves the focus lens in an absolute, a relative or in a continuous manner from its current position. + The speed argument is optional for absolute and relative control, but required for continuous. If no speed argument is used, the default speed is used. + Focus adjustments through this operation will turn off the autofocus. A device with support for remote focus control should support absolute, + relative or continuous control through the Move operation. The supported MoveOpions are signalled via the GetMoveOptions command. + At least one focus control capability is required for this operation to be functional.
+ The move operation contains the following commands:
+ Absolute – Requires position parameter and optionally takes a speed argument. A unitless type is used by default for focus positioning and speed. Optionally, if supported, the position may be requested in m-1 units.
+ Relative – Requires distance parameter and optionally takes a speed argument. Negative distance means negative direction. + Continuous – Requires a speed argument. Negative speed argument means negative direction. +
+ + +
+ + Imaging move operation options supported for the Video source. + + + + + The Stop command stops all ongoing focus movements of the lense. A device with support for remote focus control as signalled via + the GetMoveOptions supports this command.
The operation will not affect ongoing autofocus operation.
+ + +
+ + Via this command the current status of the Move operation can be requested. Supported for this command is available if the support for the Move operation is signalled via GetMoveOptions. + + + + + Via this command the list of available Imaging Presets can be requested. + + + + + Via this command the last Imaging Preset applied can be requested. + If the camera configuration does not match any of the existing Imaging Presets, the output of GetCurrentPreset shall be Empty. + GetCurrentPreset shall return 0 if Imaging Presets are not supported by the Video Source. + + + + + The SetCurrentPreset command shall request a given Imaging Preset to be applied to the specified Video Source. + SetCurrentPreset shall only be available for Video Sources with Imaging Presets Capability. + Imaging Presets are defined by the Manufacturer, and offered as a tool to simplify Imaging Settings adjustments for specific scene content. + When the new Imaging Preset is applied by SetCurrentPreset, the Device shall adjust the Video Source settings to match those defined by the specified Imaging Preset. + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
diff --git a/wsdl/media (1).wsdl b/wsdl/media (1).wsdl new file mode 100644 index 0000000..4684fad --- /dev/null +++ b/wsdl/media (1).wsdl @@ -0,0 +1,2267 @@ + + + + + + + + + + + + + + + + + + + + The capabilities for the media service is returned in the Capabilities element. + + + + + + + + + + + Media profile capabilities. + + + + + Streaming capabilities. + + + + + + + Indicates if GetSnapshotUri is supported. + + + + + Indicates whether or not Rotation feature is supported. + + + + + Indicates the support for changing video source mode. + + + + + Indicates if OSD is supported. + + + + + Indicates the support for temporary osd text configuration. + + + + + Indicates if Masking is supported. + + + + + Indicates that privacy masks are only supported at the video source level and not the video source configuration level. + If this is true any addition, deletion or change of a privacy mask done for one video source configuration will automatically be + applied by the device to a corresponding privacy mask for all other video source configuration associated with the same video source. + + + + + + + + + + + + + Maximum number of profiles supported. + + + + + Enumerates the configurations supported by the device as defined by tr2:ConfigurationEnumeration. + + + + + + + + + + + + Indicates support for live media streaming via RTSP. + + + + + Indicates support for RTP multicast. + + + + + Indicates support for RTP/RTSP/TCP. + + + + + Indicates support for non aggregate RTSP control. + + + + + If streaming over websocket supported, RTSP websocket URI is provided. The scheme and IP part shall match the one used in the request (e.g. the GetServices request). + + + + + Indicates support for non-RTSP controlled multicast streaming. + + + + + + + + + + + + + + + + + + + + + + + + + + Type of the configuration as defined by tr2:ConfigurationEnumeration. + + + + + Reference token of an existing configuration. + Token shall be included in the AddConfiguration request along with the type. + Token shall be included in the CreateProfile request when Configuration elements are included and type is selected. + Token is optional for RemoveConfiguration request. If no token is provided in RemoveConfiguration request, device shall + remove the configuration of the type included in the profile. + + + + + + + + + A set of media configurations. + + + + + + Optional configuration of the Video input. + + + + + Optional configuration of the Audio input. + + + + + Optional configuration of the Video encoder. + + + + + Optional configuration of the Audio encoder. + + + + + Optional configuration of the analytics module and rule engine. + + + + + Optional configuration of the pan tilt zoom unit. + + + + + Optional configuration of the metadata stream. + + + + + Optional configuration of the Audio output. + + + + + Optional configuration of the Audio decoder. + + + + + + + + + + + A media profile consists of a set of media configurations. + + + + + + User readable name of the profile. + + + + + The configurations assigned to the profile. + + + + + + Unique identifier of the profile. + + + + + A value of true signals that the profile cannot be deleted. Default is false. + + + + + + + + + + + friendly name of the profile to be created + + + + + Optional set of configurations to be assigned to the profile. + + + + + + + + + + + Token assigned by the device for the newly created profile. + + + + + + + + + + + + Optional token of the requested profile. + + + + + The types shall be provided as defined by tr2:ConfigurationEnumeration. + + + + + + + + + + + Lists all profiles that exist in the media service. The response provides the requested types of Configurations as far as available. + If a profile doesn't contain a type no error shall be provided. + + + + + + + + + + + + Reference to the profile where the configuration should be added + + + + + Optional item. If present updates the Name property of the profile. + + + + + + List of configurations to be added. The types shall be provided in the order defined by tr2:ConfigurationEnumeration. + + + + + + + + + + + + + + + + + + + This element contains a reference to the media profile from which the AudioDecoderConfiguration shall be removed. + + + + + List of configurations to be removed. The types shall be provided in the order defined by tr2:ConfigurationEnumeration. + + + + + + + + + + + + + + + + + + This element contains a reference to the profile that should be deleted. + + + + + + + + + + + + + + + + + + + Token of the requested configuration. + + + + + Contains the token of an existing media profile the configurations shall be compatible with. + + + + + + + + + + + + This element contains a list of video encoder configurations. + + + + + + + + + + + + This element contains a list of video source configurations. + + + + + + + + + + + + This element contains a list of audio encoder configurations. + + + + + + + + + + + + This element contains a list of audio source configurations. + + + + + + + + + + + + This element contains a list of Analytics configurations. + + + + + + + + + + + + This element contains a list of metadata configurations + + + + + + + + + + + + This element contains a list of audio output configurations + + + + + + + + + + + + This element contains a list of audio decoder configurations + + + + + + + + + + + + Contains the modified video encoder configuration. The configuration shall exist in the device. + + + + + + + + + + + + + + + + Contains the modified video source configuration. The configuration shall exist in the device. + + + + + + + + + + + + Contains the modified audio encoder configuration. The configuration shall exist in the device. + + + + + + + + + + + + Contains the modified audio source configuration. The configuration shall exist in the device. + + + + + + + + + + + + Contains the modified metadata configuration. The configuration shall exist in the device. + + + + + + + + + + + + Contains the modified audio output configuration. The configuration shall exist in the device. + + + + + + + + + + + + Contains the modified audio decoder configuration. The configuration shall exist in the device. + + + + + + + + + + + + + + This message contains the video source configuration options. If a video source configuration is specified, the options shall concern that particular configuration. If a media profile is specified, the options shall be compatible with that media profile. If no tokens are specified, the options shall be considered generic for the device. + + + + + + + + + + + + + + + + + + + + This message contains the audio source configuration options. If a audio source configuration is specified, the options shall concern that particular configuration. If a media profile is specified, the options shall be compatible with that media profile. If no tokens are specified, the options shall be considered generic for the device. + + + + + + + + + + + + This message contains the audio encoder configuration options. If a audio encoder configuration is specified, the options shall concern that particular configuration. If a media profile is specified, the options shall be compatible with that media profile. If no tokens are specified, the options shall be considered generic for the device. + + + + + + + + + + + + This message contains the metadata configuration options. If a metadata configuration is specified, the options shall concern that particular configuration. If a media profile is specified, the options shall be compatible with that media profile. If no tokens are specified, the options shall be considered generic for the device. + + + + + + + + + + + + This message contains the audio output configuration options. If a audio output configuration is specified, the options shall concern that particular configuration. If a media profile is specified, the options shall be compatible with that media profile. If no tokens are specified, the options shall be considered generic for the device. + + + + + + + + + + + + This message contains the audio decoder configuration options. If a audio decoder configuration is specified, the options shall concern that particular configuration. If a media profile is specified, the options shall be compatible with that media profile. If no tokens are specified, the options shall be considered generic for the device. + + + + + + + + + + + + + + + + + + + + + + Token of the video source configuration + + + + + + + + + + + Mime name of the video format. For name definitions see tt:VideoEncodingMimeNames and IANA Media Types. + + + + + The minimum guaranteed number of encoder instances (applications) for the VideoSourceConfiguration. + + + + + + + + + + If a device limits the number of instances for respective Video Codecs the response contains the information how many streams can be set up at the same time per VideoSource. + + + + + The minimum guaranteed total number of encoder instances (applications) per VideoSourceConfiguration. The device is able to deliver the Total number of streams + + + + + + + + + + + + The minimum guaranteed total number of encoder instances (applications) per VideoSourceConfiguration. + + + + + + + + + + + + Defines the network protocol for streaming as defined by tr2:TransportProtocol + + + + + The ProfileToken element indicates the media profile to use and will define the configuration of the content of the stream. + + + + + + + + + + + Stable Uri to be used for requesting the media stream + + + + + + + + + + + + Contains a Profile reference for which a Synchronization Point is requested. + + + + + + + + + + + + + + + + + + The ProfileToken element indicates the media profile to use and will define the source and dimensions of the snapshot. + + + + + + + + + + + Stable Uri to be used for requesting snapshot images. + + + + + + + + + + + Contains the token of the Profile that is used to define the multicast stream. + + + + + + + + + + + + + + + Contains a video source reference for which a video source mode is requested. + + + + + + + + + + + Return the information for specified video source mode. + + + + + + + + + + + + Contains a video source reference for which a video source mode is requested. + + + + + Indicate video source mode. + + + + + + + + + + + The response contains information about rebooting after returning response. When Reboot is set true, a device will reboot automatically after setting mode. + + + + + + + + + Indication which encodings are supported for this video source. The list may contain one or more enumeration values of tt:VideoEncoding. + + + + + + + + + Max frame rate in frames per second for this video source mode. + + + + + Max horizontal and vertical resolution for this video source mode. + + + + + Indication which encodings are supported for this video source. The list may contain one or more enumeration values of tt:VideoEncoding. + + + + + After setting the mode if a device starts to reboot this value is true. If a device change the mode without rebooting this value is false. If true, configured parameters may not be guaranteed by the device after rebooting. + + + + + Informative description of this video source mode. This field should be described in English. + + + + + + + Indicate token for video source mode. + + + + + Indication of whether this mode is active. If active this value is true. In case of non-indication, it means as false. The value of true shall be had by only one video source mode. + + + + + + + + + + + The GetOSDs command fetches the OSD configuration if the OSD token is known. + + + + + Token of the Video Source Configuration, which has OSDs associated with are requested. If token not exist, request all available OSDs. + + + + + + + + + + + This element contains a list of requested OSDs. + + + + + + + + + + + + Contains the modified OSD configuration. + + + + + + + + + + + + + Video Source Configuration Token that specifies an existing video source configuration that the options shall be compatible with. + + + + + + + + + + + + + + + + + + + + + + + Contain the initial OSD configuration for create. + + + + + + + + + + + Returns Token of the newly created OSD + + + + + + + + + + + + This element contains a reference to the OSD configuration that should be deleted. + + + + + + + + + + + + + + + + + + + + Unique identifier of this mask configuration. + + + + Geometric representation of the mask area. + + + Type of masking as defined by tr2:MaskType: +
    +
  • Color - The masked area is colored with color defined by the Color field.
  • +
  • Pixelated - The masked area is filled in mosaic style to hide details.
  • +
  • Blurred - The masked area is low pass filtered to hide details.
  • +
+
+ + Color of the masked area. + + + If set the mask will cover the image, otherwise it will be fully transparent. + + +
+ + + Token of the mask. + + + + + Token of the VideoSourceConfiguration the Mask is associated with. + + + +
+ + + + + + Optional mask token of an existing mask. + + + + + Optional token of a Video Source Configuration. + + + + + + + + + + + List of Mask configurations. + + + + + + + + + + + + Mask to be updated. + + + + + + + + + + + + + Video Source Configuration Token that specifies an existing video source configuration that the options shall be compatible with. + + + + + + + + + + + Maximum supported number of masks per VideoSourceConfiguration. + + + + + Maximum supported number of points per mask. + + + + + Information which types of tr2:MaskType are supported. Valid values are 'Color', 'Pixelated' and 'Blurred'. + + + + + Colors supported. + + + + + + + Information whether the polygon must have four points and a rectangular shape. + + + + + Indicates the device capability of change in color of privacy mask for one video source configuration will automatically be applied to all the privacy masks associated with the same video source configuration. + + + + + + + + + + + + + + + + + + + + + + + Contain the initial mask configuration for create. + + + + + + + + + + + Returns Token of the newly created Mask + + + + + + + + + + + + This element contains a reference to the Mask configuration that should be deleted. + + + + + + + + +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Returns the capabilities of the media service. The result is returned in a typed answer. + + + + + + This operation creates a new media profile. + A created profile created via this method may be deleted via the DeleteProfile method. + Optionally Configurations can be assinged to the profile on creation. For details regarding profile assignement + check also the method AddConfiguration. + + + + + + Retrieve the profile with the specified token or all defined media profiles. +
    +
  • If no configuration types are defined only the profile names and token are returned.
  • +
  • In case of provided configuration types all information regarding these types is returned.
  • +
  • If no Type is provided the response shall contain all available configurations. Otherwise only matching configurations shall be returned.
  • +
+
+ + +
+ + This operation adds one or more Configurations to an existing media profile. If a +configuration exists in the media profile, it will be replaced. A device shall +support adding a compatible Configuration to a Profile containing a VideoSourceConfiguration and shall +support streaming video data of such a profile.
+ Note that OSD elements must be added via the CreateOSD command. +
+ + +
+ + This operation removes the listed configurations from an existing media profile. If the + media profile does not contain one of the listed configurations that item shall be ignored. + + + + + This operation deletes a profile. Deletion of a profile is only possible for non-fixed profiles + + + + + + By default this operation lists all existing video source configurations for a device. Provide a profile token to list only configurations that are compatible with the profile. If a configuration token is provided only a single configuration will be returned. + + + + + By default this operation lists all existing video encoder configurations for a device. Provide a profile token to list only configurations that are compatible with the profile. If a configuration token is provided only a single configuration will be returned. + + + + + By default this operation lists all existing audio source configurations for a device. Provide a profile token to list only configurations that are compatible with the profile. If a configuration token is provided only a single configuration will be returned. + + + + + By default this operation lists all existing audio encoder configurations for a device. Provide a profile token to list only configurations that are compatible with the profile. If a configuration token is provided only a single configuration will be returned. + + + + + By default this operation lists all existing video analytics configurations for a device. Provide a profile token to list only configurations that are compatible with the profile. If a configuration token is provided only a single configuration will be returned. + + + + + By default this operation lists all existing metadata configurations for a device. Provide a profile token to list only configurations that are compatible with the profile. If a configuration token is provided only a single configuration will be returned. + + + + + By default this operation lists all existing audio output configurations for a device. Provide a profile token to list only configurations that are compatible with the profile. If a configuration token is provided only a single configuration will be returned. + + + + + By default this operation lists all existing audio decoder configurations for a device. Provide a profile token to list only configurations that are compatible with the profile. If a configuration token is provided only a single configuration will be returned. + + + + + + This operation modifies a video source configuration. Running streams using this configuration may be immediately updated according to the new settings. The changes are not guaranteed to take effect unless the client requests a new stream URI and restarts any affected stream. NVC methods for changing a running stream are out of scope for this specification. + + + + + This operation modifies a video encoder configuration. Running streams using this configuration may be immediately updated according to the new settings. The changes are not guaranteed to take effect unless the client requests a new stream URI and restarts any affected stream. NVC methods for changing a running stream are out of scope for this specification.
SessionTimeout is provided as a hint for keeping rtsp session by a device. If necessary the device may adapt parameter values for SessionTimeout elements without returning an error. For the time between keep alive calls the client shall adhere to the timeout value signaled via RTSP.
+ + +
+ + This operation modifies an audio source configuration. Running streams using this configuration + may be immediately updated according to the new settings. The changes are not guaranteed + to take effect unless the client requests a new stream URI and restarts any affected stream + NVC methods for changing a running stream are out of scope for this specification. + + + + + This operation modifies an audio encoder configuration. Running streams using this configuration may be immediately updated + according to the new settings. The changes are not guaranteed to take effect unless the client + requests a new stream URI and restarts any affected streams. NVC methods for changing a + running stream are out of scope for this specification. + + + + + This operation modifies a metadata configuration. Running streams using this configuration may be updated immediately + according to the new settings. The changes are not guaranteed to take effect unless the client + requests a new stream URI and restarts any affected streams. NVC methods for changing a + running stream are out of scope for this specification. + + + + + This operation modifies an audio output configuration. + + + + + This operation modifies an audio decoder configuration. + + + + + + This operation returns the available options (supported values and ranges for video source configuration parameters) when the video source parameters are + reconfigured If a video source configuration is specified, the options shall concern that + particular configuration. If a media profile is specified, the options shall be compatible with + that media profile. + + + + + This operation returns the available options (supported values and ranges for video encoder + configuration parameters) when the video encoder parameters are reconfigured.
+ For JPEG, MPEG4 and H264 extension elements have been defined that provide additional information. A device must provide the + XxxOption information for all encodings supported and should additionally provide the corresponding XxxOption2 information.
+ This response contains the available video encoder configuration options. If a video encoder configuration is specified, + the options shall concern that particular configuration. If a media profile is specified, the options shall be + compatible with that media profile. If no tokens are specified, the options shall be considered generic for the device. +
+ + +
+ + This operation returns the available options (supported values and ranges for audio source configuration parameters) when the audio source parameters are + reconfigured. If an audio source configuration is specified, the options shall concern that + particular configuration. If a media profile is specified, the options shall be compatible with + that media profile. + + + + + This operation returns the available options (supported values and ranges for audio encoder configuration parameters) when the audio encoder parameters are + reconfigured. + + + + + This operation returns the available options (supported values and ranges for metadata configuration parameters) for changing the metadata configuration. + + + + + This operation returns the available options (supported values and ranges for audio output configuration parameters) for configuring an audio output. + + + + + This command list the audio decoding capabilities for a given profile and configuration of a + device. + + + + + + The GetVideoEncoderInstances command can be used to request the + minimum number of guaranteed video encoder instances (applications) per Video Source + Configuration. + + + + + + This operation requests a URI that can be used to initiate a live media stream using RTSP as + the control protocol. The returned URI shall remain valid indefinitely even if the profile is changed.
+ Defined stream types are +
    +
  • RtspUnicast RTSP streaming RTP as UDP Unicast.
  • +
  • RtspMulticast RTSP streaming RTP as UDP Multicast.
  • +
  • RTSP RTSP streaming RTP over TCP.
  • +
  • RtspOverHttp Tunneling both the RTSP control channel and the RTP stream over HTTP or HTTPS.
  • +
+ If a multicast stream is requested the VideoEncoderConfiguration, AudioEncoderConfiguration and MetadataConfiguration element inside the corresponding + media profile must be configured with valid multicast settings.
+ For full compatibility with other ONVIF services a device should not generate Uris longer than + 128 octets.
+ + +
+ + This command starts multicast streaming using a specified media profile of a device. + Streaming continues until StopMulticastStreaming is called for the same Profile. The + streaming shall continue after a reboot of the device until a StopMulticastStreaming request is + received. The multicast address, port and TTL are configured in the + VideoEncoderConfiguration, AudioEncoderConfiguration and MetadataConfiguration + respectively. + + + + + This command stops multicast streaming using a specified media profile of a device + + + + + Synchronization points allow clients to decode and correctly use all data after the +synchronization point. +For example, if a video stream is configured with a large I-frame distance and a client loses a +single packet, the client does not display video until the next I-frame is transmitted. In such +cases, the client can request a Synchronization Point which enforces the device to add an I-Frame as soon as possible. Clients can request Synchronization Points for profiles. The device +shall add synchronization points for all streams associated with this profile. +Similarly, a synchronization point is used to get an update on full PTZ or event status through +the metadata stream. +If a video stream is associated with the profile, an I-frame shall be added to this video stream. +If a PTZ metadata stream is associated to the profile, +the PTZ position shall be repeated within the metadata stream. + + + + + A client uses the GetSnapshotUri command to obtain a JPEG snapshot from the +device. The returned URI shall remain valid indefinitely even if the profile is changed. The +ValidUntilConnect, ValidUntilReboot and Timeout Parameter shall be set accordingly +(ValidUntilConnect=false, ValidUntilReboot=false, timeout=PT0S). The URI can be used for +acquiring a JPEG image through a HTTP GET operation. The image encoding will always be +JPEG regardless of the encoding setting in the media profile. The Jpeg settings +(like resolution or quality) may be taken from the profile if suitable. The provided +image will be updated automatically and independent from calls to GetSnapshotUri. + + + + + A device returns the information for current video source mode and settable video source modes of specified video source. A device that indicates a capability of VideoSourceModes shall support this command. + + + + + SetVideoSourceMode changes the media profile structure relating to video source for the specified video source mode. A device that indicates a capability of VideoSourceModes shall support this command. The behavior after changing the mode is not defined in this specification. + + + + + + This operation lists existing OSD configurations for the device. +
    +
  • If an OSD token is provided the device shall respond with the requested configuration or provide an error if it does not exist.
  • +
  • In case only a video source configuration token is provided the device shall respond with all configurations that exist for the video source configuration.
  • +
  • If no tokens are provided the device shall respond with all available OSD configurations.
  • +
+
+ + +
+ + Get the OSD Options. + + + + + Set the OSD + + + + + Create the OSD. + + + + + Delete the OSD. + + + + + + + This operation lists existing Mask configurations for the device. +
    +
  • If an Mask token is provided the device shall respond with the requested configuration or provide an error if it does not exist.
  • +
  • In case only a video source configuration token is provided the device shall respond with all configurations that exist for the video source configuration.
  • +
  • If no tokens are provided the device shall respond with all available Mask configurations.
  • +
+
+ + +
+ + Get the Mask Options. + + + + + Set the Mask + + + + + Create the Mask. + + + + + Delete the Mask. + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
diff --git a/wsdl/media.wsdl b/wsdl/media.wsdl new file mode 100644 index 0000000..c376313 --- /dev/null +++ b/wsdl/media.wsdl @@ -0,0 +1,3692 @@ + + + + + + + + + + + + + + + + + + + + The capabilities for the media service is returned in the Capabilities element. + + + + + + + + + + + Media profile capabilities. + + + + + Streaming capabilities. + + + + + + + Indicates if GetSnapshotUri is supported. + + + + + Indicates whether or not Rotation feature is supported. + + + + + Indicates the support for changing video source mode. + + + + + Indicates if OSD is supported. + + + + + Indicates the support for temporary osd text configuration. + + + + + Indicates the support for the Efficient XML Interchange (EXI) binary XML format. + + + + + + + + + + + + + Maximum number of profiles supported. + + + + + + + + + + + + Indicates support for RTP multicast. + + + + + Indicates support for RTP over TCP. + + + + + Indicates support for RTP/RTSP/TCP. + + + + + Indicates support for non aggregate RTSP control. + + + + + Indicates the device does not support live media streaming via RTSP. + + + + + + + + + + + + + + + + + List of existing Video Sources + + + + + + + + + + + + + + + + + + List of existing Audio Sources + + + + + + + + + + + + + + + + + + List of existing Audio Outputs + + + + + + + + + + + + friendly name of the profile to be created + + + + + Optional token, specifying the unique identifier of the new profile.
A device supports at least a token length of 12 characters and characters "A-Z" | "a-z" | "0-9" | "-.".
+
+
+
+
+
+ + + + + + returns the new created profile + + + + + + + + + + + + this command requests a specific profile + + + + + + + + + + + returns the requested media profile + + + + + + + + + + + + + + + + + + + lists all profiles that exist in the media service + + + + + + + + + + + + Reference to the profile where the configuration should be added + + + + + Contains a reference to the VideoEncoderConfiguration to add + + + + + + + + + + + + + + + + + + Contains a reference to the media profile from which the +VideoEncoderConfiguration shall be removed. + + + + + + + + + + + + + + + + + + Reference to the profile where the configuration should be added + + + + + Contains a reference to the VideoSourceConfiguration to add + + + + + + + + + + + + + + + + + + Contains a reference to the media profile from which the +VideoSourceConfiguration shall be removed. + + + + + + + + + + + + + + + + + + Reference to the profile where the configuration should be added + + + + + Contains a reference to the AudioEncoderConfiguration to add + + + + + + + + + + + + + + + + + + Contains a reference to the media profile from which the +AudioEncoderConfiguration shall be removed. + + + + + + + + + + + + + + + + + + Reference to the profile where the configuration should be added + + + + + Contains a reference to the AudioSourceConfiguration to add + + + + + + + + + + + + + + + + + + Contains a reference to the media profile from which the +AudioSourceConfiguration shall be removed. + + + + + + + + + + + + + + + + + + Reference to the profile where the configuration should be added + + + + + Contains a reference to the PTZConfiguration to add + + + + + + + + + + + + + + + + + + Contains a reference to the media profile from which the +PTZConfiguration shall be removed. + + + + + + + + + + + + + + + + + + Reference to the profile where the configuration should be added + + + + + Contains a reference to the VideoAnalyticsConfiguration to add + + + + + + + + + + + + + + + + + + Contains a reference to the media profile from which the +VideoAnalyticsConfiguration shall be removed. + + + + + + + + + + + + + + + + + + Reference to the profile where the configuration should be added + + + + + Contains a reference to the MetadataConfiguration to add + + + + + + + + + + + + + + + + + + Contains a reference to the media profile from which the +MetadataConfiguration shall be removed. + + + + + + + + + + + + + + + + + + Reference to the profile where the configuration should be added + + + + + Contains a reference to the AudioOutputConfiguration to add + + + + + + + + + + + + + + + + + + Contains a reference to the media profile from which the +AudioOutputConfiguration shall be removed. + + + + + + + + + + + + + + + + + + This element contains a reference to the profile where the configuration should be added. + + + + + This element contains a reference to the AudioDecoderConfiguration to add. + + + + + + + + + + + + + + + + + + This element contains a reference to the media profile from which the AudioDecoderConfiguration shall be removed. + + + + + + + + + + + + + + + + + + This element contains a reference to the profile that should be deleted. + + + + + + + + + + + + + + + + + + + + + + + + + + This element contains a list of video encoder configurations. + + + + + + + + + + + + + + + + + + This element contains a list of video source configurations. + + + + + + + + + + + + + + + + + + This element contains a list of audio encoder configurations. + + + + + + + + + + + + + + + + + + This element contains a list of audio source configurations. + + + + + + + + + + + + + + + + + + This element contains a list of VideoAnalytics configurations. + + + + + + + + + + + + + + + + + + This element contains a list of metadata configurations + + + + + + + + + + + + + + + + + + + This element contains a list of audio output configurations + + + + + + + + + + + + + + + + + + This element contains a list of audio decoder configurations + + + + + + + + + + + + Token of the requested video source configuration. + + + + + + + + + + + + The requested video source configuration. + + + + + + + + + + + + Token of the requested video encoder configuration. + + + + + + + + + + + The requested video encoder configuration. + + + + + + + + + + + + Token of the requested audio source configuration. + + + + + + + + + + + The requested audio source configuration. + + + + + + + + + + + + Token of the requested audio encoder configuration. + + + + + + + + + + + The requested audio encoder configuration + + + + + + + + + + + + Token of the requested video analytics configuration. + + + + + + + + + + + The requested video analytics configuration. + + + + + + + + + + + + Token of the requested metadata configuration. + + + + + + + + + + + The requested metadata configuration. + + + + + + + + + + + + + Token of the requested audio output configuration. + + + + + + + + + + + + The requested audio output configuration. + + + + + + + + + + + + Token of the requested audio decoder configuration. + + + + + + + + + + + + The requested audio decoder configuration + + + + + + + + + + + + Contains the token of an existing media profile the configurations shall be compatible with. + + + + + + + + + + + Contains a list of video encoder configurations that are compatible with the specified media profile. + + + + + + + + + + + + Contains the token of an existing media profile the configurations shall be compatible with. + + + + + + + + + + + Contains a list of video source configurations that are compatible with the specified media profile. + + + + + + + + + + + + Contains the token of an existing media profile the configurations shall be compatible with. + + + + + + + + + + + Contains a list of audio encoder configurations that are compatible with the specified media profile. + + + + + + + + + + + + Contains the token of an existing media profile the configurations shall be compatible with. + + + + + + + + + + + Contains a list of audio source configurations that are compatible with the specified media profile. + + + + + + + + + + + + Contains the token of an existing media profile the configurations shall be compatible with. + + + + + + + + + + + Contains a list of video analytics configurations that are compatible with the specified media profile. + + + + + + + + + + + + Contains the token of an existing media profile the configurations shall be compatible with. + + + + + + + + + + + Contains a list of metadata configurations that are compatible with the specified media profile. + + + + + + + + + + + + + Contains the token of an existing media profile the configurations shall be compatible with. + + + + + + + + + + + Contains a list of audio output configurations that are compatible with the specified media profile. + + + + + + + + + + + + Contains the token of an existing media profile the configurations shall be compatible with. + + + + + + + + + + + Contains a list of audio decoder configurations that are compatible with the specified media profile. + + + + + + + + + + + + + + + + + Contains the modified video encoder configuration. The configuration shall exist in the device. + + + + + The ForcePersistence element is obsolete and should always be assumed to be true. + + + + + + + + + + + + + + + + + + Contains the modified video source configuration. The configuration shall exist in the device. + + + + + The ForcePersistence element is obsolete and should always be assumed to be true. + + + + + + + + + + + + + + + + + + Contains the modified audio encoder configuration. The configuration shall exist in the device. + + + + + The ForcePersistence element is obsolete and should always be assumed to be true. + + + + + + + + + + + + + + + + + + Contains the modified audio source configuration. The configuration shall exist in the device. + + + + + The ForcePersistence element is obsolete and should always be assumed to be true. + + + + + + + + + + + + + + + + + + Contains the modified video analytics configuration. The configuration shall exist in the device. + + + + + The ForcePersistence element is obsolete and should always be assumed to be true. + + + + + + + + + + + + + + + + + + Contains the modified metadata configuration. The configuration shall exist in the device. + + + + + The ForcePersistence element is obsolete and should always be assumed to be true. + + + + + + + + + + + + + + + + + + + Contains the modified audio output configuration. The configuration shall exist in the device. + + + + + The ForcePersistence element is obsolete and should always be assumed to be true. + + + + + + + + + + + + + + + + + + Contains the modified audio decoder configuration. The configuration shall exist in the device. + + + + + The ForcePersistence element is obsolete and should always be assumed to be true. + + + + + + + + + + + + + + + + + + Optional video source configurationToken that specifies an existing configuration that the options are intended for. + + + + + Optional ProfileToken that specifies an existing media profile that the options shall be compatible with. + + + + + + + + + + + This message contains the video source configuration options. If a video source configuration is specified, the options shall concern that particular configuration. If a media profile is specified, the options shall be compatible with that media profile. If no tokens are specified, the options shall be considered generic for the device. + + + + + + + + + + + + Optional video encoder configuration token that specifies an existing configuration that the options are intended for. + + + + + Optional ProfileToken that specifies an existing media profile that the options shall be compatible with. + + + + + + + + + + + + + + + + + + + Optional audio source configuration token that specifies an existing configuration that the options are intended for. + + + + + Optional ProfileToken that specifies an existing media profile that the options shall be compatible with. + + + + + + + + + + + This message contains the audio source configuration options. If a audio source configuration is specified, the options shall concern that particular configuration. If a media profile is specified, the options shall be compatible with that media profile. If no tokens are specified, the options shall be considered generic for the device. + + + + + + + + + + + + Optional audio encoder configuration token that specifies an existing configuration that the options are intended for. + + + + + Optional ProfileToken that specifies an existing media profile that the options shall be compatible with. + + + + + + + + + + + This message contains the audio encoder configuration options. If a audio encoder configuration is specified, the options shall concern that particular configuration. If a media profile is specified, the options shall be compatible with that media profile. If no tokens are specified, the options shall be considered generic for the device. + + + + + + + + + + + + Optional metadata configuration token that specifies an existing configuration that the options are intended for. + + + + + Optional ProfileToken that specifies an existing media profile that the options shall be compatible with. + + + + + + + + + + + This message contains the metadata configuration options. If a metadata configuration is specified, the options shall concern that particular configuration. If a media profile is specified, the options shall be compatible with that media profile. If no tokens are specified, the options shall be considered generic for the device. + + + + + + + + + + + + Optional audio output configuration token that specifies an existing configuration that the options are intended for. + + + + + Optional ProfileToken that specifies an existing media profile that the options shall be compatible with. + + + + + + + + + + + This message contains the audio output configuration options. If a audio output configuration is specified, the options shall concern that particular configuration. If a media profile is specified, the options shall be compatible with that media profile. If no tokens are specified, the options shall be considered generic for the device. + + + + + + + + + + + + Optional audio decoder configuration token that specifies an existing configuration that the options are intended for. + + + + + Optional ProfileToken that specifies an existing media profile that the options shall be compatible with. + + + + + + + + + + + This message contains the audio decoder configuration options. If a audio decoder configuration is specified, the options shall concern that particular configuration. If a media profile is specified, the options shall be compatible with that media profile. If no tokens are specified, the options shall be considered generic for the device. + + + + + + + + + + + + Token of the video source configuration + + + + + + + + + + + The minimum guaranteed total number of encoder instances (applications) per VideoSourceConfiguration. The device is able to deliver the TotalNumber of streams + + + + + If a device limits the number of instances for respective Video Codecs the response contains the information how many Jpeg streams can be set up at the same time per VideoSource. + + + + + If a device limits the number of instances for respective Video Codecs the response contains the information how many H264 streams can be set up at the same time per VideoSource. + + + + + If a device limits the number of instances for respective Video Codecs the response contains the information how many Mpeg4 streams can be set up at the same time per VideoSource. + + + + + + + + + + + + Stream Setup that should be used with the uri + + + + + The ProfileToken element indicates the media profile to use and will define the configuration of the content of the stream. + + + + + + + + + + + + + + + + + + + + + + + Contains the token of the Profile that is used to define the multicast stream. + + + + + + + + + + + + + + + + + + Contains the token of the Profile that is used to define the multicast stream. + + + + + + + + + + + + + + + + + + Contains a Profile reference for which a Synchronization Point is requested. + + + + + + + + + + + + + + + + + + The ProfileToken element indicates the media profile to use and will define the source and dimensions of the snapshot. + + + + + + + + + + + + + + + + + + + + + + + Contains a video source reference for which a video source mode is requested. + + + + + + + + + + + Return the information for specified video source mode. + + + + + + + + + + + + Contains a video source reference for which a video source mode is requested. + + + + + Indicate video source mode. + + + + + + + + + + + The response contains information about rebooting after returning response. When Reboot is set true, a device will reboot automatically after setting mode. + + + + + + + + + Indication which encodings are supported for this video source. The list may contain one or more enumeration values of tt:VideoEncoding. + + + + + + + + + Max frame rate in frames per second for this video source mode. + + + + + Max horizontal and vertical resolution for this video source mode. + + + + + Indication which encodings are supported for this video source. The list may contain one or more enumeration values of tt:VideoEncoding. + + + + + After setting the mode if a device starts to reboot this value is true. If a device change the mode without rebooting this value is false. If true, configured parameters may not be guaranteed by the device after rebooting. + + + + + Informative description of this video source mode. This field should be described in English. + + + + + + + Indicate token for video source mode. + + + + + Indication of whether this mode is active. If active this value is true. In case of non-indication, it means as false. The value of true shall be had by only one video source mode. + + + + + + + + + + + + + + + + + + + Token of the Video Source Configuration, which has OSDs associated with are requested. If token not exist, request all available OSDs. + + + + + + + + + + + This element contains a list of requested OSDs. + + + + + + + + + + + + The GetOSD command fetches the OSD configuration if the OSD token is known. + + + + + + + + + + + + The requested OSD configuration. + + + + + + + + + + + + + Contains the modified OSD configuration. + + + + + + + + + + + + + + + + + + + + Video Source Configuration Token that specifies an existing video source configuration that the options shall be compatible with. + + + + + + + + + + + + + + + + + + + + + + + + + Contain the initial OSD configuration for create. + + + + + + + + + + + + Returns Token of the newly created OSD + + + + + + + + + + + + + This element contains a reference to the OSD configuration that should be deleted. + + + + + + + + + + + + + + +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Returns the capabilities of the media service. The result is returned in a typed answer. + + + + + + This command lists all available physical video inputs of the device. + + + + + This command lists all available physical audio inputs of the device. + + + + + This command lists all available physical audio outputs of the device. + + + + + + This operation creates a new empty media profile. The media profile shall be created in the +device and shall be persistent (remain after reboot). A created profile shall be deletable and a device shall set the “fixed” attribute to false in the +returned Profile. + + + + + If the profile token is already known, a profile can be fetched through the GetProfile command. + + + + + Any endpoint can ask for the existing media profiles of a device using the GetProfiles +command. Pre-configured or dynamically configured profiles can be retrieved using this +command. This command lists all configured profiles in a device. The client does not need to +know the media profile in order to use the command. + + + + + This operation adds a VideoEncoderConfiguration to an existing media profile. If a +configuration exists in the media profile, it will be replaced. The change shall be persistent. A device shall +support adding a compatible VideoEncoderConfiguration to a Profile containing a VideoSourceConfiguration and shall +support streaming video data of such a profile. + + + + + + This operation removes a VideoEncoderConfiguration from an existing media profile. If the +media profile does not contain a VideoEncoderConfiguration, the operation has no effect. The removal shall be persistent. + + + + + This operation adds a VideoSourceConfiguration to an existing media profile. If such a +configuration exists in the media profile, it will be replaced. The change shall be persistent. + + + + + This operation removes a VideoSourceConfiguration from an existing media profile. If the +media profile does not contain a VideoSourceConfiguration, the operation has no effect. The removal shall be persistent. Video source configurations should only be removed after removing a +VideoEncoderConfiguration from the media profile. + + + + + This operation adds an AudioEncoderConfiguration to an existing media profile. If a +configuration exists in the media profile, it will be replaced. The change shall be persistent. A device shall +support adding a compatible AudioEncoderConfiguration to a profile containing an AudioSourceConfiguration and shall +support streaming audio data of such a profile. + + + + + + This operation removes an AudioEncoderConfiguration from an existing media profile. If the +media profile does not contain an AudioEncoderConfiguration, the operation has no effect. +The removal shall be persistent. + + + + + This operation adds an AudioSourceConfiguration to an existing media profile. If a +configuration exists in the media profile, it will be replaced. The change shall be persistent. + + + + + This operation removes an AudioSourceConfiguration from an existing media profile. If the +media profile does not contain an AudioSourceConfiguration, the operation has no effect. The +removal shall be persistent. Audio source configurations should only be removed after removing an +AudioEncoderConfiguration from the media profile. + + + + + This operation adds a PTZConfiguration to an existing media profile. If a configuration exists +in the media profile, it will be replaced. The change shall be persistent. Adding a PTZConfiguration to a media profile means that streams using that media profile can +contain PTZ status (in the metadata), and that the media profile can be used for controlling +PTZ movement. + + + + + This operation removes a PTZConfiguration from an existing media profile. If the media profile +does not contain a PTZConfiguration, the operation has no effect. The removal shall be persistent. + + + + + This operation adds a VideoAnalytics configuration to an existing media profile. If a +configuration exists in the media profile, it will be replaced. The change shall be persistent. Adding a VideoAnalyticsConfiguration to a media profile means that streams using that media +profile can contain video analytics data (in the metadata) as defined by the submitted configuration reference. A profile containing only a video analytics configuration but no video source configuration is incomplete. Therefore, a client should first add a video source configuration to a profile before adding a video analytics configuration. The device can deny adding of a video analytics +configuration before a video source configuration. + + + + + This operation removes a VideoAnalyticsConfiguration from an existing media profile. If the media profile does not contain a VideoAnalyticsConfiguration, the operation has no effect. +The removal shall be persistent. + + + + + This operation adds a Metadata configuration to an existing media profile. If a configuration exists in the media profile, it will be replaced. The change shall be persistent. Adding a MetadataConfiguration to a Profile means that streams using that profile contain metadata. Metadata can consist of events, PTZ status, and/or video analytics data. + + + + + This operation removes a MetadataConfiguration from an existing media profile. If the media profile does not contain a MetadataConfiguration, the operation has no effect. The removal shall be persistent. + + + + + This operation adds an AudioOutputConfiguration to an existing media profile. If a configuration exists in the media profile, it will be replaced. The change shall be persistent. + + + + + This operation removes an AudioOutputConfiguration from an existing media profile. If the media profile does not contain an AudioOutputConfiguration, the operation has no effect. The removal shall be persistent. + + + + + This operation adds an AudioDecoderConfiguration to an existing media profile. If a configuration exists in the media profile, it shall be replaced. The change shall be persistent. + + + + + This operation removes an AudioDecoderConfiguration from an existing media profile. If the media profile does not contain an AudioDecoderConfiguration, the operation has no effect. The removal shall be persistent. + + + + + This operation deletes a profile. This change shall always be persistent. Deletion of a profile is only possible for non-fixed profiles + + + + + + This operation lists all existing video source configurations for a device. The client need not know anything about the video source configurations in order to use the command. + + + + + This operation lists all existing video encoder configurations of a device. This command lists all configured video encoder configurations in a device. The client need not know anything apriori about the video encoder configurations in order to use the command. + + + + + This operation lists all existing audio source configurations of a device. This command lists all audio source configurations in a device. The client need not know anything apriori about the audio source configurations in order to use the command. + + + + + This operation lists all existing device audio encoder configurations. The client need not know anything apriori about the audio encoder configurations in order to use the command. + + + + + This operation lists all video analytics configurations of a device. This command lists all configured video analytics in a device. The client need not know anything apriori about the video analytics in order to use the command. + + + + + This operation lists all existing metadata configurations. The client need not know anything apriori about the metadata in order to use the command. + + + + + This command lists all existing AudioOutputConfigurations of a device. The NVC need not know anything apriori about the audio configurations to use this command. + + + + + This command lists all existing AudioDecoderConfigurations of a device. The NVC need not know anything apriori about the audio decoder configurations in order to +use this command. + + + + + If the video source configuration token is already known, the video source configuration can be fetched through the GetVideoSourceConfiguration command. + + + + + If the video encoder configuration token is already known, the encoder configuration can be fetched through the GetVideoEncoderConfiguration command. + + + + + The GetAudioSourceConfiguration command fetches the audio source configurations if the audio source configuration token is already known. An + + + + + The GetAudioEncoderConfiguration command fetches the encoder configuration if the audio encoder configuration token is known. + + + + + The GetVideoAnalyticsConfiguration command fetches the video analytics configuration if the video analytics token is known. + + + + + The GetMetadataConfiguration command fetches the metadata configuration if the metadata token is known. + + + + + If the audio output configuration token is already known, the output configuration can be fetched through the GetAudioOutputConfiguration command. + + + + + If the audio decoder configuration token is already known, the decoder configuration can be fetched through the GetAudioDecoderConfiguration command. + + + + + + This operation lists all the video encoder configurations of the device that are compatible with a certain media profile. Each of the returned configurations shall be a valid input parameter for the AddVideoEncoderConfiguration command on the media profile. The result will vary depending on the capabilities, configurations and settings in the device. + + + + + This operation requests all the video source configurations of the device that are compatible +with a certain media profile. Each of the returned configurations shall be a valid input +parameter for the AddVideoSourceConfiguration command on the media profile. The result +will vary depending on the capabilities, configurations and settings in the device. + + + + + This operation requests all audio encoder configurations of a device that are compatible with a certain media profile. Each of the returned configurations shall be a valid input parameter for the AddAudioSourceConfiguration command on the media profile. The result varies depending on the capabilities, configurations and settings in the device. + + + + + This operation requests all audio source configurations of the device that are compatible with a certain media profile. Each of the returned configurations shall be a valid input parameter for the AddAudioEncoderConfiguration command on the media profile. The result varies depending on the capabilities, configurations and settings in the device. + + + + + This operation requests all video analytic configurations of the device that are compatible with a certain media profile. Each of the returned configurations shall be a valid input parameter for the AddVideoAnalyticsConfiguration command on the media profile. The result varies depending on the capabilities, configurations and settings in the device. + + + + + This operation requests all the metadata configurations of the device that are compatible with a certain media profile. Each of the returned configurations shall be a valid input parameter for the AddMetadataConfiguration command on the media profile. The result varies depending on the capabilities, configurations and settings in the device. + + + + + This command lists all audio output configurations of a device that are compatible with a certain media profile. Each returned configuration shall be a valid input for the +AddAudioOutputConfiguration command. + + + + + This operation lists all the audio decoder configurations of the device that are compatible with a certain media profile. Each of the returned configurations shall be a valid input parameter for the AddAudioDecoderConfiguration command on the media profile. + + + + + + This operation modifies a video source configuration. The ForcePersistence flag indicates if the changes shall remain after reboot of the device. Running streams using this configuration may be immediately updated according to the new settings. The changes are not guaranteed to take effect unless the client requests a new stream URI and restarts any affected stream. NVC methods for changing a running stream are out of scope for this specification. + + + + + This operation modifies a video encoder configuration. The ForcePersistence flag indicates if the changes shall remain after reboot of the device. Changes in the Multicast settings shall always be persistent. Running streams using this configuration may be immediately updated according to the new settings. The changes are not guaranteed to take effect unless the client requests a new stream URI and restarts any affected stream. NVC methods for changing a running stream are out of scope for this specification.
SessionTimeout is provided as a hint for keeping rtsp session by a device. If necessary the device may adapt parameter values for SessionTimeout elements without returning an error. For the time between keep alive calls the client shall adhere to the timeout value signaled via RTSP.
+ + +
+ + This operation modifies an audio source configuration. The ForcePersistence flag indicates if +the changes shall remain after reboot of the device. Running streams using this configuration +may be immediately updated according to the new settings. The changes are not guaranteed +to take effect unless the client requests a new stream URI and restarts any affected stream +NVC methods for changing a running stream are out of scope for this specification. + + + + + This operation modifies an audio encoder configuration. The ForcePersistence flag indicates if +the changes shall remain after reboot of the device. Running streams using this configuration may be immediately updated +according to the new settings. The changes are not guaranteed to take effect unless the client +requests a new stream URI and restarts any affected streams. NVC methods for changing a +running stream are out of scope for this specification. + + + + + A video analytics configuration is modified using this command. The ForcePersistence flag +indicates if the changes shall remain after reboot of the device or not. Running streams using +this configuration shall be immediately updated according to the new settings. Otherwise +inconsistencies can occur between the scene description processed by the rule engine and +the notifications produced by analytics engine and rule engine which reference the very same +video analytics configuration token. + + + + + This operation modifies a metadata configuration. The ForcePersistence flag indicates if the +changes shall remain after reboot of the device. Changes in the Multicast settings shall +always be persistent. Running streams using this configuration may be updated immediately +according to the new settings. The changes are not guaranteed to take effect unless the client +requests a new stream URI and restarts any affected streams. NVC methods for changing a +running stream are out of scope for this specification. + + + + + This operation modifies an audio output configuration. The ForcePersistence flag indicates if +the changes shall remain after reboot of the device. + + + + + This operation modifies an audio decoder configuration. The ForcePersistence flag indicates if +the changes shall remain after reboot of the device. + + + + + + This operation returns the available options (supported values and ranges for video source configuration parameters) when the video source parameters are +reconfigured If a video source configuration is specified, the options shall concern that +particular configuration. If a media profile is specified, the options shall be compatible with +that media profile. + + + + + This operation returns the available options (supported values and ranges for video encoder + configuration parameters) when the video encoder parameters are reconfigured.
+ For JPEG, MPEG4 and H264 extension elements have been defined that provide additional information. A device must provide the + XxxOption information for all encodings supported and should additionally provide the corresponding XxxOption2 information.
+ This response contains the available video encoder configuration options. If a video encoder configuration is specified, + the options shall concern that particular configuration. If a media profile is specified, the options shall be + compatible with that media profile. If no tokens are specified, the options shall be considered generic for the device. +
+ + +
+ + This operation returns the available options (supported values and ranges for audio source configuration parameters) when the audio source parameters are +reconfigured. If an audio source configuration is specified, the options shall concern that +particular configuration. If a media profile is specified, the options shall be compatible with +that media profile. + + + + + This operation returns the available options (supported values and ranges for audio encoder configuration parameters) when the audio encoder parameters are +reconfigured. + + + + + This operation returns the available options (supported values and ranges for metadata configuration parameters) for changing the metadata configuration. + + + + + This operation returns the available options (supported values and ranges for audio output configuration parameters) for configuring an audio output. + + + + + This command list the audio decoding capabilities for a given profile and configuration of a +device. + + + + + + The GetGuaranteedNumberOfVideoEncoderInstances command can be used to request the +minimum number of guaranteed video encoder instances (applications) per Video Source +Configuration. + + + + + + This operation requests a URI that can be used to initiate a live media stream using RTSP as +the control protocol. The returned URI shall remain valid indefinitely even if the profile is +changed. The ValidUntilConnect, ValidUntilReboot and Timeout Parameter shall be set +accordingly (ValidUntilConnect=false, ValidUntilReboot=false, timeout=PT0S).
+ The correct syntax for the StreamSetup element for these media stream setups defined in 5.1.1 of the streaming specification are as follows: +
    +
  1. RTP unicast over UDP: StreamType = "RTP_unicast", TransportProtocol = "UDP"
  2. +
  3. RTP over RTSP over HTTP over TCP: StreamType = "RTP_unicast", TransportProtocol = "HTTP"
  4. +
  5. RTP over RTSP over TCP: StreamType = "RTP_unicast", TransportProtocol = "RTSP"
  6. +
+
+If a multicast stream is requested the VideoEncoderConfiguration, AudioEncoderConfiguration and MetadataConfiguration element inside the corresponding +media profile must be configured with valid multicast settings.
+For full compatibility with other ONVIF services a device should not generate Uris longer than +128 octets.
+ + +
+ + This command starts multicast streaming using a specified media profile of a device. +Streaming continues until StopMulticastStreaming is called for the same Profile. The +streaming shall continue after a reboot of the device until a StopMulticastStreaming request is +received. The multicast address, port and TTL are configured in the +VideoEncoderConfiguration, AudioEncoderConfiguration and MetadataConfiguration +respectively. + + + + + This command stop multicast streaming using a specified media profile of a device + + + + + Synchronization points allow clients to decode and correctly use all data after the +synchronization point. +For example, if a video stream is configured with a large I-frame distance and a client loses a +single packet, the client does not display video until the next I-frame is transmitted. In such +cases, the client can request a Synchronization Point which enforces the device to add an I-Frame as soon as possible. Clients can request Synchronization Points for profiles. The device +shall add synchronization points for all streams associated with this profile. +Similarly, a synchronization point is used to get an update on full PTZ or event status through +the metadata stream. +If a video stream is associated with the profile, an I-frame shall be added to this video stream. +If a PTZ metadata stream is associated to the profile, +the PTZ position shall be repeated within the metadata stream. + + + + + A client uses the GetSnapshotUri command to obtain a JPEG snapshot from the +device. The returned URI shall remain valid indefinitely even if the profile is changed. The +ValidUntilConnect, ValidUntilReboot and Timeout Parameter shall be set accordingly +(ValidUntilConnect=false, ValidUntilReboot=false, timeout=PT0S). The URI can be used for +acquiring a JPEG image through a HTTP GET operation. The image encoding will always be +JPEG regardless of the encoding setting in the media profile. The Jpeg settings +(like resolution or quality) may be taken from the profile if suitable. The provided +image will be updated automatically and independent from calls to GetSnapshotUri. + + + + + A device returns the information for current video source mode and settable video source modes of specified video source. A device that indicates a capability of VideoSourceModes shall support this command. + + + + + SetVideoSourceMode changes the media profile structure relating to video source for the specified video source mode. A device that indicates a capability of VideoSourceModes shall support this command. The behavior after changing the mode is not defined in this specification. + + + + + + Get the OSDs. + + + + + Get the OSD. + + + + + Get the OSD Options. + + + + + Set the OSD + + + + + Create the OSD. + + + + + Delete the OSD. + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
diff --git a/wsdl/provisioning.wsdl b/wsdl/provisioning.wsdl new file mode 100644 index 0000000..d1a4e4a --- /dev/null +++ b/wsdl/provisioning.wsdl @@ -0,0 +1,587 @@ + + + + + + + + + + + + + The direction for PanMove to move the device. + + + + + Move left in relation to the video source image. + + + + + Move right in relation to the video source image. + + + + + + + + The direction for TiltMove to move the device. + + + + + Move up in relation to the video source image. + + + + + Move down in relation to the video source image. + + + + + + + + The direction for ZoomMove to change the focal length in relation to the video source. + + + + + Move video source lens toward a wider field of view. + + + + + Move video source lens toward a narrower field of view. + + + + + + + + The direction for RollMove to move the device. + + + + + Move clockwise in relation to the video source image. + + + + + Move counterclockwise in relation to the video source image. + + + + + Automatically level the device in relation to the video source image. + + + + + + + + The direction for FocusMove to move the focal plane in relation to the video source. + + + + + Move to focus on close objects. + + + + + Move to focus on distant objects. + + + + + Automatically focus for the sharpest video source image. + + + + + + + + The quantity of movement events that have occured over the lifetime of the device. + + + + + The quantity of pan movement events over the life of the device. + + + + + The quantity of tilt movement events over the life of the device. + + + + + The quantity of zoom movement events over the life of the device. + + + + + The quantity of roll movement events over the life of the device. + + + + + The quantity of focus movement events over the life of the device. + + + + + + + + + + + The provisioning capabilities of a video source on the device. + + + + + + + + Unique identifier of a video source. + + + + + Lifetime limit of pan moves for this video source. Presence of this attribute indicates support of pan move. + + + + + Lifetime limit of tilt moves for this video source. Presence of this attribute indicates support of tilt move. + + + + + Lifetime limit of zoom moves for this video source. Presence of this attribute indicates support of zoom move. + + + + + Lifetime limit of roll moves for this video source. Presence of this attribute indicates support of roll move. + + + + + Indicates "auto" as a valid enum for Direction in RollMove. + + + + + Lifetime limit of focus moves for this video source. Presence of this attribute indicates support of focus move. + + + + + Indicates "auto" as a valid enum for Direction in FocusMove. + + + + + + + + The capabilities of Provisioning Service on the device. + + + + + Maximum time before stopping movement after a move operation. + + + + + Capabilities per video source. + + + + + + + + + + + + + + + + + + + + + The capabilities for the provisioning service on this device. + + + + + + + + + + + + The video source associated with the provisioning. + + + + + "left" or "right". + + + + + "Operation timeout, if less than default timeout. + + + + + + + + + + + + + + + + + The video source associated with the provisioning. + + + + + "up" or "down". + + + + + "Operation timeout, if less than default timeout. + + + + + + + + + + + + + + + + + The video source associated with the provisioning. + + + + + "wide" or "telephoto". + + + + + "Operation timeout, if less than default timeout. + + + + + + + + + + + + + + + + + The video source associated with the provisioning. + + + + + "clockwise", "counterclockwise", or "auto". + + + + + "Operation timeout, if less than default timeout. + + + + + + + + + + + + + + + + + The video source associated with the provisioning. + + + + + "near", "far", or "auto". + + + + + "Operation timeout, if less than default timeout. + + + + + + + + + + + + + + + + + The video source associated with the provisioning. + + + + + + + + + + + + + + + + + The video source associated with the provisioning. + + + + + + + + + + + The set of lifetime usage values for the provisioning associated with the video source. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Functionality for all provisioning service operations. + + Returns the capabilities of the provisioning service. + + + + + Moves device on the pan axis. + + + + + Moves device on the tilt axis. + + + + + Moves device on the zoom axis. + + + + + Moves device on the roll axis. + + + + + Moves device on the focus axis. + + + + + Stops device motion on all axes. + + + + + Returns the lifetime move counts. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/wsdl/ptz.wsdl b/wsdl/ptz.wsdl new file mode 100644 index 0000000..8a77b22 --- /dev/null +++ b/wsdl/ptz.wsdl @@ -0,0 +1,1370 @@ + + + + + + + + + + + + + + + + + + + + The capabilities for the PTZ service is returned in the Capabilities element. + + + + + + + + + + + + + Indicates whether or not EFlip is supported. + + + + + Indicates whether or not reversing of PT control direction is supported. + + + + + Indicates support for the GetCompatibleConfigurations command. + + + + + Indicates that the PTZStatus includes MoveStatus information. + + + + + Indicates that the PTZStatus includes Position information. + + + + + + + + + + + + + + + A list of the existing PTZ Nodes on the device. + + + + + + + + + + + + + Token of the requested PTZNode. + + + + + + + + + + + + A requested PTZNode. + + + + + + + + + + + + + + + + A list of all existing PTZConfigurations on the device. + + + + + + + + + + + + + Token of the requested PTZConfiguration. + + + + + + + + + + + + A requested PTZConfiguration. + + + + + + + + + + + + + + + + + + + Flag that makes configuration persistent. Example: User wants the configuration to exist after reboot. + + + + + + + + + + + + + + + + + + Token of an existing configuration that the options are intended for. + + + + + + + + + + + + The requested PTZ configuration options. + + + + + + + + + + + + + A reference to the MediaProfile where the operation should take place. + + + + + + The Auxiliary request data. + + + + + + + + + + + + The response contains the auxiliary response. + + + + + + + + + + + + + A reference to the MediaProfile where the operation should take place. + + + + + + + + + + + + A list of presets which are available for the requested MediaProfile. + + + + + + + + + + + + + A reference to the MediaProfile where the operation should take place. + + + + + + A requested preset name. + + + + + + A requested preset token. + + + + + + + + + + + + A token to the Preset which has been set. + + + + + + + + + + + + + A reference to the MediaProfile where the operation should take place. + + + + + + A requested preset token. + + + + + + + + + + + + + + + + A reference to the MediaProfile where the operation should take place. + + + + + + A requested preset token. + + + + + + A requested speed.The speed parameter can only be specified when Speed Spaces are available for the PTZ Node. + + + + + + + + + + + + + + + + A reference to the MediaProfile where the PTZStatus should be requested. + + + + + + + + + + + + The PTZStatus for the requested MediaProfile. + + + + + + + + + + + + + A reference to the MediaProfile where the operation should take place. + + + + + + A requested speed.The speed parameter can only be specified when Speed Spaces are available for the PTZ Node. + + + + + + + + + + + + + + + + + + A reference to the MediaProfile where the home position should be set. + + + + + + + + + + + + + + + + + + A reference to the MediaProfile. + + + + + + A Velocity vector specifying the velocity of pan, tilt and zoom. + + + + + + An optional Timeout parameter. + + + + + + + + + + + + + + + + + + A reference to the MediaProfile. + + + + + + A positional Translation relative to the current position + + + + + + An optional Speed parameter. + + + + + + + + + + + + + + + + + + A reference to the MediaProfile. + + + + + + A Position vector specifying the absolute target position. + + + + + + An optional Speed. + + + + + + + + + + + + + + + + + + A reference to the MediaProfile. + + + + + + The geolocation of the target position. + + + + + + An optional Speed. + + + + + + An optional indication of the height of the target/area. + + + + + + An optional indication of the width of the target/area. + + + + + + + + + + + + + + + + + + A reference to the MediaProfile that indicate what should be stopped. + + + + + + Set true when we want to stop ongoing pan and tilt movements.If PanTilt arguments are not present, this command stops these movements. + + + + + + Set true when we want to stop ongoing zoom movement.If Zoom arguments are not present, this command stops ongoing zoom movement. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Contains the token of an existing media profile the configurations shall be compatible with. + + + + + + + + + + + A list of all existing PTZConfigurations on the NVT that is suitable to be added to the addressed media profile. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Returns the capabilities of the PTZ service. The result is returned in a typed answer. + + + + + + Get the descriptions of the available PTZ Nodes. +
+ A PTZ-capable device may have multiple PTZ Nodes. The PTZ Nodes may represent + mechanical PTZ drivers, uploaded PTZ drivers or digital PTZ drivers. PTZ Nodes are the + lowest level entities in the PTZ control API and reflect the supported PTZ capabilities. The + PTZ Node is referenced either by its name or by its reference token. +
+ + +
+ + Get a specific PTZ Node identified by a reference + token or a name. + + + + + + Get a specific PTZconfiguration from the device, identified by its reference token or name. +
+ The default Position/Translation/Velocity Spaces are introduced to allow NVCs sending move + requests without the need to specify a certain coordinate system. The default Speeds are + introduced to control the speed of move requests (absolute, relative, preset), where no + explicit speed has been set.
+ The allowed pan and tilt range for Pan/Tilt Limits is defined by a two-dimensional space range + that is mapped to a specific Absolute Pan/Tilt Position Space. At least one Pan/Tilt Position + Space is required by the PTZNode to support Pan/Tilt limits. The limits apply to all supported + absolute, relative and continuous Pan/Tilt movements. The limits shall be checked within the + coordinate system for which the limits have been specified. That means that even if + movements are specified in a different coordinate system, the requested movements shall be + transformed to the coordinate system of the limits where the limits can be checked. When a + relative or continuous movements is specified, which would leave the specified limits, the PTZ + unit has to move along the specified limits. The Zoom Limits have to be interpreted + accordingly. +
+ + +
+ + + Get all the existing PTZConfigurations from the device. +
+ The default Position/Translation/Velocity Spaces are introduced to allow NVCs sending move + requests without the need to specify a certain coordinate system. The default Speeds are + introduced to control the speed of move requests (absolute, relative, preset), where no + explicit speed has been set.
+ The allowed pan and tilt range for Pan/Tilt Limits is defined by a two-dimensional space range + that is mapped to a specific Absolute Pan/Tilt Position Space. At least one Pan/Tilt Position + Space is required by the PTZNode to support Pan/Tilt limits. The limits apply to all supported + absolute, relative and continuous Pan/Tilt movements. The limits shall be checked within the + coordinate system for which the limits have been specified. That means that even if + movements are specified in a different coordinate system, the requested movements shall be + transformed to the coordinate system of the limits where the limits can be checked. When a + relative or continuous movements is specified, which would leave the specified limits, the PTZ + unit has to move along the specified limits. The Zoom Limits have to be interpreted + accordingly. +
+ + +
+ + + Set/update a existing PTZConfiguration on the device. + + + + + + + List supported coordinate systems including their range limitations. Therefore, the options + MAY differ depending on whether the PTZ Configuration is assigned to a Profile containing a + Video Source Configuration. In that case, the options may additionally contain coordinate + systems referring to the image coordinate system described by the Video Source + Configuration. If the PTZ Node supports continuous movements, it shall return a Timeout Range within + which Timeouts are accepted by the PTZ Node. + + + + + + + Operation to send auxiliary commands to the PTZ device + mapped by the PTZNode in the selected profile. The + operation is supported + if the AuxiliarySupported element of the PTZNode is true + + + + + + + Operation to request all PTZ presets for the PTZNode + in the selected profile. The operation is supported if there is support + for at least on PTZ preset by the PTZNode. + + + + + + The SetPreset command saves the current device position parameters so that the device can + move to the saved preset position through the GotoPreset operation. + In order to create a new preset, the SetPresetRequest contains no PresetToken. If creation is + successful, the Response contains the PresetToken which uniquely identifies the Preset. An + existing Preset can be overwritten by specifying the PresetToken of the corresponding Preset. + In both cases (overwriting or creation) an optional PresetName can be specified. The + operation fails if the PTZ device is moving during the SetPreset operation. + The device MAY internally save additional states such as imaging properties in the PTZ + Preset which then should be recalled in the GotoPreset operation. + + + + + + Operation to remove a PTZ preset for the Node in + the + selected profile. The operation is supported if the + PresetPosition + capability exists for teh Node in the + selected profile. + + + + + + + Operation to go to a saved preset position for the + PTZNode in the selected profile. The operation is supported if there is + support for at least on PTZ preset by the PTZNode. + + + + + + Operation to move the PTZ device to it's "home" position. The operation is supported if the HomeSupported element in the PTZNode is true. + + + + + Operation to save current position as the home position. + The SetHomePosition command returns with a failure if the “home” position is fixed and + cannot be overwritten. If the SetHomePosition is successful, it is possible to recall the + Home Position with the GotoHomePosition command. + + + + + Operation for continuous Pan/Tilt and Zoom movements. The operation is supported if the PTZNode supports at least one continuous Pan/Tilt or Zoom space. If the space argument is omitted, the default space set by the PTZConfiguration will be used. + + + + + Operation for Relative Pan/Tilt and Zoom Move. The operation is supported if the PTZNode supports at least one relative Pan/Tilt or Zoom space.
+ The speed argument is optional. If an x/y speed value is given it is up to the device to either use + the x value as absolute resoluting speed vector or to map x and y to the component speed. + If the speed argument is omitted, the default speed set by the PTZConfiguration will be used. +
+ + +
+ + + Operation to request PTZ status for the Node in the + selected profile. + + + + + Operation to move pan,tilt or zoom to a absolute destination.
+ The speed argument is optional. If an x/y speed value is given it is up to the device to either use + the x value as absolute resoluting speed vector or to map x and y to the component speed. + If the speed argument is omitted, the default speed set by the PTZConfiguration will be used. +
+ + +
+ + Operation to move pan,tilt or zoom to point to a destination based on the geolocation of the target.
+ The speed argument is optional. If an x/y speed value is given it is up to the device to either use + the x value as absolute resoluting speed vector or to map x and y to the component speed. + If the speed argument is omitted, the default speed set by the PTZConfiguration will be used. + The area height and area dwidth parameters are optional, they can be used independently and may be used + by the device to automatically determine the best zoom level to show the target. +
+ + +
+ + Operation to stop ongoing pan, tilt and zoom movements of absolute relative and continuous type. +If no stop argument for pan, tilt or zoom is set, the device will stop all ongoing pan, tilt and zoom movements. + + + + + Operation to request PTZ preset tours in the selected media profiles. + + + + + Operation to request a specific PTZ preset tour in the selected media profile. + + + + + Operation to request available options to configure PTZ preset tour. + + + + + Operation to create a preset tour for the selected media profile. + + + + + Operation to modify a preset tour for the selected media profile. + + + + + Operation to perform specific operation on the preset tour in selected media profile. + + + + + Operation to delete a specific preset tour from the media profile. + + + + + Operation to get all available PTZConfigurations that can be added to the referenced media profile.
+ A device providing more than one PTZConfiguration or more than one VideoSourceConfiguration or which has any other resource + interdependency between PTZConfiguration entities and other resources listable in a media profile should implement this operation. + PTZConfiguration entities returned by this operation shall not fail on adding them to the referenced media profile. +
+ + +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
diff --git a/wsdl/receiver.wsdl b/wsdl/receiver.wsdl new file mode 100644 index 0000000..db3c771 --- /dev/null +++ b/wsdl/receiver.wsdl @@ -0,0 +1,398 @@ + + + + + + + + + + + + + + + + + + + + The capabilities for the receiver service is returned in the Capabilities element. + + + + + + + + + + + + + Indicates that the device can receive RTP multicast streams. + + + + + Indicates that the device can receive RTP/TCP streams + + + + + Indicates that the device can receive RTP/RTSP/TCP streams. + + + + + The maximum number of receivers supported by the device. + + + + + The maximum allowed length for RTSP URIs (Minimum and default value is 128 octet). + + + + + + + + + + + + + + + + + + A list of all receivers that currently exist on the device. + + + + + + + + + + + The token of the receiver to be retrieved. + + + + + + + + + + + The details of the receiver. + + + + + + + + + + + The initial configuration for the new receiver. + + + + + + + + + + + The details of the receiver that was created. + + + + + + + + + + + The token of the receiver to be deleted. + + + + + + + + + + + + + + + + + The token of the receiver to be configured. + + + + + The new configuration for the receiver. + + + + + + + + + + + + + + + + + The token of the receiver to be changed. + + + + + The new receiver mode. Options available are: + + + + + + + + + + + + + + + + + The token of the receiver to be queried. + + + + + + + + + + + Description of the current receiver state. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Returns the capabilities of the receiver service. The result is returned in a typed answer. + + + + + + Lists all receivers currently present on a device. This operation is mandatory. + + + + + + + Retrieves the details of a specific receiver. This operation is mandatory. + + + + + + + Creates a new receiver. This operation is mandatory, although the service may + raise a fault if the receiver cannot be created. + + + + + + + Deletes an existing receiver. A receiver may be deleted only if it is not + currently in use; otherwise a fault shall be raised. + This operation is mandatory. + + + + + + + Configures an existing receiver. This operation is mandatory. + + + + + + + Sets the mode of the receiver without affecting the rest of its configuration. + This operation is mandatory. + + + + + + + Determines whether the receiver is currently disconnected, connected or + attempting to connect. + This operation is mandatory. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/wsdl/recording.wsdl b/wsdl/recording.wsdl new file mode 100644 index 0000000..c8de761 --- /dev/null +++ b/wsdl/recording.wsdl @@ -0,0 +1,1137 @@ + + + + + + + + + + + + + + + + + + + + The capabilities for the recording service is returned in the Capabilities element. + + + + + + + + + + + + + Indication if the device supports dynamic creation and deletion of recordings + + + + + Indication if the device supports dynamic creation and deletion of tracks + + + + + Indication which encodings are supported for recording. The list may contain one or more enumeration values of tt:VideoEncoding and tt:AudioEncoding. For encodings that are neither defined in tt:VideoEncoding nor tt:AudioEncoding the device shall use the IANA defintions. Note, that a device without audio support shall not return audio encodings. + + + + + Maximum supported bit rate for all tracks of a recording in kBit/s. + + + + + Maximum supported bit rate for all recordings in kBit/s. + + + + + Maximum number of recordings supported. (Integer values only.) + + + + + Maximum total number of supported recording jobs by the device. + + + + + Indication if the device supports the GetRecordingOptions command. + + + + + Indication if the device supports recording metadata. + + + + + + Indication that the device supports ExportRecordedData command for the listed export file formats. + The list shall return at least one export file format value. The value of 'ONVIF' refers to + ONVIF Export File Format specification. + + + + + + + + + + + + + + + + Initial configuration for the recording. + + + + + + + + + + + The reference to the created recording. + + + + + + + + + + + The reference of the recording to be deleted. + + + + + + + + + + + + + + + + + + + + + + + List of recording items. + + + + + + + + + + + Token of the recording that shall be changed. + + + + + The new configuration. + + + + + + + + + + + + + + + + + Token of the configuration to be retrieved. + + + + + + + + + + + Configuration of the recording. + + + + + + + + + + + Identifies the recording to which a track shall be added. + + + + + The configuration of the new track. + + + + + + + + + + + The TrackToken shall identify the newly created track. The + TrackToken shall be unique within the recoding to which + the new track belongs. + + + + + + + + + + + Token of the recording the track belongs to. + + + + + Token of the track to be deleted. + + + + + + + + + + + + + + + + + Token of the recording the track belongs to. + + + + + Token of the track. + + + + + + + + + + + Configuration of the track. + + + + + + + + + + + Token of the recording the track belongs to. + + + + + Token of the track to be modified. + + + + + New configuration for the track. + + + + + + + + + + + + + + + + + The initial configuration of the new recording job. + + + + + + + + + + + The JobToken shall identify the created recording job. + + + + + + The JobConfiguration structure shall be the configuration as it is used by the device. This may be different from the + JobConfiguration passed to CreateRecordingJob. + + + + + + + + + + + The token of the job to be deleted. + + + + + + + + + + + + + + + + + + + + + + + List of recording jobs. + + + + + + + + + + + Token of the job to be modified. + + + + + New configuration of the recording job. + + + + + + + + + + + The JobConfiguration structure shall be the configuration + as it is used by the device. This may be different from the JobConfiguration passed to SetRecordingJobConfiguration. + + + + + + + + + + + Token of the recording job. + + + + + + + + + + + Current configuration of the recording job. + + + + + + + + + + + Token of the recording job. + + + + + The new mode for the recording job. + + + + + + + + + + + + + + + + + Token of the recording job. + + + + + + + + + + + The current state of the recording job. + + + + + + + + + + + Token of the recording. + + + + + + + + + + + Configuration of the recording. + + + + + + + + + + + + + Optional parameter that specifies start time for the exporting. + + + + + Optional parameter that specifies end time for the exporting. + + + + + Indicates the selection criterion on the existing recordings. . + + + + + Indicates which export file format to be used. + + + + + Indicates the target storage and relative directory path. + + + + + + + + + + + Unique operation token for client to associate the relevant events. + + + + + List of exported file names. The device can also use AsyncronousOperationStatus event to publish this list. + + + + + + + + Extensibility point. + + + + + + + + + + + + + + + Unique ExportRecordedData operation token + + + + + + + + + + + Progress percentage of ExportRecordedData operation. + + + + + + + + + + Extensibility point. + + + + + + + + + + + + Unique ExportRecordedData operation token + + + + + + + + + + + Progress percentage of ExportRecordedData operation. + + + + + + + + + + Extensibility point. + + + + + + + + + + + + + + + + + + Number of spare jobs that can be created for the recording. + + + + + A device that supports recording of a restricted set of Media Service Profiles returns the list of profiles that can be recorded on the given Recording. + + + + + + + + Total spare number of tracks that can be added to this recording. + + + + + Number of spare Video tracks that can be added to this recording. + + + + + Number of spare Aduio tracks that can be added to this recording. + + + + + Number of spare Metadata tracks that can be added to this recording. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Returns the capabilities of the recording service. The result is returned in a typed answer. + + + + + CreateRecording shall create a new recording. The new recording shall be created with a track + for each supported TrackType see Recording Control Spec.
+ This method is optional. It shall be available if the Recording/DynamicRecordings capability is TRUE.
+ When successfully completed, CreateRecording shall have created three tracks with the following configurations:
    +
  • + TrackToken TrackType
  • +
  • + VIDEO001 Video
  • +
  • + AUDIO001 Audio
  • +
  • + META001 Metadata
  • +
+ All TrackConfigurations shall have the MaximumRetentionTime set to 0 (unlimited), and the + Description set to the empty string. +
+ + +
+ + DeleteRecording shall delete a recording object. Whenever a recording is deleted, the device + shall delete all the tracks that are part of the recording, and it shall delete all the Recording + Jobs that record into the recording. For each deleted recording job, the device shall also + delete all the receiver objects associated with the recording job that are automatically created + using the AutoCreateReceiver field of the recording job configuration structure and are not + used in any other recording job.
+ This method is optional. It shall be available if the Recording/DynamicRecordings capability is TRUE. +
+ + +
+ + GetRecordings shall return a description of all the recordings in the device. This description + shall include a list of all the tracks for each recording. + + + + + SetRecordingConfiguration shall change the configuration of a recording. + + + + + GetRecordingConfiguration shall retrieve the recording configuration for a recording. + + + + + GetRecordingOptions returns information for a recording identified by the RecordingToken. The information includes the number of additonal tracks as well as recording jobs that can be configured. + + + + + This method shall create a new track within a recording.
+ This method is optional. It shall be available if the Recording/DynamicTracks capability is TRUE.
+ A TrackToken in itself does not uniquely identify a specific track. Tracks within different + recordings may have the same TrackToken. +
+ + +
+ + DeleteTrack shall remove a track from a recording. All the data in the track shall be deleted.
+ This method is optional. It shall be available if the Recording/DynamicTracks capability is + TRUE.
+ + +
+ + GetTrackConfiguration shall retrieve the configuration for a specific track. + + + + + SetTrackConfiguration shall change the configuration of a track. + + + + + CreateRecordingJob shall create a new recording job.
+ The JobConfiguration returned from CreateRecordingJob shall be identical to the + JobConfiguration passed into CreateRecordingJob, except for the ReceiverToken and the + AutoCreateReceiver. In the returned structure, the ReceiverToken shall be present and valid + and the AutoCreateReceiver field shall be omitted. +
+ + +
+ + DeleteRecordingJob removes a recording job. It shall also implicitly delete all the receiver + objects associated with the recording job that are automatically created using the + AutoCreateReceiver field of the recording job configuration structure and are not used in any + other recording job. + + + + + GetRecordingJobs shall return a list of all the recording jobs in the device. + + + + + SetRecordingJobConfiguration shall change the configuration for a recording job.
+ SetRecordingJobConfiguration shall implicitly delete any receiver objects that were created + automatically if they are no longer used as a result of changing the recording job configuration. +
+ + +
+ + GetRecordingJobConfiguration shall return the current configuration for a recording job. + + + + + SetRecordingJobMode shall change the mode of the recording job. Using this method shall be + equivalent to retrieving the recording job configuration, and writing it back with a different + mode. + + + + + GetRecordingJobState returns the state of a recording job. It includes an aggregated state, + and state for each track of the recording job. + + + + + + + Exports the selected recordings (from existing recorded data) to the given storage target based on the requested file format. + + + + + + + Stops the selected ExportRecordedData operation. + + + + + + + Retrieves the status of selected ExportRecordedData operation. + + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
diff --git a/wsdl/replay.wsdl b/wsdl/replay.wsdl new file mode 100644 index 0000000..0b8ebc6 --- /dev/null +++ b/wsdl/replay.wsdl @@ -0,0 +1,221 @@ + + + + + + + + + + + + + + + + + + + + The capabilities for the replay service is returned in the Capabilities element. + + + + + + + + + + + + + Indicator that the Device supports reverse playback as defined in the ONVIF Streaming Specification. + + + + + The list contains two elements defining the minimum and maximum valid values supported as session timeout in seconds. + + + + + Indicates support for RTP/RTSP/TCP. + + + + + If playback streaming over websocket supported, websocket URI is provided. The scheme and IP part shall match the one used in the request (e.g. the GetServices request). + + + + + + + + + + + + Specifies the connection parameters to be used for the stream. The URI that is returned may depend on these parameters. + + + + + The identifier of the recording to be streamed. + + + + + + + + + + + The URI to which the client should connect in order to stream the recording. + + + + + + + + + + + Description of the new replay configuration parameters. + + + + + + + + + + + + + + + + + + + + + + + The current replay configuration parameters. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Returns the capabilities of the replay service. The result is returned in a typed answer. + + + + + + Requests a URI that can be used to initiate playback of a recorded stream + using RTSP as the control protocol. The URI is valid only as it is + specified in the response. + This operation is mandatory. + + + + + + + Returns the current configuration of the replay service. + This operation is mandatory. + + + + + + + Changes the current configuration of the replay service. + This operation is mandatory. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/wsdl/schedule.wsdl b/wsdl/schedule.wsdl new file mode 100644 index 0000000..832593a --- /dev/null +++ b/wsdl/schedule.wsdl @@ -0,0 +1,1288 @@ + + + + + + + + + + + + + The service capabilities reflect optional functionality of a service. + The information is static and does not change during device operation. + The following capabilities are available: + + + + + + + + + The maximum number of entries returned by a single Get<Entity>List or + Get<Entity> request. The device shall never return more than this number + of entities in a single response. + + + + + + + Indicates the maximum number of schedules the device supports. + The device shall support at least one schedule. + + + + + + + Indicates the maximum number of time periods per day the device supports + in a schedule including special days schedule. The device shall support + at least one time period per day. + + + + + + + Indicates the maximum number of special day group entities the device supports. + The device shall support at least one ‘SpecialDayGroup’ entity. + + + + + + + Indicates the maximum number of days per ‘SpecialDayGroup’ entity the device + supports. The device shall support at least one day per ‘SpecialDayGroup’ entity. + + + + + + + Indicates the maximum number of ‘SpecialDaysSchedule’ entities referred by a + schedule that the device supports. + + + + + + + For schedules: + If this capability is supported, then all iCalendar recurrence types shall + be supported by the device. The device shall also support the start and end dates (or + iCalendar occurrence count) in recurring events (see iCalendar examples in section 3). + If this capability is not supported, then only the weekly iCalendar recurrence + type shall be supported. Non-recurring events and other recurring types are + not supported. The device shall only accept a start date with the year ‘1970’ + (the month and day is needed to reflect the week day of the recurrence) + and will not accept an occurrence count (or iCalendar until date) in recurring events. + For special days (only applicable if SpecialDaysSupported is set to true): + If this capability is supported, then all iCalendar recurrence types shall + be supported by the device. The device shall also support the start and + end dates (or occurrence count) in recurring events. + If this capability is not supported, then only non-recurring special days are supported. + + + + + + + If this capability is supported, then the device shall support special days. + + + + + + + If this capability is set to true, the device shall implement the + GetScheduleState command, and shall notify subscribing clients whenever + schedules become active or inactive. + + + + + + + + + + + The ScheduleInfo type represents the schedule as a physical object. + The structure contains information of a specific schedule instance. + + + + + + + + + A user readable name. It shall be up to 64 characters. + + + + + + + User readable description for the schedule. It shall be up to 1024 characters. + + + + + + + + + + + + + The schedule structure shall include all properties of the ScheduleInfo structure + and also the standard events (iCalendar format) and a list of SpecialDaysSchedule instances. + + + + + + + + + An iCalendar structure that defines a number of events. Events + can be recurring or non-recurring. The events can, for instance, + be used to control when a camera should record or when a facility + is accessible. Some devices might not be able to fully support + all the features of iCalendar. Setting the service capability + ExtendedRecurrenceSupported to false will enable more devices + to be ONVIF compliant. Is of type string (but contains an iCalendar structure). + + + + + + + For devices that are not able to support all the features of iCalendar, + supporting special days is essential. Each SpecialDaysSchedule + instance defines an alternate set of time periods that overrides + the regular schedule for a specified list of special days. + Is of type SpecialDaysSchedule. + + + + + + + + + + + + + + + + + + + + A override schedule that defines alternate time periods for a group of special days. + + + + + + + Indicates the list of special days in a schedule. + + + + + + + Indicates the alternate time periods for the list of special days + (overrides the regular schedule). For example, the regular schedule indicates + that it is active from 8AM to 5PM on Mondays. However, this particular + Monday is a special day, and the alternate time periods state that the + schedule is active from 9 AM to 11 AM and 1 PM to 4 PM. + If no time periods are defined, then no access is allowed. + Is of type TimePeriod. + + + + + + + + + + + + + + + + + + The ScheduleState contains state information for a schedule. + + + + + + + Indicates that the current time is within the boundaries of the schedule + or its special days schedules’ time periods. For example, if this + schedule is being used for triggering automatic recording on a video source, + the Active flag will be true when the schedule-based recording is supposed to record. + + + + + + + Indicates that the current time is within the boundaries of its special + days schedules’ time periods. For example, if this schedule is being used + for recording at a lower frame rate on a video source during special days, + the SpecialDay flag will be true. If special days are not supported by the device, + this field may be omitted and interpreted as false by the client. + + + + + + + + + + + + + + + + + + A time period defines a start and end time. For full day access, the + start time ="00:00:00" with no defined end time. For a time period with no + end time, the schedule runs until midnight. The end time must always be greater + than the start time, otherwise an InvalidArgVal error messages is generated by the device. + + + + + + + Indicates the start time. + + + + + + + Indicates the end time. Is optional, if omitted, the period ends at midnight. + The end time is exclusive, meaning that that exact moment in time is not + part of the period. To determine if a moment in time (t) is part of a time period, + the formula StartTime ≤ t < EndTime is used. + + + + + + + + + + + + + + + + + + The SpecialDayGroupInfo structure contains the basic information about the special days list. + + + + + + + + + User readable name. It shall be up to 64 characters. + + + + + + + User readable description for the special days. It shall be up to 1024 + characters. + + + + + + + + + + + + + The special day group structure shall include all properties of the SpecialDayGroupInfo + structure and also a set of special days. A special day group are days (or parts of days) + that require the regular schedule to be overridden with an alternate schedule. + For example holidays, half-days, working Sundays, etc. + + + + + + + + + An iCalendar structure that contains a group of special days. + Is of type string (containing an iCalendar structure). + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + The capability response message contains the requested schedule service + capabilities using a hierarchical XML capability structure. + + + + + + + + + + + + + + Token of schedule instance to get ScheduleState. + + + + + + + + + + + + + + ScheduleState item. + + + + + + + + + + + + + + Tokens of ScheduleInfo items to get. + + + + + + + + + + + + + + List of ScheduleInfo items. + + + + + + + + + + + + + + Maximum number of entries to return. If not specified, less than one + or higher than what the device supports, the number of items is + determined by the device. + + + + + + + Start returning entries from this start reference. + If not specified, entries shall start from the beginning of the dataset. + + + + + + + + + + + + + + StartReference to use in next call to get the following items. + If absent, no more items to get. + + + + + + + List of ScheduleInfo items. + + + + + + + + + + + + + Tokens of Schedule items to get + + + + + + + + + + + + List of schedule items. + + + + + + + + + + + + + Maximum number of entries to return. + If not specified, less than one or higher than what the device supports, + the number of items is determined by the device. + + + + + + + Start returning entries from this start reference. + If not specified, entries shall start from the beginning of the dataset. + + + + + + + + + + + + + + StartReference to use in next call to get the following items. + If absent, no more items to get. + + + + + + List of Schedule items. + + + + + + + + + + + + The Schedule to create + + + + + + + + + + + + The token of created Schedule + + + + + + + + + + + + The Schedule to modify/update + + + + + + + + + + + + + + + + + + + The token of the schedule to delete. + + + + + + + + + + + + + + + + + + + Tokens of SpecialDayGroupInfo items to get. + + + + + + + + + + + + List of SpecialDayGroupInfo items. + + + + + + + + + + + + + Maximum number of entries to return. If not specified, less than + one or higher than what the device supports, the number + of items is determined by the device. + + + + + + + Start returning entries from this start reference. + If not specified, entries shall start from the beginning of the dataset. + + + + + + + + + + + + + + StartReference to use in next call to get the following items. + If absent, no more items to get. + + + + + + List of SpecialDayGroupInfo items. + + + + + + + + + + + + Tokens of the SpecialDayGroup items to get + + + + + + + + + + + + List of SpecialDayGroup items. + + + + + + + + + + + + + Maximum number of entries to return. If not specified, less than + one or higher than what the device supports, the number of + items is determined by the device. + + + + + + + Start returning entries from this start reference. + If not specified, entries shall start from the beginning of the dataset. + + + + + + + + + + + + + StartReference to use in next call to get the following items. If + absent, no more items to get. + + + + + + List of SpecialDayGroup items. + + + + + + + + + + + + + The special day group to create. + + + + + + + + + + + + + The token of created special day group. + + + + + + + + + + + + + The special day group to modify/update. + + + + + + + + + + + + + + + + + + + + + The token of the special day group item to delete. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + This operation returns the capabilities of the schedule service. + + + + + + + This operation requests the ScheduleState for the schedule instance specified by the given token. + + + + + + + This method returns a list of schedule info items, specified in the request. + Only found schedules shall be returned, i.e., the returned numbers of elements can + differ from the requested element. + The device shall ignore tokens it cannot resolve and shall return an empty list if + there are no items matching the specified tokens. + If the number of requested items is greater than MaxLimit, a TooManyItems fault shall be returned. + + + + + + + This operation requests a list of all of ScheduleInfo items provided by the device. + A call to this method shall return a StartReference when not all data is returned + and more data is available. The reference shall be valid for retrieving the next set of data. + Please refer Access Control Service Specification for more details. + The number of items returned shall not be greater the Limit parameter. + + + + + + + This operation returns the specified schedule item matching the given tokens. + The device shall ignore tokens it cannot resolve and shall return an empty list + if there are no items matching the specified tokens. + If the number of requested items is greater than MaxLimit, a TooManyItems fault shall be returned + + + + + + + This operation requests a list of all of Schedule items provided by the device. + A call to this method shall return a StartReference when not all data is returned + and more data is available. The reference shall be valid for retrieving the next set of data. + Please refer Access Control Service Specification for more details. + The number of items returned shall not be greater the Limit parameter. + + + + + + + This operation creates the specified schedule. The token field of the schedule structure + shall be empty, the device shall allocate a token for the schedule. The allocated token + shall be returned in the response. If the client sends any value in the token field, + the device shall return InvalidArgVal as generic fault code. + + + + + + + This operation modifies or updates the specified schedule. + + + + + + + This operation will delete the specified schedule. + If it is associated with one or more entities some devices may not be able to delete the schedule, + and consequently a ReferenceInUse fault shall be generated. + + + + + + + This operation requests a list of SpecialDayGroupInfo items matching the given tokens. + The device shall ignore tokens it cannot resolve and shall return an empty list if + there are no items matching specified tokens. The device shall not return a fault in this case. + If the number of requested items is greater than MaxLimit, a TooManyItems fault shall be returned. + + + + + + + This operation requests a list of all of SpecialDayGroupInfo items provided by the device. + A call to this method shall return a StartReference when not all data is returned and + more data is available. The reference shall be valid for retrieving the next set of data. + The number of items returned shall not be greater than Limit parameter. + + + + + + + This operation returns the specified special day group item matching the given token. + + + + + + + This operation requests a list of all of SpecialDayGroupList items provided by the device. + A call to this method shall return a StartReference when not all data is returned and + more data is available. The reference shall be valid for retrieving the next set of data. + Please refer Access Control Service Specification for more details. + The number of items returned shall not be greater the Limit parameter. + + + + + + + This operation creates the specified special day group. The token field of the + SpecialDayGroup structure shall be empty, the device shall allocate a token for the + special day group. The allocated token shall be returned in the response. + If there is any value in the token field, the device shall return InvalidArgVal as generic fault code. + + + + + + + This operation updates the specified special day group. + + + + + + + This method deletes the specified special day group. + If it is associated with one or more schedules some devices may not be able to delete + the special day group, and consequently a ReferenceInUse fault must be generated. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/wsdl/search.wsdl b/wsdl/search.wsdl new file mode 100644 index 0000000..c995be5 --- /dev/null +++ b/wsdl/search.wsdl @@ -0,0 +1,882 @@ + + + + + + + + + + + + + + + + + + + + The capabilities for the search service is returned in the Capabilities element. + + + + + + + + + + + + Indicates support for general virtual property events in the FindEvents method. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Scope defines the dataset to consider for this search. + + + + + The search will be completed after this many matches. If not specified, the search will continue until reaching the endpoint or until the session expires. + + + + + The time the search session will be kept alive after responding to this and subsequent requests. A device shall support at least values up to ten seconds. + + + + + + + + + + + + + + + + Gets results from a particular recording listingession. + + + + + + The search session to get results from. + + + + + The minimum number of results to return in one response. + + + + + The maximum number of results to return in one response. + + + + + The maximum time before responding to the request, even if the MinResults parameter is not fulfilled. + + + + + + + + + + + + + + + + Starts a search session and specifies the search parameters. + + + + + + The point of time where the search will start. + + + + + The point of time where the search will stop. This can be a time before the StartPoint, in which case the search is performed backwards in time. + + + + + + + Setting IncludeStartState to true means that the server should return virtual events representing the start state for any recording included in the scope. Start state events are limited to the topics defined in the SearchFilter that have the IsProperty flag set to true. + + + + + The search will be completed after this many matches. If not specified, the search will continue until reaching the endpoint or until the session expires. + + + + + The time the search session will be kept alive after responding to this and subsequent requests. A device shall support at least values up to ten seconds. + + + + + + + + + + + A unique reference to the search session created by this request. + + + + + + + + + Gets results from a particular search session. + + + + + + The search session to get results from. + + + + + The minimum number of results to return in one response. + + + + + The maximum number of results to return in one response. + + + + + The maximum time before responding to the request, even if the MinResults parameter is not fulfilled. + + + + + + + + + + + + + + + + Starts a search session and specifies the search parameters. + + + + + + The point of time where the search will start. + + + + + The point of time where the search will stop. This can be a time before the StartPoint, in which case the search is performed backwards in time. + + + + + + + The search will be completed after this many matches. If not specified, the search will continue until reaching the endpoint or until the session expires. + + + + + The time the search session will be kept alive after responding to this and subsequent requests. A device shall support at least values up to ten seconds. + + + + + + + + + + + A unique reference to the search session created by this request. + + + + + + + + + Gets results from a particular search session. + + + + + + The search session to get results from. + + + + + The minimum number of results to return in one response. + + + + + The maximum number of results to return in one response. + + + + + The maximum time before responding to the request, even if the MinResults parameter is not fulfilled. + + + + + + + + + + + + + + + + Starts a search session and specifies the search parameters. + + + + + + The point of time where the search will start. + + + + + The point of time where the search will stop. This can be a time before the StartPoint, in which case the search is performed backwards in time. + + + + + + + The search will be completed after this many matches. If not specified, the search will continue until reaching the endpoint or until the session expires. + + + + + The time the search session will be kept alive after responding to this and subsequent requests. A device shall support at least values up to ten seconds. + + + + + + + + + + + A unique reference to the search session created by this request. + + + + + + + + + Gets results from a particular search session. + + + + + + The search session to get results from. + + + + + The minimum number of results to return in one response. + + + + + The maximum number of results to return in one response. + + + + + The maximum time before responding to the request, even if the MinResults parameter is not fulfilled. + + + + + + + + + + + + + + + + Returns the state of an ongoing search session. + + + + + + The search session to get the state from. + + + + + + + + + + + + + + + + Ends an ongoing search session, freeing any resources. + + + + + + The search session to end. + + + + + + + + + + + The point of time the search had reached when it was ended. It is equal to the EndPoint specified in Find-operation if the search was completed. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Returns the capabilities of the search service. The result is returned in a typed answer. + + + + + + GetRecordingSummary is used to get a summary description of all recorded data. This + operation is mandatory to support for a device implementing the recording search service. + + + + + + Returns information about a single Recording specified by a RecordingToken. This operation + is mandatory to support for a device implementing the recording search service. + + + + + + Returns a set of media attributes for all tracks of the specified recordings at a specified point + in time. Clients using this operation shall be able to use it as a non blocking operation. A + device shall set the starttime and endtime of the MediaAttributes structure to equal values if + calculating this range would causes this operation to block. See MediaAttributes structure for + more information. This operation is mandatory to support for a device implementing the + recording search service. + + + + + + FindRecordings starts a search session, looking for recordings that matches the scope (See + 20.2.4) defined in the request. Results from the search are acquired using the + GetRecordingSearchResults request, specifying the search token returned from this request. + The device shall continue searching until one of the following occurs:
    +
  • The entire time range from StartPoint to EndPoint has been searched through.
  • +
  • The total number of matches has been found, defined by the MaxMatches parameter.
  • +
  • The session has been ended by a client EndSession request.
  • +
  • The session has been ended because KeepAliveTime since the last request related to + this session has expired.
  • +
+ The order of the results is undefined, to allow the device to return results in any order they + are found. This operation is mandatory to support for a device implementing the recording + search service.
+ + +
+ + + GetRecordingSearchResults acquires the results from a recording search session previously + initiated by a FindRecordings operation. The response shall not include results already + returned in previous requests for the same session. If MaxResults is specified, the response + shall not contain more than MaxResults results. The number of results relates to the number of recordings. + For viewing individual recorded data for a signal track use the FindEvents method.
+ GetRecordingSearchResults shall block until:
    +
  • + MaxResults results are available for the response if MaxResults is specified.
  • +
  • MinResults results are available for the response if MinResults is specified.
  • +
  • WaitTime has expired.
  • +
  • Search is completed or stopped.
  • +
+ This operation is mandatory to support for a device implementing the recording search service.
+ + +
+ + + FindEvents starts a search session, looking for recording events (in the scope that + matches the search filter defined in the request. Results from the search are + acquired using the GetEventSearchResults request, specifying the search token returned from + this request.
+ The device shall continue searching until one of the following occurs:
    +
  • + The entire time range from StartPoint to EndPoint has been searched through.
  • +
  • The total number of matches has been found, defined by the MaxMatches parameter.
  • +
  • The session has been ended by a client EndSession request.
  • +
  • The session has been ended because KeepAliveTime since the last request related to + this session has expired.
  • +
+ Results shall be ordered by time, ascending in case of forward search, or descending in case + of backward search. This operation is mandatory to support for a device implementing the + recording search service.
+ + +
+ + + GetEventSearchResults acquires the results from a recording event search session previously + initiated by a FindEvents operation. The response shall not include results already returned in + previous requests for the same session. If MaxResults is specified, the response shall not + contain more than MaxResults results.
+ GetEventSearchResults shall block until:
    +
  • + MaxResults results are available for the response if MaxResults is specified.
  • +
  • MinResults results are available for the response if MinResults is specified.
  • +
  • WaitTime has expired.
  • +
  • Search is completed or stopped.
  • +
+ This operation is mandatory to support for a device implementing the recording search service.
+ + +
+ + + FindPTZPosition starts a search session, looking for ptz positions in the scope (See 20.2.4) + that matches the search filter defined in the request. Results from the search are acquired + using the GetPTZPositionSearchResults request, specifying the search token returned from + this request.
+ The device shall continue searching until one of the following occurs:
    +
  • + The entire time range from StartPoint to EndPoint has been searched through.
  • +
  • The total number of matches has been found, defined by the MaxMatches parameter.
  • +
  • The session has been ended by a client EndSession request.
  • +
  • The session has been ended because KeepAliveTime since the last request related to + this session has expired.
  • +
+ This operation is mandatory to support whenever CanContainPTZ is true for any metadata + track in any recording on the device.
+ + +
+ + + GetPTZPositionSearchResults acquires the results from a ptz position search session + previously initiated by a FindPTZPosition operation. The response shall not include results + already returned in previous requests for the same session. If MaxResults is specified, the + response shall not contain more than MaxResults results.
+ GetPTZPositionSearchResults shall block until:
    +
  • + MaxResults results are available for the response if MaxResults is specified.
  • +
  • MinResults results are available for the response if MinResults is specified.
  • +
  • WaitTime has expired.
  • +
  • Search is completed or stopped.
  • +
+ This operation is mandatory to support whenever CanContainPTZ is true for any metadata + track in any recording on the device.
+ + +
+ + + GetSearchState returns the current state of the specified search session. This command is deprecated . + + + + + + EndSearch stops and ongoing search session, causing any blocking result request to return + and the SearchToken to become invalid. If the search was interrupted before completion, the + point in time that the search had reached shall be returned. If the search had not yet begun, + the StartPoint shall be returned. If the search was completed the original EndPoint supplied + by the Find operation shall be returned. When issuing EndSearch on a FindRecordings request the + EndPoint is undefined and shall not be used since the FindRecordings request doesn't have + StartPoint/EndPoint. This operation is mandatory to support for a device implementing the + recording search service. + + + + + + + FindMetadata starts a search session, looking for metadata in the scope (See 20.2.4) that + matches the search filter defined in the request. Results from the search are acquired using + the GetMetadataSearchResults request, specifying the search token returned from this + request.
+ The device shall continue searching until one of the following occurs:
    +
  • + The entire time range from StartPoint to EndPoint has been searched through.
  • +
  • The total number of matches has been found, defined by the MaxMatches parameter.
  • +
  • The session has been ended by a client EndSession request.
  • +
  • The session has been ended because KeepAliveTime since the last request related to + this session has expired.
  • +
+ This operation is mandatory to support if the MetaDataSearch capability is set to true in the + SearchCapabilities structure return by the GetCapabilities command in the Device service.
+ + +
+ + + GetMetadataSearchResults acquires the results from a recording search session previously + initiated by a FindMetadata operation. The response shall not include results already returned + in previous requests for the same session. If MaxResults is specified, the response shall not + contain more than MaxResults results.
+ GetMetadataSearchResults shall block until:
    +
  • + MaxResults results are available for the response if MaxResults is specified.
  • +
  • MinResults results are available for the response if MinResults is specified.
  • +
  • WaitTime has expired.
  • +
  • Search is completed or stopped.
  • +
+ This operation is mandatory to support if the MetaDataSearch capability is set to true in the + SearchCapabilities structure return by the GetCapabilities command in the Device service.
+ + +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
diff --git a/wsdl/thermal.wsdl b/wsdl/thermal.wsdl new file mode 100644 index 0000000..4dde63e --- /dev/null +++ b/wsdl/thermal.wsdl @@ -0,0 +1,777 @@ + + + + + + + + + + + + + + + + + + + Describes standard Color Palette types, used to facilitate Multi-language support and client display. + "Custom" Type shall be used when Color Palette Name does not match any of the types included in the standard classification. + + + + + + + + + + + + + + + + + + + Describes a Color Palette element. + + + + + + User readable Color Palette name. + + + + + + + + Unique identifier of this Color Palette. + + + + + Indicates Color Palette Type. Use tth:ColorPaletteType. + Used for multi-language support and display. + + + + + + + + Type describing a NUC Table element. + + + + + + User reabable name for the Non-Uniformity Correction (NUC) Table. + + + + + + + + Unique identifier of this NUC Table. + + + + + Low Temperature limit for application of NUC Table, in Kelvin. + + + + + High Temperature limit for application of NUC Table, in Kelvin. + + + + + + + + Type describing the Cooler settings. + + + + + + Indicates whether the Cooler is enabled (running) or not. + + + + + + + Number of hours the Cooler has been running (unit: hours). Read-only. + + + + + + + + + + Describes valid ranges for the thermal device cooler settings. + Only applicable to cooled thermal devices. + + + + + + Indicates the Device allows cooler status to be changed from running (Enabled) to stopped (Disabled), and viceversa. + + + + + + + + + + + + Holds default values that will be used in measurement modules when local parameters are not specified for the module (these are still required for valid temperature calculations). + Having ReflectedAmbientTemperature, Emissivity and DistanceToObject as mandatory ensures minimum parameters are available to obtain valid temperature values. + + + + + + + Reflected Ambient Temperature for the environment in which the thermal device and the object being measured is located. + + + + + + + Emissivity of the surface of the object on which temperature is being measured. + + + + + + + Distance from the thermal device to the measured object. + + + + + + + Relative Humidity in the environment in which the measurement is located. + + + + + + + Temperature of the atmosphere between the thermal device and the object being measured. + + + + + + + Transmittance value for the atmosphere between the thermal device and the object being measured. + + + + + + + Temperature of the optics elements between the thermal device and the object being measured. + + + + + + + Transmittance value for the optics elements between the thermal device and the object being measured. + + + + + + + + + + + + Describes valid ranges for the different radiometry parameters required for accurate temperature calculation. + + + + + + Valid range of temperature values, in Kelvin. + + + + + Valid range of emissivity values for the objects to measure. + + + + + Valid range of distance between camera and object for a valid temperature reading, in meters. + + + + + Valid range of relative humidity values, in percentage. + + + + + Valid range of temperature values, in Kelvin. + + + + + Valid range of atmospheric transmittance values. + + + + + Valid range of temperature values, in Kelvin. + + + + + Valid range of external optics transmittance. + + + + + + + + + + + + + + + Current Color Palette in use by the Thermal Device. + + + + + + + Polarity configuration of the Thermal Device. + + + + + + + Current Non-Uniformity Correction (NUC) Table in use by the Thermal Device. + + + + + + + Cooler settings of the Thermal Device. + + + + + + + + + + + + + + + + Current Thermal Settings for the VideoSource. + + + + + + + + + Reference token to the thermal VideoSource. + + + + + + + + + + + + + + Global Parameters for Radiometry Measurements. Shall exist if Radiometry Capability is reported, + and Global Parameters are supported by the device. + + + + + + + + + + + + + + + + List of Color Palettes available for the requested Thermal VideoSource. + + + + + + + List of Non-Uniformity Correction (NUC) Tables available for the requested Thermal VideoSource. + + + + + + + Specifies Cooler Options for cooled thermal devices. + + + + + + + + + + + + + + + Specifies valid ranges and options for the global radiometry parameters used as default parameter values + for temperature measurement modules (spots and boxes). + + + + + + + + + + + + + + + + + + + + The capabilities of the thermal service are returned in the Capabilities element. + + + + + + + + + + + + + Indicates whether or not radiometric thermal measurements are supported by the thermal device. + + + + + + + + + + + + + Reference token to the VideoSource for which the Thermal Configuration Options are requested. + + + + + + + + + + + + + + Valid ranges for the Thermal configuration parameters that are categorized as device specific. + + + + + + + + + + + + + + Reference token to the VideoSource for which the Thermal Settings are requested. + + + + + + + + + + + + + Thermal Settings for the VideoSource that was requested. + + + + + + + + + + + + + + + + + + + + + This element contains a list of thermal VideoSource configurations. + + + + + + + + + + + + + + + Reference token to the VideoSource for which the Thermal Settings are configured. + + + + + + + Thermal Settings to be configured. + + + + + + + + + + + + + + + + + + Reference token to the VideoSource for which the Thermal Radiometry Options are requested. + + + + + + + + + + + + + Valid ranges for the Thermal Radiometry parameters that are categorized as device specific. + + + + + + + + + + + + + + Reference token to the VideoSource for which the Radiometry Configuration is requested. + + + + + + + + + + + + + Radiometry Configuration for the VideoSource that was requested. + + + + + + + + + + + + + + Reference token to the VideoSource for which the Radiometry settings are configured. + + + + + + + Radiometry settings to be configured. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Returns the capabilities of the thermal service. The result is returned in a typed answer. + + + + + Gets the valid ranges for the Thermal parameters that have device specific ranges. + This command is mandatory for all devices implementing the Thermal service. The command shall return all supported parameters + and their ranges, such that these can be applied to the SetConfiguration command.
+
+ + +
+ + Gets the Thermal Configuration for the requested VideoSource. + + + + + + Gets the Thermal Configuration for all thermal VideoSources of the Device. + + + + + + Sets the Thermal Configuration for the requested VideoSource. + + + + + Gets the valid ranges for the Radiometry parameters that have device specific ranges. + The command shall return all supported parameters and their ranges, such that these can be applied + to the SetRadiometryConfiguration command.
+
+ + +
+ + Gets the Radiometry Configuration for the requested VideoSource. + + + + + Sets the Radiometry Configuration for the requested VideoSource. + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +