1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 cr.define('hotword.constants', function() {
9 * Hotword data shared module extension's ID.
12 var SHARED_MODULE_ID = 'lccekmodgklaepjeofjdjpbminllajkg';
15 * Path to shared module data.
18 var SHARED_MODULE_ROOT = '_modules/' + SHARED_MODULE_ID;
21 * Name used by the content scripts to create communications Ports.
24 var CLIENT_PORT_NAME = 'chwcpn';
27 * The field name to specify the command among pages.
30 var COMMAND_FIELD_NAME = 'cmd';
33 * Time to wait for expected messages, in milliseconds.
43 * The URL of the files used by the plugin.
47 RECOGNIZER_CONFIG: 'hotword.data',
51 * Errors emitted by the NaClManager.
55 NACL_CRASH: 'nacl_crash',
60 * Event types supported by NaClManager.
70 * Messages for communicating with the NaCl recognizer plugin. These must match
71 * constants in <google3>/hotword_plugin.c
76 SAMPLE_RATE_PREFIX: 'h',
79 REQUEST_MODEL: 'model',
80 MODEL_LOADED: 'model_loaded',
81 READY_FOR_AUDIO: 'audio',
83 HOTWORD_DETECTED: 'hotword',
84 MS_CONFIGURED: 'ms_configured'
88 * Messages sent from the injected scripts to the Google page.
92 HOTWORD_VOICE_TRIGGER: 'vt',
93 HOTWORD_STARTED: 'hs',
95 HOTWORD_TIMEOUT: 'ht',
100 * Messages sent from the Google page to the injected scripts
101 * and then passed to the extension.
104 var CommandFromPage = {
108 SHOWING_HOTWORD_START: 'shs',
109 SHOWING_ERROR_MESSAGE: 'sem',
110 SHOWING_TIMEOUT_MESSAGE: 'stm',
111 CLICKED_RESUME: 'hcc',
112 CLICKED_RESTART: 'hcr',
113 CLICKED_DEBUG: 'hcd',
114 WAKE_UP_HELPER: 'wuh'
118 * Source of a hotwording session request.
121 var SessionSource = {
122 LAUNCHER: 'launcher',
129 * MediaStream open success/errors to be reported via UMA.
130 * DO NOT remove or renumber values in this enum. Only add new ones.
133 var UmaMediaStreamOpenResult = {
137 PERMISSION_DENIED: 3,
138 CONSTRAINT_NOT_SATISFIED: 4,
142 SOURCE_UNAVAILABLE: 8,
143 PERMISSION_DISMISSED: 9,
145 DEVICES_NOT_FOUND: 11,
146 INVALID_SECURITY_ORIGIN: 12,
152 * DO NOT change these enum values.
156 TRIGGER: 'Hotword.HotwordTrigger',
157 MEDIA_STREAM_RESULT: 'Hotword.HotwordMediaStreamResult',
158 NACL_PLUGIN_LOAD_RESULT: 'Hotword.HotwordNaClPluginLoadResult',
159 NACL_MESSAGE_TIMEOUT: 'Hotword.HotwordNaClMessageTimeout'
163 * Message waited for by NaCl plugin, to be reported via UMA.
164 * DO NOT remove or renumber values in this enum. Only add new ones.
167 var UmaNaClMessageTimeout = {
178 * NaCl plugin load success/errors to be reported via UMA.
179 * DO NOT remove or renumber values in this enum. Only add new ones.
182 var UmaNaClPluginLoadResult = {
191 * The browser UI language.
194 var UI_LANGUAGE = (chrome.i18n && chrome.i18n.getUILanguage) ?
195 chrome.i18n.getUILanguage() : '';
198 CLIENT_PORT_NAME: CLIENT_PORT_NAME,
199 COMMAND_FIELD_NAME: COMMAND_FIELD_NAME,
200 SHARED_MODULE_ID: SHARED_MODULE_ID,
201 SHARED_MODULE_ROOT: SHARED_MODULE_ROOT,
202 UI_LANGUAGE: UI_LANGUAGE,
203 CommandToPage: CommandToPage,
204 CommandFromPage: CommandFromPage,
208 NaClPlugin: NaClPlugin,
209 SessionSource: SessionSource,
210 TimeoutMs: TimeoutMs,
211 UmaMediaStreamOpenResult: UmaMediaStreamOpenResult,
212 UmaMetrics: UmaMetrics,
213 UmaNaClMessageTimeout: UmaNaClMessageTimeout,
214 UmaNaClPluginLoadResult: UmaNaClPluginLoadResult