Automated call attendant, call blocker, and voice messaging on a Raspberry Pi.
The Call Attendant (callattendant) uses a Raspberry Pi coupled with a US Robotics 5637 modem to screen incoming calls on a landline. Features being developed include:
- Robocallers and blacklisted numbers are intercepted after the first ring
- Whitelisted callers pass straight through to the local phone system for normal call ringing and answering
- Visual indicators to show whether the incoming call is from a whitelisted, blacklisted, or unknown number
- Unknown callers are handled by a voice messaging system that requires human interaction, e.g, "Press 1 to leave a message"
- Call details, blacklists, whitelists are available in a web-based user interface
The Call Attendant project was inspired by the pamapa/callblocker project, an excellent Raspberry Pi based call blocker. However, the callattendant differs from the callblocker in that adds voice messaging; and the callattendant is written entirely in Python, uses SQLite for the call logging, and implments the web interface with Flask.
The following blogs from IoT Bytes by Pradeep Singh were very useful for learning to how to program the Raspberry Pi and the US Robotics 5637 modem. His blog site has many Raspberry Pi resources. Thanks Pradeep!
- Incoming Call Details Logger with Raspberry Pi
- Play Audio File on Phone Line with Raspberry Pi
- Record Audio from Phone Line with Raspberry Pi
TODO...
The development plan's phase objectives are captured in the GitHub projects.
- Iteration #I1: v0.1
- Iteration #E1: v0.2
- Iteration #C1: v0.3
- Iteration #C2: v0.4
- Iteration #T1: v1.0
sudo apt-get install sqlitebrowser