Schema for Cleo Shadowfax Event Properties (Cleo)

From ShadowfaxEventProperties.schema.yaml (cleo/ShadowfaxEventProperties.schema)

---
$id: https://skeleton.botmd.io/cleo/ShadowfaxEventProperties.schema
$schema: http://json-schema.org/draft-07/schema#

title: Shadowfax Event Properties (Cleo)
description: Cleo specific Shadowfax event properties.

oneOf:
  - $ref: "#/definitions/Created Session"
  - $ref: "#/definitions/Form Submission"
  - $ref: "#/definitions/Incoming and Outgoing Message"
  - $ref: "#/definitions/Exports and Stitch Download"
  - $ref: "#/definitions/Jarvis Response"
  - $ref: "#/definitions/Daily Clinic Statistics"
  - $ref: "#/definitions/Frontend Events"

definitions:
  Created Session:
    type: object
    required: [event_type, clinic]
    additionalProperties: false

    properties:
      event_type:
        title: Event Type
        enum: [Created Clinician Session, Created Patient Session]

      clinic:
        title: Clinic
        description: Clinic domain related to the event.
        type: string
        minLength: 1

      is_new_session:
        title: Is New Session
        description: Whether this is a new session.
        type: boolean

      session_uid:
        title: Session UID
        description: Session UID of user.
        type: string
        minLength: 1
    #end properties
  #end Created Session

  Form Submission:
    type: object
    required: [event_type, clinic]
    additionalProperties: false

    properties:
      event_type:
        title: Event Type
        enum: [Form Submission, Patient Form Enrollment, Patient Form Discharge]

      clinic:
        title: Clinic
        description: Clinic domain related to the event.
        type: string
        minLength: 1

      enrollment_form:
        title: Enrollment Form
        description: Enrollment form submitted.
        type: string
        minLength: 1

      monitoring_form:
        title: Monitoring Form
        description: Monitoring form submitted.
        type: string
        minLength: 1

      is_enrollment_form:
        title: Is Enrollment Form
        description: Whether this is an enrollment form submission.
        type: boolean

      is_abnormal_submission:
        title: Is Abnormal Submission
        description: Whether there are alerts triggered for this submission.
        type: boolean

      alert_count:
        title: Alert Count
        type: integer
        minimum: 0

      discharge_method:
        title: Discharge Method
        description: How the patient-form was discharged
        type: string
        enum: [Via Dashboard]
    #end properties
  #end Form Submission

  Incoming and Outgoing Message:
    type: object
    required: [event_type, direction]
    additionalProperties: false

    properties:
      event_type:
        title: Event Type
        enum: [Outgoing Message, Incoming Message]

      clinic:
        title: Clinic
        description: Clinic domain related to the event.
        type: string
        minLength: 1

      direction:
        title: Direction
        description: Direction of the delivery.
        type: string
        enum: [outgoing, incoming]

      delivery_by:
        title: Delivery By
        description: What triggered this delivery.
        type: string
        minLength: 1

      language:
        title: Language
        type: string
        minLength: 1

      communication_method:
        title: Communication Method
        type: string
        minLength: 1

      template_purpose:
        title: Template Purpose
        type: string
        minLength: 1

      template_name:
        title: Template Name
        type: string
        minLength: 1

      is_enrolled:
        title: Is Enrolled
        description: Whether the message is sent by an enrolled patient.
        type: boolean
    #end properties
  #end Incoming and Outgoing Message

  Exports and Stitch Download:
    type: object
    required: [event_type, clinic]
    additionalProperties: true

    properties:
      event_type:
        title: Event Type
        enum: [Export, Stitch Download]

      clinic:
        title: Clinic
        description: Clinic domain related to the event.
        type: string
        minLength: 1

      export_output_format:
        title: Export Output Format
        type: string
        minLength: 1

      export_document_type:
        title: Export Document Type
        type: string
        minLength: 1

      export_via_email:
        title: Export Via Email
        type: boolean
    #end properties
  #end Exports and Stitch Download

  Jarvis Response:
    type: object
    required: [event_type, clinic]
    additionalProperties: false

    properties:
      event_type:
        title: Event Type
        enum: [Jarvis Response]

      clinic:
        title: Clinic
        description: Clinic domain related to the event.
        type: string
        minLength: 1

      elapsed:
        title: Elapsed
        description: Number of seconds elapsed for the Jarvis API call.
        type: number

      message_type:
        title: Message Type
        enum: [sorry, response, not_enrolled]
    #end properties
  #end Jarvis Response

  Daily Clinic Statistics:
    type: object
    required: [event_type]
    additionalProperties: false

    properties:
      event_type:
        title: Event Type
        const: Daily Clinic Statistics

      clinic:
        title: Clinic
        description: Clinic domain related to the event.
        type: string
        minLength: 1

      active_caregiver_count:
        title: Active Caregiver Count
        description: Number of activated caregivers in clinic.
        type: integer

      active_clinician_count:
        title: Active Clinician Count
        description: Number of activated clinicians in clinic.
        type: integer

      active_patient_count:
        title: Active Patient Count
        description: Number of activated patients in clinic.
        type: integer

      active_patient_form_count:
        title: Active Patient-Form Count
        description: Number of activated patient-forms in clinic.
        type: integer

      clinical_parameter_count:
        title: Clinical Parameter Count
        description: Number of clinical parameters in the clinic.
        type: integer
  #end Daily Clinic Statistics

  Frontend Events:
    type: object
    required: [event_type]
    additionalProperties: true

    properties:
      event_type:
        title: Event Type
        enum: [Add Caregiver, Add Clinical Admin, Add New Patient, Apply Filters, Click Send Message, Deactivate Caregiver Profile, Deactivate Clinical Admin Profile, Discharge Patient, Download Patient Submissions, Edit Caregiver Profile, Edit Clinical Admin Profile, Edit Patient Profile, Enroll Patient, Export User List, List All Active Patients, List All Unread Comments, List Clinical Admin, List Clinical Alerts, List Non Compliant Patients, List Overview, List Patient List, List Patient Monitoring, List Patient Submissions, List Unread Comments Patients, List Unresolved Alerts, No Action, Open Contact Us, Patient Caregivers, Reactivate Caregiver Profile, Reactivate Clinical Admin Profile, Read Help Guide, Refresh Results, Reset Filters, Search Patients, Show Patient Profile, View Clinical Settings - Activate/Pause Reminder, View Clinical Settings - Delete reminder, View Clinical Settings - Discharge patient, View Clinical Settings - Edit alert threshold, View Clinical Settings - Edit Clinical User, View Clinical Settings - Edit reminder duration, View Clinical Settings - Edit reminder frequency, View Clinical Settings - Edit reminder, View Clinical Settings - Send template message, View Clinical Settings, View Graphs, View Patient Form]

      clinic:
        title: Clinic
        description: Clinic domain related to the event.
        type: string
        minLength: 1

      eventName:
        title: Event Name
        description: An alias for `event_type`.
        type: string
    #end properties
  #end Frontend Events
#end definitions

[Main Page] [Schema Documentation] [Examples]