pip install callattendantO atendente de chamadas ( Callattinging ) é um atendente de automóveis com um bloqueador de chamadas integrado e um sistema de mensagens de voz em execução em um Raspberry Pi. Isso para de Robocalls e Spammers irritantes de interromper sua vida. Deixe o atendente interceptar e bloquear robocallers e operadores de telemarkets antes do primeiro anel em seu telefone fixo.
O Callattideamento fornece suporte internacional com formatos de número de telefone configuráveis, com listas de número bloqueado flexível e editável e permitido.
Se você estiver interessado neste projeto, forneça algum feedback, dando -lhe uma estrela ou até melhor, envolva -se arquivando problemas, juntando -se ao fórum e/ou enviando solicitações de tração. Obrigado!
O atendente de chamadas ( Callattinging ) é um atendente de chamadas automatizado baseado em Python, que é executado em um leve Raspberry Pi, ou outro sistema baseado em Linux, juntamente com um modem USB Robotics 5637 dos EUA.
O Raspberry Pi e o Modem estão conectados ao seu sistema de telefone residencial em paralelo com o (s) aparelho (s) do telefone. Quando uma chamada recebida é recebida, a chamada é destinada ao seu telefone e ao Callattéu . Durante o período do primeiro anel, o calatrendente analisa o ID do chamador e, com base na sua configuração, determina se a chamada deve ser bloqueada ou permitida. As chamadas bloqueadas podem ser simplesmente desligadas ou roteadas para o sistema de mensagens de voz. As chamadas que são permitidas simplesmente tocam seu telefone residencial como o normal. As chamadas podem ser enviadas para o sistema de correio de voz integrado, se você escolher. Os mecanismos de filtragem do CallAtting incluem um serviço de pesquisa on -line, uma lista de números permitidos, uma lista de números bloqueados e correspondência de padrões no número e/ou nome do chamador.
Você pode revisar histórico de chamadas, mensagens de voz, números permitidos e bloqueados e executar o gerenciamento de chamadas através da interface da web do atendente de chamadas. Aqui está um exemplo da página inicial com métricas e uma lista convencional de chamadas recentes. Para uma descrição completa, consulte o guia do usuário.

O Wiki do projeto no Github contém a documentação para o atendente de chamadas:
O Callattéu usa o seguinte hardware:

Você precisará de um Raspberry Pi executando o Raspbian ou melhor com o acesso à Internet para a instalação do software e, finalmente, para as pesquisas on -line do Robocaller. Para o projeto, você precisará de um modem de algum tipo para fazer as comunicações de telefonia. O modem USB Robotics USR5637 56K foi comprovado eficaz. Para algumas instalações, apenas funciona, nenhuma configuração é necessária. Ele apareceu como /dev /ttyacm0.
A instalação exige Python3.x.
As instruções a seguir criam e ativam um ambiente virtual chamado Venv dentro da pasta atual:
# Install virtualenv - if not installed
sudo apt install virtualenv
# Create the virtual environment
virtualenv venv --python=python3
# Activate it
source venv/bin/activate Agora você está operando com um python virtual. Para verificar, emitir o comando which e verifique se a saída aponta para o seu ambiente virtual; e também verifique a versão Python:
$ which python
/home/pi/venv/bin/python
$ python --version
Python 3.7.3 Posteriormente, quando você instala o software Callattinging , ele será colocado dentro da pasta de ambiente virtual (em lib/python3.x/site-packages para ser exato). O ambiente virtual, quando ativado, altera seu caminho para que o sistema procure o Python e seus pacotes dentro dessa hierarquia de pastas.
O software está disponível no Pypi. Instale e atualize usando 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 Se você não estiver usando o ambiente virtual, pode ser necessário reiniciar ou fazer logoff/login para atualizar o $PATH para o seu perfil para encontrar e usar o comando callattendant .
O pacote CallattideR inclui um comando callattendant para iniciar o sistema. Execute este comando pela primeira vez com a opção --create-folder para criar os dados e arquivos iniciais na pasta de dados padrão: ~/.callattendant . Esta é uma pasta oculta da raiz do seu diretório inicial. Você pode substituir este local pela opção --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/callattendantVocê deve ver a saída do formulário:
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
Faça algumas ligações para você testar o serviço. A saída padrão mostrará o progresso das chamadas. Em seguida, navegue para http://<pi-address>|<pi-hostname>:5000 em um navegador da web para verificar a interface da web.
Pressione ctrl-c para desligar o sistema
http://<pi-address>|<pi-hostname>:5000 Para visualizar a interface da web, basta apontar o navegador da web para a porta 5000 no seu Raspberry Pi. Por exemplo, no navegador do Raspberry Pi, você pode usar:
http://localhost:5000/
Consulte o Guia do Usuário para obter mais informações.
O comportamento do atendente de chamada pode ser controlado por um arquivo de configuração. Para substituir a configuração padrão, abra o ~/.callattenant/app.cfg e edite seu conteúdo.
nano ~ /.callattendant/app.cfgEm seguida, especifique o arquivo de configuração e o caminho na linha de comando, por exemplo:
callattendant --config app.cfg
Consulte a seção de configuração no wiki do projeto para obter mais informações.