@@ -44,6 +44,11 @@ function sepiaFW_build_input_controls_cmdl() {
4444 } else {
4545 document . removeEventListener ( 'sepia_speech_event' , speechBroadcaster ) ;
4646 }
47+ if ( Cmdl . broadcasters . wakeWord ) {
48+ document . addEventListener ( 'sepia_wake_word' , wakeWordBroadcaster ) ;
49+ } else {
50+ document . removeEventListener ( 'sepia_wake_word' , wakeWordBroadcaster ) ;
51+ }
4752
4853 //say hello
4954 broadcastEvent ( "event" , {
@@ -56,14 +61,16 @@ function sepiaFW_build_input_controls_cmdl() {
5661 document . removeEventListener ( 'sepia_state_change' , stateBroadcaster ) ;
5762 document . removeEventListener ( 'sepia_login_event' , loginBroadcaster ) ;
5863 document . removeEventListener ( 'sepia_speech_event' , speechBroadcaster ) ;
64+ document . removeEventListener ( 'sepia_wake_word' , wakeWordBroadcaster ) ;
5965 }
6066 }
6167
6268 //Broadcasters to use, usually overwritten by headless settings
6369 Cmdl . broadcasters = {
6470 state : false ,
6571 login : false ,
66- speech : false
72+ speech : false ,
73+ wakeWord : false
6774 } ;
6875 function stateBroadcaster ( ev ) {
6976 if ( Cmdl . broadcasters . state && ev . detail && ev . detail . state ) {
@@ -87,6 +94,13 @@ function sepiaFW_build_input_controls_cmdl() {
8794 } ) ;
8895 }
8996 }
97+ function wakeWordBroadcaster ( ev ) {
98+ if ( Cmdl . broadcasters . wakeWord && ev . detail && ev . detail . keyword ) {
99+ broadcastEvent ( "sepia-wake-word" , {
100+ word : ev . detail . keyword
101+ } ) ;
102+ }
103+ }
90104
91105 function handleClientBroadcastEvents ( ev ) {
92106 //console.log(ev); //DEBUG
0 commit comments