skip navigation
URC Consortium Logo

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

  1. 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)
  2. 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.

  3. 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

This site is maintained by the University of Wisconsin Trace Center, a member of the Universal Remote Console Consortium.