├── .gitignore ├── doc ├── media │ ├── logo.png │ ├── Core │ │ ├── image3.png │ │ ├── image4.png │ │ ├── image7.png │ │ ├── image2.jpeg │ │ ├── image6.jpeg │ │ └── image7.drawio │ ├── Ptz │ │ ├── image10.png │ │ ├── image11.png │ │ ├── image12.png │ │ ├── image13.png │ │ ├── image14.png │ │ ├── image2.jpeg │ │ ├── image3.png │ │ ├── image4.png │ │ ├── image5.emf │ │ ├── image6.emf │ │ ├── image7.emf │ │ ├── image8.emf │ │ ├── image9.png │ │ └── digitalSpace.svg │ ├── Media │ │ └── image2.jpeg │ ├── Media2 │ │ ├── image2.jpeg │ │ ├── image4.png │ │ ├── image5.png │ │ ├── image6.jpeg │ │ └── image7.jpeg │ ├── Security │ │ ├── image2.dia │ │ ├── image2.png │ │ ├── image3.png │ │ ├── image4.png │ │ ├── image6.dia │ │ └── image7.dia │ ├── Analytics │ │ ├── image19.png │ │ ├── image20.png │ │ ├── image21.jpeg │ │ ├── image22.png │ │ ├── image23.png │ │ ├── image24.png │ │ ├── image25.png │ │ ├── image26.png │ │ ├── image27.png │ │ ├── image28.png │ │ ├── image29.png │ │ ├── image30.png │ │ ├── image31.png │ │ ├── image32.png │ │ ├── image33.png │ │ ├── image34.png │ │ ├── image35.png │ │ ├── image36.png │ │ ├── image37.png │ │ ├── image38.png │ │ ├── image39.png │ │ ├── image40.png │ │ ├── image41.png │ │ ├── image42.png │ │ ├── image43.png │ │ ├── image44.png │ │ ├── image45.png │ │ ├── image46.png │ │ ├── image47.png │ │ ├── image48.png │ │ ├── image49.png │ │ ├── image50.png │ │ ├── image51.png │ │ ├── image52.png │ │ ├── image53.png │ │ ├── image54.png │ │ ├── image55.png │ │ ├── image56.png │ │ ├── image57.png │ │ ├── image58.png │ │ ├── image59.png │ │ ├── image60.png │ │ ├── image61.png │ │ ├── image62.png │ │ ├── image63.png │ │ ├── image64.png │ │ ├── image65.png │ │ ├── image66.png │ │ ├── iso7010-w011.png │ │ ├── image13.svg │ │ ├── image14.svg │ │ ├── image5.svg │ │ ├── image11.svg │ │ ├── image12.svg │ │ ├── image6.svg │ │ ├── image7.svg │ │ ├── image8.svg │ │ ├── image17.svg │ │ ├── image18.svg │ │ ├── image10.svg │ │ ├── image16.svg │ │ ├── image9.svg │ │ └── image15.svg │ ├── DoorControl │ │ └── image3.png │ ├── AccessControl │ │ └── source │ │ │ ├── README.txt │ │ │ └── flow.uml │ ├── ExportFileFormat │ │ └── image2.png │ ├── AuthenticationBehavior │ │ └── image5.png │ ├── CloudIntegration │ │ ├── cloud_fw_upgrade.dia │ │ ├── onboarding_scope.dia │ │ ├── openapi_based_development_principles.dia │ │ ├── openapi_based_development_principles.svg │ │ ├── onboarding_scope.svg │ │ └── cloud_fw_upgrade.svg │ ├── RecordingControl │ │ ├── seekTableStructure.svg │ │ └── cloudRecordingDataFlow.svg │ ├── WebRTC │ │ └── client_device_server_triangle.svg │ └── MediaSigning │ │ └── SigningMultipleGops01.svg ├── yaml.php ├── README.md └── index.html ├── wsdl ├── ver20 │ ├── util │ │ ├── federated_search_documentation.html │ │ └── fedsearch-docu-viewer.xsl │ ├── analytics │ │ ├── index.html │ │ ├── wsdl │ │ │ └── index.html │ │ └── rules.xsd │ └── media │ │ └── wsdl │ │ └── index.html └── ver10 │ ├── appmgmt │ └── wsdl │ │ └── index.html │ ├── events │ └── wsdl │ │ └── index.html │ ├── thermal │ └── wsdl │ │ └── index.html │ ├── uplink │ └── wsdl │ │ └── index.html │ ├── credential │ └── wsdl │ │ └── index.html │ ├── schedule │ └── wsdl │ │ └── index.html │ ├── accessrules │ └── wsdl │ │ └── index.html │ ├── advancedsecurity │ └── wsdl │ │ └── index.html │ ├── doorcontrol │ └── wsdl │ │ └── index.html │ ├── accesscontrol │ └── wsdl │ │ └── index.html │ ├── authenticationbehavior │ └── wsdl │ │ └── index.html │ ├── topics │ └── topicns.xml │ ├── pacs │ └── types.xsd │ └── replay.wsdl ├── README.md ├── yaml ├── storagerenewal.yaml └── cloudintegration.yaml └── guidelines.md /.gitignore: -------------------------------------------------------------------------------- 1 | *.dia~ 2 | -------------------------------------------------------------------------------- /doc/media/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onvif/specs/HEAD/doc/media/logo.png -------------------------------------------------------------------------------- /doc/media/Core/image3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onvif/specs/HEAD/doc/media/Core/image3.png -------------------------------------------------------------------------------- /doc/media/Core/image4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onvif/specs/HEAD/doc/media/Core/image4.png -------------------------------------------------------------------------------- /doc/media/Core/image7.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onvif/specs/HEAD/doc/media/Core/image7.png -------------------------------------------------------------------------------- /doc/media/Ptz/image10.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onvif/specs/HEAD/doc/media/Ptz/image10.png -------------------------------------------------------------------------------- /doc/media/Ptz/image11.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onvif/specs/HEAD/doc/media/Ptz/image11.png -------------------------------------------------------------------------------- /doc/media/Ptz/image12.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onvif/specs/HEAD/doc/media/Ptz/image12.png -------------------------------------------------------------------------------- /doc/media/Ptz/image13.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onvif/specs/HEAD/doc/media/Ptz/image13.png -------------------------------------------------------------------------------- /doc/media/Ptz/image14.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onvif/specs/HEAD/doc/media/Ptz/image14.png -------------------------------------------------------------------------------- /doc/media/Ptz/image2.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onvif/specs/HEAD/doc/media/Ptz/image2.jpeg -------------------------------------------------------------------------------- /doc/media/Ptz/image3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onvif/specs/HEAD/doc/media/Ptz/image3.png -------------------------------------------------------------------------------- /doc/media/Ptz/image4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onvif/specs/HEAD/doc/media/Ptz/image4.png -------------------------------------------------------------------------------- /doc/media/Ptz/image5.emf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onvif/specs/HEAD/doc/media/Ptz/image5.emf -------------------------------------------------------------------------------- /doc/media/Ptz/image6.emf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onvif/specs/HEAD/doc/media/Ptz/image6.emf -------------------------------------------------------------------------------- /doc/media/Ptz/image7.emf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onvif/specs/HEAD/doc/media/Ptz/image7.emf -------------------------------------------------------------------------------- /doc/media/Ptz/image8.emf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onvif/specs/HEAD/doc/media/Ptz/image8.emf -------------------------------------------------------------------------------- /doc/media/Ptz/image9.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onvif/specs/HEAD/doc/media/Ptz/image9.png -------------------------------------------------------------------------------- /doc/media/Core/image2.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onvif/specs/HEAD/doc/media/Core/image2.jpeg -------------------------------------------------------------------------------- /doc/media/Core/image6.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onvif/specs/HEAD/doc/media/Core/image6.jpeg -------------------------------------------------------------------------------- /doc/media/Media/image2.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onvif/specs/HEAD/doc/media/Media/image2.jpeg -------------------------------------------------------------------------------- /doc/media/Media2/image2.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onvif/specs/HEAD/doc/media/Media2/image2.jpeg -------------------------------------------------------------------------------- /doc/media/Media2/image4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onvif/specs/HEAD/doc/media/Media2/image4.png -------------------------------------------------------------------------------- /doc/media/Media2/image5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onvif/specs/HEAD/doc/media/Media2/image5.png -------------------------------------------------------------------------------- /doc/media/Media2/image6.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onvif/specs/HEAD/doc/media/Media2/image6.jpeg -------------------------------------------------------------------------------- /doc/media/Media2/image7.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onvif/specs/HEAD/doc/media/Media2/image7.jpeg -------------------------------------------------------------------------------- /doc/media/Security/image2.dia: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onvif/specs/HEAD/doc/media/Security/image2.dia -------------------------------------------------------------------------------- /doc/media/Security/image2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onvif/specs/HEAD/doc/media/Security/image2.png -------------------------------------------------------------------------------- /doc/media/Security/image3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onvif/specs/HEAD/doc/media/Security/image3.png -------------------------------------------------------------------------------- /doc/media/Security/image4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onvif/specs/HEAD/doc/media/Security/image4.png -------------------------------------------------------------------------------- /doc/media/Security/image6.dia: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onvif/specs/HEAD/doc/media/Security/image6.dia -------------------------------------------------------------------------------- /doc/media/Security/image7.dia: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onvif/specs/HEAD/doc/media/Security/image7.dia -------------------------------------------------------------------------------- /doc/media/Analytics/image19.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onvif/specs/HEAD/doc/media/Analytics/image19.png -------------------------------------------------------------------------------- /doc/media/Analytics/image20.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onvif/specs/HEAD/doc/media/Analytics/image20.png -------------------------------------------------------------------------------- /doc/media/Analytics/image21.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onvif/specs/HEAD/doc/media/Analytics/image21.jpeg -------------------------------------------------------------------------------- /doc/media/Analytics/image22.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onvif/specs/HEAD/doc/media/Analytics/image22.png -------------------------------------------------------------------------------- /doc/media/Analytics/image23.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onvif/specs/HEAD/doc/media/Analytics/image23.png -------------------------------------------------------------------------------- /doc/media/Analytics/image24.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onvif/specs/HEAD/doc/media/Analytics/image24.png -------------------------------------------------------------------------------- /doc/media/Analytics/image25.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onvif/specs/HEAD/doc/media/Analytics/image25.png -------------------------------------------------------------------------------- /doc/media/Analytics/image26.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onvif/specs/HEAD/doc/media/Analytics/image26.png -------------------------------------------------------------------------------- /doc/media/Analytics/image27.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onvif/specs/HEAD/doc/media/Analytics/image27.png -------------------------------------------------------------------------------- /doc/media/Analytics/image28.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onvif/specs/HEAD/doc/media/Analytics/image28.png -------------------------------------------------------------------------------- /doc/media/Analytics/image29.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onvif/specs/HEAD/doc/media/Analytics/image29.png -------------------------------------------------------------------------------- /doc/media/Analytics/image30.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onvif/specs/HEAD/doc/media/Analytics/image30.png -------------------------------------------------------------------------------- /doc/media/Analytics/image31.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onvif/specs/HEAD/doc/media/Analytics/image31.png -------------------------------------------------------------------------------- /doc/media/Analytics/image32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onvif/specs/HEAD/doc/media/Analytics/image32.png -------------------------------------------------------------------------------- /doc/media/Analytics/image33.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onvif/specs/HEAD/doc/media/Analytics/image33.png -------------------------------------------------------------------------------- /doc/media/Analytics/image34.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onvif/specs/HEAD/doc/media/Analytics/image34.png -------------------------------------------------------------------------------- /doc/media/Analytics/image35.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onvif/specs/HEAD/doc/media/Analytics/image35.png -------------------------------------------------------------------------------- /doc/media/Analytics/image36.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onvif/specs/HEAD/doc/media/Analytics/image36.png -------------------------------------------------------------------------------- /doc/media/Analytics/image37.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onvif/specs/HEAD/doc/media/Analytics/image37.png -------------------------------------------------------------------------------- /doc/media/Analytics/image38.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onvif/specs/HEAD/doc/media/Analytics/image38.png -------------------------------------------------------------------------------- /doc/media/Analytics/image39.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onvif/specs/HEAD/doc/media/Analytics/image39.png -------------------------------------------------------------------------------- /doc/media/Analytics/image40.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onvif/specs/HEAD/doc/media/Analytics/image40.png -------------------------------------------------------------------------------- /doc/media/Analytics/image41.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onvif/specs/HEAD/doc/media/Analytics/image41.png -------------------------------------------------------------------------------- /doc/media/Analytics/image42.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onvif/specs/HEAD/doc/media/Analytics/image42.png -------------------------------------------------------------------------------- /doc/media/Analytics/image43.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onvif/specs/HEAD/doc/media/Analytics/image43.png -------------------------------------------------------------------------------- /doc/media/Analytics/image44.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onvif/specs/HEAD/doc/media/Analytics/image44.png -------------------------------------------------------------------------------- /doc/media/Analytics/image45.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onvif/specs/HEAD/doc/media/Analytics/image45.png -------------------------------------------------------------------------------- /doc/media/Analytics/image46.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onvif/specs/HEAD/doc/media/Analytics/image46.png -------------------------------------------------------------------------------- /doc/media/Analytics/image47.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onvif/specs/HEAD/doc/media/Analytics/image47.png -------------------------------------------------------------------------------- /doc/media/Analytics/image48.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onvif/specs/HEAD/doc/media/Analytics/image48.png -------------------------------------------------------------------------------- /doc/media/Analytics/image49.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onvif/specs/HEAD/doc/media/Analytics/image49.png -------------------------------------------------------------------------------- /doc/media/Analytics/image50.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onvif/specs/HEAD/doc/media/Analytics/image50.png -------------------------------------------------------------------------------- /doc/media/Analytics/image51.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onvif/specs/HEAD/doc/media/Analytics/image51.png -------------------------------------------------------------------------------- /doc/media/Analytics/image52.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onvif/specs/HEAD/doc/media/Analytics/image52.png -------------------------------------------------------------------------------- /doc/media/Analytics/image53.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onvif/specs/HEAD/doc/media/Analytics/image53.png -------------------------------------------------------------------------------- /doc/media/Analytics/image54.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onvif/specs/HEAD/doc/media/Analytics/image54.png -------------------------------------------------------------------------------- /doc/media/Analytics/image55.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onvif/specs/HEAD/doc/media/Analytics/image55.png -------------------------------------------------------------------------------- /doc/media/Analytics/image56.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onvif/specs/HEAD/doc/media/Analytics/image56.png -------------------------------------------------------------------------------- /doc/media/Analytics/image57.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onvif/specs/HEAD/doc/media/Analytics/image57.png -------------------------------------------------------------------------------- /doc/media/Analytics/image58.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onvif/specs/HEAD/doc/media/Analytics/image58.png -------------------------------------------------------------------------------- /doc/media/Analytics/image59.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onvif/specs/HEAD/doc/media/Analytics/image59.png -------------------------------------------------------------------------------- /doc/media/Analytics/image60.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onvif/specs/HEAD/doc/media/Analytics/image60.png -------------------------------------------------------------------------------- /doc/media/Analytics/image61.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onvif/specs/HEAD/doc/media/Analytics/image61.png -------------------------------------------------------------------------------- /doc/media/Analytics/image62.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onvif/specs/HEAD/doc/media/Analytics/image62.png -------------------------------------------------------------------------------- /doc/media/Analytics/image63.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onvif/specs/HEAD/doc/media/Analytics/image63.png -------------------------------------------------------------------------------- /doc/media/Analytics/image64.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onvif/specs/HEAD/doc/media/Analytics/image64.png -------------------------------------------------------------------------------- /doc/media/Analytics/image65.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onvif/specs/HEAD/doc/media/Analytics/image65.png -------------------------------------------------------------------------------- /doc/media/Analytics/image66.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onvif/specs/HEAD/doc/media/Analytics/image66.png -------------------------------------------------------------------------------- /doc/media/DoorControl/image3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onvif/specs/HEAD/doc/media/DoorControl/image3.png -------------------------------------------------------------------------------- /doc/media/AccessControl/source/README.txt: -------------------------------------------------------------------------------- 1 | flow.svg is generated based on flow.uml using http://www.plantuml.com 2 | -------------------------------------------------------------------------------- /doc/media/Analytics/iso7010-w011.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onvif/specs/HEAD/doc/media/Analytics/iso7010-w011.png -------------------------------------------------------------------------------- /doc/media/ExportFileFormat/image2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onvif/specs/HEAD/doc/media/ExportFileFormat/image2.png -------------------------------------------------------------------------------- /doc/media/AuthenticationBehavior/image5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onvif/specs/HEAD/doc/media/AuthenticationBehavior/image5.png -------------------------------------------------------------------------------- /doc/media/CloudIntegration/cloud_fw_upgrade.dia: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onvif/specs/HEAD/doc/media/CloudIntegration/cloud_fw_upgrade.dia -------------------------------------------------------------------------------- /doc/media/CloudIntegration/onboarding_scope.dia: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onvif/specs/HEAD/doc/media/CloudIntegration/onboarding_scope.dia -------------------------------------------------------------------------------- /wsdl/ver20/util/federated_search_documentation.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onvif/specs/HEAD/wsdl/ver20/util/federated_search_documentation.html -------------------------------------------------------------------------------- /wsdl/ver20/analytics/index.html: -------------------------------------------------------------------------------- 1 | 2 | 7 | -------------------------------------------------------------------------------- /wsdl/ver20/media/wsdl/index.html: -------------------------------------------------------------------------------- 1 | 2 | 7 | -------------------------------------------------------------------------------- /wsdl/ver10/appmgmt/wsdl/index.html: -------------------------------------------------------------------------------- 1 | 2 | 7 | -------------------------------------------------------------------------------- /wsdl/ver10/events/wsdl/index.html: -------------------------------------------------------------------------------- 1 | 2 | 7 | -------------------------------------------------------------------------------- /wsdl/ver10/thermal/wsdl/index.html: -------------------------------------------------------------------------------- 1 | 2 | 7 | -------------------------------------------------------------------------------- /wsdl/ver10/uplink/wsdl/index.html: -------------------------------------------------------------------------------- 1 | 2 | 7 | -------------------------------------------------------------------------------- /wsdl/ver10/credential/wsdl/index.html: -------------------------------------------------------------------------------- 1 | 2 | 7 | -------------------------------------------------------------------------------- /wsdl/ver10/schedule/wsdl/index.html: -------------------------------------------------------------------------------- 1 | 2 | 7 | -------------------------------------------------------------------------------- /wsdl/ver20/analytics/wsdl/index.html: -------------------------------------------------------------------------------- 1 | 2 | 7 | -------------------------------------------------------------------------------- /wsdl/ver10/accessrules/wsdl/index.html: -------------------------------------------------------------------------------- 1 | 2 | 7 | -------------------------------------------------------------------------------- /doc/media/CloudIntegration/openapi_based_development_principles.dia: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onvif/specs/HEAD/doc/media/CloudIntegration/openapi_based_development_principles.dia -------------------------------------------------------------------------------- /wsdl/ver10/advancedsecurity/wsdl/index.html: -------------------------------------------------------------------------------- 1 | 2 | 7 | -------------------------------------------------------------------------------- /wsdl/ver10/doorcontrol/wsdl/index.html: -------------------------------------------------------------------------------- 1 | 2 | 7 | -------------------------------------------------------------------------------- /wsdl/ver10/accesscontrol/wsdl/index.html: -------------------------------------------------------------------------------- 1 | 2 | 7 | -------------------------------------------------------------------------------- /wsdl/ver10/authenticationbehavior/wsdl/index.html: -------------------------------------------------------------------------------- 1 | 2 | 7 | -------------------------------------------------------------------------------- /wsdl/ver20/util/fedsearch-docu-viewer.xsl: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /doc/yaml.php: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | OpenAPI viewer 5 | 6 | 7 | 8 | 9 | 10 | 13 | 19 | 20 | 21 | '> 22 | 23 | 24 | 25 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # ONVIF Technical Specification Development 2 | This repository is dedicated to future extensions of the ONVIF Network Interface Specifications which include 3 | 4 | - Network Interface Specification Documents 5 | - Schemas and wsdl files 6 | 7 | Note that officially released specifications are available at [onvif.org](https://www.onvif.org/profiles/specifications/). 8 | 9 | You may browse the repository for proposals and corrections that have been assigned to a release. 10 | 11 | ## Guidelines 12 | 13 | For participation in the development please study our [guidelines](guidelines.md). 14 | 15 | ## License 16 | 17 | Due to legal reasons based on earlier contributions by ONVIF members, contributions to the specifications are goverened by a dual license. 18 | The ONVIF specifications themselves are published using the ONVIF no-derivatives license while the contributions themselves 19 | are applicable to the Apache license allowing contributors to collaborate and derive contributions. For the license texts see [LICENSE](LICENSE.md). 20 | -------------------------------------------------------------------------------- /wsdl/ver10/topics/topicns.xml: -------------------------------------------------------------------------------- 1 | 2 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /doc/README.md: -------------------------------------------------------------------------------- 1 | # ONVIF Technical Specifications 2 | This folder contains the sources of the ONVIF Technical Specifications. 3 | 4 | ## Document preview 5 | 6 | For a preview of the merged documents visit: 7 | https://developer.onvif.org/pub/specs/branches/development/doc/index.html 8 | 9 | For a preview of branches select the branch via: 10 | https://developer.onvif.org/pub/specs 11 | 12 | Note on branches and forks: the above links do not automatically update. 13 | 14 | For security reasons browsers do not execute stylesheets when accessing local html files. 15 | Use a web server for serving your specs checkout in order to view both wsdl and DocBook files. 16 | 17 | One compact option is to use [Python 3](https://www.python.org/downloads/) with 18 | the following script 19 | 20 | ``` 21 | #!/usr/bin/env python3 22 | 23 | import http.server 24 | import socketserver 25 | import threading 26 | import webbrowser 27 | import time 28 | 29 | HOST = "localhost" 30 | PORT = 80 31 | 32 | 33 | class HttpRequestHandler(http.server.SimpleHTTPRequestHandler): 34 | extensions_map = { 35 | "": "application/octet-stream", 36 | ".css": "text/css", 37 | ".html": "text/html", 38 | ".jpg": "image/jpg", 39 | ".js": "application/x-javascript", 40 | ".json": "application/json", 41 | ".manifest": "text/cache-manifest", 42 | ".pdf": "application/pdf", 43 | ".png": "image/png", 44 | ".svg": "image/svg+xml", 45 | ".wasm": "application/wasm", 46 | ".xml": "application/xml", 47 | ".xslt": "application/xml", 48 | ".wsdl": "text/xml", 49 | } 50 | 51 | def spawn_browser(): 52 | time.sleep (1) 53 | webbrowser.open(f"http://{HOST}:{PORT}") 54 | 55 | try: 56 | with socketserver.TCPServer((HOST, PORT), HttpRequestHandler) as httpd: 57 | print(f"serving at http://{HOST}:{PORT}") 58 | print(f"to stop, close the browser and press CTRL+C") 59 | threading.Thread(target=spawn_browser).start() 60 | httpd.serve_forever() 61 | except KeyboardInterrupt: 62 | pass 63 | ``` 64 | -------------------------------------------------------------------------------- /yaml/storagerenewal.yaml: -------------------------------------------------------------------------------- 1 | openapi: 3.0.3 2 | info: 3 | title: Storage Configuration Renewal 4 | contact: 5 | name: ONVIF Technical Specification 6 | url: https://github.com/onvif/specs 7 | email: help@onvif.org 8 | license: 9 | name: ONVIF Contributor License Agreement 10 | url: https://github.com/onvif/specs/blob/development/LICENSE.md 11 | version: "25.06" 12 | x-logo: 13 | url: https://www.onvif.org/logo.gif 14 | background: "#ffffff" 15 | altText: "ONVIF logo" 16 | paths: 17 | /Configuration-Renewal: 18 | get: 19 | responses: 20 | '200': 21 | description: successful operation 22 | content: 23 | application/json: 24 | schema: 25 | $ref: '#/components/schemas/storageConfigurationRenewal' 26 | components: 27 | schemas: 28 | storageConfigurationRenewal: 29 | type: object 30 | properties: 31 | region: 32 | type: string 33 | example: "us-east-1" 34 | description: "Optional region of the storage server" 35 | storageUri: 36 | type: string 37 | example: "https://.s3.us-east-1.amazonaws.com/" 38 | description: "Storage server address" 39 | user: 40 | type: object 41 | description: "User credentials for the storage server" 42 | properties: 43 | username: 44 | type: string 45 | example: "" 46 | description: "Optional user name used to access the storage server" 47 | password: 48 | type: string 49 | example: "" 50 | description: "Optional password used to access the storage server" 51 | token: 52 | type: string 53 | example: null 54 | description: "Optional token used to access the storage server" 55 | expiresAt: 56 | type: string 57 | example: "2024-08-14T15:31:24Z" 58 | description: "Expiration date of the storage configuration as an ISO 8601 date-time" 59 | -------------------------------------------------------------------------------- /doc/media/AccessControl/source/flow.uml: -------------------------------------------------------------------------------- 1 | @startuml 2 | actor "Outside user" as Outside 3 | entity "AccessPoint\nProfile D device" as Reader 4 | entity "Door\nProfile C or D device" as Door 5 | entity "Controller\nProfile D client,\nProfile A or C device" as Controller 6 | database "Event\nLogger" as Logger 7 | actor "Inside user" as Inside 8 | 9 | note over Reader : Idle 10 | /note over Door : DoorLocked 11 | /note over Controller : Idle 12 | activate Inside 13 | note over Inside : Approaches door\nand pushes REX button 14 | Inside -> Controller : Internal REX 15 | activate Controller 16 | note over Controller : Grant access 17 | Controller -> Logger : AccessControl/AccessGranted/Anonymous 18 | Controller ->Door : AccessDoor() 19 | activate Door 20 | Controller ->Reader : Feedback(DoorUnlocked) 21 | Door -> Controller : Door/DoorMode=Accessed 22 | note over Inside : Does not open the door\nand goes away 23 | destroy Inside 24 | note over Door : Access times out 25 | Door -> Controller : Door/DoorMode=DoorLocked 26 | destroy Door 27 | 28 | note over Controller : Access not taken 29 | Controller -> Logger : AccessControl/AccessNotTaken/Anonymous 30 | Controller ->Reader : Feedback(DoorLocked) 31 | destroy Controller 32 | 33 | activate Outside 34 | note over Outside : User approaches\nand presents his card 35 | Outside -> Reader : Card presented 36 | Reader -> Controller : AccessControl/Request/Identifier (pt:Card) 37 | activate Controller 38 | note over Controller : PIN required 39 | Controller ->Reader : Feedback(RequireIdentifier, pt:PIN) 40 | 41 | note over Outside : User enters PIN 42 | Outside -> Reader : PIN presented 43 | Reader -> Controller : AccessControl/Request/Identifier (pt:PIN) 44 | note over Controller : Grant access 45 | Controller -> Logger : AccessControl/AccessGranted/Credential 46 | 47 | Controller -> Door : AccessDoor() 48 | activate Door 49 | Door -> Controller : Door/DoorMode=Accessed 50 | Controller ->Reader : ExternalAuthorization(Decision=Granted) 51 | Controller ->Reader : Feedback(AccessGranted) 52 | 53 | note over Outside : User opens door and enters 54 | Outside -> Door : Open door 55 | Door -> Controller : Door/DoorPhysicalState=DoorOpen 56 | 57 | note over Controller : Access taken 58 | destroy Outside 59 | Controller -> Logger : AccessControl/AccessNotTaken/Credential 60 | Controller ->Reader : Feedback(DoorUnlocked) 61 | Door -> Controller : Door/DoorPhysicalState=DoorClosed 62 | Door -> Controller : Door/DoorMode=DoorLocked 63 | destroy Door 64 | Controller ->Reader : Feedback(DoorLocked) 65 | destroy Controller 66 | @enduml -------------------------------------------------------------------------------- /doc/media/Analytics/image13.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | 6 | 14 | 15 | =11u 16 | -------------------------------------------------------------------------------- /doc/media/Analytics/image14.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | 6 | 14 | 15 | =00v 16 | -------------------------------------------------------------------------------- /doc/media/Analytics/image5.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | 6 | 14 | 15 | =yxttt 16 | -------------------------------------------------------------------------------- /doc/media/Analytics/image11.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | 6 | 14 | 15 | =yxuuu 16 | -------------------------------------------------------------------------------- /doc/media/Analytics/image12.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | 6 | 14 | 15 | =yxvvv 16 | -------------------------------------------------------------------------------- /doc/media/Analytics/image6.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | 6 | 14 | 15 | =yxsss 16 | -------------------------------------------------------------------------------- /doc/media/Analytics/image7.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | 6 | 14 | 15 | =yxppp 16 | -------------------------------------------------------------------------------- /doc/media/Analytics/image8.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | 6 | 14 | 15 | =yxqqq 16 | -------------------------------------------------------------------------------- /doc/media/Analytics/image17.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | 6 | 15 | 16 | ''yxtt 17 | -------------------------------------------------------------------------------- /doc/media/Analytics/image18.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | 6 | 15 | 16 | ''yxss 17 | -------------------------------------------------------------------------------- /guidelines.md: -------------------------------------------------------------------------------- 1 | ## Development and Change Guidelines 2 | 3 | This document describes the guidelines for ONVIF specification evolution. Its goal is to provide a transparent and open mechanism. 4 | The ONVIF Technical Committee implements the process described below when merging changes from internal or external contributors. 5 | 6 | ## Specification Change Categories 7 | 8 | Changes should fall into the following three categories: 9 | 10 | * Clarification. The current description either doesn't make sense, is ambiguous, overly complicated, or unclear. 11 | 12 | * Consistency. A portion of the specification is not consistent with the rest, or contraditcs to underlying specifications. 13 | 14 | * New functionality. The proposal adds one or more features to the specifications. 15 | 16 | ## Repository branches 17 | 18 | ONVIF will maintain the following active branches: 19 | 20 | * master - Current stable version reflecting the released specifications. 21 | Update from development branches only. 22 | 23 | * development - Development branch for next version 24 | Change requests for clarifications and consistency should be submitted to this branch. Minimal additions or features in 25 | IPR review may be submitted to this branch. 26 | Implementers may use this branch. However in the unlikely case of IPR notices indiviual changes may be revoked. 27 | 28 | Beside the above branches the following temporary branches may be established: 29 | * issue-xx-yyyyy - Change request for issue XX with short title YYYY. 30 | 31 | * xxxx/yyyy-zzzz - Feature branch for group xxxx with short title yyyy-zzzz. ## Specification Change Process 32 | 33 | ## Specification change workflow 34 | 35 | Any party may file a change request. A change request must include a complete change proposal and be 36 | submitted as pull request to one of the development branches. 37 | The comment of a pull request shall include the following information: 38 | * Reason: containing a problem description and a description of the solution proposal. 39 | * Compatibility analysis: An analysis describing possible impact on forward and or backward compatibility. 40 | 41 | A pull request to any of the development branches shall be reviewed by at least two TC member companies before being merged. 42 | Note that a pull request typically also needs to await a 14 day review period in order to enable any interested party to review or comment. 43 | 44 | For larger additions affecting more than a simple type please see section "Feature Development Process" below. 45 | 46 | ## Feature Development Process 47 | 48 | New features shall not be developed on development branches but in separate feature branches. 49 | Feature branches may be part of the main ONVIF specification repository, but are typically located in separate repositories. 50 | 51 | * Once an author or group has completed the specification development for a feature the respective feature needs to be verified by writing and executing test cases. 52 | * When all activities have been completed the pull request shall include the following information: 53 | * Reason: containing a problem description and a description of the solution proposal. 54 | * Compatibility analysis: An analysis describing possible impact on forward and or backward compatibility. 55 | * Unit tests covering the additional features 56 | * Information which parties implemented client and server side as well as a test report from at least two different entities. 57 | 58 | ## Tools 59 | 60 | All documents are designed such that they can be edited by any text editor. Better use e.g. 61 | * Notepad++ www.notepad-plus-plus.org with XML Tools plugin for syntax checking. 62 | * Wysiwyg editing is supported by 63 | * Oxygen www.oxygenxml.com 64 | * XMLmind www.xmlmind.com/xmleditor/download.shtml 65 | Be careful when using this editor because it tends to reformat the complete document. Usage for creating snippets is ok. 66 | 67 | For text documents DocBook5 is used. For details on DocBook editing and formatting see https://docbook.org/ . 68 | 69 | For instructions regarding document and wsdl preview see [link](doc/README.md). 70 | ## Maintainers 71 | 72 | The elected ONVIF Technical Committee members act as change control board and maintainers of this repository. Typically any change proposals is kept pending for at least two weeks to collect comments. Decisions on pull requests and issues will be documented in place. 73 | 74 | Note that this repository sole purpose is technical specification evolution. Any possible product incompatiblities must be directed to vendors. 75 | 76 | ## Participation 77 | 78 | While governance of the specification is the role of the ONVIF Technical Committee, the evolution of the specification happens through the participation of members of the developer community at large. 79 | Any person willing to contribute to the effort is welcome, and contributions may include filing or participating in issues, creating pull requests, or helping others with such activities. 80 | 81 | -------------------------------------------------------------------------------- /doc/media/Analytics/image10.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | 6 | 14 | 15 | =yyxxyxsvsvww 16 | -------------------------------------------------------------------------------- /doc/media/Core/image7.drawio: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | -------------------------------------------------------------------------------- /doc/media/Analytics/image16.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | 6 | 15 | 16 | =yyxxyxsususs'' 17 | -------------------------------------------------------------------------------- /doc/media/CloudIntegration/openapi_based_development_principles.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | YAML Document 9 | 10 | 11 | 12 | 13 | 14 | 15 | OpenAPI 16 | Compiler 17 | 18 | 19 | 20 | 21 | 22 | 23 | OpenAPI 24 | Compiler 25 | 26 | 27 | 28 | 29 | 30 | 31 | Integrate 32 | 33 | 34 | 35 | 36 | 37 | 38 | Integrate 39 | 40 | 41 | 42 | 43 | 44 | 45 | MCS 46 | 47 | 48 | 49 | 50 | 51 | 52 | OCS 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | 79 | 80 | 81 | 82 | 83 | 84 | 85 | 86 | 87 | 88 | 89 | 90 | 91 | 92 | 93 | OpenAPI 94 | 95 | 96 | -------------------------------------------------------------------------------- /doc/media/Analytics/image9.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | 6 | 14 | 15 | ++=yyyxxxyxtsptspqq 16 | -------------------------------------------------------------------------------- /wsdl/ver20/analytics/rules.xsd: -------------------------------------------------------------------------------- 1 | 2 | 10 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | The total number of Motion Region Detector rules that can be created on the device. 24 | This element is deprecated. maxInstances in the GetSupportedRules shall be used instead. 25 | 26 | 27 | 28 | 29 | 30 | 31 | True if the device supports disarming a Motion Region Detector rule. 32 | 33 | 34 | 35 | 36 | 37 | 38 | True if the device supports defining a region using a Polygon instead of a rectangle. 39 | The rectangle points are still passed using a Polygon element if the device does not support polygon regions. 40 | In this case, the points provided in the Polygon element shall represent a rectangle. 41 | 42 | 43 | 44 | 45 | 46 | 47 | For devices that support Polygons with limitations on the number of sides, 48 | provides the minimum and maximum number of sides that can be defined in the 49 | Polygon. 50 | 51 | 52 | 53 | 54 | 55 | 56 | Indicates the device can only support one sensitivity level for all defines 57 | motion detection regions. Changing the sensitivity for one region would be 58 | applied to all regions. 59 | 60 | 61 | 62 | 63 | 64 | 65 | True if the device will include the Name of the Rule to indicate the region 66 | that motion was detected in. 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | 75 | Indicates the support for PTZ preset based motion detection, if supported Preset token can be associated with a motion region. 76 | 77 | 78 | 79 | 80 | 81 | 82 | 83 | 84 | 85 | 86 | 87 | 88 | 89 | Provides the points of a Polygon in the VideoSourceConfiguration's Bounds 90 | element. If the device does not support Polygons, this structure must contain 91 | four points that represent a Rectangle. 92 | 93 | 94 | 95 | 96 | 97 | 98 | Preset position associated with the motion region defined by Polygon. 99 | 100 | 101 | 102 | 103 | 104 | 105 | 106 | 107 | Indicates if the Motion Region is Armed (detecting motion) or Disarmed (motion is 108 | not being detected). 109 | 110 | 111 | 112 | 113 | 114 | 115 | Indicates the sensitivity level of the motion detector for this region. The 116 | sensitivity value is normalized where 0 represents the lower sensitivity where 117 | significant motion is required to trigger an alarm and 1 represents the higher 118 | sensitivity where very little motion is required to trigger an alarm. 119 | 120 | 121 | 122 | 123 | 124 | 125 | 126 | 127 | -------------------------------------------------------------------------------- /doc/index.html: -------------------------------------------------------------------------------- 1 | 11 | 12 |

Document preview

13 | 14 |
The links below allow to preview the documents. The document preview is using a simplified html stylesheet with similar rendering than the published pdf files.
15 | 16 |
Note that the target does not change on branching or forking. As alternative you may serve the files using a local web server. 17 | Rendering files does not activate the necessary stylesheets and hence do not show the resulting layout. Similarly for wsdl files github pages does use a Content-Type that tends to trigger a download. 18 | For the default branch of onvif/specs ONVIF provides a proxy that fixes this behavior.
19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | 79 | 80 | 81 | 82 | 83 | 84 | 85 | 86 | 87 | 88 | 89 | 90 | 91 | 92 | 93 | 94 | 95 | 96 | 97 | 98 | 99 | 100 | 101 | 102 | 103 | 104 | 105 | 106 | 107 | 108 | 109 | 110 | 111 | 112 | 113 | 114 | 115 | 116 | 117 | 118 | 119 | 120 | 121 | 122 | 123 | 124 | 125 | 126 | 127 | 128 | 129 | 130 | 131 | 132 | 133 | 134 | 135 | 136 | 137 | 138 | 139 | 140 | 141 | 142 | 143 | 144 | 145 | 146 | 147 | 148 | 149 | 150 | 151 | 152 | 153 | 154 | 155 | 156 | 157 | 158 | 159 | 160 | 161 | 162 | 163 | 164 | 165 | 166 | 167 | 168 | 169 | 170 | 171 | 172 | 173 | 174 | 175 | 176 | 177 | 178 | 179 | 180 | 181 | 182 | 183 | 184 | 185 | 186 | 187 | 188 | 189 | 190 | 191 | 192 | 193 | 194 | 195 | 196 | 197 | 198 | 199 | 200 | 201 | 202 | 203 | 204 |
DocumentsService definitionsSchema files
Core specification
ONVIF Coredevice.wsdlonvif.xsd, common.xsd
event.wsdl
storagerenewal.yaml
Data format specifications
Streamingmetadatastream.xsd
Media Signing
Export File Format
Service specifications
Access Controlaccesscontrol.wsdltypes.xsd
Access Rulesaccessrules.wsdl
Action Engineactionengine.wsdl
Analyticsanalytics.wsdlrules.xsd, humanbody.xsd, humanface.xsd
Application Managementappmgmt.wsdl
Authentication Behaviorauthenticationbehavior.wsdl
Cloud Integrationcloudintegration.yaml
Credentialcredential.wsdl
Device IOdeviceio.wsdl
Displaydisplay.wsdl
Door Controldoorcontrol.wsdl
Imagingimaging.wsdl
Mediamedia.wsdl
Media2media2.wsdl
Provisioningprovisioning.wsdl
PTZptz.wsdl
Receiverreceiver.wsdl
Recording Controlrecording.wsdl
Recording Searchsearch.wsdl
Replay Controlreplay.wsdl
Resource Query
Scheduleschedule.wsdl
Securityadvancedsecurity.wsdl
Security Baseline
Thermalthermal.wsdlradiometry.xsd
Uplinkuplink.wsdl
WebRTC
205 | 206 | 207 | 208 | 209 | -------------------------------------------------------------------------------- /doc/media/Analytics/image15.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | 6 | 15 | 16 | ++=yyyxxxyxtsvtsvtt'' 17 | -------------------------------------------------------------------------------- /doc/media/CloudIntegration/onboarding_scope.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | Device 16 | 17 | 18 | 19 | 20 | 21 | 22 | MCS 23 | 24 | 25 | 26 | 27 | 28 | 29 | OCS 30 | 31 | 32 | 33 | Out of the box 34 | 35 | 36 | 37 | 38 | 39 | User 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | Initial connection to MCS 55 | with predefined settings 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | Ownership claim 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | 79 | 80 | 81 | 82 | 83 | 84 | 85 | 86 | 87 | 88 | 89 | Device sharing 90 | 91 | 92 | -------------------------------------------------------------------------------- /yaml/cloudintegration.yaml: -------------------------------------------------------------------------------- 1 | openapi: 3.0.4 2 | info: 3 | title: Cloud Integration Specification 4 | contact: 5 | name: ONVIF Technical Specification 6 | url: https://www.onvif.org/profiles/specifications/ 7 | license: 8 | name: ONVIF Contributor License Agreement 9 | url: https://github.com/onvif/specs/blob/development/LICENSE.md 10 | version: "25.06" 11 | x-logo: 12 | url: https://www.onvif.org/logo.gif 13 | background: "#ffffff" 14 | altText: "ONVIF logo" 15 | 16 | components: 17 | schemas: 18 | base64DerEncodedAsn1Value: 19 | description: This schema is the equivalent of tas:Base64DERencodedASN1Value in the Security Service specification. 20 | type: string 21 | format: byte 22 | 23 | endpointReferenceType: 24 | description: This schema is the equivalent of wsa:EndpointReferenceType in the WA-Addressing 1.0 specification. 25 | type: string 26 | format: uri 27 | 28 | authorizationServerConfiguration: 29 | type: object 30 | description: This schema is the equivalent of tas:AuthorizationServerConfigurationData 31 | properties: 32 | serverUri: 33 | description: Authorization server address 34 | type: string 35 | clientId: 36 | description: Client identifier issued by the authorization server 37 | type: string 38 | scope: 39 | description: The requested access scope 40 | type: string 41 | certPathValidationPolicyAlias: 42 | description: The alias of the certPathValidationPolicy to be used with this configuration 43 | type: string 44 | required: 45 | - serverUri 46 | - clientId 47 | - certPathValidationPolicyAlias 48 | 49 | uplinkConfiguration: 50 | type: object 51 | properties: 52 | remoteAddress: 53 | description: Uniform resource locator by which the remote client can be reached. 54 | $ref: '#/components/schemas/endpointReferenceType' 55 | userLevel: 56 | description: Authorization level that will be assigned to the uplink connection. 57 | type: string 58 | enum: [Administrator, Operator, User] 59 | certPathValidationPolicyAlias: 60 | description: The alias of the certPathValidationPolicy to be used with this configuration 61 | type: string 62 | required: 63 | - remoteAddress 64 | - userLevel 65 | - certPathValidationPolicyAlias 66 | 67 | deviceConfiguration: 68 | type: object 69 | properties: 70 | shareToken: 71 | description: The share token, to prove permission to share the device. 72 | type: string 73 | format: byte 74 | endpointReferences: 75 | description: The full URI if the endpoint to be notified to inform that the operation was completed. It may be more then one if the requesting cloud has redundant URIs to receive the notification. 76 | items: 77 | $ref: '#/components/schemas/endpointReferenceType' 78 | uplinkConfigurations: 79 | description: Per-device uplink configuration 80 | items: 81 | $ref: '#/components/schemas/uplinkConfiguration' 82 | authorizationServerConfigurations: 83 | items: 84 | $ref: '#/components/schemas/authorizationServerConfiguration' 85 | certPathValidationPolicies: 86 | description: List of certificate validation policies that can be referenced by alias 87 | items: 88 | $ref: '#/components/schemas/certPathValidationPolicy' 89 | required: 90 | - shareToken 91 | - endpointReferences 92 | - uplinkConfigurations 93 | - authorizationServerConfigurations 94 | - certPathValidationPolicies 95 | 96 | startDeviceSharing: 97 | type: object 98 | properties: 99 | deviceConfigurations: 100 | items: 101 | $ref: '#/components/schemas/deviceConfiguration' 102 | description: For each camera requested to be shared, it is necessary to pass both the shared token and the endpoint reference. 103 | required: 104 | - deviceConfigurations 105 | 106 | deviceSharingCompleted: 107 | type: object 108 | properties: 109 | shareToken: 110 | description: The share token, to know what device the public key is associated to. 111 | type: string 112 | devicePublicKey: 113 | description: The public key of the device. 114 | $ref: '#/components/schemas/base64DerEncodedAsn1Value' 115 | required: 116 | - shareToken 117 | - devicePublicKey 118 | 119 | deviceSharingError: 120 | type: object 121 | properties: 122 | error: 123 | type: string 124 | enum: [ "Invalid configuration", "Invalid JWT" ] 125 | required: 126 | - error 127 | 128 | certPathValidationPolicy: 129 | type: object 130 | properties: 131 | alias: 132 | description: The alias to be used for the CertPathValidationPolicy 133 | type: string 134 | trustAnchors: 135 | description: List of trust anchors in base64DerEncodedAsn1Value 136 | items: 137 | $ref: '#/components/schemas/base64DerEncodedAsn1Value' 138 | required: 139 | - alias 140 | - trustAnchors 141 | 142 | paths: 143 | /startDeviceSharing: 144 | post: 145 | summary: Start device sharing. 146 | description: This operation triggers sharing a device with a new Operational Cloud Service. 147 | requestBody: 148 | required: true 149 | content: 150 | application/json: 151 | schema: 152 | $ref: '#/components/schemas/startDeviceSharing' 153 | responses: 154 | '200': 155 | description: Success 156 | '400': 157 | description: Invalid Argument Value 158 | content: 159 | application/json: 160 | schema: 161 | $ref: '#/components/schemas/deviceSharingError' 162 | 163 | /deviceSharingCompleted: 164 | post: 165 | summary: Device sharing completed notification. 166 | description: This operation notifies the new Operational Cloud Service that the camera was successfully configured. 167 | requestBody: 168 | required: true 169 | content: 170 | application/json: 171 | schema: 172 | $ref: '#/components/schemas/deviceSharingCompleted' 173 | responses: 174 | '200': 175 | description: Success 176 | 177 | /getAvailableFWImages: 178 | post: 179 | summary: Returns the list of FW images currently available on the manufacturer cloud for the given model. 180 | description: The value of model must be the value returned in the model field of GetDeviceInformationResponse 181 | requestBody: 182 | required: true 183 | content: 184 | application/json: 185 | schema: 186 | type: object 187 | properties: 188 | model: 189 | type: string 190 | responses: 191 | '200': 192 | description: Successfully returned a list of FW versions available for the given model. 193 | content: 194 | application/json: 195 | schema: 196 | type: array 197 | items: 198 | type: string 199 | '400': 200 | description: Invalid Argument Value -------------------------------------------------------------------------------- /wsdl/ver10/pacs/types.xsd: -------------------------------------------------------------------------------- 1 | 2 | 28 | 33 | 34 | 35 | 36 | Type used to reference logical and physical entities. 37 | Token may be extended by intermediate terminal with adding prefix to make it global unique. 38 | The length should be within 36 characters for generating as a local token. 39 | See "Remote Token" section in Resource Query specification. 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | General datastructure referenced by a token. 50 | Should be used as extension base. 51 | 52 | 53 | 54 | 55 | 56 | 57 | A service-unique identifier of the item. 58 | 59 | 60 | 61 | 62 | 63 | 64 | Type used for names of logical and physical entities. 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | Description is optional and the maximum length is device specific. 75 | If the length is more than maximum length, it is silently chopped to the maximum length 76 | supported by the device/service (which may be 0). 77 | 78 | 79 | 80 | 81 | 82 | 83 | 84 | 85 | 86 | 87 | Type used to represent the numbers from 1 ,2 , 3,... 88 | 89 | 90 | 91 | 92 | 93 | 94 | 95 | 96 | 97 | Attributes contains a Name and an optional Value and type. 98 | 99 | 100 | 101 | 102 | 103 | 104 | 105 | Name of attribute. Key names starting with "ONVIF" (any case) are reserved for ONVIF 106 | use. 107 | 108 | 109 | 110 | 111 | 112 | Value of attribute 113 | 114 | 115 | 116 | 117 | 118 | 119 | 120 | Recognition/identification types supported by ONVIF. 121 | 122 | 123 | 124 | 125 | A credential number is used for recognition/identification. 126 | 127 | 128 | 129 | 130 | A PIN code is used for recognition/identification. 131 | 132 | 133 | 134 | 135 | A fingerprint is used for recognition/identification. 136 | 137 | 138 | 139 | 140 | A face is used for recognition/identification. 141 | 142 | 143 | 144 | 145 | An iris is used for recognition/identification. 146 | 147 | 148 | 149 | 150 | A vein is used for recognition/identification. 151 | 152 | 153 | 154 | 155 | A palm is used for recognition/identification. 156 | 157 | 158 | 159 | 160 | A retina is used for recognition/identification. 161 | 162 | 163 | 164 | 165 | A license plate is used for recognition/identification. 166 | 167 | 168 | 169 | 170 | 171 | A request-to-exit button is used for anonymous recognition (but not for identification). 172 | 173 | 174 | 175 | 176 | 177 | 178 | 179 | 180 | 181 | 182 | -------------------------------------------------------------------------------- /doc/media/CloudIntegration/cloud_fw_upgrade.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | MCS 9 | 10 | 11 | 12 | 13 | 14 | 15 | Device 16 | 17 | 18 | 19 | 20 | 21 | 22 | OCS 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | getAvailabeFWimages 52 | 53 | 54 | returns list of availabe FW 55 | versions for a given model 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | tds:StartCloudFirmwareUpgrade 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | proprietary interaction, 78 | out of the scope of this service 79 | 80 | 81 | 82 | 83 | 84 | 85 | 86 | tns1:Monitoring/CloudFirmwareUpgrade/Completed 87 | 88 | 89 | 90 | 91 | 92 | 93 | 94 | tns1:Monitoring/CloudFirmwareUpgrade/Failure 95 | 96 | 97 | or 98 | 99 | 100 | -------------------------------------------------------------------------------- /doc/media/RecordingControl/seekTableStructure.svg: -------------------------------------------------------------------------------- 1 | mfro’ boxEntry[N]Entry counttfra’ headermfra’ headerSample numbertrun’ numbertraf’ numbermoof’ offsettime8 bytes20 bytes4 bytesN x 12 bytes16 bytes4 bytes4 bytes1 byte1 byte2 bytes -------------------------------------------------------------------------------- /doc/media/WebRTC/client_device_server_triangle.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | client 17 | 18 | 19 | 20 | 21 | device 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | signaling server 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | ONVIF signaling protocol 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | ONVIF signaling protocol 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | standard WebRTCpeer-to-peer connection 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | 79 | 80 | 81 | 82 | 83 | 84 | 85 | 86 | 87 | 88 | 89 | 90 | 91 | 92 | 93 | 94 | 95 | 96 | 97 | 98 | 99 | 100 | 101 | 102 | -------------------------------------------------------------------------------- /doc/media/RecordingControl/cloudRecordingDataFlow.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 12 | 14 | 20 | 25 | 26 | 32 | 38 | 44 | 50 | 56 | 62 | 68 | 74 | 80 | 86 | 92 | 98 | 104 | 110 | 116 | 122 | 123 | 126 | 130 | Device 140 | 144 | Object storage 154 | 158 | 162 | Receiver 172 | 176 | objects 186 | objects 196 | 197 | 198 | -------------------------------------------------------------------------------- /doc/media/Ptz/digitalSpace.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | image/svg+xml 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | (0,0) 44 | 45 | 46 | 47 | (0.1,-0.2) 48 | 49 | 50 | -------------------------------------------------------------------------------- /doc/media/MediaSigning/SigningMultipleGops01.svg: -------------------------------------------------------------------------------- 1 | 2 | 19 | 21 | 22 | 24 | image/svg+xml 25 | 27 | 28 | 29 | 30 | 31 | 55 | 57 | 64 | 71 | 81 | 84 | 86 | 92 | 94 | 97 | I 99 | 100 | 101 | 102 | I 108 | 109 | 110 | 117 | 124 | 134 | 137 | 139 | 145 | 147 | 150 | P 152 | 153 | 154 | 155 | P 161 | 162 | 163 | 173 | 176 | 178 | 184 | 186 | 189 | S 191 | 192 | 193 | 194 | S 200 | 201 | 202 | 209 | 219 | 222 | 224 | 230 | 232 | 235 | I 237 | 238 | 239 | 240 | I 246 | 247 | 248 | 255 | 258 | 261 | 266 | 267 | 274 | 275 | -------------------------------------------------------------------------------- /wsdl/ver10/replay.wsdl: -------------------------------------------------------------------------------- 1 | 2 | 3 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | The capabilities for the replay service is returned in the Capabilities element. 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | Indicator that the Device supports reverse playback as defined in the ONVIF Streaming Specification. 41 | 42 | 43 | 44 | 45 | The list contains two elements defining the minimum and maximum valid values supported as session timeout in seconds. 46 | 47 | 48 | 49 | 50 | Indicates support for RTP/RTSP/TCP. 51 | 52 | 53 | 54 | 55 | If playback streaming over WebSocket is supported, this shall return the RTSP WebSocket URI as described in Streaming Specification Section 5.1.1.5. 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | Specifies the connection parameters to be used for the stream. The URI that is returned may depend on these parameters. 68 | 69 | 70 | 71 | 72 | The identifier of the recording to be streamed. 73 | 74 | 75 | 76 | 77 | 78 | 79 | 80 | 81 | 82 | 83 | The URI to which the client should connect in order to stream the recording. 84 | 85 | 86 | 87 | 88 | 89 | 90 | 91 | 92 | 93 | 94 | Description of the new replay configuration parameters. 95 | 96 | 97 | 98 | 99 | 100 | 101 | 102 | 103 | 104 | 105 | 106 | 107 | 108 | 109 | 110 | 111 | 112 | 113 | 114 | 115 | 116 | 117 | The current replay configuration parameters. 118 | 119 | 120 | 121 | 122 | 123 | 124 | 125 | 126 | 127 | 128 | 129 | 130 | 131 | 132 | 133 | 134 | 135 | 136 | 137 | 138 | 139 | 140 | 141 | 142 | 143 | 144 | 145 | 146 | 147 | 148 | 149 | 150 | 151 | Returns the capabilities of the replay service. The result is returned in a typed answer. 152 | 153 | 154 | 155 | 156 | 157 | Requests a URI that can be used to initiate playback of a recorded stream 158 | using RTSP as the control protocol. The URI is valid only as it is 159 | specified in the response. 160 | A device supporting the Replay Service shall support the GetReplayUri command. 161 | 162 | 163 | 164 | 165 | 166 | 167 | Returns the current configuration of the replay service. 168 | This operation is mandatory. 169 | 170 | 171 | 172 | 173 | 174 | 175 | Changes the current configuration of the replay service. 176 | This operation is mandatory. 177 | 178 | 179 | 180 | 181 | 182 | 183 | 184 | 185 | 186 | 187 | 188 | 189 | 190 | 191 | 192 | 193 | 194 | 195 | 196 | 197 | 198 | 199 | 200 | 201 | 202 | 203 | 204 | 205 | 206 | 207 | 208 | 209 | 210 | 211 | 212 | 213 | 214 | 215 | 216 | 217 | 218 | 219 | 220 | 221 | 222 | --------------------------------------------------------------------------------