The LumenVox products, including the LumenVox Media Server, can fetch grammars hosted on a local filesystem or across a network, using URIs (such as file:// or http://). LumenVox generally recommends that grammars be served over HTTP by application/web servers, as it allows for things like HTTP caching to be enabled.
If you are using a web server to serve grammars, please be sure that you have configured it to serve your grammar files. If you are having trouble fetching a grammar, it can be useful to try opening the URI in a web browser (or using a command line tool like curl or wget) to ensure that it is accessible.
As of version 11.2, LumenVox added support for fetching grammars over HTTPS. See client_property.conf for details of specific settings needed to utilize certain certificate configurations (specifically SSL_VERIFYPEER and CERTIFICATE_AUTHORITY_FILE).
According to the SRGS specification, the following media types should be specified when reference grammars over HTTP:
- ABNF grammars should use a media type of application/srgs
- GrXML grammars should use a media type of application/srgs+xml
Note that if the incorrect content-type is specified over HTTP (or when loading a grammar via MRCP), it can cause issues. If a server reports a content-type of application/srgs+xml for an ABNF grammar, LumenVox will assume that it is a GrXML grammar and try to load it as such.
If no content-type is specified (or a content-type we do not recognize), LumenVox will attempt to auto-detect the type.