This is an informal (blue collar) job matching service that runs on SMS powered by AfricasTalking.
- Register Jobseekers
- Register Employers
- Post jobs
- Get available jobs notification
- Apply to jobs
Set up a local postgres database called kazi
Create and activate a virtual environment in the project root directory
virtualenv venv
source venv/bin/activate
Install dependencies
pip install -r requirements.txt
Run migrations:
alembic upgrade head
Be sure to have installed redis and have it running on your localhost.
Additionally, you should have the following variables in your .env
AT_USERNAME=YOUR_AT_USERNAME
AT_API_KEY=YOUR_AT_API_KEY
AfricasTalking requires that the service sends back a 200 response for every received message for them to stop resending it to our callback url.
Kazi therefore immediately returns a 200 response to africastalking each time a message is received then processes it asynchronously with the help of celery, with redis as the broker. For this reason to run this service you will have to run
python run.py
on one terminal. Then
celery -A run.celery worker --loglevel=info
on a second terminal
https://help.africastalking.com/en/articles/2206161-how-do-i-configure-my-callback-url
Worry not. Just checkout this branch, with the synchronous implementation and you're good to go
git pull origin feature/synchronous
git checkout feature/synchronous