The FDDM Application List is automatically sent to all ConfigGroup requests that contain the 'mmodal' group (which is requested by all FD clients). The application list on is used by FD to specifically identify dictation targets. FD uses this information in a couple feature areas:
- Command Availibility: Enabling/disabling Commands based on which Application you're dictating into
- Specialties: Changing the active Specialty (recognizer) based on which Application has focus
- Must be unique
- When you create a CommandAvailibility or Specialty mapping, the only info that is saved into the Cmd/Spec is the Application ID.
- Should never be changed after it was published to end users
- The end user never sees the ID
- Must be unique
- This what the end user sees
- Needs to be intuitive so that the user will immediately be able to associate it
- Be wary of ambiguous duplicates - ie: don't make "Word" and "Microsoft Word"
- Optional
- Multiple process names can be entered
- If multiple process names are supplied then they match with OR logic
- Case insensitive
- Process names match via an 'equals' check. ie: an entry of "pad" will not match "Notepad"
- You should not include ".exe" on the end of your name. ie: the processName of Word is 'winword', not 'winword.exe'
- If you supply a WindowTitle and a ProcessName then they are evaluated with OR logic
- Optional
- Multiple titles can be entered
- If multiple titles are supplied then they match with OR logic
- Case insensitive
- Titles match with via a 'contains' check. ie: a title entry of "soft" will match "Microsoft Word"
- If you supply a WindowTitle and a ProcessName then they are evaluated with OR logic
- Indicates that the application is a mobile app that implements our mobile SDK
- Mobile apps do not need to specify a process name or window title
- This flag is used within FD to know which Commands should be flagged as being available in mobile SDK applications
- FD Installations come with a built-in list of applications. This built-in list is stored in a file named CommandSettings.xml.
- FDDM entries with new IDs will extend the built-in list.
- FDDM entries with IDs that already exist in the built-in list will override the details of that built-in entry.
- FDDM can remove an entry from the built-in list by using the same ID but not defining any window titles or process names.
- The CommandSettings.xml file will never be locally modified by the FDDM list. The merging only happens in memory at FD runtime.