GithubHelp home page GithubHelp logo

cdcgov / covid19healthbot Goto Github PK

View Code? Open in Web Editor NEW
63.0 63.0 45.0 30.92 MB

[Retiring Oct 7th, 2022] This project collects automated screening protocols and self-checker algorithms from organizations implementing CDC screening protocols in interactive web sites, chat bots, and other technology.

License: Apache License 2.0

covid-19

covid19healthbot's Introduction

CDC COVID-19 Health Bot

CDC is retiring the Coronavirus Self-Checker webpage on October 7, 2022. Refer to the COVID-19 symptoms page for information on when to seek COVID-19 testing and medical care.


Overview

This project collects automated screening protocols and self-checker algorithms from organizations implementing CDC screening protocols in interactive web sites, chat bots, and other technology.

Use of these algorithms and associated files does not imply a CDC endorsement of any one particular product, service or enterprise. U.S. Government logos, including the CDC logo, cannot be used without express, written permission. These algorithms were designed based on the best available science and should not be modified or altered. Use of these algorithms must be accompanied by the following disclaimer and non-endorsement language:

This COVID-19 self-checker algorithm was originally developed by CDC for use as an interactive “bot” experience. CDC does not guarantee the accuracy of any non-U.S. Government version(s) of a COVID-19 self-checker algorithm. The U.S. Government does not make any warranty of any kind, either expressed or implied, for any non-U.S. Government version of the COVID-19 self-checker algorithm . Use by a non-U.S. Government organization or enterprise does not imply a U.S. Government endorsement of any one particular product, service, or enterprise or that this use of the COVID-19 self-checker algorithm represents the official views of the U.S. Government.

Click on the Watch button above to subscribe to updates

List of Screening Protocols

This list is subject to change. Pull requests are welcome from organizations with additional tools implementing CDC protocols that may be useful to capture here:

  • COVID-19 Protocol - protocol used with CDC Coronavirus Self-Checker. There are 3 scenarios - 1 wrapper and 2 core protocols, and 1 string table. The latest scenarios should only be used in English. The Non-English language scenarios contain the most update to date translations available, which might not be the most update to date algorithm version. As we receive translations for the latest algorithm version, the Non-English scenarios will be updated. (Please note: Version 74 consolidated guidance from 6 scenarios back down to 3.)
    • Latest Scenarios in English
    • Non-English Scenarios
    • Localization Strings - this contains the localization string table that should be imported into your health bot instance. It contains strings for both English and Non-English scenarios. This file must be imported for the health bot to function properly. Please use this reference for more information on importing the file.
    • Customizing the Self-Checker - shows how to customize the outcome message in the core protocols, as well as leverage the core protocol conversation data in a wrapping scenario
  • COVID-19 Screening Protocol - visual description of the protocol used for coronavirus.gov screening tool.

Public Domain Standard Notice

This repository constitutes a work of the United States Government and is not subject to domestic copyright protection under 17 USC § 105. This repository is in the public domain within the United States, and copyright and related rights in the work worldwide are waived through the CC0 1.0 Universal public domain dedication. All contributions to this repository will be released under the CC0 dedication. By submitting a pull request you are agreeing to comply with this waiver of copyright interest.

License Standard Notice

This project constitutes a work of the United States Government and is not subject to domestic copyright protection under 17 USC § 105.

The project utilizes code licensed under the terms of the Apache Software License and therefore is licensed under ASL v2 or later.

This program is free software: you can redistribute it and/or modify it under the terms of the Apache Software License version 2, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the Apache Software License for more details.

You should have received a copy of the Apache Software License along with this program. If not, see http://www.apache.org/licenses/LICENSE-2.0.html.

Privacy Standard Notice

This project contains only non-sensitive, publicly available data and information. All material and community participation is covered by the PHIResearchLab.org Disclaimer and Code of Conduct. For more information about CDC's privacy policy, please visit http://www.cdc.gov/privacy.html.

Contributing Standard Notice

Anyone is encouraged to contribute to the repository by forking and submitting a pull request. (If you are new to GitHub, you might start with a basic tutorial.) By contributing to this project, you grant a world-wide, royalty-free, perpetual, irrevocable, non-exclusive, transferable license to all users under the terms of the Apache Software License v2 or later.

All comments, messages, pull requests, and other submissions received through CDC including this GitHub page may be subject to applicable federal law, including but not limited to the Federal Records Act and may be archived. Learn more at http://www.cdc.gov/other/privacy.html.

Records Management Standard Notice

This repository is not a source of government records, but is a copy to increase collaboration and collaborative potential. All government records will be published through the CDC web site.

Additional Standard Notices

Please refer to CDC's Template Repository for more information about contributing to this repository, public domain notices and disclaimers, and code of conduct.

Learn more about CDC GitHub Practices for Open Source Projects

https://github.com/CDCgov/template/blob/master/open_practices.md

General disclaimer This repository was created for use by CDC programs to collaborate on public health related projects in support of the CDC mission. Github is not hosted by the CDC, but is a third party website used by CDC and its partners to share information and collaborate on software. CDC’s use of GitHub does not imply an endorsement of any one particular service, product, or enterprise.

covid19healthbot's People

Contributors

dmuterspaw avatar leebrian avatar pwhitebe avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

covid19healthbot's Issues

Healthbot crashes when I say I haven't volunteered

When I answer the question, "In the last two weeks, have you worked or volunteered in a healthcare facility or as a first responder?" the bot crashes with "Oops. Something went wrong and we need to start over." This happened multiple times. I've only tried it with the instance hosted here: https://covid19healthbot.cdc.gov/

I've pasted my interaction below. Thank you.


[Redacted after issue closure. Thank you.]

Documentation for Implementation

Hello, is there any documentation for implementing this within our own website? We don't want to just embed, we want to be able to collect the output. Any assistance would be greatly appreciated.

Embed using iframe?

I was wondering if there was a possibility of having an integration that uses an iframe?

We are not allowed to put script tags but we can use iframes if the domain is allowed.
(SharePoint Online)

CDC healthbot integration

Hello. Can anyone help me with the chatbot. How i can create a button on my website, that will call the chatbot?

Post-exposure prophylaxis content

Post-exposure content does not appear to mention, link to or advise high-risk patients to discuss prophylaxis (prevention) mentioned in current NIH guidelines and recent FDA updated EUA.

E.g. post-exposure prophylaxis
https://www.covid19treatmentguidelines.nih.gov/therapies/anti-sars-cov-2-antibody-products/anti-sars-cov-2-monoclonal-antibodies/

CDC (the centers for disease control and prevention) existing public-facing verbiage about this type of prevention here:
https://www.cdc.gov/coronavirus/2019-ncov/your-health/treatments-for-severe-illness.html

“For people at high risk of disease progression.
“The FDA has issued EUAs for a number of investigational monoclonal antibodies that can attach to parts of the virus. These antibodies could help the immune system recognize and respond more effectively to the virus. The NIH COVID-19 Treatment Guidelinesexternal icon provide information about these drugs and describe what is known about their effectiveness. If used, they should be administered as soon as possible after diagnosis and within 10 days of symptom onset. Your healthcare provider will decide whether these investigational treatments are appropriate to treat your illness.”

CDC publishes content on other post exposure prophylaxis for other conditions; precedent references:
https://www.cdc.gov/hiv/risk/pep/index.html
https://www.cdc.gov/hepatitis/hbv/pep.htm

Arkansas Department of Health URL is Incorrect

Description

At the end of the symptom checker the "Sorry you're feeling sick" chat appears to contain an incorrect link to Arkansas Department of Health.

Expected

Arkansas Department of Health link sends the user to the Arkansas Department of Health's page.

Actual

Arkansas Department of Health link sends the user to an error page.

Example Screen shot

image

Incorrect indexes and index lookups causing occasional index misses in symptom and comorbidity outcome block.

The discovered issues

In version 66.2, the index for "Headache" was missing in the index lookup block. This caused the covid symptom outcome block to be recorded with an incorrect index in some cases.

In versions 63, 64, 65, 65.1, 66, 66.2, the pediatric outcomes were referring to the adult index lookup causing some incorrect indexes for pediatric outcomes.

This doesn't affect the information shown to the user, or the text output of reported outcomes, but anyone trying to use the indexes to look up and report on symptoms and comorbidities in reported outcomes would have gotten occasional conflicting/confusing data.

The fix

Version 66.3 with corrected indexes and lookups has been pushed in English and Foreign Languages. Furthermore, foreign language bot flows are being indicated with "-ne" to assist in reporting which outcomes came from a foreign language bot as opposed to the usual English bot.

We are currently looking at ways to correct the indexes in data collected between version 63-66.2

Theme7 does not work

I embedded the custom button theme in my nextjs project and it did not work. Nothing happens after you click the button.

Are Determinations Made on Phone Fingerprinting?

I was looking through the algorithm flow charts and did not find this, however when I was told that I had been exposed to someone I don't know how it determined that with the information I supplied.

Mainly I said I was feeling sick > conditions improving > don't know if I was exposed > not tested in last ten days > tested negative in last 1 to 3 months.

I am enrolled in my State's exposure tracking program but the State app or the iPhone didn't alert me.

Does the CDC survey know or is it playing it safe?

Potential issue in wrapper scenario's call to the core scenario

I was copying and pasting the code that creates the scenarioArgs variables, that are passed from the wrapper to the core scenario, so that I would ensure I was getting the right variable names used by the core scenario in our custom wrapper. Currently these variables are passed in the begin scenario block as follows:

{ custom_outcome_message: scenario.state_msg, show_core_message: true }

However, when I changed show_core_message to be false it did not change the behavior. I then realized that the variable names in the "Arguments (to pass to the scenario):" box needed to be enclosed as quotes since they are the name of the variable. I changed it to this and it worked correctly (true or false):

{ "custom_outcome_message": null, "show_core_message": true }

please change the repo description

This project collects automated screening protocols and self-checker algorithms from organizations implementing CDC screening protocols in interactive web sites, chat bots, and other technology. @kmuterspaw

Missing "Outcome 10"

There is a missing "Outcome 10" before a "MSG 10" block on the right side of the core scenario. Here's a picture. I fixed this in our copy by simply cloning the other existing "Outcome 10" block and adding it just before this "MSG 10".
image

Rhode Island Department of Health URL is incorrect

Description

At the end of the symptom checker the "Sorry you're feeling sick" chat appears to contain an incorrect link to Rhode Island Department of Health.

Expected

Rhode Island Department of Health link sends the user to the Rhode Island Department of Health's page.

Actual

Rhode Island Department of Health link sends the user to an unreachable page (http://www.health.state.ri.gov/).

Example Screen shot

image

Question about "completion_event" usage

Thank you so much for creating this repo and providing such excellent documentation by way of the questions, care advice messages, and algorithm flowchart. You are awesome, and this was timely.

My question is about keeping the algorithm "pure". I've noticed that all of the "MSG x" exit points for the covid19_core scenario have Message Metadata that looks like this (example):

{ name: "completion_event", message_id: 8 }

This seems like it would be useful to return the message_id value to a wrapper scenario so that additional workflow after the algorithm completes can be customized based upon the output of the algorithm. However, I can't see where this value is ever being returned and it doesn't show up in the Watch as a variable. I'm probably showing my ignorance of the tool but I was wondering how you are using this variable and if it is accessible anywhere. I think I'm probably overlooking something simple.

I did see where I can customize the messages with additional content in the Custom MSG action block, but I would like to create HeroCards with clickable links so I would rather handle that in the wrapper vs. the covid19_core scenario. This would also allow for me to simply update the covid19_core scenario from this respository as it is updated and keep any customizations in the wrapper scenerio.

Any direction you can give about keeping customizations out of the core scenario and being able to know what MSG was displayed to the guest as a return value would be appreciated.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.