pip install callattendant콜 승무원 ( Callattendant )은 Raspberry Pi에서 통합 된 통화 차단기 및 음성 메시징 시스템이있는 자동 승무원입니다. 그것은 성가신 robocalls와 스패머가 당신의 삶을 방해하는 것을 막는 것을 멈추고 있습니다. 유선 전화의 첫 번째 링 전에 콜 승무원이 RoboCallers 및 Telemarketers를 차단하고 차단하십시오.
CallAttendant는 유연하고 편집 가능한 차단 번호 및 허용 수 목록과 함께 구성 가능한 전화 번호 형식의 국제 지원을 제공합니다.
이 프로젝트에 관심이 있다면, 스타에게 스타 에게 주어 지거나 더 나은 피드백을 제공하거나, 문제를 제기하거나, 포럼에 가입하거나, 풀 요청을 제출하여 참여하십시오. 감사해요!
Call Attendant ( Callattendant )는 가벼운 라즈베리 파이 또는 기타 Linux 기반 시스템에서 실행되는 파이썬 기반의 자동 콜 컬렉트 변수입니다.
라즈베리 파이와 모뎀은 전화 핸드셋과 병렬로 홈 전화 시스템에 연결되어 있습니다. 들어오는 전화가 접수되면 전화는 휴대 전화와 캘러퍼틴 모두에게 전달됩니다. 첫 번째 링 기간 동안 CallAttendant는 발신자 ID를 분석하고 구성을 기반으로 호출을 차단하거나 허용 해야하는지 결정합니다. 차단 된 통화는 간단히 끊거나 음성 메시지 시스템으로 라우팅 할 수 있습니다. 허용되는 전화는 단순히 집 전화를 정상처럼 울리게됩니다. 선택하면 통화를 통합 음성 메일 시스템으로 보낼 수 있습니다. Callattendant 의 필터링 메커니즘에는 온라인 조회 서비스, 허용 번호 목록, 차단 번호 목록 및 발신자 번호 및/또는 이름의 패턴 일치가 포함됩니다.
Call Attendant의 웹 인터페이스를 통해 통화 기록, 음성 메시지, 허용 및 차단 번호 및 발신자 관리 수행을 검토 할 수 있습니다. 다음은 메트릭과 최근 통화 목록이있는 홈페이지의 예입니다. 자세한 내용은 사용자 안내서를 참조하십시오.

GitHub의 프로젝트 위키에는 콜 승무원의 문서가 포함되어 있습니다.
Callattendant는 다음 하드웨어를 사용합니다.

Raspbian을 실행하는 Raspberry Pi가 필요하며 소프트웨어 설치를 위해 인터넷에 액세스 할 수 있고 궁극적으로 온라인 RoboCaller 조회를 위해 필요합니다. 이 프로젝트의 경우 전화 통신을 수행하려면 일종의 모뎀이 필요합니다. 미국 로봇 공학 USR5637 56K USB 모뎀이 효과적으로 입증되었습니다. 일부 설치의 경우 단지 작동하며 구성이 필요하지 않습니다. /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 명령을 발행하고 출력이 가상 환경을 가리키는지 확인하십시오. 또한 파이썬 버전을 확인하십시오.
$ which python
/home/pi/venv/bin/python
$ python --version
Python 3.7.3 나중에 Callattendant 소프트웨어를 설치하면 가상 환경 폴더 ( 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 가상 환경을 사용하지 않는 경우 callattendant 명령을 찾고 사용하려면 프로필의 $PATH 업데이트하려면 재부팅 또는 로그인/로그인해야 할 수도 있습니다.
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 웹 인터페이스를 보려면 웹 브라우저를 Raspberry Pi의 포트 5000 으로 가리 키십시오. 예를 들어, Raspberry Pi의 브라우저에서 다음을 사용할 수 있습니다.
http://localhost:5000/
자세한 내용은 사용자 안내서를 참조하십시오.
통화 승무원의 동작은 구성 파일로 제어 할 수 있습니다. 기본 구성을 무시하려면 ~/.callattenant/app.cfg 열고 내용을 편집하십시오.
nano ~ /.callattendant/app.cfg그런 다음 명령 줄에서 구성 파일과 경로를 지정하십시오.
callattendant --config app.cfg
자세한 내용은 프로젝트 위키의 구성 섹션을 참조하십시오.