CodeForAfrica / CodeForAfrica/HealthTools.API

Development - v0.2

Ouverte
#42 0 commentaires 0 réactions 0 personnes assignées Voir sur GitHub
enhancement help wanted
Langage dominant
Python
Étoiles
19
Forks
20
Métriques de merge des PR
Aucune PR mergée en 30 j

Description

Through development of the HealthTools.API, we've learnt a lot and want to make it more extensible. v0.2 seeks to do a couple of things:

**1. Views**
1.1. Search
- Have a single search API view to receive requests and output results in JSON
- Send requests to a single query function used by sms, bots, etc.

1.2. SMS
- Have a single SMS view that receives requests and outputs results in JSON.
- Send requests to a single sms process function (detailed below)

**2. Search**

2.1 Query
- This would be the primary query module that determines the doc-type (e.g nurses, doctors, cos etc.)
- This would determine the search "vector" i.e elastic search or proxy for nurses etc.
- Return dictionary/list of results.

2.2. Nurses Search "Vector"
- Proxy the nurses website because we are unable to scrape it.

2.3. Elastic search "vector"
- Search from elastic search.

**3. SMS**
- The base module would process SMS requests using the query function and structure for an SMS response.
- This would then use "adapters" for the different providers e.g M-Tech, Twilio.

**4. Other considerations:**

- Tests to be rewritten
- Analytics to work as a Flask "Middleware" or have as part of an "events" module.
- Slack integration with Python's logging module.
- Cache queries using Memcached (all not just nurses as before)
- RabbitMQ integration for SMS processing.
- Wit.ai to replace determination from keywords what doc-type is being queried.
- Bots architecture similar to SMS. Probably re-using a lot of SMS so might be combined into just "Chat" that both inherit.

Guide de contribution

Ouvrir le guide de contribution

Évaluation

Cette issue n'a pas encore été évaluée.

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.