Mbed Clock application using an NTP connection to get internet time and a terminal interface to send commands
Dependencies: 4DGL-uLCD-SE EthernetInterface NTPClient mbed-rtos mbed SDFileSystem wavfile
SpeechServerSource/grammar.xml
- Committer:
- dudanian
- Date:
- 2014-12-09
- Revision:
- 6:23c3adb0470d
- Parent:
- 4:c4dfbf6b7f9f
File content as of revision 6:23c3adb0470d:
<grammar version="1.0" xml:lang="en-US" root="commands" xmlns="http://www.w3.org/2001/06/grammar" tag-format="semantics/1.0"> <rule id="commands"> <one-of> <item> <ruleref uri="#setTime" /> <tag> out = rules.setTime; </tag> </item> <item> <ruleref uri="#setTimezone" /> <tag> out = rules.setTimezone; </tag> </item> <item> <ruleref uri="#setAlarm" /> <tag> out = rules.setAlarm; </tag> </item> <item> <ruleref uri="#setTimer" /> <tag> out = rules.setTimer; </tag> </item> <item> <ruleref uri="#deleteAlarm" /> <tag> out = rules.deleteAlarm; </tag> </item> <item> <ruleref uri="#syncNow" /> <tag> out = rules.syncNow; </tag> </item> </one-of> </rule> <rule id="setTime"> <item> set </item> <item repeat="0-1"> the </item> <item> time </item> <item repeat="0-1"> to </item> <ruleref uri="#time" /> <tag> out.command = "setTime"; </tag> <tag> out.time = rules.time; </tag> </rule> <rule id="setTimezone"> <item> set </item> <item repeat="0-1"> the </item> <item> timezone </item> <item repeat="0-1"> to </item> <ruleref uri="#zone" /> <tag> out.command = "setTimezone"; </tag> <tag> out.zone = rules.zone; </tag> </rule> <rule id="setAlarm"> <item> set </item> <item repeat="0-1"> an </item> <item> alarm </item> <item repeat="0-1"> for </item> <ruleref uri="#time" /> <tag> out.command = "setAlarm"; </tag> <tag> out.time = rules.time; </tag> </rule> <rule id="setTimer"> <item> set </item> <item repeat="0-1"> an </item> <item> alarm </item> <item repeat="0-1"> for </item> <ruleref uri="#hoursminutes" /> <tag> out.command = "setTimer"; </tag> <tag> out.length = rules.hoursminutes; </tag> </rule> <rule id="deleteAlarm"> <item> delete </item> <item repeat="0-1"> the </item> <item> alarm </item> <tag> out.command = "deleteAlarm"; </tag> </rule> <rule id="syncNow"> <item> sync </item> <item repeat="0-1"> the </item> <item repeat="0-1"> time </item> <item> now </item> <tag> out.command = "syncNow"; </tag> </rule> <rule id="time"> <ruleref uri="#hour" /> <ruleref uri="#minuteTime" /> <ruleref uri="#period" /> <tag> out.hour = rules.hour; </tag> <tag> out.minute = rules.minuteTime; </tag> <tag> out.period = rules.period; </tag> </rule> <rule id="hoursminutes"> <one-of> <item> <ruleref uri="#hours" /> <tag> out.hour = rules.hours; out.minute = 0; </tag> </item> <item> <ruleref uri="#minutes" /> <tag> out.hour = 0; out.minute = rules.minutes </tag> </item> <item> <ruleref uri="#hours" /> <item repeat="0-1"> and </item> <ruleref uri="#minutes" /> <tag> out.hour = rules.hours; </tag> <tag> out.minute = rules.minutes; </tag> </item> </one-of> </rule> <rule id="hours"> <ruleref uri="#hour" /> <one-of> <item> hour </item> <item> hours </item> </one-of> <tag> out = rules.hour; </tag> </rule> <rule id="minutes"> <ruleref uri="#minuteLength" /> <one-of> <item> minute </item> <item> minutes </item> </one-of> <tag> out = rules.minuteLength; </tag> </rule> <rule id="hour"> <one-of> <item> one <tag> out = 1; </tag> </item> <item> two <tag> out = 2; </tag> </item> <item> three <tag> out = 3; </tag> </item> <item> four <tag> out = 4; </tag> </item> <item> five <tag> out = 5; </tag> </item> <item> six <tag> out = 6; </tag> </item> <item> seven <tag> out = 7; </tag> </item> <item> eight <tag> out = 8; </tag> </item> <item> nine <tag> out = 9; </tag> </item> <item> ten <tag> out = 10; </tag> </item> <item> eleven <tag> out = 11; </tag> </item> <item> twelve <tag> out = 12; </tag> </item> </one-of> </rule> <rule id="minuteTime"> <one-of> <item> <ruleref uri="#minute2" /> <tag> out = rules.minute2; </tag> </item> <item> <ruleref uri="#minute3" /> <tag> out = rules.minute3; </tag> </item> </one-of> </rule> <rule id="minuteLength"> <one-of> <item> <ruleref uri="#minute1" /> <tag> out = rules.minute1; </tag> </item> <item> <ruleref uri="#minute3" /> <tag> out = rules.minute3; </tag> </item> </one-of> </rule> <rule id="minute1"> <one-of> <item> zero <tag> out = 0; </tag> </item> <item> one <tag> out = 1; </tag> </item> <item> two <tag> out = 2; </tag> </item> <item> three <tag> out = 3; </tag> </item> <item> four <tag> out = 4; </tag> </item> <item> five <tag> out = 5; </tag> </item> <item> six <tag> out = 6; </tag> </item> <item> seven <tag> out = 7; </tag> </item> <item> eight <tag> out = 8; </tag> </item> <item> nine <tag> out = 9; </tag> </item> <item> sixty <tag> out = 60; </tag> </item> </one-of> </rule> <rule id="minute2"> <one-of> <item> o'clock <tag> out = 0; </tag> </item> <item> o'one <tag> out = 1; </tag> </item> <item> o'two <tag> out = 2; </tag> </item> <item> o'three <tag> out = 3; </tag> </item> <item> o'four <tag> out = 4; </tag> </item> <item> o'five <tag> out = 5; </tag> </item> <item> o'six <tag> out = 6; </tag> </item> <item> o'seven <tag> out = 7; </tag> </item> <item> o'eight <tag> out = 8; </tag> </item> <item> o'nine <tag> out = 9; </tag> </item> </one-of> </rule> <rule id="minute3"> <one-of> <item> ten <tag> out = 10; </tag> </item> <item> eleven <tag> out = 11; </tag> </item> <item> twelve <tag> out = 12; </tag> </item> <item> thirteen <tag> out = 13; </tag> </item> <item> fourteen <tag> out = 14; </tag> </item> <item> fifteen <tag> out = 15; </tag> </item> <item> sixteen <tag> out = 16; </tag> </item> <item> seventeen <tag> out = 17; </tag> </item> <item> eighteen <tag> out = 18; </tag> </item> <item> nineteen <tag> out = 19; </tag> </item> <item> twenty <tag> out = 20; </tag> </item> <item> twentyone <tag> out = 21; </tag> </item> <item> twentytwo <tag> out = 22; </tag> </item> <item> twentythree <tag> out = 23; </tag> </item> <item> twentyfour <tag> out = 24; </tag> </item> <item> twentyfive <tag> out = 25; </tag> </item> <item> twentysix <tag> out = 26; </tag> </item> <item> twentyseven <tag> out = 27; </tag> </item> <item> twentyeight <tag> out = 28; </tag> </item> <item> twentynine <tag> out = 29; </tag> </item> <item> thirty <tag> out = 30; </tag> </item> <item> thirtyone <tag> out = 31; </tag> </item> <item> thirtytwo <tag> out = 32; </tag> </item> <item> thirtythree <tag> out = 33; </tag> </item> <item> thirtyfour <tag> out = 34; </tag> </item> <item> thirtyfive <tag> out = 35; </tag> </item> <item> thirtysix <tag> out = 36; </tag> </item> <item> thirtyseven <tag> out = 37; </tag> </item> <item> thirtyeight <tag> out = 38; </tag> </item> <item> thirtynine <tag> out = 39; </tag> </item> <item> fourty <tag> out = 40; </tag> </item> <item> fourtyone <tag> out = 41; </tag> </item> <item> fourtytwo <tag> out = 42; </tag> </item> <item> fourtythree <tag> out = 43; </tag> </item> <item> fourtyfour <tag> out = 44; </tag> </item> <item> fourtyfive <tag> out = 45; </tag> </item> <item> fourtysix <tag> out = 46; </tag> </item> <item> fourtyseven <tag> out = 47; </tag> </item> <item> fourtyeight <tag> out = 48; </tag> </item> <item> fourtynine <tag> out = 49; </tag> </item> <item> fifty <tag> out = 50; </tag> </item> <item> fiftyone <tag> out = 51; </tag> </item> <item> fiftytwo <tag> out = 52; </tag> </item> <item> fiftythree <tag> out = 53; </tag> </item> <item> fiftyfour <tag> out = 54; </tag> </item> <item> fiftyfive <tag> out = 55; </tag> </item> <item> fiftysix <tag> out = 56; </tag> </item> <item> fiftyseven <tag> out = 57; </tag> </item> <item> fiftyeight <tag> out = 58; </tag> </item> <item> fiftynine <tag> out = 59; </tag> </item> </one-of> </rule> <rule id="period"> <one-of> <item> AM <tag> out = 0; </tag> </item> <item> PM <tag> out = 1; </tag> </item> </one-of> </rule> <rule id="zone"> <one-of> <item> UTC <tag> out = 0; </tag> </item> <item> EST <tag> out = -5; </tag> </item> <item> MST <tag> out = -6; </tag> </item> <item> CST <tag> out = -7; </tag> </item> <item> PST <tag> out = -8; </tag> </item> </one-of> </rule> </grammar>