home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Thomson (Residential)
/
TGSTPv7203.iso
/
mac
/
HIW
/
xml
/
mod_devicesettings.xml
< prev
next >
Wrap
Extensible Markup Language
|
2008-02-11
|
7KB
|
145 lines
<?xml version="1.0"?>
<!DOCTYPE fsm SYSTEM "fsm.dtd">
<!--
Shows custom pages and other pages for user definable settings, including:
- PPP account settings (showPageEnterAccount) + normalization (normalizeAuthentication)
- wireless security settings (mod_wirelesssecurity)
- host/ST IP configuration (mod_ipconfig)
See documentation of the respective modules for more information.
Input properties:
- profile: The profile object.
Output properties:
- profile: The modified profile object.
- interface: Interface object to which the host must be configured.
- securityMode: The chosen wireless encryption type.
- networkKey: The entered encryption key.
Exit events:
- finished: User passed all pages.
-->
<fsm>
<property key="profile" required="yes"/>
<states>
<!-- custom pages -->
<state type="showCustomPages" name="customPageFsm"/>
<!-- enter account page -->
<state type="compare" name="checkShowEnterAccountPage">
<property key="type" value="number"/>
<property key="comparisonType" value="smaller"/>
<property key="input1" value="-1"/>
</state>
<state type="showPageEnterAccount" name="enterAccountPage">
<property key="registerPage" value="1"/>
<property key="backEnabled" value="1"/>
</state>
<state type="normalizeAuthentication" name="normalizeAuthentication">
<!--property key="plugin" value=".dll"/-->
<!--property key="usernamePostfix" value=""/-->
</state>
<!-- wireless security page -->
<state type="compare" name="checkShowWirelessSecurityPage">
<property key="type" value="number"/>
<property key="comparisonType" value="smaller"/>
<property key="input1" value="-1"/>
</state>
<state file="mod_settings_wirelessconfig.xml" name="wirelessSecurity"/>
<!-- IP config select and expert page -->
<state type="compare" name="checkShowIpConfigPages">
<property key="comparisonType" value="equal"/>
<property key="input1" value="user"/>
</state>
<state type="compare" name="checkConfigureAuto">
<property key="comparisonType" value="equal"/>
<property key="input1" value="auto"/>
</state>
<state type="configInterface" name="configureDHCP"/>
<state file="mod_settings_ipconfig.xml" name="ipConfigPages"/>
</states>
<events>
<event name="finished"/>
</events>
<transitions>
<!-- custom pages -->
<transition startstate="customPageFsm">
<propertymap target="profile" function="$fsm.profile"/>
<propertymap target="language" function="$app.programLanguage"/>
</transition>
<!-- EnterAccount page + normalization -->
<transition fromstate="customPageFsm" tostate="checkShowEnterAccountPage" event="finished">
<!-- output --><propertymap target="fsm.profile" function="$profile"/>
<propertymap target="input2" function="pos(join(property($profile, 'wizardAddedPages'), ';'), 'EnterAccount')"/>
</transition>
<transition fromstate="checkShowEnterAccountPage" tostate="enterAccountPage" event="true">
<propertymap target="profile" function="$fsm.profile"/>
</transition>
<transition fromstate="enterAccountPage" tostate="normalizeAuthentication" event="pageNext">
<!-- output --><propertymap target="fsm.profile" function="$profile"/>
<propertymap target="username" function="$username"/>
<propertymap target="password" function="$password"/>
</transition>
<!-- WirelessSecurity page -->
<transition fromstate="checkShowEnterAccountPage" tostate="checkShowWirelessSecurityPage" event="false">
<propertymap target="input2" function="pos(join(property($fsm.profile, 'wizardAddedPages'), ';'), 'WirelessSecurity')"/>
</transition>
<transition fromstate="normalizeAuthentication" tostate="checkShowWirelessSecurityPage" event="finished">
<!-- output --><propertymap target="fsm.profile" function="setproperty($fsm.profile, 'ST_PPP_USER', $username)"/>
<!-- output --><propertymap target="fsm.profile" function="setproperty($fsm.profile, '%ST_PPP_PASSWORD', $password)"/>
<propertymap target="input2" function="pos(join(property($fsm.profile, 'wizardAddedPages'), ';'), 'WirelessSecurity')"/>
</transition>
<transition fromstate="checkShowWirelessSecurityPage" tostate="wirelessSecurity" event="true">
<propertymap target="profile" function="$fsm.profile"/>
<propertymap target="ssid" function="property($app.device, '_SSID_SERIAL')"/>
<propertymap target="networkKey" function="property($app.device, '_WPAKEY_SERIAL')"/>
<propertymap target="securityMode" function="$app.pageWirelessSecurity.initialSecurityMode"/>
<propertymap target="allowedSecurityModes" function="split(lowercase($app.pageWirelessSecurity.allowedSecurityModes), ',')"/>
</transition>
<transition fromstate="wirelessSecurity" tostate="checkShowIpConfigPages" event="finished">
<!-- output --><propertymap target="fsm.ssid" function="$ssid"/>
<!-- output --><propertymap target="fsm.securityMode" function="$securityMode"/>
<!-- output --><propertymap target="fsm.networkKey" function="$networkKey"/>
<!-- output --><propertymap target="fsm.profile" function="$profile"/>
<propertymap target="input2" function="property($fsm.profile, 'HOST_SETUP')"/>
</transition>
<!-- IP Configuration pages -->
<transition fromstate="checkShowWirelessSecurityPage" tostate="checkShowIpConfigPages" event="false">
<!-- default encryption type from template -->
<!-- output --><propertymap target="fsm.securityMode" function="property($fsm.profile, 'ST_WF_SECURITY')"/>
<!-- default ssid network key from device; assume _WEPKEY_SERIAL == _WPAKEY_SERIAL -->
<!-- output --><propertymap target="fsm.ssid" function="property($fsm.profile, '_SSID_SERIAL')"/>
<!-- output --><propertymap target="fsm.networkKey" function="property($app.device, '_WPAKEY_SERIAL')"/>
<propertymap target="input2" function="property($fsm.profile, 'HOST_SETUP')"/>
</transition>
<transition fromstate="checkShowIpConfigPages" tostate="ipConfigPages" event="true">
<propertymap target="profile" function="$fsm.profile"/>
</transition>
<transition fromstate="checkShowIpConfigPages" tostate="checkConfigureAuto" event="false">
<!-- output --><propertymap target="fsm.interface" function="property($app.device, 'lanInterface')"/>
<propertymap target="input2" function="property($fsm.profile, 'HOST_SETUP')"/>
</transition>
<transition fromstate="checkConfigureAuto" tostate="configureDHCP" event="true">
<propertymap target="interface" function="$fsm.interface"/>
<propertymap target="enableDhcp" function="1"/>
</transition>
<!-- finished -->
<transition fromstate="checkConfigureAuto" toexit="finished" event="false">
<!-- output --><propertymap target="fsm.interface" function="(dummy)"/>
</transition>
<transition fromstate="configureDHCP" toexit="finished" event="finished">
<!-- output --><propertymap target="fsm.interface" function="$interface"/>
</transition>
<transition fromstate="ipConfigPages" toexit="finished" event="finished">
<!-- output --><propertymap target="fsm.profile" function="$profile"/>
<!-- output --><propertymap target="fsm.interface" function="$interface"/>
</transition>
</transitions>
</fsm>