emxsys / callattendant

A python-based automated call attendant, call blocker, and voice messaging system running on a Raspberry Pi. Screens callers and block robocalls and scams with a low-cost Raspberry Pi and modem.
https://emxsys.github.io/callattendant/
MIT License
115 stars 37 forks source link

Package callattendant for distribution and installation via pip and PyPI #83

Closed emxsys closed 4 years ago

emxsys commented 4 years ago

This PR changed the project structure and paths throughout the code. The top-level package, src\ was renamed to callattendant\ to conform with python practices. The callattendant.py module was renamed to app.py to avoid conflicts with a package of the same name. The data folder was moved under the top package.

The pip install process creates a callattendant command script that can be called from anywhere. It accepts the --config argument.

When working locally on the project, you can invoke the software with the package name, e.g., python -m callattendant, or by the script python app.py

During testing, I was happy to notice that the data folder persisted throughout uninstalls and upgrades. :- ) :+1: No data was lost. No need to move data files from on release to another.

For existing installations:

Note: the ../data paths in your local .cfg file(s) must be modified.

Note: you must move or copy your ./data/ folder to ./callattendant/data/

Closes #82 Closes #37