JoyApp Changelog

Track all updates, fixes, and new features

v1.1.26

Improvements & Fixes

Rising Risk

  • Improved Rising Risk response handling for more reliable recommendations
  • Better support for different response formats from the risk analysis service
  • Recommended services can still be shown if optional candidate data cannot be parsed
  • Added automatic retries to reduce failures from temporary timeouts
  • Improved diagnostic events so support teams can identify response parsing issues faster

Note: This version improves Rising Risk reliability and resilience when external services return unexpected data.

Download v1.1.26
v1.1.25

Improvements & Fixes

Clinical System Reconnect

  • Improved reconnect reliability when EMIS is closed and reopened while JoyConnect remains open
  • Patient loading now recovers more reliably once EMIS is available again
  • Batch processing is handled more reliably during reconnect and patient loading flows

Rising Risk & Services

  • Moved Rising Risk evaluation to phase 3 for improved analysis
  • Removed apps from the Saved Services tab so apps only appear in the Apps tab

Note: This version focuses on EMIS reconnect stability and cleaner service/app separation.

Download v1.1.25
v1.1.24

New Features

Clinical System Auto-Switch

  • JoyConnect can now automatically switch between EMIS and SystmOne during startup when the selected system is unavailable and the other system is detected
  • Auto-switching can be enabled or disabled by environment and organization settings
  • A cooldown setting prevents repeated rapid switching between clinical systems

User Interface

  • Added close buttons to JoyNotes and the main window

Improvements & Fixes

Reliability

  • Improved signposting SNOMED code caching reliability
  • Patient location is now set correctly from filters
  • Improved reliability when fetching organization settings
  • Added more telemetry for auto-switching decisions and outcomes

Performance

  • Improved marketplace search reliability
  • Improved activity list rendering performance for large activity lists

Note: This version adds smarter startup behavior when multiple clinical systems are available.

Download v1.1.24
v1.1.22

Release Note

  • No public changelog entries were provided for this release
Download v1.1.22
v1.1.21

New Features

Proactive Alerts

  • Added more tracking across the proactive alert flow to improve visibility into why alerts are shown or skipped
  • Dismissal events now include a reason such as no time, patient declined, or incorrect service
  • Added tracking when daily alert limits are successfully recorded

Improvements & Fixes

Daily Alert Limits

  • Fixed daily limit checks firing twice for repeat patient triggers
  • Daily limits now only apply in release builds and do not block debug or staging builds
  • Dismissing or closing a proactive alert now correctly records completion for the day

Database Migration

  • Improved database migration resilience when older schemas are missing expected columns
  • Reduced file-in-use migration failures by closing database connections and retrying lock conflicts

Marketplace

  • Improved marketplace search reliability when handling unsuccessful responses

Note: This version improves proactive alert gating and database migration stability.

Download v1.1.21
v1.1.20

Improvements & Fixes

Proactive Care

  • Fixed the proactive care pathways data flow
  • Improved data seeding to support a clearer migration path

Marketplace & Activities

  • Marketplace listings without email addresses are now hidden to prevent WhatsApp flows breaking
  • WhatsApp signposts are removed from the activities endpoint so only email signposts and referrals are shown where expected

Note: This version fixes proactive care flow issues and improves marketplace activity handling.

Download v1.1.20
v1.1.18

New Features

Pebble & WhatsApp Signposting

  • Added Pebble and WhatsApp Signposting banners to the activity pane
  • Banners now show conversation counts for each feature
  • Conversation summaries can be opened to view generated summaries, SNOMED codes, and the full conversation

External Referrals

  • Added the ability to adjust the zoom level in external referral WebView pages

Improvements & Fixes

Error Messages

  • Improved feedback when no auth token is found instead of showing a generic no patient selected message

Note: This version adds better visibility for Pebble and WhatsApp Signposting conversations.

Download v1.1.18
v1.1.17

New Features

Rising Risk

  • Added new Rising Risk WebView screens
  • Updated dependency injection and startup setup for Rising Risk
  • Removed older WPF Rising Risk views in favour of the updated WebView approach

Fileback Queue

  • Added a new Fileback Queue view

Improvements & Fixes

WhatsApp

  • Prevented WhatsApp messages being sent to landline numbers
  • Set the UK dialing code as the default selected dialing code

Fileback

  • Improved broker updates after filebacks succeed

Note: This version updates Rising Risk screens and improves WhatsApp number handling.

Download v1.1.17
v1.1.16

Improvements & Fixes

Intercom & Chat

  • Improved Intercom loading reliability by checking navigation success before opening chat
  • Added retry attempts to give Intercom more time to initialize before showing

Clinical System Stability

  • Improved SystmOne socket handling when the connection is disconnected
  • Reduced repeated SystmOne connection error logs when disconnected
  • EMIS force loading no longer loads clinical events unnecessarily

Performance & Memory

  • Improved cleanup for view models to reduce memory leaks
  • Updated API calls to handle failures more gracefully
  • Added drag support improvements and reset widget position support
  • Added clearer empty activity messaging and tooltips

Note: This version focuses on connection stability, memory cleanup, and smoother window handling.

Download v1.1.16
v1.1.15

Improvements & Fixes

Health Check

  • Occupation selection now uses the SNOMED search window instead of a simple dropdown
  • QRisk helper image now displays the correct QRisk version based on feature flags

Activities & JoyChat

  • AILW statuses now match the server response more accurately
  • Activity and JoyChat details now display the updated AILW statuses
  • JoyChat activity status messages are cleaned up by removing HTML

Reliability

  • Activities now return an empty list instead of failing when no activities are found
  • Patient reload now works for EMIS as well as SystmOne
  • Health Check activities are no longer checked when the clinical system is SystmOne
  • Added authorization handling for Joy API calls

Note: This version improves Health Check inputs, activity display, and patient reload reliability.

Download v1.1.15
v1.1.14

New Features

QRisk3

  • Added new QRisk3 calculator functionality using the Endeavour API
  • Added an organization feature flag to control QRisk3 availability

Improvements & Fixes

Saved Services

  • Saved services now use the online call when the app is online

Memory & Cleanup

  • Improved window and signposting cleanup to reduce memory leaks
  • Navigation now disposes view models where supported
  • Removed SVG usage from the signposting form to avoid retained references

Health Check

  • Fixed spelling mistakes in Health Check JSON headers

Note: This version adds QRisk3 support and improves resource cleanup.

Download v1.1.14
v1.1.13

New Features

Health Checks

  • Added offline mode for Health Checks

Service Reliability

  • Added kill switch functionality for Joy API and FileBack services

Improvements & Fixes

Settings & Filters

  • Country code selection now remembers the previously selected code more reliably
  • Filter loading and saving has been improved for JoyConnect and JoyConnect Universal
  • Filter changes are now saved through the right storage path for each app

Patient & Activities

  • Activities refresh when the patient changes and the activity pane is open
  • WhatsApp signpost activity status text now displays correctly
  • Improved handling for WhatsApp signpost activity mapping

Reliability

  • Fixed Health Check image binding issues
  • Improved window cleanup and owner handling to reduce null reference issues
  • Improved patient change tracking and reduced unnecessary event noise
  • Improved EMIS patient reload behavior after fileback and from the client details UI

Note: This version adds Health Check offline support and improves filter, patient, and activity handling.

Download v1.1.13
v1.1.12

Improvements & Fixes

Configuration

  • Updated JoyBroker release flags for release and internal builds
  • Turned off Rising Risk patient information gathering

Note: This version updates release configuration and Rising Risk data gathering behavior.

Download v1.1.12
v1.1.11

New Features

Saved Services

  • Marketplace listings can now be saved to a user's local Saved Services tab
  • Added local storage and service handling for saved marketplace listings

Improvements & Fixes

Proactive Insights

  • Proactive insights now receive full patient records once per patient load

Activities & Signposting

  • Activity details are cleaner and hide empty UI sections
  • Activity pane loading animation now better matches the app look and feel
  • Updated signposting messages and fileback text

Settings

  • Improved saving of filter and service preferences in local settings
  • Added support for saved service categories and preferences
  • Improved organization settings retrieval to reduce excessive calls

Note: This version adds saved marketplace services and improves activity and settings handling.

Download v1.1.11
v1.1.10

New Features

Patient Search

  • Added a background service for scanning clinical systems
  • Added SystmOne patient search by postcode and gender
  • Added configurable search intervals for patient search

JoyBroker Messages

  • Added support for HTTP push messages from JoyBroker
  • Push messages can now be displayed through the message dialog

Improvements & Fixes

SystmOne

  • SystmOne requests now include the JoyConnect build number for audit trail tracking

Diagnostics

  • Improved Rollbar fingerprinting to reduce duplicate error reports

Note: This version adds patient search foundations and JoyBroker push message support.

Download v1.1.10
v1.1.9

New Features

JoyBroker Heartbeat

  • Added a background heartbeat service for JoyBroker communication
  • Added broker request and response models for heartbeat communication
  • Added Windows version and clinical system details to broker-compatible messages

Improvements & Fixes

Settings & Stability

  • Settings file checks now run before system settings are loaded
  • Added safeguards against runtime null reference exceptions

Note: This version adds JoyBroker heartbeat support and improves startup safety.

Download v1.1.9
v1.1.8

Improvements & Fixes

Signposting

  • Signposting now shows the error screen when submission fails so users can retry
  • Improved handling when the client record is missing during signposting

Note: This version improves signposting failure handling.

Download v1.1.8
v1.1.7

Improvements & Fixes

Sync & Connections

  • Added a delay to syncing so required data is ready before sync begins
  • Improved WebSocket connection and disconnection handling
  • Added retry handling when checking whether the EMIS process is active

Signposting & Tracking

  • Fixed WhatsApp signpost validation when a patient does not have an email address
  • Removed unnecessary Rollbar calls from activity tracking

Note: This version improves sync timing, WebSocket stability, and WhatsApp validation.

Download v1.1.7
v1.1.6

Improvements & Fixes

WhatsApp Signposting

  • Added WhatsApp signpost activities to the activity list
  • Updated default WhatsApp signposting messages for single and multiple services
  • Improved signposting initialization and cleaned up unused code

Note: This version improves WhatsApp signposting support and activity display.

Download v1.1.6
v1.1.5

New Features

Health Check

  • View patient's previous Health Check history for better continuity of care

Marketplace Search (Feature Preview)

  • Switch between your saved services and marketplace services in one place
  • New filter and search options help you find services faster
  • Clear filters and search with dedicated buttons
  • Services load automatically as you scroll for smoother browsing
  • Edit location settings directly from the search interface

Offline Support

  • Activity tracking now works even when you're offline - events sync automatically when you reconnect

Improvements & Fixes

Referrals & Signposting

  • Quick Fill for referrals now includes safety checks to ensure relevance and accuracy
  • WhatsApp numbers can now be included when signposting patients
  • Improved data storage for patient problems, events, and examination codes
  • Online users always get the latest information when creating referrals or signposting

Alerts & Notifications

  • Proactive alerts now always appear on top of other windows so you don't miss important messages
  • Better error handling when displaying notification banners

Connection & Performance

  • Fixed SystmOne connection issues that could cause intermittent connectivity problems
  • Improved EMIS connection stability and session validation
  • Better handling of concurrent operations for smoother performance
  • Optimized background synchronization with smarter timing (5-7 minute delay on startup)
  • Added cache freshness checks (6-hour refresh) for up-to-date information
  • Improved rate limiting to prevent system overload

User Interface

  • Fixed scrollbar behavior in service details
  • Updated signposting form with better visibility controls
  • Streamlined navigation to make room for new search features
  • Custom placeholder text in searchable dropdowns

Settings & Configuration

  • Improved how settings are loaded and saved for better reliability
  • Filter and search preferences now properly tied to your user account and organization
  • Enhanced context handling for database operations

Note: This version includes marketplace search capabilities (behind a feature flag), improved offline support, and enhanced connection stability.

Download v1.1.5
v1.1.4

New Features

Letter Templates

  • New Joy Patient Template added to your referral letter templates
  • Template section renamed from "Referral Letters" to "Letter Templates" for clarity

Major Performance Improvements

SystmOne Integration Rebuilt

  • Dramatically reduced network load - Background checks now happen every 10 minutes instead of every 5 seconds
  • Faster patient updates - When you switch back to JoyConnect, patient information refreshes within 2 seconds
  • More reliable connections - Connections are now reused efficiently instead of creating new ones each time
  • Automatic error recovery - If connections fail, the system automatically retries and recovers
  • Better handling of busy periods - Circuit breaker prevents system overload during high-volume times

Data Handling

  • Fixed issues with patient names containing special characters (like <, >, &, quotes)
  • Improved processing of dates and optional fields from SystmOne
  • Better handling of organization name lookups

Reliability & Stability

  • Fixed connection blocking issues that could cause SystmOne communication failures during busy periods
  • Optimized resource usage for better overall performance
  • Enhanced error handling with detailed diagnostics for troubleshooting
  • Settings now refresh properly when switching between clinical systems

User Interface

  • Simplified app navigation by streamlining the details view

Note: This version includes a complete rebuild of the SystmOne integration system with 37 automated tests ensuring reliability. You should notice significantly faster performance and fewer connection issues.

Download v1.1.4
v1.1.3

Improvements & Fixes

Connectivity

  • Fixed connection check to Joy API for more accurate status reporting

Note: This is a hotfix release addressing connectivity status detection.

Download v1.1.3
v1.1.1

Improvements & Fixes

SystmOne Filing

  • Fixed issue where notes were being filed twice when working offline then coming back online
  • SystmOne now correctly handles its own offline caching without duplication

Note: This version fixes a filing duplication issue with SystmOne's offline mode.

Download v1.1.1
v1.1.0

New Features

Connectivity Indicator

  • New visual indicator shows your connection status at a glance
  • See when you're online, offline, or experiencing connection issues

QRISK Calculator

  • Built-in cardiovascular disease risk calculator (QRISK3)
  • Calculates 10-year CVD risk with comprehensive risk factor analysis
  • Includes Heart Age calculations
  • Supports ethnicity mapping and medication detection

Health Check Enhancements

  • File Health Checks back to clinical systems
  • Change Health Check status to "In Progress"
  • Updated completion screen now shows referral listing options
  • Physical activity calculations now follow GPPAQ guidance

Intercom Support

  • Get help directly through the app with integrated Intercom support
  • Shows availability status and helpful tooltips

Improvements & Fixes

Performance & Reliability

  • Organization settings now cached for faster loading
  • Improved auto-update process with dedicated update service
  • Better handling of connection issues with SystmOne
  • Enhanced error recovery during high-load scenarios
  • More efficient event handling to prevent duplicate operations
  • Reduced excessive error logging for cleaner diagnostics

JoyChat

  • Phone number dropdown now searchable for easier selection
  • Improved performance with large contact lists

User Interface

  • Service details now hide empty sections for a cleaner look
  • Fixed display issues with listings when benefits information isn't available
  • SNOMED code selector only appears when codes are available
  • Better logging and error messages for external referrals

Transcription

  • Now tracking how long transcriptions take to generate for quality monitoring
  • Improved tracking of Quick Fill feature usage

Code Quality

  • Centralized package management for more consistent updates
  • Updated core framework packages for improved stability
  • Added code style consistency rules
  • Hot reload now works properly for faster development

Note: This is a major update with new features, significant performance improvements, and enhanced offline capabilities.

Download v1.1.0
v1.0.94

New Features

  • Add health check functionality to JoyApiService and JSON serialization methods for health check models.
  • Added loading, success and error states when saving as draft or completing a HealthCheck.
  • Added EMIS fileback functionality for HealthCheck.
  • Added contributing users to Health Check item.

Updated

  • JoyApiService now fires off anonymous events when a call to TrackEvent fails for some reason
  • user role added to AmplitudeItem.cs
  • Added correct format for S1 date of birth which now leads to the DateOfBirthWithAge property to create the correct strings for both EMIS and S1
  • StartServer in S1ResilienceService.cs updated to run whilst the websocket is not null, this occurs when switching between S1 and EMIS
  • Added Health Check banner in activity panel.
  • Added HealtchCheckActivityVm and HealtchCheckAvtivityDetails user control
  • Added DummyDataHelper in core for use when needing dummy data
  • Tag and Activity classes moved into JoyConnect.Core.Models so we can use them in JoyConnect.Providers
  • Added health_check_icon.svg and health_check_banner.png

Changed

  • Update load user and organisation in EMIS api service so when we poll we dont overwrite if there are no differences.
  • Changed Health Check Activities API formatting.
  • Added X close button to Health Checks.
  • Added message box to closing, saving and completing Health Checks.
  • Added assigned date to SNOMED codes so fielback to EMIS is correct.
  • Fixed missing componenets and propertychanged events.
  • Reformatted styling on all windows in Health Checks.
  • Changed Save as Draft to be Save and doesnt close the window.
  • Updated typography, colors, and brushes for UI consistency
  • Replaced hardcoded styles with reusable resource dictionary references
  • Enhanced visual states across controls for better user feedback
  • Updated all UserControls to include missing elements from EMIS templates.
  • Update SNOMED Code to have descriptive text for filebacks.

Added

  • Centralized resource dictionaries for ComboBox, CheckBox, TextBox, and DatePicker styles to standardize UI components
  • Material Design Icons font (materialdesignicons-webfont.ttf) with integrated icon support across controls
  • MaterialDesignIcons class providing Unicode constants for icon references
  • NumericTextBoxBehavior for numeric input validation
  • DisplayMemberPathConverter for improved data binding
  • TextTruncateConverter for consistent text handling
  • JoyDatePicker style with validation, focus, and disabled states
  • Reusable icon styles in IconFonts.xaml supporting scalable icon sizes
  • Tooltips for improved accessibility

Improved

  • Consistent look and feel across all UI controls
  • Accessibility through enhanced tooltips and visual states
Download v1.0.94
v1.0.93

Updated

  • Updated JoyChat UI to include consent checkbox, information text on what JoyChat is and new combobox to choose numbers from patient record
  • Fixed some exceptions where encountered
  • Fixed frozen OLE data object exception on CountryCodeBehavior and TelephoneBehavior when pasting text
  • Updated project structure with a new test project (JoyConnect.Services.Tests) and documented test coverage, utilities, and execution in README.md.
  • Reminder window, viewmodel added
  • EF migration added for 2 timestamps which got added to UserDataSettings
  • Calling UserDataSettings.LoadSettings() in constructor of SystemSettingsVM
  • DeleteReferralTemplate in SystemSettingsVM now also deletes the relevant template from the database
  • SystemSetting.xaml cleaned and design time datacontext added

New Features

  • Created Health Check models and ViewModels based on EMIS templates.
  • Added welcome page and page navigation to Health Check
  • Added InverseBooleanConverter to resources library
  • Added HealthCheck Usercontrol and functionality for Invites
  • Added HealthCheck Usercontrol and functionality for Information
  • Added HealthCheck Usercontrol and functionality for Examination
  • Added HealthCheck Usercontrol and functionality for Management
  • Added HealthCheck Final screen and "Complete and Save" button plus page count.

Added

  • Adding interfaces required for Offline Mode feature (JOY2-817)
  • Adding data models for Offline Mode feature (JOY2-817)
  • Adding services required for Offline Mode feature (JOY2-817)

Fixed

  • Fixed the language version for AutoUpdater (JOY2-817)
  • Add offline mode services with caching and tests
  • Added comprehensive unit tests for all services using xUnit, FluentAssertions, and NSubstitute. Created test utilities (TestDbContextFactory, TestDataBuilder) for isolated testing.
  • Introduced fallback mechanisms, error handling, and transactional operations for robust offline functionality.
  • Implemented offline mode functionality with new services:
  • Added ConnectivityService, JoyIdCacheService, ListingsCacheService, PendingReferralService, ReferralFormCacheService, and SnomedCacheService for caching, synchronization, and offline data management.
  • Enhanced JoyConnectDbContext with DisableAutomaticTimestamps for testing.
  • Updated dependency injection to register new services.

Changed

  • Fixed bug where config file feature flag for JoyChat wasn't enabling joychat
Download v1.0.93
v1.0.92

Updated

  • added an explicit check to always trigger proactive alerts on a test user

Fixed

  • Fixed the local folder structure for JoyConnect.AudioService
  • Fixed the project reference to JoyConnect.AudioService after folder clean up
  • Fixed the JoyConnect.ConsultationService's reference to JoyConnect.AudioService
  • Added the JoyConnect.Services project which holds the offline mode implementation
  • JC log a fault updated to first check for a logged-in user before posting logs which led to an exception
  • JC log a fault updated to not pass through the parent window as this can be null when accessing the context menu with the widget not shown,this too led to a exception
  • Fixed a directory concern where the AutoUpdater is trying to be downloaded to the system32 directory

Fixed Memory Leaks and Resource Cleanup When Switching Clinical Systems

  • S1ResilienceService: Now properly closes WebSocket connections, cancels ongoing operations, and disposes resources when stopped
  • EmisApiService: Added COM object release using Marshal.ReleaseComObject() to prevent memory leaks
  • S1ApiService: Enhanced service stopping to ensure resilience service is properly shut down
  • System Switching: Added explicit S1ResilienceService shutdown when switching from SystmOne to EMIS

Implemented CircuitBreaker in S1Connector and S1ResilienceService

  • S1Connector: Added circuit breakers for socket operations and device ID retrieval with configurable thresholds
  • S1ResilienceService: Added circuit breaker for message processing to prevent cascading failures
  • Configuration: Circuit breaker settings (failure thresholds, timeout durations) are now configurable via App.config
  • Event Notifications: Circuit breaker state changes are logged and published via event service for monitoring
  • Graceful Degradation: When circuit is open, operations fail fast with clear error messages instead of hanging

Changed

  • Adjust Ad window to fix white background and sizing.
  • Changed changelog script to calculate the correct version header.
Download v1.0.92
v1.0.91

Changed

  • Improved exception handling and automated recovery actions: added RecoveryAction strategies and self-healing for common UI/service/network problems.
  • Exceptions are now tracked with thresholds to prevent infinite loops; user-friendly recovery dialogs are shown as needed.
  • Application restart and crash recovery mechanisms enhanced for reliability; previous crashes are detected on startup.
  • Telemetry and logging updated to include recovery tracking and uptime.
  • AutoUpdater updated to 1.0.21; verbose S1GetResponse flag added for log spam control.
  • Refactored "Log a Fault" to LogCaptureService and removed unused CheckLogRequests.
  • Jester AI calls include new X headers; AzureAIService removed and related methods cleaned up.
  • Fixed case sensitive search and "enter" on referrals.

New Features

  • Added Health checker organisation setting and moved organisation settings and feature flag classes to core library.
  • Create Health Check pop up window and implement viewmodel template.
  • Added Health Check button in details window to open health check.
  • Added more Amplitude tracking to help catch app crashes.

Updated

  • Added SystemOne.BufferSize in config, this allows us te increase/decrease the size without having to rebuild the application
  • Profiled and addressed some pieces of code in S1Connector.cs to reduce its memory footprint
  • Change S1 resilience start up logic to only run when S1 is selected as the clinical system.
Download v1.0.91
v1.0.90

New Features

  • Added the ability to edit and save referral letter templates for consultations in JoyNotes.
  • Added a new EF migration and table for referral letters.
  • Added the ability to regenerate referral letters.
  • Added a button to failed consultation summary generation that allows users to retry summary generation.
  • Added amplitude tracking in more places to record user clicks and better understand discrepancies between referral/signposting opened and sent

Changed

  • Removed June event methods and renamed all occurances of June to be Amplitude.
  • Changed the error form for signposting to have a try feature and updated the text to say unsuccessful
  • Changed all amplitude event strings to be stored in one place for easier tracking

Added

  • Added the new WixSharp-based installer
  • Added the ability to set the clinical system on startup

Updated

  • Update Wix installers to sit under a solution folder to separate

Fixed

  • Fixed the JCU pipeline to remove the *.x86 suffix
  • Fixed the JC pipeline in release to change the output to Slack
Download v1.0.90
v1.0.89

Added

  • Added email notification feature when a fault is successfully logged
  • Added new tables to manage the offline mode feature
  • Moved to entity configuration classes for all local tables
  • Cleaned up the OnModelCreating method to use reflection-based harvesting
  • Telemetry to Application Insights has been added
  • Currently being blocked to Release only
  • Added a new settings tab to allow users to toggle off file backs
  • Toggle is enabled by default and only accessible by Systm1 users

Changed

  • Added missing start button to JoyNotes window
  • Fixed log a fault where it would report it succeeded when it actually failed.
  • Clean up EMIS and Circuit breaker to reduce unwanted logging and rollbar calls.
  • Changed messagebox open logic to be more conistant.
  • Fix S1 no patient log spamming the log files
  • Update transcription summary and regenerate summary timeouts to be 90 seconds and included new amplitude events for fails.
  • Added a check and delete process for files in the AppData folders that are older than 30 days.
  • Change App.xaml.cs rollbar logging of some calls to be warnings instead of criticals.
  • We've removed the ability for the user to select categories and made notes optional.
  • Fix App tab text alignment to the left
  • Removed unwanted rollbar calls in mainwindow and EMIS

Fixed

  • Fixed unhandled exceptions causing the application to crash in the mainwindow
  • Fixed JC saved searches coming back with null referral type and categories

New Features

  • Added new context menu option to reset Joy key for API calls

Updated

  • Updated the AutoUpdater to fix the correct registry keys for modification with privilege
  • Added an MSI product validator to check the validaty of an installed product
  • Added a check to manage both Norfolk and JoyConnect standard WiX installers
Download v1.0.89
v1.0.88

New Features

  • Added UI changes for JoyNotes recording to include audio level bar while recording.
  • Added added ability to pause and resume recording.
  • Added information messages for audio quality problems.
  • Added new method for fixing window position if the window size changes.
  • Added closing event to stop recording when JoyNotes is closed via the microhpone button.

Changed

  • Adjust window service to handle window size changes instead of seperate call.
  • Adjust the API service status to be stored in the main window so that we can use it to update the message box when the widget buttons are pressed.
  • Change the way we determine if S1 is running by checking out connection to the socket.
  • Changed GetResponseFromSystmOne to return null if an exception is thrown so we can determine if we get an empty response to reset patient and user information.
  • Update URL of the JoyChat n8n service.
  • Altered No patient selected message to not always say JoyNotes
Download v1.0.88
v1.0.87

Added

  • PNG icons in SharedAssets
  • Added Device Labelling Tab in both JC and JCU

Fixed

  • Added json output example of family history qualifiers in EMIS prompt to allow for derserialisation

Updated

  • Update the path in JoyConnect to use the executable path, rather than the hard coded ProgramData
  • Minor updates to the way the AutoUpdater handles shortcuts
Download v1.0.87
v1.0.86

Release Note

  • No public changelog entries were provided for this release
Download v1.0.86
v1.0.85

New Features

  • Added JoyChat functionality with new listing to refer to and the ability to view the status in the activities tab.
  • Added functionality to the resume and discard buttons in the JoyNotes recording done window.
  • Added more extensive amplitude logging in the JoyNotes flow.
  • Implemented the discard button in the GeneratingTranscriptionReadyWindow

Changed

  • Reworked the way we open windows allowing us more control of where windows open and added logic so the windows don't open off screen.
Download v1.0.85
v1.0.84

Updated

  • Added unloaded event for ClientDetailsPane, closing ChatWindow
  • Added come comments in ClientDetailsPane.xaml.cs
  • intercom.html updated to reflect active user correctly
  • IntercomHelper class added to generate JWT
  • Removed mouse left button handler from ChatWindow

Added

  • Added the ability for JoyConnect to self-correct EMIS authentication issues.
  • Added additional Rollbar logging to capture situations where no data is returned from Jester to JoyConnect.
Download v1.0.84
v1.0.83

New Features

  • Add verbosity levels to the consultation summary prompt
  • Add selection for verbosity level in settings window
  • Added the ability to regenerate transcription summary in transcription summary window.

Changed

  • Added cancellation token timeouts when generating summary for consultations to stop freezing when API endpoint doesn't return.
  • Swapped widget appearance default so that JoyConnect stays open without patient.

Fixed

  • DUCE wpf memory problem with application startup Window handle and fixed memory leaks from story animations in mainwindow.
  • Add dispatcher around registerdialog method to render UI when FetchOrgSettings tick occurs
  • Adjusted the EMIS message boxes to be more suitable to the error reason.
  • Fixed a problem where we would popup multiple error message dialogs, now we just have one at a time.
  • Fixed the EMIS interop to move back to 4.2

Added

  • JoyConnect.SessionManager unit test project
  • Relevant tests for all classes in the JoyConnect.SessionManager namespace
  • Changelog
Download v1.0.83
v1.0.82

Removed

  • Removed the intended logging when patient is selected in clinical system
  • Removed a few Info logs into Rollbar

Updated

  • S1Connector to use ArrayPool over pure StringBuilder

Added

  • Empty string checking and return early when no patient selected for EMIS
  • Added additional Amplitude tracking for successful and failing Filebacks in EMIS and S1
Download v1.0.82
v1.0.81

Updated

  • Updated the build pipeline to include static analyis

Added

  • Created new SessionManager service to centralize session information management across the application
  • Added centralized user, organization, and patient state management with event-driven architecture
  • Implemented patient freeze/unfreeze functionality to prevent patient switching during critical operations
  • Added session validation methods to ensure proper state before operations
  • Created ISessionManager interface with comprehensive session management capabilities
  • Added dependency injection support for SessionManager services
  • Integrated SessionManager with existing ViewModels and services for consistent state management
  • Added a circuit breaker pattern to wrap specific calls to the clinical system, improving resilience and performance.

Changed

  • Moved APIManager to new interface called ClinicalManager
  • Refactored application to use centralized SessionManager instead of scattered session state management
  • Updated ViewModels, ConsultationManager and MainWindow to subscribe to SessionManager events for patient and user changes
  • Updated EMIS service to break large complexities into smaller, more manageable methods.
  • Added circuit breaker to specific large calls

Fixed

  • Improved session state consistency across the application by centralizing session management
  • Enhanced patient switching reliability through proper session validation
  • Fixed potential race conditions in patient state management through centralized event handling
  • Fixed copy on the loading screen for JoyNotes
Download v1.0.81
v1.0.80

Fixed

  • Fixed ORG swapping not re initialising connection on EMIS.
Download v1.0.80
v1.0.79

Fixed

  • Joy API refer bug where it doesn't return null on failure.

Updated

  • Added more metrics for amplitude event tracking.
Download v1.0.79
v1.0.78

Added

  • Added a new tracing service to help diagnose issues related to system memory usage.
  • DUCE tracing is now enabled by default to assist in debugging memory-related problems.

Updated

  • Updated unit tests to include scenarios that simulate low memory conditions, ensuring better coverage for memory management issues.
  • Added a back button to the JoyConnect app, allowing users to navigate back to the previous screen easily.
  • Added a new Rollbar provider to JoyConnect

Change

  • Update tracking events to use new amplitude endpoint and add object to manage body object.

Fixed

  • AuthToken not updates current record instead of adding new record to DB that is not used.
  • Adding exception handling when scraping questions from user form due to semaphore timeout.

Updated

  • Changed how we notify the user of errors with EMIS, now the messages are more specific to each scenario that happens.
  • Adjusted MessageBox dialog to allow the user of hyper links for better support to the user.
Download v1.0.78
v1.0.77

Updated

  • Added the ability to "freeze" the patient record when Refer is clicked
  • Added the ability for the refer pane to be notified of clinical system changes
  • Changed the error window so we now have a button to retry the referral ensuring we dont lose data.

Fixed

  • Fixed the submission of referrals to be blocked if clinical system change is detected

Updated

  • Updated summarisation outcome to cater for CTV3 codes
  • Updated the summary view to show CTV3 if availbale otherwise default to SNOMED
  • Updated the UpdatePatientRecord for SystmOne to file back CTV3 over SNOMED
Download v1.0.77
v1.0.76

Updated

  • Updated methods to log warnings, over errors, especially when something is expected.
  • Added additional fields to the logging, include machine_name and joyconnect_version for easier tracing
  • Added a more agressive policy for deleting the batch file
  • Returned the PatientChanged event

Added

  • Added a new event to MainWindow shown
Download v1.0.76
v1.0.75

Fixed

  • Stop JC restarting everytime the AuthToken failed, instead we pop up the message but reset the AuthToken to try fix the problem.
  • When empty patient and doctor information is passed through to the LLM for QuickFill we no longer try to answer questions with made up information.
  • Update SuccessfulSavedNotes listings to properly show External referral listings.
  • Duplicate listing objects changed to single usage.
  • Remove unnecessary june logging.

Changed

  • Added error pop up for when a user hasn't filled in all required fields and clicks submit.
  • Removed old prompt for generating the consultation.
  • Adjust prompt to favour using the Doctors details when duplicate questions are asking for Firstname, lastname, etc.
  • Altered the mapping logic to use the target_id of the html element instead of the quesiton in the quick fill logic.

New Features

  • Improve quick fill speed for long referral forms by batch processing the questions.
  • Added the ability to flush rollbar logs in updater.
Download v1.0.75
v1.0.74

New Features

  • Swapped SNOMED searching to use our new Jester endpoint instead of the SNOMED CT http request
  • External referral now scrapes users answers in the referral form.
  • Updated question formatting in QuickFill prompt to improve question answering.
  • Added the ability for a clinical system to define the SNOMED term services to use

Changed

  • Added prompt change for consultations to mention dictation of who is present during consultation.
  • Button and message box text for closing external referral forms.
Download v1.0.74
v1.0.73

Fixed

  • Streamlined Rollbar logging configuration in Application.cs.
  • Adjusted command line arguments in launchSettings.json for AutoUpdater.
  • Refactored AutoUpdater class: improved error handling, added DownloadArchive and ExtractAndRestartJoyConnect methods for better clarity and maintainability.
  • Updated documentation to reflect recent fixes related to updater resilience.
  • Updated the support link on the FAQs link in both JC and JCU to the new support site.
  • Add tooltip for listings when listing names are text wrapped
  • Fixed a bug around authentication and token access.
  • The ability to switch patients in clinical systems have been simplified
  • An additional set of logging has been added to the application to trace more nuanced scenarios
  • File back error handling has been corrected by adding a UI indication when an error does occur
  • A collection of stability issues have been addressed as well
  • Fixed disposal of WebView when window is closed
  • Updated SNOMED CT API version
  • Stability with json serialisation from quick fill response

New Features

  • Added external referral window for filling in external referral forms.
  • Added user information to prompt and changed patient information into json serialisation instead of xml.
  • Added web scraper js to resource to use in external referral window.
  • Added quick referral button to referral forms to answers required questions.
  • Added Jester prompt to answer questions from the referral form.
  • Added WebViewLoader to wix installer.
  • Added logging for external referral window and changed WebViewer to be create in external referral view model.
  • Added patient examination value gathering for SystmOne.
  • Added x64 build process to the pipeline for staging.
  • A new installer has been developed to drive the installation of JoyConnect, going forward
  • Added pop up window when closing external referral window

Changed

  • Changed SystmOne authentication timeout to be two minute instead of 3 seconds.
  • Changed the UI surrounding the display of the output devices available on user's machine.
  • Changed the way that output devices are being inferred.
Download v1.0.73
v1.0.72

New Features

  • Added June tracking for microhpone AD window, recording starting and recording stopping.
  • Added local logging for the opening and closing of windows.
  • Added Rollbar logging for consultation recording errors.
  • Added gathering for medication and active problems for S1 and EMIS
  • Added medication and active problems to letter generation
  • Added user information to referral letter
  • Added copied message when copying referral letters
  • Added information badge to let users know the letter won't be filebacked

Changed

  • Await in consultations now run at the same time instead of one at a time
  • Decreased the settings timer to 1 second so we can get the S1 clinical events when patient loads
  • Changed all configs to use JesterAIService
Download v1.0.72
v1.0.71

Fixed

  • Added App.config to .gitignore.
  • Improved clarity in App.xaml.cs by renaming a variable.
  • Reduced timeout for CheckLogCaptureRequests in MainWindow.xaml.cs.
  • Enhanced checks for _apiService and _specificNudge visibility.
  • Updated _updateAvailable handling in MainWindow.xaml.cs.
  • Added qaarch field in Application class and updated command-line argument handling.
  • Bumped version in AutoUpdater.csproj from 1.0.9 to 1.0.12.
  • Changed optimization settings for Staging configuration to False.
  • Introduced new profile for AutoUpdater in launchSettings.json.
  • Improved logging and update logic in AutoUpdater.cs.
  • Modified ConfigurationService to adjust executable path and add QARequest property.
  • Enhanced update necessity logic in ConfigurationService to include QARequest.

New Features

  • Added letters to transcription summary window
  • Formatted the transcription summary window to match Figma for name and dates
  • Added focusing for richtextbox in transcription summary window so it indicates to the user which richtextbox is focused
  • Added the ability to add multiple problems to the EMIS consultation.
  • Added a max count of codes for problems (3) and other categories (10) in the transcription summary window. Button now shows as disabled when max codes added.
  • Added a nax count of code selections in search snomed selection window.

Changed

  • Show and Hide widget now affects other open windows so they're not hanging around when the main widget dissapears.
  • Moved MessageBoxDialog window into SharePlatformLibrary.
  • Clicking grey microphone now opens AD windows for JoyNotes.
Download v1.0.71
v1.0.70

Fixed

  • Silenced unnecessary Rollbar issue logs in the AutoUpdater
  • Major update to the PR pipeline file
  • Building both x86 and x64 versions of the PR apps
  • Fixed the building of a patch based on new WiX changes
  • Dependency injection
  • Fixed S1 referral and signpost message for filebacks (had removed title and date strings by accident)
  • Implemented an event-driven architecture with IEventService to enable seamless communication between components.
  • Enhanced patient switching performance by leveraging event-driven updates and updating ViewModels to dynamically respond to PatientChangeMessage events.
  • Refactored ConsultationRecorderService for better resource management and error handling.
  • Updated dependency injection to register IEventService as a singleton and integrated it into relevant services and ViewModels.
  • Added new models (EventMessage, PatientChangeMessage) to standardize event communication. Improved logging, removed deprecated code, and optimized error handling across the codebase.
  • Documented changes and fixes in bug--joy2-3-faster-patient-switching.md.

Updated

  • Updated the EMISApiService to try...catch rather than failing through
  • Updated the ProcessExit handler to handle ExitCode > 0 as 0 is a false positive

New Features

  • Create S1 Constultation Objects.
  • Update SNOMED CT API version to fix SNOMED CT search.
  • Change SNOMED code checking to use term rather than code as its more reliable.
  • Implemented S1 fileback with formatting, currently a little hacky as we are pushing using a bug to push the consultation even if we have an invalid SNOMED code in our list of codes. We also haven't got confirmation on how to push the text back into the corrent categories yet. So this is a version 1 and will need to improved.
  • Added Consultation Manager to manage consultation transcriptions, summary, codes and summary formatting to consultation object strucutre.
  • Removed AWS usage for summary creation.
  • Changed summary window to allow users to edit the text fields in each category.
  • Adjust EMIS fileback ordering.
  • Removed duplicate codes in consultations.
  • Add the ability to hit the Jester AI end-points
  • Add Azure prompt for getting the Wider Determines of Health reasons
  • Added the ability for users to add and delete SNOMED codes in the transcription summary.
  • Updated SNOMED code selector to have the consultation header as a parameter
  • Removed the check for JesterAI when disposing of the SpeechRecognizer
  • Added summaries for social and family history when filebacking to EMIS
  • Added hover affect to turn the button red when deleting SNOMED codes in the transcription summary
  • Updated the WDoH prompt and added to the Jester AI service

Fixed

  • Fixed empty social category codes causing transcription to fail.

Changed

  • Changed Ad Window 'X' close button to be white
Download v1.0.70
v1.0.69

Fixed

  • Re-release of 1.0.68 to force users to update
Download v1.0.69
v1.0.68

Fixed

  • Fixed fileback for EMIS referrals by adding in a bool to know if we need to format for consultations or leave as previous implementation with the comments e.g. referrals and signposting
Download v1.0.68
v1.0.67

Fixed

  • Added SKIP_PATCH environment variable to control patch creation.
  • Improved baseline version logic to support milestone-based baselines.
  • Enhanced JOY-ID extraction from branch names for installer naming.
  • Refactored installer archive creation for consistency and reliability.
  • Introduced patch creation workflow with WiX and certificate handling.
  • Updated S3 sync logic to conditionally upload patch files.
  • Added a startup folder shortcut for auto-launch functionality.
  • Removed deprecated permissions and cleanup logic for folders.
  • Updated WiX package configuration with new GUIDs and upgrade logic.
  • Improved shortcut removal logic in Program.cs.
  • Enhanced Rollbar configuration to include server hostname.
  • Added patch.wxs for patch file configuration and validation.
  • Fixed uninstaller bugs and improved file cleanup during uninstall.
  • Updated documentation for uninstaller fixes.
  • Miscellaneous fixes: XML namespace corrections, formatting updates.

New Features

  • Created AI Service Library to better manage AI service calls
  • Moved SNOMED objects to Core library to make them more accessible
  • Implemented transcription and mp3 file overrides for JoyNotes to make testing easier.
  • Fixed transciption summary parsing bug.
  • Added log to show org ID when fetching orgnisation settings.
Download v1.0.67
v1.0.66

Release Note

  • No public changelog entries were provided for this release
Download v1.0.66
v1.0.65

Fixed

  • Added a manageable feature flag to Jester
Download v1.0.65
v1.0.64

New Features

  • Added information about the Ad to UserDataSettings to control when the Ad is able to pop up.
  • Implement Ad window to pop up with widget load to get awarness for JoyNotes.
  • Fixed PositionWindowWithinParent maths in WindowService to be more central to parent.
  • Adjust Notes welcome page roles list.
  • Added microphone button and animations for accessing joy notes
  • Added WindowCount and AddClosingEvent to WindowService class
  • Changed widget layout to be more dynamic and use grid column definitons so that it auto sizes on content and will making adding more feautres easier in the future
  • Created Dropdown box user control for displaying a list of strings
  • Updated SuccessfullySavedNotes window to display dropbox for wider determinantes of health reasons, changed listings display items layout and implemented scroll view for entire window
  • Added wider determinantes of health list to clinical message
  • Fixed bug with transcription summary where snomed codes weren't saved from AI response

Fixed

  • Updated YAML deployment files to comment out CustomActions build and release verification steps.
  • Removed OutDir property from CustomActions.vcxproj and deleted CustomActions.dll binary.
  • Incremented AutoUpdater version to 1.0.9 in AutoUpdater.csproj and updated AssemblyVersion/FileVersion.
  • Enhanced AutoUpdater.cs with improved logging, Regex-based QA URL logic, and updated KillProcess/RetrieveAndUnpack methods for restart support.
  • Updated Application.cs with new version detection logic, Rollbar logging, and dependency injection improvements.
  • Added launchSettings.json for AutoUpdater debugging and a placeholder markdown file for documentation.
Download v1.0.64
v1.0.63

Fixed

  • Make CancellationTokenSource, SpeechRecognizer, and ConversationTranscriber fields nullable and non-readonly in ConsultationRecorderService.cs.
  • Add Initialize and EnsureDirectories methods to ConsultationRecorderService.cs.
  • Move OnTranscribed method and remove OnSpeechRecognized method in ConsultationRecorderService.cs.
  • Update StopRecordingAsync to call Initialize after exception.
  • Add try-catch blocks to Write methods in AudioFileWriter.cs and AudioStreamWriter.cs.
  • Update bug documentation to indicate fix for transcription issue.
Download v1.0.63
v1.0.62

Fixed

  • Auto-updater uses configuration from solution
  • Auto-updater now has a mini-CLI for IT administrators
  • Few minor tweaks and logging added
  • All update *.json* files have now been baselined

Fixed

  • Removed SMTP from AutoUpdater
  • Added the ability for the decryption of the dat file to self-correct

New Features

  • Adjust the way we open the DetailWindow so it now is managed through the Window service.
  • Added the ability for selected snomed codes in the search snomed code window to appear selected when you open it again.
  • Choosing snowmed codes during a transcription summary will result in the chosen snomed codes being selected by default
  • Changed edit snomed codes in referral and signposting windows to utilise the search snomed codes window in the transcription review.
  • Fixed Window service bug where child window wouldn't follow parent window.
  • Updated feature--joy2-69-when-making-a-referral-hitting-edit-on-the-select-snomed a "Feature" section.
Download v1.0.62
v1.0.61

Fixed

  • Downgraded AssemblyVersion and FileVersion in JoyConnect.csproj from 1.0.60 to 1.0.59.
  • MSI Patch flow is failing, fixing this at the Staging level so we can push this up into Release, code-base is unaffected.
Download v1.0.61
v1.0.60

Fixed

  • Reordered using directives in App.xaml.cs for better organization.
  • Removed unnecessary using directive in MainWindow.xaml.cs.
  • Enhanced error handling and logging in MainWindow.xaml.cs:
  • Wrapped ManageWidgetAppearance and related operations in try block.
  • Moved Authenticate call inside conditional check.
  • Added detailed logging with _logger.LogError and RollbarLocator.
  • Improved CreateOrganisation method with better error handling.
  • Updated S1ApiService.cs for robust XML parsing and processing:
  • Added request string for patient coded record XML.
  • Ensured events have elements before processing.
  • Refactored SnomedCode extraction to handle null values safely.
  • Streamlined ClinicalEvent creation inside events loop.

Changed

  • Changed initial polling interval for org settings (unauthenticated user) from 1s to 5s
  • Changed authenticad user polling interval for org settings from 30s to 30 minutes

Fixed

  • Refactored SaveNotesViewModel to use IMainWindow interface, reducing redundant casts and improving maintainability.
  • Added ClinicalSystem property to IMainWindow and implemented it in MainWindow.xaml.cs.
  • Updated ExecuteSavePatientRecordCommand to use the new window field and log exceptions with more detail.
  • Reverted retry time in EmisApiService.cs to 4 hours.
  • Introduced async methods for SNOMED code validation in ConsultationRecorderService.cs.
  • Added new classes in SnomedItem.cs for handling extended SNOMED details.
  • Updated SearchSnomedViewModel.cs to use configurable SNOMED API version.
  • Enhanced WindowService.cs with a windowFactory for improved window management.
  • Registered IWindowFactory in DI container and created IWindowFactory interface.
  • Added WindowFactory class in JoyConnect.SharedPlatformLibrary for creating and configuring WPF windows.

New Features

  • Added new welcome page for joy notes that introduces joy notes and allows users to select role to improve prompt writing.
  • Added user data settings static class to manage user data better. Includes user selected role from welcome page
  • Adjusted consultation prompt to include choosen role.
  • Adjusted "record consultation" to show welcome window if user hasn't selected a role.
  • Updated feature--joy2-9-role-selection-on-feature-activation.md with a "Feature" section.
Download v1.0.60
v1.0.59

Fixed

  • Update .gitignore to exclude JoyConnect project files
  • The .gitignore file has been updated to include the following paths:
  • JoyConnect.Installer/DLLs/CustomActions.exp
  • JoyConnect.Installer/DLLs/CustomActions.lib
  • JoyConnect/App.config
  • JoyConnectUniversal/App.config
  • JoyConnect/joy-connect/Staging
  • These changes ensure that specific DLLs, configuration files, and the staging directory are not tracked in the version control system.
  • Update deployment scripts, build process, and logging
  • Ensure DLLs directory exists before building custom actions in multiple deployment YAML files.
  • Modify build command for CustomActions.vcxproj and adjust output directory.
  • Verify existence of CustomActions.dll post-build in deployment YAML files.
  • Update installer version and prepare certificates in staging deployment YAML.
  • Increment version in AutoUpdater.csproj from 1.0.4 to 1.0.5.
  • Change logging in Program.cs to use local app data folder.
  • Update MSI installation command to log to local app data folder.
  • Remove log file creation in current directory in Program.cs.
  • Update .gitignore to include new directory path.
  • Reformat JoyConnect.Installer.wixproj and remove CustomActions.dll.
  • Add LUASetting property in JoyConnectPackage.wxs.
  • Include digital certificate in patch.wxs.
  • Make binary changes to CustomActions.dll.
  • Add placeholder step for Azure Key Vault secrets in staging deployment YAML.
Download v1.0.59
v1.0.58

Release Note

  • No public changelog entries were provided for this release
Download v1.0.58
v1.0.57

Release Note

  • No public changelog entries were provided for this release
Download v1.0.57
v1.0.56

Release Note

  • No public changelog entries were provided for this release
Download v1.0.56
v1.0.54

Fixed

  • Improved readability and maintainability in deploy-installer-testing.yml by breaking long msbuild commands into multiple lines.
  • Removed <Folder Include="bin\" /> from AutoUpdater.csproj.
  • Modified CustomActions.dll binary file.
  • Changed installation directory in Folders.wxs from ProgramFilesFolder to CommonAppDataFolder and added Logs directory.
  • Consolidated XML namespace declarations in JoyConnectComponents.wxs and JoyConnectPackage.wxs.
  • Updated CreateFolder element permissions and added LogsFolder component in JoyConnectComponents.wxs.
  • Reformatted Package element attributes, added Icon element, and improved CustomAction readability in JoyConnectPackage.wxs.
Download v1.0.54
v1.0.52

Fixed

  • Added necessary using directives for System.Globalization and Exception alias.
  • Wrapped _emis.GetOrganisation call in a try-catch block to handle exceptions.
  • Initialized variables with default values before the try block.
  • Added logging for exceptions, excluding specific "actively refused" message.
  • Implemented a foreach loop to set locationTypeDescription.
  • Ensured early return after setting CurrentOrganization on success.
  • Explicitly set CurrentOrganization to null on failure.
  • Refactored WindowService to simplify window positioning logic:
  • RelativePosition now uses mainWindow's Left and Top directly.
  • Updated PositionWindowRelativeToElement to set window's Top and Left based on widget's position and size.
  • Commented out code for position adjustments within the working area.
  • UpdateWindowPosition now calls PositionWindowRelativeToElement.
  • In MainWindow.xaml.cs:
  • Commented out code fetching OrganizationSettings and determining enableRecording based on FeatureFlags.
  • Hardcoded enableRecording to true.
Download v1.0.52
v1.0.51

Fixed

  • Modified AutoUpdater.csproj to add new configurations and remove BaseOutputPath.
  • Enhanced logging and error handling in Program.cs and ConsultationRecorderService.cs.
  • Updated SnomedItem.cs to implement INotifyPropertyChanged.
  • Added CurrentUserName property to IMainWindow.cs.
  • Added CloseSnomedCodesCommand to SearchSnomedViewModel.cs.
  • Introduced DownloadSummaryCommand and AddAllCodesCommand in TranscriptionSummaryReviewViewModel.
  • Improved UI in SearchSnomedWindow.xaml and TranscriptionSummaryReviewWindow.xaml.
  • Cleaned up code and added CurrentUserName property in MainWindow.xaml.cs.
  • Removed unused using directives in OrganizationSettings.cs.
Download v1.0.51
v1.0.50

Changed

  • Removed two more rollbars due to volume of rollbar reports

Added

  • when available, send EMIS organization ID with the anonymous events
Download v1.0.50
v1.0.49

Added

  • Integration with server side file back request verification. When file back request is captured in S1ResilienceService:
  • call JoyAPI to log the fileback request
  • check if previous successful request exists (based on JoyAPI response)
  • if not, allow file back to proceed, otherwise - block and log the blocked fileback to JoyAPI
  • when file back goes ahead, but errors - send a log of failed file back to JoyAPI, including error message and the s1 function called
  • when file back succeeds (based on the immediate s1 response) - log success, which will prevent further file back retries
Download v1.0.49
v1.0.48

Added

  • DISABLED: Fileback rate limiting: when a fileback is issued, a timeout of 20 minutes will kick in and block all subsequent fileback retries for the same client record id
  • DISABLED: Fileback rate limiting can be toggled via feature flag (flipper)
  • Added feature flags handling. Feature flags are fetched along with organization level settings.
  • Added logging of accepted and blocked fileback requests (both client side and inside Joy API)
Download v1.0.48
v1.0.47

Fixed

  • Comment out message dialogs for connection issues in JoyConnect and JoyConnectUniversal namespaces.
  • Modify SystemSettingsAppearance.PatientSelection to conditionally show the main window only if the system is ready.
  • Shift towards using return statements for graceful handling of certain conditions.
Download v1.0.47
v1.0.46

Changed

  • changed listing images to stretch to fill while maintaining the original ratio

Added

  • referral and signpost events will now include the NHS Numbers
  • Refactored S1ResillienceService to S1ResilienceService, added retry logic, and introduced IsValidResponse method.
  • Updated internal visibility for testing. Commented out specific tests in VoiceRecorderControlTests.cs.
  • Updated and added package references in JoyConnect.Tests.csproj.
  • Removed unused namespaces in MainWindowTest.cs.
  • Added new test class S1ResilienceServiceTests in S1ResilienceServiceTests.cs.
  • Modified CustomActions.dll binary.

Fixed

  • Removed the non functional searchbar in the snomed code dropdown visible in signpost and referral forms.

Added

  • sync patient record scanning settings with organization level settings (every 30s)
  • ability to set a custom default per organization (users can change it later)
  • ability to disable scanning behaviour settings UI
Download v1.0.46
v1.0.45

Added

  • Removed unused using directives from SystemSettingsData.cs.
  • Added directory existence check before creating settings file.
  • Commented out retry logic in S1ResillienceService.cs.
  • Added retry logic for get the organisation name
  • Ensured that directory exists before attempting to create SystemSettings file
  • Added validation to prevent exception.
Download v1.0.45
v1.0.44

Added

  • Added package references for Serilog.Sinks.File, Rollbar.PlugIns.Serilog, and Serilog.Sinks.Console.
  • Added FileLifecycleHook.cs for custom Serilog lifecycle handling.

Changed

  • Refactored App.xaml.cs:
  • Removed and reordered using directives.
  • Added using Rollbar.PlugIns.Serilog.
  • Changed ServiceProvider and _logger to nullable types.
  • Simplified App_OnStartup and moved service configuration to ConfigureServices.
  • Added TakeOwnershipIfAlreadyRunning method.
  • Updated ConfigureServices for Serilog and Rollbar.
  • Added logging for application exit and exception handlers.
Download v1.0.44
v1.0.42

Added

  • Added new dependencies and references in App.xaml.cs for JoyConnect.SharedLibrary and JoyConnect.SharedPlatformLibrary.
  • Registered new services in the DI container for IWaveFileWriter, IWaveFileWriterFactory, IWaveInEvent, and IVoiceRecorder.
  • Updated ClientDetailsPane.xaml to include a new XML namespace and added VoiceRecorderControl to the UI.
  • Cleaned up and added necessary using directives in ClientDetailsPane.xaml.cs and initialized VoiceRecorderControl with a service instance of IVoiceRecorder.
  • Updated JoyConnect.csproj to include project references to JoyConnect.SharedLibrary and JoyConnect.SharedPlatformLibrary.
  • Created new test projects JoyConnect.SharedLibrary.Tests.csproj and JoyConnect.SharedPlatformLibrary.Tests.csproj with necessary dependencies and references for unit testing.
  • Implemented unit tests in VoiceRecorderTests.cs and VoiceRecorderControlTests.cs.
  • Created new projects JoyConnect.SharedLibrary.csproj and JoyConnect.SharedPlatformLibrary.csproj with implementations for RecorderFileWriter, RecorderFileWriterFactory, RecorderWaveInEvent, VoiceRecorder, and VoiceRecorderControl.
  • Defined interfaces IVoiceRecorder, IWaveFileWriter, IWaveFileWriterFactory, and IWaveInEvent in JoyConnect.SharedLibrary.Interfaces.
  • Added assembly information in AssemblyInfo.cs for theme-specific resource dictionaries.
  • Defined the UI for VoiceRecorderControl in VoiceRecorderControl.xaml and implemented the logic in VoiceRecorderControl.xaml.cs.

Fixed

  • Updated WixToolset packages in CustomActions.vcxproj, packages.config, JoyConnect.Installer.wixproj, and JoyConnectUniversal.Installer.wixproj.
  • Updated test-related packages in JoyConnect.SharedLibrary.Tests.csproj, JoyConnect.SharedPlatformLibrary.Tests.csproj, and JoyConnect.Tests.csproj.
  • Updated utility packages in JoyConnect.csproj and JoyConnectUniversal.csproj.
  • Replaced IsNullOrEmpty extension method with string.IsNullOrEmpty in DetailsWindowVM.cs.
Download v1.0.42
v1.0.41

Changed

  • reduce log requests from every 30s to 5 min
Download v1.0.41
v1.0.40

Added

  • check every 30s if a log capture request has been made and upload most recent logs to s3
Download v1.0.40
v1.0.39

Changed

  • Confirm application readiness and launch only once per session
Download v1.0.39
v1.0.37

Fixed

  • Fixed Gender and ethnicity not populating in referal form.
Download v1.0.37
v1.0.36

Added

  • Added referral notes to EMIS filebacks
  • Added anonymous tracking for events such as app initialization, readiness and errors

Removed

  • Removed rollbar logging from S1 resilience service

Fixed

  • Fixed issue where referrals would file back even if the backend returned an error
Download v1.0.36
v1.0.35

Added

  • Added data parameter to event tracking

Changed

  • Split NHS number into separate data item when tracking patient changed event

Changed

  • When referring / signposting, preselected snomed codes will now reflect global preferences as opposed to user specified
  • When signposting multiple services, preselected snomed codes will represent combined code selections for all selected listings / apps
Download v1.0.35
v1.0.34

Changed

  • Shut down application earlier and write log if a second instance is opened

Changed

  • Added error handling and logging around websocket error in resilience piece
  • Added close button to multiple instances restart prompt
  • Added check for multiple instances when S1 API attempts to retrieve a response from S1
  • On single instances, when restarting S1, on intance change detection, display widget to the user (on click shows a restart prompt) to avoid situations where users cannot find JC on their screens
Download v1.0.34
v1.0.33

Changed

  • Refactored socket closing logic of S1Connector to ensure that it is always properly shut down.
  • Removed sensitive information from application logs.
Download v1.0.33
v1.0.32

Changed

  • Rolled back the changes to the resillience piece that were introduced in v1.0.26
Download v1.0.32
v1.0.31

Added

  • When JC detects that a number of s1 instances running has changed, it will go into idle mode and display a restart prompt to the user.
Download v1.0.31
v1.0.29

Added

  • Added extra logging to the resilience service to better understand connection issues
  • Added class context to logs
  • Added unit test job to test deploy pipelines
  • Added check for changelog file to test deploy pipelines

Changed

  • Added extra loggin around socket connection state
  • Added delay to socket connection to wait for initial data from server

Removed

  • Removed superfluous logs from resilience service
Download v1.0.29
v1.0.28

Added

  • New settings panel added, allowing users to modify visibility options as well as size and colour of the JoyConnect widget
  • Added alerts section to settings window which allows users to control the behaviour of proactive alerts
Download v1.0.28
v1.0.27

Fixed

  • Reset the S1 resilience timeout back to 180s to resolve issues with fileback
Download v1.0.27
v1.0.26

Changed

  • Made various improvements to the resilience service to improve performance and solve issues with S1
Download v1.0.26
v1.0.25

Changed

  • In order to resolve the issue with device authentication in SystmOne when more than one organisation is using the clinical system on a single machine, JoyConnect will now use authorised_devices.json file to store the S1 user device information (previously stored in the UserSettings object).
  • Changed naming format for auth token .dat files to resolve issue with shared EMIS usernames
Download v1.0.25
v1.0.24

Changed

  • changed logging around S1 resilience service get organization metadata to provide more details in case or error
Download v1.0.24
v1.0.23

Changed

  • S1 resilience service is now checking for running process to limit number of requests
Download v1.0.23
v1.0.22

Fixed

  • Fixed an issue where restarting would not trigger the auto updater

Added

  • New users with existing email will now be registered with Joy automatically. New users without emails will be required to register manually.

Changed

  • Keep background services running and preserve data when CS is minimized
  • Changed EMIS patient polling frequency to 5s
  • Changed S1 patient polling frequency to 5s
  • Request demographic record for S1 patients and load coded record only when required
  • Set S1 socket buffer to 10MB
Download v1.0.22
v1.0.21

Fixed

  • When during referral creation accept criteria checkbox is present and the access criteria contains HTML tags they are displayed in the access criteria checkbox label.
  • Fixed an issue where minimizing S1 window would sometimes cause JoyConnect to stop loading new patients
  • Add event handler to ensure widget is on top when opening
  • Fixed an issue where the app would close because of EMIS temporarily chaning its window title

Added

  • Added error messages for connection issues when trying to update
Download v1.0.21
v1.0.20

Fixed

  • Fixed upload of wrong latest.json to release bucket
Download v1.0.20
v1.0.19

Added

  • Added SignInWithToken method which enables passwordless login by sending user's clinical system id and an encrypted secret to secure connection between the client and the JoyConnect API
  • Upon receiving a 401 response from server, delete the token and restart the app (a confirmation dialog will be shown to the user)
  • Added machine ID to event tracking
Download v1.0.19
v1.0.18

Changes

  • Revert changes from 1.0.17
Download v1.0.18
v1.0.17

Added

  • Added SignInWithToken method which enables passwordless login by sending user's clinical system id and an encrypted secret to secure connection between the client and the JoyConnect API
  • Upon receiving a 401 response from server, delete the token and restart the app (a confirmation dialog will be shown to the user)
Download v1.0.17
v1.0.16

Added

  • Added version number to user events
Download v1.0.16
v1.0.15

Changed

  • Only changed version number to validate AutoUpdate functionality
Download v1.0.15
v1.0.14

Fixed

  • Fix patching issue when original installer is unavailable on the device
Download v1.0.14
v1.0.13

Fixed

  • Force close all application instances during installation and patching
Download v1.0.13
v1.0.12

Added

  • Added visibility toggle to password field

Changed

  • Ignore 502 errors in resilience service caused by backend server downtime

Fixed

  • Correctly set auto-updater folder permissions on installation
Download v1.0.12
v1.0.11

Added

  • Added better error handling and reporting to loading EMIS patient data
  • Added new error messages for problems with downloading or running the auto updater

Fixed

  • Fixed issue where first patient wouldn't load if the NHS number is unavailable
  • Fixed crash when EMIS is not installed
Download v1.0.11
v1.0.10

Added

  • Added Rollbar support for error handling to JoyConnect and AutoUpdater

Changed

  • Clinical system now defaults to S1 if S1 is installed on the machine, EMIS otherwise
  • Changed password length requirements and updated text
  • Changed default installer scope to per-machine
  • Use msiexec -i JoyConnect.Installer.msi ALLUSERS=2 MSIINSTALLPERUSER=1 for a per-user installation

Fixed

  • Fixed issue with UserSettings resetting to default values after an update
  • Renamed referral tracking event from "Signpost sent" to "Referral sent"
  • Added tracking event for new sign ups
Download v1.0.10
v1.0.9

Added

  • Added restart button to tray context menu
  • Added tick icon to tray context menu to indicate currently selected clinical system
  • Added event tracking for
  • Click on the widget to open window
  • Click on the widget to close window
  • Click on the proactive alert - view options
  • Click on the proactive alert - ignore
  • Referral sent
  • Signpost sent
  • Access Apps tab
  • Access the Insights tab
  • Access the Activity tab
  • Access service detail page
  • Click on the search bar
  • App details view pane
  • JoyAPI request for fetching app details
  • Signpost / referral details view

Changed

  • Apps in the apps list view now work as buttons that take users to the app's details view

Fixed

  • Fixed sort order of activities
  • Made whole activity area clickable
Download v1.0.9
v1.0.8

Fixed

  • Removed registry writes to resolve permission issue
  • Synced S1Connector and S1Resillience service to solve race condition during initialization
  • Updated auto updater URLs to use https instead of http
Download v1.0.8
v1.0.26

Updated

  • Disabling search in JCU whilst logged out
  • FilterData created on application startup via the session manager to ensure valid filters are present when VMs are created
  • Added "Clear cache" context menu option which clears the ms login cache to force reauthentication
  • Implement IHHttpClientFactory in JoyApiService and setting the authentication header
  • SafeHttpHandler added in JCU JoyApiService
  • Minor Login UI tweaks made per Adriens request
  • Whilst logged out, if trying to search, a message box is shown saying "Please login..."
Download v1.0.26
v1.0.25

Updated

  • When selecting a listing, we do not retrieve snomed codes for the listing due to JCU not filing back to a clinical system as of yet.
  • JoyApiService.GetSnomedCodes updated to return a empty list when a failing to retrieve snomed codes, rollbar and logs updated as they indicated the wrong message, "Error loading saved services".
  • When both the patient and practice postcodes are valid and a user selects between them on the listings pane, we automatically refresh the shown listings.
Download v1.0.25
v1.0.24

Updated

  • FilterVM prevents a user from attempting to update a patients postcode if the session manager has no patient loaded up. A message box is shown instructing the
  • the user to load a patient first.
  • ListingsVM
  • SessionManagerOnFiltersChanged check removed which would prevent a search when the selected locations postcode was unknown
  • SessionManagerOnFiltersChanged apprpriately sets the patient location when the patient either has a postcode or has none
  • OnSelectedLocationChanged no longer executes the search automatically to reduce the frequency at which postcode validation messages will bbe shown to the user
  • Search task _sessionManager.HasPatient check removed
Download v1.0.24
v1.0.23

Updated

  • Clearing existings patients found via advanced search when clearing the current patient
  • Setting the filters postcode to the selected patient postocde when executing the select command
  • Invoking the session manager filter changed event after setting the new postcode
  • Calling SessionManager.UpdatePatientAsync with the new patient data
  • Added three WebView2 event handlers in CallGraphButton_Click() method:
  • NavigationStarting - detects logout/signout/forgetaccount URL navigations
  • WebMessageReceived - receives messages from injected JavaScript
  • DOMContentLoaded - triggers JavaScript injection when page loads
  • Implemented CoreWebView2_NavigationStarting() - monitors navigation URLs for logout/signout/forgetaccount patterns and triggers account removal
  • Implemented CoreWebView2_DOMContentLoaded() - injects JavaScript into the Microsoft SSO page to detect clicks on "forget" or "remove" buttons by monitoring element text, data-value, and aria-label attributes
  • Implemented CoreWebView2_WebMessageReceived() - receives and processes messages from the injected JavaScript when forget button is clicked
  • Implemented HandleAccountForget() - retrieves current MSAL account, deletes stored login file, and removes account from MSAL cache
  • Implemented DeleteStoredLoginFile() - extracts display name from username, constructs file path (ms_{displayName}.dat), and deletes the stored credential file from %LocalAppData%\JoyConnectUniversal
  • JCU ServiceDetailsVM checks if a listings descriptions contains markdown, if so, remove it.
  • JCU ServiceDetailsVM checks if a listings descriptions contains html, if so, render it using the HTMLPanel control in XAML.
Download v1.0.23
v1.0.22

Updated

  • Correctly setting FilterButtonEnabled in ListingsVM so the filter button is shwon/hidden correctly depending on the feature flag
  • Added a call to GetWhatsAppSignpostActivities in ActivityVM when loading activies
  • JC MainWindow.xaml.cs hooks into the FiltersChanged event and saves the filters there to the DB
  • JCU MainWindow.xaml.cs hooks into the FiltersChanged event and saves the filters there to the JSON file
  • The SessionManager LoadFilters task checks whats the entry assembly then loads the required search either from the DB if JC or from JSON if JCU
  • Added Load and Save tasks to FiltersData so we can save serialize the class and save/load to and from the JSON file for JCU
  • Catching MsalException and MsalServiceException and providing a message to the user so they can see what went wrong with their sign in or sign on request
  • JCU ListingsVM when handling the session manager filters changed event no longed executes search if the selected postcode contains unknown
  • Search text clearing via UI components, getting the instance of the ListingsVM and clearing the text does not work for some reason, this is most like due to another leak if I had to guess.
  • Removed _apiService.PatientChanged += ApiService_OnDataChanged, we don't want to be reauthenticating a user based off of a patient changed event
  • NavigateToLogoutCommand now sets IsUserLoggedIn to false and clears the patient so we don't hold on to patient data through logins
  • ListingsVM subscribes to the SessionManager SessionCleared event so we can clear the patient data as needed when logging out
  • ListingsVM checks for patient presence prior to executing a search, when searching without a patient, a message box is shown indicating to the user that they should load a patient
  • Added SetSelectedLocation and SetPatientLocation helper methods to reduce code duplication, will cleanup the rest of the duplicate instances afterwards
  • When checking for a patients postcode, we check via the session manager and not the filters, the patient postcode should be stripped out of the filters like is the case with JoyConnect

Added

  • WhatsAppSignpostResponse model in JoyConnect.Core.Models.JoyAPI
  • Added GetWhatsAppSignpostActivities in JoyApiService
Download v1.0.22
v1.0.21

New Features

Widget Visibility

  • New installations now start with the widget visible by default for easier access

Improvements & Fixes

Search & Location

  • Fixed issue where pressing Enter would trigger searches twice
  • Location editing moved to when you actually search, rather than on every location change
  • Improved how location changes are handled throughout the app

User Interface

  • Fixed focus issues with the location editing window
  • Service descriptions now hidden when empty for a cleaner look
  • Service statistics only shown when meaningful data is available (referral percentage and response times)

Sign-In Experience

  • You'll now be prompted to select an account when multiple Microsoft accounts are available
  • Removed unnecessary blank page during sign-in process
  • Smoother, more streamlined login flow

Filters & Search

  • Filters now save correctly when clicking the save button
  • Changes to filters are properly reflected across the app
  • Filter changes won't be saved until you explicitly click save
  • Better synchronization between filter settings and search results

WhatsApp Signposting

  • Enabled WhatsApp signposting support where available

Reliability

  • Fixed various issues with filter data handling
  • Improved session management for more stable operation
  • Better error handling throughout the application

Note: This version includes important fixes for search, filtering, and sign-in experience.

Download v1.0.21
v1.0.20

Improvements & Fixes

User Interface

  • Updated scrollbar styling in service preferences for consistency
  • Improved HTML content rendering throughout the app
  • Service listings now have rounded corners matching the main JoyConnect design
  • Service details page cleaned up - empty fields are now hidden automatically
  • Better visual updates when service information changes

Note: This version includes visual improvements and better handling of service information display.

Download v1.0.20
v1.0.19

Improvements & Fixes

Search & Filtering

  • Improved service search to use the correct postcode from your settings
  • Enhanced location-based filtering for more accurate results
  • Better tracking of patient and practice locations for relevant service suggestions

Installation & Updates

  • Fixed installation path to use the standard Program Files location
  • Improved update and deployment process for more reliable installations

Reliability

  • Fixed issue where multiple instances of the app could run simultaneously
  • Improved window positioning when opening child windows
  • Better project organization for smoother future updates

Note: This version includes various behind-the-scenes improvements to make the application more stable and reliable.

Download v1.0.19
v1.0.18

New Features

Settings Access

  • You can now adjust widget visibility settings from the context menu without opening the widget first
  • New Appearance tab in settings makes it easier to customize your workspace

Health Check

  • Health Check feature is now available to help diagnose issues

Improvements & Fixes

User Experience

  • Improved referral and signposting text formats - now more suitable for adding to clinical records
  • Updated location search to accurately reflect the search radius you're using (not always 5 miles)
  • Postcode validation improved - you can no longer save invalid or incomplete postcodes
  • Better tracking to understand how you interact with the detail window

Performance

  • Significantly faster startup time and improved responsiveness
  • Enhanced performance when working with signposting and referrals
  • More efficient service listing loading
  • General code optimization for smoother operation

Reliability

  • Auto-updater now works correctly
  • Improved error handling and recovery mechanisms
  • Fixed issues that could cause services not to display properly

Note: This version includes various behind-the-scenes improvements to make the application more stable and reliable.

Download v1.0.18
v1.0.17

v1.0.16 has been replaced with v1.0.17

v1.0.16

Improvements & Fixes

Reliability

  • Fixed the ability for the application to auto-update itself to the latest version
v1.0.15

Improvements & Fixes

User Interface

  • Removed the "Edit" button from the Signposting form to prevent display issues
  • Improved performance and responsiveness of the interface

Reliability

  • Fixed issues with adding patients that could cause delays or errors
  • Improved how the application handles startup commands

Note: This version includes various behind-the-scenes improvements to make the application more stable and reliable.

Download v1.0.15
v1.0.14

Updated

  • All calls to RollbarLocator replaced with RollbarProvider
  • Various small issues with Intercoms integration into JC and JCU
  • When not logged into JC and JCU, the 'Get Help' button displays the old menu options, when logged in however, we get Intercoms chat window

Updated

  • JCUApiService updated to set SessionManager.CurrentUser for use in ChatWindowViewModel
  • DetailsWindow.xaml updated to show 'Get Help' button and launch Intercom
  • App.xaml.cs updated to register ChatWindow and ChatWindowViewModel in service collection
  • Intercom working as expected
  • 'Get Help' buttons injnn JC and JCU styling fixed
  • Replaced JoyConnectUniversal.Models.Listing with JoyConnect.Core.Models.Listing
  • Updated GetFilterServices method in JoiApiService to handle both error and success codes and deserialize responses appropriately.
  • Added ServerErrorResponse and ListingResponse in JoyConnect.Core.Responses namespaces to be used for server responses
  • Removed SNOMED codes from the ReferralForm.xaml as JCU doesn't integrate with a clinical system.
  • Set the Listings import statement as JoyConnect.Core.Models.Listing where appropriate
  • Updated JoyConnect.Core.Models.Listing.OrganisationName to OrganizationName to match server response
  • Removed triggers from ListingPane.xaml AlternatingListViewItemStyle, the requested resources doesn't exist
  • ListingPane.xaml updated by wrapping the list view within a scrollviewer and placing a show more button at the end. The button gets enabled each time the user scrolls to the bottom of the containing scrollviewer.
  • JoyConnectUniversal.DetailsWindow.xaml updated, 'Get Help' styling now matches that of the button in JC
  • JoyConnectUniversal.Models.FilterData.cs updated, added Page representing the current page to request
  • Deleted JoyConnectUniversal.Models.Listing, replaced with Core
  • Removed unused import statements from JoyConnectUniversal.ViewModels.AppsDetailsVM
  • Created JoyConnect.Core.HttpRequests.ListingFilterRequest
  • Created JoyConnect.Core.Responses.ListingResponse
  • Created JoyConnect.Core.Responses.ServerErrorResponse
  • JoyConnect.Core.Models.Listing updated to initialize all member variables, we don't want to have to null check everywhere
  • NHSNumberInputControl.xaml makes use of the newly added NhsNumberBehavior which only allows numeric input. The behavior also creates the spaces where required
  • NHSNumberInputControl.xaml.cs cleaned up
  • NhsNumberBehavior.cs added to SharedResources
  • Consolidated converters in JoyConnect.Resources
  • Consolidated resource dictionaries in JoyConnect.Resources
  • Consolidated behaviors in JoyConnect.Resources
  • Applied button styles via resource dictionaries where required
  • Created windows/controls as necessary
  • Made updates to classes as necessary due

Changed

  • Swapped June events to use Amplitude.
Download v1.0.14
v1.0.13

Added

  • added "Clear" button allowing users to clear the current patient without having to enter the new patient NHS number.
Download v1.0.13
v1.0.12

Changed

  • removed unnecessary appearance and behavior logic from JCU that was likely to cause issues with the UI and launching behavior
  • also removed appearance and behavior settings from the settings widget as they are not applicable

Added

  • added support for outward code lookup i.e. you can run postcode searches using both "XY1 2AB" and just "XY1"

Fixed

  • search bar now filters listings that are already visible (same behavior as JC)

Fixed

  • Added a missing check for @action/core to the prepare JCU step

Changed

  • fixed widget icon behaviour when trying to open / hide main window
  • added virtualisation to services list view

Added

  • Added BrowserHelper.cs for reading browser tab and history
  • Added Sqlite support

Changed

  • JCU will appear when clinical system process or browser url is detected

Added

  • Added BrowserHelper.cs for reading browser tab and history
  • Added Sqlite support

Changed

  • JCU will appear when clinical system process or browser url is detected
Download v1.0.12
v1.0.7

Release Note

  • No public changelog entries were provided for this release
Download v1.0.7
v1.0.2

Fixed

  • Comment out message dialogs for connection issues in JoyConnect and JoyConnectUniversal namespaces.
  • Modify SystemSettingsAppearance.PatientSelection to conditionally show the main window only if the system is ready.
  • Shift towards using return statements for graceful handling of certain conditions.
Download v1.0.2
v1.0.1

Added

  • Widget should appear when notepad.exe process is found and its not in minimized state
  • Added login using microsoft SSO
  • Added logic to read postcode from registry.
  • Added drop shadow of window.
  • Added drop shadow of elements
  • added corner radius of elements.
  • Added sign-in button in left panel
  • Added patient search based on NHS number
  • Added Patient Details card screen.
  • Added location card to show services by patient location.
  • Added feature to cange patient using nhs number
  • Added manual filter screen
  • Added service preference screen
  • Added design to show referal steps in side panel when user is not login
  • Microsoft login control in right panel in case of not loggedin
  • Added left bar when patient is not loggedin
  • Patien add control in referal for
  • Added control to get patient by NHS number
  • Added refferal form
  • Added referral success and error screen.
  • Added signpost success and error screen.
  • Added signpost form
  • Added patient search in signpost screen
  • Added signpost left side bar for user loggedin but patient is not selected
  • Added microsoft login signpost screen
  • Added signpost left screen for user not loggedin
  • Added Apps screen.
  • Added Activity screen.
  • Added application launch when notepad is open
  • Added logic to check if registry value is JCU
  • Added missing service card

Added

  • Added filter data in service preference screen.
  • Refreshing services based on service preference.
  • Added data parameter to event tracking

Changed

  • Removed logic to read data from clinical system
  • Removed patient fetching of patient details from clinical system
  • Split NHS number into separate data item when tracking patient changed event
Download v1.0.1