[tuxdroid-svn] r1423 - in software_suite_v2/tuxware/tuxhttpserver/trunk/src: . resources
Status: Beta
Brought to you by:
ks156
From: remi <c2m...@c2...> - 2008-07-30 11:11:30
|
Author: remi Date: 2008-07-30 13:11:36 +0200 (Wed, 30 Jul 2008) New Revision: 1423 Added: software_suite_v2/tuxware/tuxhttpserver/trunk/src/resources/ResourceMacro.py Modified: software_suite_v2/tuxware/tuxhttpserver/trunk/src/tuxhttpserver.py Log: * added the resource named "macro". This resource handle the macro commands format of libtuxosl and libtuxdriver. Added: software_suite_v2/tuxware/tuxhttpserver/trunk/src/resources/ResourceMacro.py =================================================================== --- software_suite_v2/tuxware/tuxhttpserver/trunk/src/resources/ResourceMacro.py (rev 0) +++ software_suite_v2/tuxware/tuxhttpserver/trunk/src/resources/ResourceMacro.py 2008-07-30 11:11:36 UTC (rev 1423) @@ -0,0 +1,74 @@ +# ----------------------------------------------------------------------------- +# /macro/play?macro=%s +# ----------------------------------------------------------------------------- +def funct_macro_play(id_client, parameters): + content_struct = copy.deepcopy(DEFAULT_CONTENT_STRUCT) + content_struct['root']['result'] = getStrError(E_TDREST_SUCCESS) + p_fmt = { + 'macro' : 'string', + } + + if not Glb_DonglePresent: + content_struct['root']['result'] = getStrError(E_TDREST_FAILED) + content = structToXML(content_struct, True) + return DEFAULT_HEADERS, content + + result, params = parseParameters(parameters, p_fmt) + + if result: + Glb_TuxDrv.ClearCommandStack() + Glb_TuxOSL.ClearCommandStack() + Glb_TuxOSL.PerformCommand(0.0, "OSL_CMD:TTS:STOP") + Glb_TuxOSL.PerformCommand(0.0, "OSL_CMD:WAV:STOP") + Glb_TuxDrv.ResetPositions() + macro = params['macro'].replace("|", "\n") + if len(macro) <= 16384: + Glb_TuxDrv.PerformMacroText(macro) + Glb_TuxOSL.PerformMacroText(macro) + else: + content_struct['root']['result'] = \ + getStrError(E_TDREST_FAILED) + else: + content_struct['root']['result'] = \ + getStrError(E_TDREST_INVALIDPARAMETERS) + + content = structToXML(content_struct, True) + + return DEFAULT_HEADERS, content + +Glb_ServiceContainer.createService('/macro/play?', + TDCC_LEVEL_FREE_CLIENT, + funct_macro_play, + "Macro", + "Play a macro.", + { + 'macro' : 'string', + }) + +# ----------------------------------------------------------------------------- +# /macro/stop? +# ----------------------------------------------------------------------------- +def funct_macro_stop(id_client, parameters): + content_struct = copy.deepcopy(DEFAULT_CONTENT_STRUCT) + content_struct['root']['result'] = getStrError(E_TDREST_SUCCESS) + + if not Glb_DonglePresent: + content_struct['root']['result'] = getStrError(E_TDREST_FAILED) + content = structToXML(content_struct, True) + return DEFAULT_HEADERS, content + + Glb_TuxDrv.ClearCommandStack() + Glb_TuxOSL.ClearCommandStack() + Glb_TuxOSL.PerformCommand(0.0, "OSL_CMD:TTS:STOP") + Glb_TuxOSL.PerformCommand(0.0, "OSL_CMD:WAV:STOP") + Glb_TuxDrv.ResetPositions() + + content = structToXML(content_struct, True) + + return DEFAULT_HEADERS, content + +Glb_ServiceContainer.createService('/macro/stop?', + TDCC_LEVEL_FREE_CLIENT, + funct_macro_stop, + "Macro", + "Stop the played macro.") \ No newline at end of file Modified: software_suite_v2/tuxware/tuxhttpserver/trunk/src/tuxhttpserver.py =================================================================== --- software_suite_v2/tuxware/tuxhttpserver/trunk/src/tuxhttpserver.py 2008-07-30 09:29:05 UTC (rev 1422) +++ software_suite_v2/tuxware/tuxhttpserver/trunk/src/tuxhttpserver.py 2008-07-30 11:11:36 UTC (rev 1423) @@ -172,6 +172,8 @@ exec(str) in globals() str = open('%s/resources/ResourceEyes.py' % APPLICATION_PATH, 'r').read() exec(str) in globals() + str = open('%s/resources/ResourceMacro.py' % APPLICATION_PATH, 'r').read() + exec(str) in globals() str = open('%s/resources/ResourceMouth.py' % APPLICATION_PATH, 'r').read() exec(str) in globals() str = open('%s/resources/ResourceFlippers.py' % APPLICATION_PATH, 'r').read() |