TurboPlayer Service
Component | Version |
---|---|
TurboPlayer Service | 6.5.310.0 - ready to use in production |
Non-backwards compatible changes
Right name TurboPlayerService.SelectShow is renamed to TurboPlayerService.LoadFreeShowList
Right name TurboPlayerService.SelectNode is renamed to TurboPlayerService.LoadNodeIntoStack
Right name TurboPlayerService.SelectJingleGroup is renamed to TurboPlayerService.LoadJingleGroup
All time information metadata except NextFixed are having now "Time" format (early was "Duration")
Previous versions automatically converted null value from conditions to the empty string. From now, if the client doesn't want to receive the metadata with the null and empty values, two values to compare must be defined in the DataModel: null and "" (empty string)
SelectShow request is renamed to LoadFreeShowList
SelectNode request is renamed to LoadNodeIntoStack
SelectJingleGroup request is renamed to LoadJingleGroup
Following features are removed
Global DataModels
DataModels from service configuration
Following feature will be not implemented
LocalIndex
RemoteIndex
Rights
LocalIndexStartValue
Metadata ServiceSettingsReloaded is no more supported
Dependencies
NET 8 Core Runtime and .NET 8 Runtime, x64 & x86
NET 8 Core Runtime and .NET 8 Runtime can be downloaded here
https://dotnet.microsoft.com/en-us/download/dotnet/8.0
Installed DigaSystem core
Some parameters should be configured in DigaSystem registry
Section “TurboPlayerService” with at least one valid configuration should be created
Full BCS configuration should be existing
DPE 2.7.x with OIDC authentication support and followed services
Rights service
Parameters service
Log Service (optional)
TurboPlayer 6.3.2705.x (new minimum required TurboPlayer version!)
TurboPlayerServiceLicence.dll 1.0.2.0 - required for full functional version
DigaSQL 3.14.3466.0 or higher
Known Issues
Service
Support BCS user rights as a beta version only and disabled by default. Set the parameter "CheckBcsRights\CheckBcsRights" to true to enable it. See administration documentation for details
Enabled BCS user rights support must not be used in production
Setup
None
API
Support BCS user rights as a beta version only and disabled by default. Set the parameter "CheckBcsRights\CheckBcsRights" to true to enable it. See administration documentation for details
Enabled BCS user rights support must not be used in production
If existed but not acceptable (e.g. due to user rights or broadcast list hierarchy) BCS nodeId is specified for following requests, request will be not completed, but no error messages will be returned due TurboPlayer bug.
ElementPrepare
ElementChangePrelistenState
ElementSelectCursor
ElementSelectNextPlay
ElementSelectPrelisten
ElementStart
ExecuteCommand
ExecuteMacro
LoadFreeShowList
LoadJingleGroup
LoadNodeIntoStack
LoadShow
NodeCopy
NodeCopyAsNext
NodeDelete
NodeDelink
NodeInsert
NodeMove
NodeUpdate
NodeUpdateTree
If the whole show is replaced by another show, TurboPlayer Service don’t send information about it due TurboPlayer bug
The following keywords are currently not supported in markup language. We plan to have these supported in future releases.
Color
New features
Service
Ready to use in production
New API
Warning! The New API is incompatible with the previous TurboPlayer Service API (TurboPlayer Service Version 1.x)
Setup
DPE Installation is required to successfully complete setup.
.NET Runtimes updated. ASP .NET Core Runtime 6.0.31 (x86 + x64) + .NET Runtime 6.0.31 (x86 + x64)
Documentation link to learn fixed https://learn.davidsystems.com/tps/
Unattended installation with PowerShell scripts
libman.json removed from the installed files
Temporary files are written in ProgramData\TurboPlayerService\Temp to mitigate problems with per Session Temporary folder in case of Remote Desktop installations
When DigaSql.dll is Loaded, the in Session Temp folders searched for
PowerShell scripts and batch file for unattended installations added to the Setup folder
API
Ready to use in production
New API based on the DataModel and markup language
Warning! New API is completely incompatible with the old API 1.xSupport all user rights for broadcast list (currently in beta state, disabled by default) for all service requests & DataModels (events subscriptions) except the requests ExecuteCommand (for standard TurboPlayer macros) and ExecuteMacro (for standard & custom TurboPlayer macros). Set the parameter "CheckBcsRights\CheckBcsRights" to true to enable it. See administration documentation for details
Remove obsolete error codes 109, 243, 248, 510
Subscribe for notifications about playout state changes and updates in the broadcast list
Users can subscribe for notifications regarding changes for any BCS and TurboPlayer metadata (e.g., change in rundown list, change of current play position)
Client-defined DataModel subscription mechanic allows clients to determine how notification data is organized and communicated between TurboPlayer Service and the client
Notification traffic can be optimized by including conditions in client-defined DataModels (e.g., only send play position updates for a specific channel number or playing state)
New features in DataModel
Support all user rights for broadcast list (currently in beta state, disabled by default) for DataModels. Set the parameter "CheckBcsRights\CheckBcsRights" to true to enable it. See administration documentation for details
Fixes
Setup
Granting access to read the private key if service user is non-admin, to run Kestrel with secure protocols
Clean installation regressions. Error messages improved
Failing unattended installation
Failing unattended installation
Modify/Repair Maintenance Installation
Change Maintenance Installation
DPE User and DPE Password are empty when doing an upgrade installation
DigaSystem Registry DataModel entries with line breaks
Extraction of DNS name from certificate on non-English operating system
Fixed PowerShell scripts and batch file for unattended installations
API
Request LoadNodeIntoStack always loaded full show, jingle group, preproduction or pool
Check rundown list type matching to nodeId for following requests
NodeInsert
NodeCopy
NodeMove
NodeUpdate
NodeUpdateTree
Service isn’t limited from number of connections and number of registered DataModels per each connection
Service is frozen by registering a lot of DataModels
Remove repeated log message about successfully established connection to the TurboPlayer
Proper handle TurboPlayer events if service is hosted on slow workstation
Proper handle repeated notifications from TurboPlayer by changing moderation text in TurboPlayer control window
Support DataModels subscribed for changes in broadcast list with LastPlayItem and/or NextPlayItem fields
Fix memory leak by playing simultaneously elements in TurboPlayer, if NextPlayItem metadata is subscribed
Send changed metadata instead of unchanged to subscribed DataModels based on TreeNotificationType changes
Fix memory leak by playing simultaneously elements in TurboPlayer, if LastPlayItem metadata is subscribed
Insert new nodes into proper position by using asynchronous NodeInsert requests
NextPlayItem metadata are returned sometimes empty
No events or delayed events about changes in broadcast list if objects are moved in track
Proper handle TurboPlayer configuration from remote DigaSystem registries
Return error message if single or notification DataModel type isn't specified
NodeId metadata is never empty for the events related to the changes in the broadcast list
Proper audio duration value in time format in notifications