Este perfil será um pouco mais trabalhoso, mas o resultado final compensa. Crie um novo
Profile e selecione:
Event -> Phone -> Phone Ringing
Como opções teremos Caller e Priority. Como o Android vai falar o nome do contato, este precisa estar registrado em nossos contatos. Sendo assim, em Caller clique na lupa e escolha "Any Contact".
Clique em voltar e em seguida "
New Task". Vamos nomear a nova tarefa como "
Falar Nome De Quem Liga".
Clique em adicionar Action:
Task -> Wait
Marque 2 segundos e saia. Este será o tempo para o telefone tocar o primeiro toque do som padrão do sistema.
Vamos adicionar uma nova Action:
Audio -> Silent Mode
Marque a opção
Mode para
On. Isso fará com que o toque seja silenciado para que a voz do sintetizador não tenha concorrência.
Na próxima Action vamos declarar uma variável para armazenar o volume de Media atual do sistema. Crie uma action e selecione:
Variables -> Variable Set
Em
Name coloque
%Volume. Em "To" coloque
%VOLM.
Explicando: criei a variável GLOBAL %Volume com valor %VOLM (Volume Media).
No Tasker temos 3 tipos de variáveis:
- Variável local: todas as letras em minúsculo;
- Variável global: a primeira letra em maiúsculo;
- Variável do sistema: todas as letras em maiúsculo.
Para nos certificarmos que o volume de Media esteja alto o suficiente para ouvirmos, vamos ajustá-lo para o volume máximo. Crie nova action e selecione:
Audio -> Media Volume
Em Level ajuste para 15.
Vamos à próxima Action:
Alert -> Say
Em "Text" coloque:
%CNAME está ligando
Obs.: %CNAME significa Contact Name.
Em "Stream" selecione
Media.
Em "Speed" coloque
3.
IMPORTANTE: Desmarque a opção "
Respect Audio Focus". Por padrão ela está ativa. No caso do evento "Phone Ringing", a voz do sintetizador usando o canal Media não tem prioridade e por consequência ficará mudo enquanto o telefone toca, mesmo que no modo silencioso. Por isso a importância de desmarcar esta opção.
Marque a opção "Label" e em seguida dê um nome à ela. No meu caso, "
Falar". Explicarei o motivo disso a seguir.
Quando em execução, neste momento o Android acabou de falar o nome de quem está ligando. Vamos agora adicionar uma tarefa que faça o sistema aguardar mais 2 segundos antes de repetir a frase.
Crie nova Action:
Task -> Wait
Marque 2 segundos e saia.
Por fim criaremos uma tarefa para que o telefone fique falando o nome da pessoa que está ligando repetidamente, caso contrário ele falará apenas uma vez e ficará mudo, mesmo se não tivermos atendido o telefone.
Crie nova Action:
Task -> Goto
Em "Type" marque "
Action Label". Em "Label" clique na lupa e escolha "
Falar". Entendeu agora porque nomeamos a Action "Say" com a label "Falar"? Fizemos isso pra criar um looping.
Nossa lista de ações final da tarefa "Falar Nome De Quem Liga" ficou assim:
UFA! Tá pensando que acabou? Acabou nada!!! No cenário atual, se alguém te ligar essa tarefa ficará falando o nome da pessoa em looping infinito. Temos que dar um jeito nisso.
Quando alguém te liga existem dois eventos que cancelam o toque do telefone:
- Você atende o telefone (Phone Offhook); ou
- Você rejeita ou não atende o telefone (Missed Call).
Então vamos criar mais dois perfis, que serão os responsáveis encerrar a execução da tarefa em looping.
Crie um novo perfil e selecione:
Event -> Phone -> Phone Offhook
Crie uma nova Task de nome "
Parar Fala Nome".
Adicione uma action e selecione:
Audio -> Silent Mode
Em "Mode" selecione
Off.
Adicione nova action e selecione:
Task -> Stop
Em "Task", clique na lupa e selecione "
Falar Nome De Quem Liga". Aqui estamos forçando o fim da tarefa que está em looping.
Agora só falta restauramos o volume de Media do sistema. Lembra que alteramos para o volume máximo? Para isso vamos usar a variável global %Volume, que foi declarada em "Falar Nome De Quem Liga".
Adicione uma nova action e selecione:
Audio -> Media Volume
Em "Level", clique no ícone alternar do canto direito e preencha o nome da variável com:
%Volume
Salve e saia. O perfil de atender o telefone está completo, agora só falta um perfil para ligação não atendida.
Crie um novo perfil e selecione:
Event -> Phone -> Missed Call
Em Task selecione a tarefa previamente criada "
Parar Fala Nome".
Pronto! Saia do Tasker e aguarde uma ligação para testar o novo sistema.