Initial import
This commit is contained in:
@@ -0,0 +1,33 @@
|
||||
#lang scribble/manual
|
||||
|
||||
@(require (for-label racket/base
|
||||
(file "../main.rkt")
|
||||
(file "../media-renderer.rkt")
|
||||
(file "../media-server.rkt")
|
||||
(file "../services/av-transport.rkt")
|
||||
(file "../services/rendering-control.rkt")
|
||||
(file "../services/connection-manager.rkt")
|
||||
(file "../services/content-directory.rkt")))
|
||||
|
||||
@title{Introduction}
|
||||
|
||||
The @racketmodname[racket-upnp] collection implements a small UPnP control
|
||||
point. It discovers devices with SSDP, downloads their device descriptions,
|
||||
and represents devices and services as ordinary Racket values. Unknown
|
||||
vendor-specific device and service types are retained instead of discarded.
|
||||
|
||||
The public interface is divided into layers:
|
||||
|
||||
@itemlist[
|
||||
@item{The @racketmodname[racket-upnp] module provides discovery, device
|
||||
information, generic service inspection, and generic SOAP calls.}
|
||||
@item{Modules in the @tt{racket-upnp/services} subcollection provide
|
||||
typed interfaces for standard UPnP services.}
|
||||
@item{The @racketmodname[racket-upnp/media-renderer] and
|
||||
@racketmodname[racket-upnp/media-server] modules provide convenient
|
||||
device-oriented interfaces.}
|
||||
]
|
||||
|
||||
A normal application can use the device-oriented modules without dealing with
|
||||
SSDP, SOAP, service control URLs, or DIDL-Lite XML directly. The generic layer
|
||||
remains available for inspection and vendor-specific extensions.
|
||||
Reference in New Issue
Block a user