UPnPsdk 0.1
Universal Plug and Play +, Software Development Kit
 
Loading...
Searching...
No Matches
Step 0: Addressing

Items to get a network address for UPnP devices and control points. More...

Modules

 Address module
 The address module contains all classes and free functions to manage network addresses.
 
 Socket module
 The socket module contains all classes and free functions to manage network sockets.
 
 URI module
 The URI module contains all classes and free functions to manage Uniform Resource Identifier (URI) as specified with RFC 3986.
 
 Connection module
 The connection module contains all classes and free functions to manage network connections.
 

Detailed Description

Items to get a network address for UPnP devices and control points.

Addressing is Step 0 of UPnP networking. Through addressing, devices and control points get a network address. Addressing enables discovery (Step 1) where control points find interesting device(s), description (Step 2) where control points learn about device capabilities, control (Step 3) where a control point sends commands to device(s), eventing (Step 4) where control points listen to state changes in device(s), and presentation (Step 5) where control points display a user interface for device(s).

To have it available for tests:
"A URI is opaque if, and only if, it is absolute and its scheme-specific part does not begin with a slash character ('/'). An opaque URI has a scheme, a scheme-specific part, and possibly a fragment; all other components are undefined." E.g.: mailto:a@b. (Ref.: Opaque URI).

the following figure displays example URIs and their components.
Sources:
RFC 3986: Uniform Resource Identifier (URI): Generic Syntax
Wikipedia - syntax diagram
Wikipedia - Example URIs

             userinfo           host      port
        ┌───────┴───────┐ ┌──────┴──────┐ ┌┴┐
https://john.doe:password@www.example.com:123/forum/questions/?tag=networking&order=newest#top
└─┬─┘   └──────────────────┬────────────────┘└───────┬───────┘ └───────────┬─────────────┘ └┬┘
scheme                 authority                    path                 query           fragment

ldap://[2001:db8::7]/c=GB?objectClass?one
└┬─┘   └─────┬─────┘└─┬─┘ └──────┬──────┘
scheme   authority   path      query

mailto:John.Doe@example.com
└─┬──┘ └────┬─────────────┘
scheme     path

news:comp.infosystems.www.servers.unix
└┬─┘ └─────────────┬─────────────────┘
scheme            path

tel:+1-816-555-1212
└┬┘ └──────┬──────┘
scheme    path

telnet://192.0.2.16:80/
└─┬──┘   └─────┬─────┘│
scheme     authority  path

urn:oasis:names:specification:docbook:dtd:xml:4.1.2
└┬┘ └──────────────────────┬──────────────────────┘
scheme                    path

Absolute path: A URI.
Relative path: A Relative Reference.
root based: path with leading '/'

References