Skip to content

2022 Releases

This page lists Halo Connect's 2022 releases and the changes made in each release.

Version 22.1219

December 19, 2022

Includes:

  • Halo API version 22.1219.217
  • Halo Link version 22.1216.229

Features

Site observability

  • Halo Connect now receives a regular heartbeat from Halo Link installed in clinics to indicate the availability of the site. This heartbeat is sent every 60 seconds.
  • A new field called availability has been added to the /integrator/site API response which is the availability of the site. This can be one of “online”, “offline”, or “unavailable”.
  • A new field called HaloLinkVersion has been added to the /integrator/site API response which is the build of the Halo Link client. This is used to track deployments and auto-upgrades to the Client.
  • Two new fields called ClientTimestampUTC and HeartbeatTimestampUTC have been added to the integrator/site API response.
    • HeartbeatTimestampUTC is the last time a Halo Link Client heartbeat contacted Halo Connect.
    • ClientTimestampUTC is the time set on the server hosting the Halo Link Client, this allows integrators to create time-based queries and identify any clock drift.

Bug fixes

  • Fixed bug which prevented Halo Link from being installed silently on first install.
  • Fixed bug with Halo Link not adjusting to changes to the Database Hostname.

Version 22.1207

December 7, 2022

Includes:

  • Halo Link version 22.1207.209

Features

Added support for longer running async queries

  • Halo Link now allows the Halo API to set the default SqlClient CommandTimeout for async queries via the Remote Config.
  • This is a short term fix to allow for async queries that run longer than 30 seconds. In the future integrators will be able to control this timeout on a per query basis and the default will be reduced back to 30 seconds.

Improvements

CalVer versioning now consistent with Halo API

  • Previous Halo Link versions would be in the form 1.YYMM.Build.
  • The version format now matches the Halo API in the form YY.Mdd.Build.
  • Unknown Publisher warnings should no longer appear when installing.

Bug fixes

Cannot stop service

  • Fixed bug where Halo Link Service could not be Stopped if there was a connectivity issue.
  • Halo Link Service now always closes in a maximum of 5 seconds.

Installer fails with no internet connection

  • Fixed bug where installer won't install because an internet connection is not detected.
  • This could happen in error in some cases where there were multiple network cards and unnecessarily prevent practice IT from installing.
  • The installer no longer requires an internet connection.

Version 22.1206

December 6, 2022

Includes:

  • Halo API version 22.1206.207

Bug fixes

Cosmos DB Auth expiry hotfix

  • This hotfix resolves an AAD Auth issue where the API would lose authentication to Cosmos DB after 24 hours resulting in a service disruption. This fix patches an issue on Dev and Stage only — the issue does not occur in the version of the API on Prod.

Async command timeout globally modifiable

  • The SQL client command timeout is now modifiable for async queries. We can now increase this limit so async queries won't timeout if they execute for more than 30 seconds.
  • For now, we have increased this limit to 60 seconds but can increase it further if required.
  • In a future update, we will allow this limit to be configured on a per-query basis and at that time we may drop the global default back down to 30 seconds.

Version 22.1201

December 1, 2022

Includes:

  • Halo API version 22.1201.201

Bug fixes

  • Experimental patch to gather more information about AAD auth tokens for cached Cosmos DB objects expiring after 24 hours and not being renewed.

Version 22.1129

November 29, 2022

Includes:

  • Halo Link version 1.2211.184
  • Halo API version 22.1129.199

Changes

Halo API POST /sites/{siteId}/queries parameters changed

  • New command object has been added to the request body for POST /sites/{siteId}/queries. Integrators can use this to call both SQL queries and write operations.
  • The command object replaces the sqlQuery property which has now been deprecated. Please use command.text to send the text of your SQL query.

Features

Write support added

  • Integrators can now use SQL write operations (insert, update and delete). These are created by setting the executionMode to nonQuery in the new command object. Commands running in nonQuery executionMode will return the number of rows affected by the command and will not return any rows of data.

Experimental stored procedures support

  • Basic stored procedures support has been added, though it is currently considered experimental until further testing and development can be done. Integrators can attempt to use any stored procedures, however please be aware Halo Connect is currently only actively testing a few specific stored procedures.
  • To call a stored procedure, set the type property of the new command object to storedProcedure and set the text property to the name of the stored procedure.
  • If you wish to check which stored procedures are actively supported, or request support be added for specific stored procedures, please contact support@haloconnect.io.

Parameter support

  • The new command object supports the use of SQL Parameters that can be used in text queries as well as stored procedures.
  • See the parameters property of the command object in the Open API documentation for details.

Support added for clinics running multiple servers

  • Halo Connect now has a concept of authoritative site servers. The authoritative server for a site is the live Bp server actively used by the clinic. Backups, testing and migration servers are treated as non-authorities by Halo Connect.
  • Each site (as designated by a unique practiceManagementSiteId - BPID for Bp partners) should have exactly one authoritative server which integrators are able to contact. Non-authoritative servers can not currently be contacted by integrators.
  • For integrators:
    • The getSites Halo API endpoint only returns the authoritative site for a given practiceManagementSiteId.
    • If an integration attempts to contact a non-authoritative site the query will return a 403 Forbidden error.
    • For integrators testing on staging with Bp Software, to setup multiple authoritative sites, either use a developer Bp license (with BPID 0) or contact Halo Connect.
  • For clinics:
    • When installing Halo Link, the first server it is installed on for a given practiceManagementSiteId will automatically be set as the authoritative server. Subsequent installations on different servers using the same practiceManagementSiteId will be marked non-authoritative.
    • During installation, Halo Link will log whether the server has been marked authoritative or not.

ℹ️ To change your authoritative server, please contact support@haloconnect.io.

Improvements

  • Previously, Halo Link would fail to bootstrap when installed on a new server that was using a practiceManagementSiteId that had been registered previously. This mitigated security and data safety concerns. However, it complicated server migrations and prevented Halo Link from being installed on backup servers.
  • Halo Link will now successfully install and bootstrap if installed on a new server using an already-registered practiceManagementSiteId. However, the new server will be marked non-authoritative.

Bug fixes

Fix for Microsoft Vulnerability CVE-2022-41064

Danger

Clinics must also install the November 2022 .NET security patch to be protected. For update instructions, see: .NET Framework November 2022 Security and Quality Rollup Updates.


Version 22.1110

November 11, 2022

Includes:

  • Halo Link version 1.2211.167

Bug fixes

  • Fixed a bug with the task scheduler where it was possible for the Halo Link service to use 100% of a single CPU. The fix involved introducing a small delay while scheduling tasks.

Version 22.1109

November 9, 2022

Includes:

  • Halo Link version 22.1108.188
  • Halo API version 1.2211.165

Changes

Release versioning schema change

  • Halo Connect is migrating from Semantic Versioning to Calendar Versioning. For example, for this release on Nov 4th 2022 the version number is 22.1109.0.
  • Halo Connect releases will include Halo Link and/or Halo API releases with their own versions, which will be listed in these release notes.

New system requirement: October 2022 Bp Data Update

  • Halo Link now requires the Best Practice Software October 5th 2022 Data Update or later.
  • Halo Link now automatically generates a site ID and subscription key when installed on a new machine. This simplifies the installation process, removes the need for site credentials to be passed around, and enables various security improvements.
  • This allows integrators and IT providers to install Halo Link on new sites without needing Halo Connect to pre-register the site.
  • As part of the this change, the new version of Halo Link will regenerate all Halo GUIDs to migrate all sites to the new system.
  • This should not affect IT providers.
  • Integrators have been emailed further information about this change.

Halo API GET /sites parameters changed

  • The query parameters for the Halo API GET /sites endpoint have been renamed:
    • externalSiteIdpracticeManagementSiteId
    • externalSiteIdProviderNamepracticeManagementName
  • The response object parameters have been changed:
    • externalSiteIdpracticeManagementSiteId
    • externalSiteIdProviderNamepracticeManagementName
    • practiceManagementVersion(new)
    • status(new)
  • name no longer needs to be unique

Halo API POST /sites/{siteId}/queries and GET /sites/{siteId}/queries/{queryId} changed

  • New parameter is added to the response
    • sqlQuerySize
  • Removed the "Subscription Key" input field from the installer, as this value is now automatically supplied.

Improvements

Query state improvements

  • Queries that can’t be processed by the site in time because it is too busy or offline are now finalised as expiredInQueue when the site comes back online.
  • Orphaned async queries may occur due to unexpected shutdown or power outage. These are now finalised as executionFailed or uploadFailed depending on where the query was at in its lifecycle.
  • Parameters for silent install are updated. Details can be found here.
  • When Halo Link’s config is updated via the UI or silent mode, the service now restarts automatically. This removes the need to manually restart.
  • Security improvements

Failed query clean-up

  • Unprocessed orphaned and expired queries will now be processed by Halo Link and given an appropriate failure status.
  • When the new version of Halo Link starts it will process any backlog of unprocessed orphaned or expired queries for the site before resuming normal operation.

Bug fixes

  • Fixed a bug where Halo Link may take up to 2 days to auto-update after a release.
  • Silent Mode Command Line arguments can now update registry values after the first install.
  • Immediate queries can now interrupt long-running async chunk uploads. This prevents immediate queries timing out due to a large async query.
  • Empty query result no longer returns a rangeStart of 1 when row count is 0.

Known issues

  • When Halo Link is not installed on a system, running a silent install will currently fail. Running a silent install to upgrade an existing install should work.
  • If Halo Link fails to install while updating an existing install, Halo Link will be removed from the system. If this happens you will need to re-install Halo Link. We recommend contacting us to get the latest installer.
  • After bootstrapping a new site, when Halo Link tries to start a session with the new site subscription key it may fail due to the new subscription not being ready for use yet. The failure will trigger the following error:

    [ERR] Failed to initialise session. Failed to open session at [https://am-haloapi-stage-002.azure-api.net/site/sessions](https://am-haloapi-stage-002.azure-api.net/site/sessions). StatusCode: Unauthorized. Body: { "statusCode": 401, "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." }.

    Halo Link should retry in 30 seconds and succeed.


Version 1.0.2

September 30, 2022

Includes:

  • Halo API version 1.0.2

Bug fixes

Compatibility hotfix

  • The failed query clean-up introduced in Version 1.0.1 is now fully compatible with version 1.0.0 of the Halo Link Agent.

Version 1.0.1

September 28, 2022

Includes:

  • Halo API version 1.0.1

Changes

Expired property removed

  • Expired property removed from query responses.

Improvements

New statuses for async queries

  • Async queries now start with status initialising instead of queued. If an async query fails to cache its query data it will be finalised and set to status initialisationFailed. Integrators will likely never a query in either of these initialisation states as a query that is successfully created will be transitioned into status queued immediately.

Bug fixes

Halo Integrator API

  • Immediate queries can now save the row count and size to the database for billing and data analytic purposes.
  • API WebSockets should no longer stop working after a day as the WebPubSub key no longer times out with unauthorised error.

Version 1.0.0

September 8, 2022

Includes:

  • Halo Link version 1.0.0.0
  • Halo API version 1.0.0

Changes

New system requirement: .NET 4.8

  • Halo Link will be required to uninstall and reinstall due to the .NET Framework 4.8 upgrade. This also means that .NET Framework 4.8 runtime will need to be installed if it is not already available on site.

Features

  • .NET Framework was upgraded from 4.6.2 to 4.8
  • Adds support for TLS 1.3

Improvements

Halo API Azure logging

  • Introduced Telemetry Traces to allow better observability of the Azure Functions App serving the APIs
  • Logging during network disconnection has been reduced by introducing growing reattempt intervals

Version 0.6.0

September 2, 2022

Includes:

  • Halo Link version 0.6.0.0
  • Halo API version 0.6.0

Changes

  • Location property removed from Query responses

Features

  • Now has config dialogs, meaning there is no longer a need to edit config.xml
  • EULA dialog added
  • Added Modify, Repair, and Remove options to the application installer

Improvements

  • WebSocket connection is re-established when there are any long disruptions (i.e. internet outage, network dropout, etc)

Bug Fixes

  • Back and Next button navigation no longer causes dialog values to reset
  • Silent Mode command line execution can now supply input parameters

Next: 2023 Release notes