Integration Client 26.2.1 release notes
🆕 New features
Session asset data
The Integration Client now captures support session asset details (type, name, comments, and tag) from the Reporting API and stores them in both the Analytics DB Plugin and the SQL Server Plugin. Reporting teams can correlate session activity with the asset that was worked on without joining to an external inventory source.
- Four new nullable
sessioncolumns are added:asset_type,asset_name,asset_comments, andasset_tag. - Schema migrations are included and applied automatically. Sites that do not provide asset data are unaffected.
Configurable network timeouts
HTTP timeouts are now bounded and configurable, so a stalled appliance or gateway no longer hangs the client indefinitely. You can tune each timeout to match your environment:
- DownloadTimeoutSeconds: recording and site backup downloads.
- ApiRequestTimeoutSeconds: metadata and listing calls. Default: 300 seconds.
- ApiInfoTimeoutSeconds:
get_api_infocalls. Default: 60 seconds.
✨ Enhancements
Site configuration now uses API accounts only
The User Account / API Account toggle is removed from Site Configuration. Every site is configured with a Client ID and Client Secret, because Remote Support and Privileged Remote Access no longer support username and password API authentication. Previously saved sites continue to load as expected.
Any site that relies on username and password API authentication must be reconfigured with a Client ID and Client Secret.
Consistent operation order in API Tester
The Operations list in API Tester now appears in a stable, consistent order on every machine: Sessions, Session Recordings, Command Shell Recordings, Show My Screen Recordings, Site Backups, Presentations, and Presentation Recordings.
Version numbers in installer and package filenames
Installers and published zip files now include the version in the filename, making it easier to identify and archive the correct build.
🛠️ Issues resolved
| Product area | Description | Resolution |
|---|---|---|
| Session Monitoring | Recording downloads failed instead of retrying. The reporting server returned its "Too many conversion requests are in progress" response as a normal HTTP 200 body, so retry backoff never applied and attempts fired back-to-back. Command shell, show my screen, and presentation recordings also had little or no retry logic of their own. | All four recording types now use consistent exponential backoff, with a larger retry budget for the rate-limited case to match the typical recovery window of the conversion service. |
| Authentication | Show my screen and command shell recordings failed for API accounts. These downloads used an endpoint that accepts only username and password credentials, so requests authenticated with a bearer token received the site's HTML login page instead of the recording. | Show my screen and command shell recordings now use the same bearer-compatible endpoint as session recordings. |
| Session Monitoring | Downloads could hang or be disconnected mid-transfer. A single recording download attempt could wait up to 24 hours for a response, and sessions queued behind slower ones could be disconnected with a remoting error before their download completed. | Download timeouts are now bounded, and object lifetimes are extended to cover real-world queueing delays. |
| Configuration | The application crashed after a settings database password change. A stale or rotated password, a malformed connection string, or contention on the settings file terminated the entire application. | These conditions now surface a recoverable error, and a failed settings read is no longer indistinguishable from an unconfigured client. |
| Upgrade | Create Database was destructive. Creating the settings database always dropped and recreated it first, discarding existing data, and reported success even when the create failed. | An existing database is now retained and upgraded in place, and failures are reported accurately. |
| Scheduler | The Scheduler service failed once per minute. The service never applied the Microsoft Jet to ACE OLEDB provider fallback that the interactive client applied, so every scheduled run failed immediately. | The Scheduler service now applies the same provider fallback as the interactive client. |
| Configuration | Settings were lost or corrupted. The Scheduler service and the interactive client wrote to api.settings with no coordination between them, which could leave the file truncated, partially written, or silently unsaved, occasionally surfacing as a message that the connection string for the settings database is not set. | Writes to api.settings are now coordinated between the Scheduler service and the interactive client. |
| Configuration | The client froze at Connecting to settings database. An unbounded timeout on appliance metadata calls left the client hung with no way to recover when an appliance stalled instead of returning an error. | Appliance metadata calls now use a bounded, configurable timeout and return a recoverable error. |
| API | Downloads were silently skipped after a token renewal. A request that received a 401 response and triggered a bearer token renewal was dropped from the queue instead of retried, so that window's data was never fetched while the run reported success. | Requests that trigger a token renewal are now retried, and the data for that window is fetched. |
| Scheduler | The Scheduler crashed under concurrent schedule checks. Overlapping schedule ticks could both add the same plugin operation to a shared cache, throwing a duplicate key error. | Concurrent schedule checks no longer add duplicate entries to the shared operation cache. |
| Logging | The plugin log file was corrupted. Multiple appenders wrote to the same log file at independent offsets, interleaving and overwriting entries. | Log writes are now serialized to a single appender per file. |
| Logging | Duplicate log entries made a single recording download retry read as two separate failures. | Recording download retries are now logged once. |
📝 Requirements
- Minimum requirement: .NET Framework 4.8.
- Compatible with currently supported Remote Support and Privileged Remote Access on-premises and cloud sites, including Atlas deployments.
- Session asset data requires an appliance whose Reporting API provides it.
🗒️ Notes
- Database schema change: The Analytics DB Plugin and the SQL Server Plugin add four nullable
sessioncolumns:asset_type,asset_name,asset_comments, andasset_tag. The migrations are additive and conditional. No existing column or data is modified. Run the client or the Metrics Plugin installer once against each destination database to apply them. - Site Configuration no longer offers a User Account option. Existing sites still load, but any site that relies on username and password API authentication must be reconfigured with a Client ID and Client Secret.
- The new timeout keys (DownloadTimeoutSeconds, ApiRequestTimeoutSeconds, and ApiInfoTimeoutSeconds) are optional. Defaults apply when they are absent.
- Existing settings are preserved. This release contains no breaking changes.
- Dependency updates in this release: log4net 3.3.2, Azure.Core 1.61.0, Azure.Monitor.OpenTelemetry.Exporter 1.8.3, Microsoft.Bcl.AsyncInterfaces and Microsoft.Extensions. 10.0.11, and the MSTest and Microsoft.Testing. test packages.