What information is available for Speech Profile Management and Speech Utility Server (SUS)?
ANSWER:
Speech Profile Management and Speech Utility Server (SUS) details are provided below:
Profile management is an important part of making the dictators and the site successful using PS360 Reporting.
As users dictate throughout the day, for each report, a DRA file generates. DRA files are stored on the user workstation until the user saves their speech files to the server. These DRA files are necessary for Optimization jobs (ACO/LMO) to run successfully.
If a user trained a word today on workstation and moves to a different workstation before the nightly LMO runs, the trained word does not follow the user. Once the LMO runs, the trained word will be available system wide. Only DRA files that contain 30 seconds of audio and 2 voice corrections will input to the ACO process.
Keyboard edits are currently not included in corrections for adaptation (ACO). Therefore, if a provider or an editor uses the keyboard to edit mis-recognition errors, the mis-recognition errors will not be used for ACO.
Dragon Speech Profiles are stored on the webserver, in the folder location of
X:\Nuance\DragonUsers. This is also a shared folder \\<webserver>\DragonUsers.
There are 2 ways for the locally saved profile data to get to the server.
Users can save their speech data manually, by going to Speech > Save Speech Files in the Client, or when the user logs off of the Client, depending on preferences.
Users must complete the logoff for speech files to upload. If the user leaves their sessions open and lets the inactivity timer log to time out, the user speech files will not be saved.
Profile sizes can vary. Larger profiles do not necessarily cause latency. PACS systems typically control the logging out of the PowerScribe 360 Reporting Client, however the specific log out method should be verified with the PACS vendor.
When logging out of the Client, the application will perform a check of the size of the profile stored on the server. If the profile is greater than 500 MB, data will NOT be copied form the workstation to the server. During this time, the user will see a splash screen saying "saving speech files" for about 10 seconds.
If the application determines the server profile is less than 500 MB, the application will create a new session folder on the server and upload the profile data from the workstation. It will then delete the profile data from the workstation.
If it is noted that a user's profile goes through ACO (ACO analyzes a provider speech/acoustic patterns and applies this analysis to the acoustic model.) as scheduled, but the data keeps building up on the workstation, the site admin should change the frequency of ACO for that user to be more often. For example, every 2 or 3 days. This will allow ACO to run more often, therefore trimming the profile more often and allowing the user to upload data from the workstations more effectively.
This should not be done for the entire site, but only for dictators who read a great deal of reports per day.
Verify the SUS Services Are Running
If SUS services are running, you can verify that jobs are being created in the Spark Database by running this query:
Select * from Job
If there are jobs, check the state of the jobs, and determine if there is a job that is not processing.
If there are no jobs
If there are no Jobs, check the JobTemplate table:
Select * from JobTemplate
Update JobTemplate
Set LastRun = LastRun - 7
Verify that jobs begin to process
Check the RadPortal Settings
There are specific settings in RadPortal that can affect profiles and SUS operation.
This value should be the UNC path of the DragonUsers folder.
Reviewing Exception / Failure Messages
All exceptions are logged to RadPortal. Jobs may be completing successfully, but finishing with a state of 5 (Not Enough Data), which do NOT show in RadPortal. Exceptions are also logged to the Windows Event Viewer.
Event Logging
SUS will create a new Event Log in the Window Event Log, where all SUS related events will be logged. The name of this log will be Speech Utility Server. The RD agent can monitor this log for all SUS activity. Each entry in the event log will have an Event Id and an Event Category associated with it. Additionally, descriptive text will be logged as well. The text will typically provide a higher level description of the error. The log files associated with a job or event source may need to be consulted to provide additional details of the event.
There will be multiple event sources writing to the Speech Utility Server event log. Each source is a separately running process.
Source Name |
Process Name |
Sever |
Description |
SUS Speech |
Nuance.ConversionServer.ClientApp.exe |
Speech Node |
The Speech Node service, which performs SUS tasks on user profiles. |
SPARK Core |
SPARKService.exe |
SUS Server |
The core service responsible for scheduling jobs to SUS Speech Nodes. |
PS360 Sync |
SUSService.exe |
SUS Server |
The SUS service which synchronizes changes on the PS 360 system with the SPARK database. |
SPARK Host Mgr |
HostManagerService.exe |
SUS Server |
The service which monitors SUS Speech Nodes that may require a service restart, and looks for long running jobs. |
SPARK Node Mgr |
NodeManagerService.exe |
Speech Node |
The Node manager which starts the SUS Speech Node, and restarts it when commanded by the SPARK Host Mgr. |
The following Event Ids are defined. A given event Id can be generated from any event source. The event source/category provides context, and the event description provides details.
For example, both the Speech Node and Host Manager may post a JobFailed event. The event category adds more context as to the why, and the textual description in the event log provides the human readable reason.
Event ID |
Descriptive Name |
Description |
0 |
None |
An event Id is not needed. Typically used for a general informational message. The Event text provides any descriptive information. |
1 |
JobStarted |
A job was started by the Event Source |
2 |
JobComplete |
A job finished without error |
3 |
JobFailed |
A job encountered an error |
4 |
JobCancelled |
A running job was canceled by the system |
5 |
JobPostponed |
A job was postponed by the system |
100 |
ServiceStarted |
A SUS service has started by the Windows Service Control Manager |
101 |
ServiceStopped |
A SUS service was stopped by the Windows Service Control Manager |
102 |
ServiceFailed |
A service failed to start, or unexpectedly ended. |
The following Event Categories are defined.
Event ID |
Name |
Description |
0 |
None |
An event category is not needed. The Event text provides any descriptive information. |
1 |
ACO |
The event is associated with a SUS ACO task. |
2 |
LMO |
The event is associated with a SUS LMO task. |
100 |
ConfigurationError |
A possible configuration error was detected. If this error is generated from every job, it is most likely a system wide error. If the error is associated with only a specific user or only a few jobs, the problem could be environmental, or something is wrong with the user's profile. |
500 |
ProfileAccess |
Indicates trouble accessing the profile. This issue is typically seen when the Speech Node is attempting to copy the user's profile to the temporary location, or when the user's profile is being updated after a task completes. |
900 |
TimeOut |
A timeout error occurred when performing an operation, or a job has been in the "running"? state too long without reporting progress updates. |
901 |
NodeReset |
A node was reset, which caused the event log to be generated. |
999 |
UnhandledException |
An unexpected failure has occurred. |
5000 |
DNS SDK Error |
The DNS SDK reported an error to the Speech Node. |
SUS Log Files
SUS Log files are located in:
2003 - C:\Docs and Settings\All Users\Application Data\Nuance
2008 - C:\ProgramData\Nuance
Log file locations can vary. The log file location is specified during the installation. If the log files are not installed in a specified installation location, you can find the files typically in the X:\Nuance directory.
SUS log Names
Process to Review Logs
The log file naming convention is defined as the following:
HKLM\Software\Microsoft\Windows\CurrentVersion\Policies\System
Add a DWORD value of LocalAccountTokenFilter and modify the value, setting it equal to 1.
Antivirus can also cause this if the proper exclusions are not put into place.
Common Errors
SUS cannot connect to Application Server
If you see an event indicating SUS cannot connect directly to Application Server or Cluster Access Point (CAP) "psexec.exe cannot connect to remote source with either a Domain or Local count. Error 2250", you should reconfigure SUS to not use PXEXEC (V1.x and V2.x).
System.IO.IOException
With the System.IO.IOException, you may encounter, the specified network name is no longer available or the parameter is incorrect, as well as many potential exceptions.
These errors are related to SMB2, which is how SUS is accessing shares. This must be disabled by adding/confirming keys in HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Lanmanworkstatio n\Parameters:
Nuance.ConversionServer.Common.ConverterException
Nuance.ConversionServer.Common.ConverterException: Write Test of profile location failed. An UnauthorizedAccessException occurred while testing folder access.
To adjust the SHARE permissions, right-click DragonUsers(Temp) folder > Properties > Sharing > Advanced Sharing > Permissions, and set the appropriate share permissions. The user setup on SUS to access the webserver must have FULL permissions.