CodeForAfrica / CodeForAfrica/HealthTools.API

Development - v0.2

Đang mở
#42 0 bình luận 0 reaction 0 người được giao Xem trên GitHub
enhancement help wanted
Ngôn ngữ chính
Python
Star
19
Fork
20
Chỉ số merge pull request
Không có pull request nào được merge trong 30 ngày

Mô tả

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.

Hướng dẫn đóng góp

Mở hướng dẫn đóng góp

Hướng nghiên cứu

Đây là một roadmap v0.2 trên phạm vi rộng cho HealthTools.API, bao gồm views, các vector query và search, các adapter SMS, tests, analytics, caching, messaging, Wit.ai và bots. Hãy bắt đầu bằng cách lập bản đồ các entry point search và SMS hiện có, sau đó xác định một deliverable nhỏ hơn với các tiêu chí hoàn thành rõ ràng; bản thân issue không nêu tên file hoặc test nào cần chạy.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Đánh giá

Công nghệ
elasticsearch, flask, memcached, python, rabbitmq
Lĩnh vực
api, backend, distributed-systems, search
Loại issue
Tính năng
Độ khó
5/5
Thời gian dự kiến
Hơn một tuần
Mức độ hoạt động
Đình trệ
Độ rõ ràng
Cần làm rõ
Mức phù hợp với người mới
18/100

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.