Skip to content
On this page

Enabled Vital Signs

Enabled Vital Signs is a list of vital signs that are set to be measured in the course of a specific session. The Enabled Vital Signs list is the intersection of all vital signs that are supported according to the following criteria:

  • Device - vital signs that are supported by the current device.
  • Measurement Mode - vital signs that are supported by the current measurement mode (face/finger).
  • License - vital signs that are determined by the current license, as specified in Binah's license agreement.

Receiving Enabled Vital Signs

The application can receive information regarding the enabled vital signs by implementing onEnabledVitalSigns as part of SessionInfoListener:

Kotlin
override fun onSessionStateChange(sessionState: SessionState) { 
    // Receive session state updates
}

override fun onWarning(warningData: WarningData) {
    // Receive warnings
}

override fun onError(errorData: ErrorData) {
    // Receive errors
}

override fun onLicenseInfo(licenseInfo: LicenseInfo) {
    // Receive license info 
}

override fun onEnabledVitalSigns(enabledVitalSigns: SessionEnabledVitalSigns) { 
    // Receive the enabled vital signs for the session 
}
Java
@Override
public void onSessionStateChange(SessionState sessionState) {
    // Receive session state updates
}

@Override
public void onWarning(WarningData warningData) {
    // Receive warnings
}

@Override
public void onError(ErrorData errorData) {
    // Receive errors
}

@Override
public void onLicenseInfo(LicenseInfo licenseInfo) {
    // Receive license info 
}

@Override 
public void onEnabledVitalSigns(SessionEnabledVitalSigns sessionEnabledVitalSigns) { 
    // Receive the enabled vital signs for the session
}

Checking if a Vital Sign is Enabled

The following code can be used to determine the supported vital signs:

Kotlin
override fun onEnabledVitalSigns(enabledVitalSigns: SessionEnabledVitalSigns) {
    runOnUiThread {
        // Checking if pulse rate is enabled
        Log.i("ENABLED_VITALS", "Is pulse rate enabled: ${enabledVitalSigns.isEnabled(VitalSignTypes.PULSE_RATE)}")

        // Checking if pulse rate is enabled for the specific device:
        Log.i("ENABLED_VITALS", "Is pulse rate device enabled: ${enabledVitalSigns.isDeviceEnabled(VitalSignTypes.PULSE_RATE)}")

        // Checking if pulse rate is enabled for the measurement mode:
        Log.i("ENABLED_VITALS", "Is pulse rate mode enabled: ${enabledVitalSigns.isMeasurementModeEnabled(VitalSignTypes.PULSE_RATE)}")

        // Checking if pulse rate is enabled for the license:
        Log.i("ENABLED_VITALS", "Is pulse rate license enabled: ${enabledVitalSigns.isLicenseEnabled(VitalSignTypes.PULSE_RATE)}")
    }
}
Java
@Override
public void onEnabledVitalSigns(@NonNull SessionEnabledVitalSigns enabledVitalSigns) {
    runOnUiThread(() -> {
        // Checking if pulse rate is enabled
        Log.i("ENABLED_VITALS", "Is pulse rate enabled: " + enabledVitalSigns.isEnabled(VitalSignTypes.PULSE_RATE));

        // Checking if pulse rate is enabled for the specific device:
        Log.i("ENABLED_VITALS", "Is pulse rate device enabled: " + enabledVitalSigns.isDeviceEnabled(VitalSignTypes.PULSE_RATE));

        // Checking if pulse rate is enabled for the measurement mode:
        Log.i("ENABLED_VITALS", "Is pulse rate mode enabled: " + enabledVitalSigns.isMeasurementModeEnabled(VitalSignTypes.PULSE_RATE));

        // Checking if pulse rate is enabled for the license:
        Log.i("ENABLED_VITALS", "Is pulse rate license enabled: " + enabledVitalSigns.isLicenseEnabled(VitalSignTypes.PULSE_RATE));
    });
}