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.
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/
This PR changed the project structure and paths throughout the code. The top-level package,
src\
was renamed tocallattendant\
to conform with python practices. Thecallattendant.py
module was renamed toapp.py
to avoid conflicts with a package of the same name. Thedata
folder was moved under the top package.The
pip install
process creates acallattendant
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 scriptpython 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/
setup.py
and MANIFEST.inCloses #82 Closes #37