
You are here: MyURC.org > Tools & Prototypes > UCHe > tutorial > Configuration File
How to Modify the UCHe Configuration File
Page Contents:
File Location
The UCH configuration file is located at:
[Apache_HOME]/cgi-bin/uch.config.
In case of UCHe installation with Apache, the location is
/usr/local/[ApacheFolder]/cgi-bin/uch.config.
Basic Settings
- Set the debug level to a number between 0 and 3:
<debug>0</debug>Available debug levels:
- 3 - information + warning + error
- 2 - warning + error
- 1 - error
- 0 - no log file (recommended)
Specify the IP address of the server, as in the following example:
<ipAddress>192.168.1.1</ipAddress>Note: Replace "192.168.1.1" in the above example with the IP address of your server.
- The set up of the document root is very important setting. UCH uses files
lying at this path to list on the Compatible UIs XML. Make sure the
document root of UCH is set correctly under <uch> tag:
<prop> <name>http://myurc.org/ns/res#docRoot</name> <value>/usr/local/intelapache/htdocs</value> </prop>
Add and configure TDM
Set the properties for each TDM in <tdmList>, for example
for UPnP TDM:
<tdmList>
<tdm>
<prop>
<name>http://myurc.org/ns/res#dynamicLibClass</name>
<value>/usr/local/armapache/cgi-bin/libUpnpTDM.so</value>
</prop>
<prop>
<name>http://myurc.org/ns/res#type</name>
<value>http://myurc.org/restypes#tdm</value>
</prop>
<prop>
<name>http://purl.org/dc/elements/1.1/title</name>
<value>UPnP-TDM</value>
</prop>
<prop>
<name>http://purl.org/dc/terms/modified</name>
<value>2008-12-03T00:00:00Z</value>
</prop>
<prop>
<name>http://purl.org/dc/terms/conformsTo</name>
<value>http://myurc.org/TR/uch1.0-20081124/</value>
</prop>
<prop>
<name>http://res.myurc.org/tdm/upnp/relaxParser</name>
<value>true</value>
</prop>
</tdm>
</tdmList>
Multiple TDMs can be added under <tdmList> for discovering devices of different networking platforms.
For downloading TDMs from Global Online Resource Server specify the TDM resource names in a comma separated format, for example:
<TDMs>http://res.myurc.org/upnp/av/tdm/c++,http://res.myurc.org/gc100/tdm/c++</TDMs>
Note: Do not mention the same TDM library in both <tdmList> and <TDMs>. UCHe might crash while instantiating the same shared library.
Add and configure TA
Set the properties for each TA in <taList>, for example
SatelliteBox TA:
<taList>
<ta>
<prop>
<name>http://myurc.org/ns/res#dynamicLibClass</name>
<value>/usr/local/armapache/cgi-bin/libUpnpSatelliteBoxAdapter.so</value>
</prop>
<prop>
<name>http://myurc.org/ns/res#type</name>
<value>http://myurc.org/restypes#ta</value>
</prop>
<prop>
<name>http://purl.org/dc/terms/conformsTo</name>
<value>http://myurc.org/TR/uch1.0-20081124/</value>
</prop>
<prop>
<name>http://myurc.org/ns/res#deviceType</name>
<value>urn:schemas-upnp-org:device:satellitebox:1</value>
</prop>
<prop>
<name>http://myurc.org/ns/res#devicePlatform</name>
<value>UPnP</value>
</prop>
<prop>
<name>http://purl.org/dc/terms/modified</name>
<value>2008-12-03T00:00:00Z</value>
</prop>
<prop>
<name>http://myurc.org/ns/res#tdURI</name>
<!-- This path is relative to UCH docRoot defined above -->
<value>SatelliteBoxNQT/satellitebox.td</value>
</prop>
</ta>
</taList>
Multiple TAs can be added under <taList> for controlling different devices in the Network.
Add and configure UIPM
Set the properties of each UIPM in <uipmList>, for
example UrcHttp UIPM:
<uipmList>
<uipm>
<prop>
<name>http://myurc.org/ns/res#dynamicLibClass</name>
<value>/usr/local/armapache/cgi-bin/libUrcHttpUIPM.so</value>
</prop>
<prop>
<name>http://myurc.org/ns/res#type</name>
<value>http://myurc.org/restypes#uipm</value>
</prop>
<prop>
<name>http://purl.org/dc/terms/conformsTo</name>
<value>http://myurc.org/TR/uch1.0-20081124/</value>
</prop>
<prop>
<name>http://purl.org/dc/terms/modified</name>
<value>2008-12-03T00:00:00Z</value>
</prop>
<prop>
<name>http://purl.org/dc/elements/1.1/title</name>
<value>URC-HTTP UIPM</value>
</prop>
<prop>
<name>http://myurc.org/ns/res#forTargetName</name>
<value>*</value>
</prop>
<prop>
<name>http://myurc.org/ns/res#urlBasePath</name>
<value>/urchttp</value>
</prop>
<prop>
<name>http://myurc.org/ns/res#urlPortNo</name>
<value>80</value>
</prop>
<prop>
<name>http://res.myurc.org/uipm/urc-http#tcpIpPortNo</name>
<value>12000</value>
</prop>
<prop>
<name>http://myurc.org/ns/res#protocolShortName</name>
<value>URC-HTTP</value>
</prop>
<prop>
<name>http://myurc.org/ns/res#forSocketName</name>
<value>*</value>
</prop>
</uipm>
</uipmList>
Multiple UIPMs can be added under <uipmList> for implementing different protocols for remote control clients (controllers).
Resource Server Settings
Following information must be filled in for connection to Global Online Resource Server:
<resserver.username></resserver.username> <resserver.password></resserver.password> <resserver.appPath></resserver.appPath> <resserver.ipAddress></resserver.ipAddress>
For access information please contact Dr. Gottfried Zimmermann at zimmer@trace.wisc.edu
Last update: Gottfried Zimmermann, Parikshit Thakur & Team, 2008-12-03