pip install callattendantผู้ดูแลการโทร ( Callattendant ) เป็นผู้ดูแลระบบอัตโนมัติที่มีตัวบล็อกการโทรแบบรวมและระบบส่งข้อความเสียงที่ทำงานบน Raspberry Pi มันหยุด robocalls ที่น่ารำคาญและผู้ส่งสแปมจากการขัดจังหวะชีวิตของคุณ ปล่อยให้การสกัดกั้นผู้ดูแลการโทรและบล็อก robocallers และ telemarketers ก่อนแหวนแรกบนโทรศัพท์พื้นฐานของคุณ
Callattendant ให้การสนับสนุนระหว่างประเทศด้วยรูปแบบหมายเลขโทรศัพท์ที่กำหนดค่าได้พร้อมรายชื่อหมายเลขบล็อกที่มีความยืดหยุ่นและแก้ไขได้และแก้ไขได้
หากคุณสนใจในโครงการนี้โปรดให้ข้อเสนอแนะโดยให้ ดาว หรือดีกว่ามีส่วนร่วมโดยการยื่นปัญหาเข้าร่วมฟอรัมและ/หรือส่งคำขอดึง ขอบคุณ!
ผู้ดูแลการโทร ( Callattendant ) เป็นผู้ดูแลการโทรอัตโนมัติที่ใช้ Python ซึ่งทำงานบน Raspberry Pi ที่มีน้ำหนักเบาหรือระบบที่ใช้ Linux อื่น ๆ ควบคู่ไปกับโมเด็ม Robotics 5637 USB ของสหรัฐอเมริกา
Raspberry Pi และโมเด็มเชื่อมต่อกับระบบโทรศัพท์บ้านของคุณควบคู่ไปกับโทรศัพท์มือถือของคุณ เมื่อได้รับสายเรียกเข้าการโทรไปที่โทรศัพท์ของคุณและ Callattendant ในช่วงระยะเวลาของวงแหวนแรก callattendant วิเคราะห์ ID ผู้โทรและขึ้นอยู่กับการกำหนดค่าของคุณกำหนดว่าการโทรควรถูกบล็อกหรืออนุญาตหรือไม่ การโทรที่ถูกบล็อกสามารถวางสายหรือส่งไปยังระบบข้อความเสียง การโทรที่ได้รับอนุญาตจะโทรหาโทรศัพท์บ้านของคุณเหมือนปกติ สามารถส่งการโทรไปยังระบบวอยซ์เมลในตัวหากคุณเลือก กลไกการกรองของ Callattendant รวมถึงบริการค้นหาออนไลน์รายการหมายเลขที่อนุญาตรายการหมายเลขที่ถูกบล็อกและการจับคู่รูปแบบบนหมายเลขและ/หรือชื่อของผู้โทร
คุณสามารถตรวจสอบประวัติการโทรข้อความเสียงหมายเลขที่ได้รับอนุญาตและถูกบล็อกและดำเนินการจัดการผู้โทรผ่านเว็บอินเตอร์เฟสของผู้ดูแลการโทร นี่คือตัวอย่างของโฮมเพจที่มีตัวชี้วัดและรายการการโทรล่าสุดของการโทรล่าสุด สำหรับคำอธิบายที่สมบูรณ์โปรดดูคู่มือผู้ใช้

โครงการ Wiki บน GitHub มีเอกสารประกอบสำหรับผู้ดูแลการโทร:
Callattendant ใช้ฮาร์ดแวร์ต่อไปนี้:

คุณจะต้องใช้ Raspbery Pi ที่ใช้ Raspbian หรือดีกว่าด้วยการเข้าถึงอินเทอร์เน็ตสำหรับการติดตั้งซอฟต์แวร์และท้ายที่สุดสำหรับการค้นหา robocaller ออนไลน์ สำหรับโครงการคุณจะต้องมีโมเด็มบางประเภทเพื่อทำการสื่อสารทางโทรศัพท์ หุ่นยนต์สหรัฐ USR5637 โมเด็ม USB 56K ได้รับการพิสูจน์แล้วว่ามีประสิทธิภาพ สำหรับการติดตั้งบางอย่างมันใช้งานได้ไม่จำเป็นต้องมีการกำหนดค่า มันปรากฏตัวขึ้นเป็น /dev /ttyacm0
การติดตั้งเรียกใช้ python3.x
คำแนะนำต่อไปนี้สร้างและเปิดใช้งานสภาพแวดล้อมเสมือนจริงที่ชื่อ VENV ภายในโฟลเดอร์ปัจจุบัน:
# Install virtualenv - if not installed
sudo apt install virtualenv
# Create the virtual environment
virtualenv venv --python=python3
# Activate it
source venv/bin/activate ตอนนี้คุณกำลังทำงานกับงูหลามเสมือนจริง ในการตรวจสอบให้ออกคำสั่ง which และให้แน่ใจว่าจุดเอาต์พุตไปยังสภาพแวดล้อมเสมือนจริงของคุณ และตรวจสอบเวอร์ชัน Python:
$ which python
/home/pi/venv/bin/python
$ python --version
Python 3.7.3 ในภายหลังเมื่อคุณติดตั้งซอฟต์แวร์ Callattendant มันจะถูกวางไว้ในโฟลเดอร์ Virtual Environment (ภายใต้ lib/python3.x/site-packages ให้แน่นอน) สภาพแวดล้อมเสมือนจริงเมื่อเปิดใช้งานจะเปลี่ยน เส้นทาง ของคุณเพื่อให้ระบบมองหา Python และแพ็คเกจภายในลำดับชั้นของโฟลเดอร์นี้
ซอฟต์แวร์นี้มีอยู่ใน PYPI ติดตั้งและอัปเดตโดยใช้ pip :
# Using the virtual environment you use "pip" to install the software
pip install callattendant
# You must use "pip3" on the Pi if your not using a virtual environment
pip3 install callattendant หากคุณไม่ได้ใช้สภาพแวดล้อมเสมือนจริงคุณอาจต้องรีบูตหรือเข้าสู่ระบบ/เข้าสู่ระบบเพื่ออัปเดต $PATH สำหรับโปรไฟล์ของคุณเพื่อค้นหาและใช้คำสั่ง callattendant
แพ็คเกจ Callattendant รวมถึงคำสั่ง callattendant เพื่อเริ่มระบบ เรียกใช้คำสั่งนี้ในครั้งแรกด้วยตัวเลือก --create-folder เพื่อสร้างข้อมูลเริ่มต้นและไฟล์ในโฟลเดอร์ข้อมูลเริ่มต้น: ~/.callattendant นี่คือโฟลเดอร์ที่ซ่อนอยู่นอกรูทของไดเรกทอรีที่บ้านของคุณ คุณสามารถแทนที่ตำแหน่งนี้ด้วยตัวเลือก --data-path
Usage: callattendant --config [FILE] --data-path [FOLDER]
Options:
-c, --config [FILE] load a python configuration file
-d, --data-path [FOLDER] path to data and configuration files
-f, --create-folder create the data-path folder if it does not exist
-h, --help displays this help text
# Creating the default data folder with the default configuration
callattendant --create-folder
# Using the default configuration
callattendant
# Using a customized config file in an alternate, existing location
callattendant --config myapp.cfg --data-path /var/lib/callattendantคุณควรเห็นผลลัพธ์ของแบบฟอร์ม:
Command line options:
--config=app.cfg
--data-path=None
--create-folder=False
[Configuration]
BLOCKED_ACTIONS = ('greeting', 'voice_mail')
BLOCKED_GREETING_FILE = /home/pi/.local/lib/python3.7/site-packages/callattendant/resources/blocked_greeting.wav
BLOCKED_RINGS_BEFORE_ANSWER = 0
BLOCK_ENABLED = True
BLOCK_NAME_PATTERNS = {'V[0-9]{15}': 'Telemarketer Caller ID'}
BLOCK_NUMBER_PATTERNS = {}
BLOCK_SERVICE = NOMOROBO
CONFIG_FILE = app.cfg
DATABASE = callattendant.db
DATA_PATH = /home/pi/.callattendant
DB_FILE = /home/pi/.callattendant/callattendant.db
DEBUG = False
ENV = production
PERMITTED_ACTIONS = ('greeting', 'record_message')
PERMITTED_GREETING_FILE = /home/pi/.local/lib/python3.7/site-packages/callattendant/resources/general_greeting.wav
PERMITTED_RINGS_BEFORE_ANSWER = 6
PERMIT_NAME_PATTERNS = {}
PERMIT_NUMBER_PATTERNS = {}
PHONE_DISPLAY_FORMAT = ###-###-####
PHONE_DISPLAY_SEPARATOR = -
ROOT_PATH = /home/pi/.local/lib/python3.7/site-packages/callattendant
SCREENED_ACTIONS = ('greeting', 'record_message')
SCREENED_GREETING_FILE = /home/pi/.local/lib/python3.7/site-packages/callattendant/resources/general_greeting.wav
SCREENED_RINGS_BEFORE_ANSWER = 0
SCREENING_MODE = ('whitelist', 'blacklist')
TESTING = False
VERSION = 1.1.0
VOICE_MAIL_GOODBYE_FILE = /home/pi/.local/lib/python3.7/site-packages/callattendant/resources/goodbye.wav
VOICE_MAIL_GREETING_FILE = /home/pi/.local/lib/python3.7/site-packages/callattendant/resources/general_greeting.wav
VOICE_MAIL_INVALID_RESPONSE_FILE = /home/pi/.local/lib/python3.7/site-packages/callattendant/resources/invalid_response.wav
VOICE_MAIL_LEAVE_MESSAGE_FILE = /home/pi/.local/lib/python3.7/site-packages/callattendant/resources/please_leave_message.wav
VOICE_MAIL_MENU_FILE = /home/pi/.local/lib/python3.7/site-packages/callattendant/resources/voice_mail_menu.wav
VOICE_MAIL_MESSAGE_FOLDER = /home/pi/.callattendant/messages
Initializing Modem
Opening serial port
Looking for modem on /dev/ttyACM0
******* Conextant-based modem detected **********
Serial port opened on /dev/ttyACM0
Modem initialized
{MSG LED OFF}
Starting the Flask webapp
Running the Flask server
Waiting for call...
* Serving Flask app "userinterface.webapp" (lazy loading)
* Environment: production
WARNING: This is a development server. Do not use it in a production deployment.
Use a production WSGI server instead.
* Debug mode: off
โทรหาตัวเองสองสามครั้งเพื่อทดสอบบริการ เอาต์พุตมาตรฐานจะแสดงความคืบหน้าของการโทร จากนั้นนำทางไปที่ http://<pi-address>|<pi-hostname>:5000 ในเว็บเบราว์เซอร์เพื่อชำระเงินเว็บอินเตอร์เฟส
กด ctrl-c เพื่อปิดระบบ
http://<pi-address>|<pi-hostname>:5000 หากต้องการดูเว็บอินเตอร์เฟสเพียงชี้เว็บเบราว์เซอร์ของคุณไปที่พอร์ต 5000 บน Raspberry Pi ของคุณ ตัวอย่างเช่นในเบราว์เซอร์ของ Raspberry Pi คุณสามารถใช้:
http://localhost:5000/
ดูคู่มือผู้ใช้สำหรับข้อมูลเพิ่มเติม
พฤติกรรมของผู้ดูแลการโทรสามารถควบคุมได้โดยไฟล์การกำหนดค่า หากต้องการแทนที่การกำหนดค่าเริ่มต้นให้เปิด ~/.callattenant/app.cfg และแก้ไขเนื้อหา
nano ~ /.callattendant/app.cfgจากนั้นระบุไฟล์การกำหนดค่าและเส้นทางบนบรรทัดคำสั่งเช่น:
callattendant --config app.cfg
ดูส่วนการกำหนดค่าใน Wiki ของโครงการสำหรับข้อมูลเพิ่มเติม