9 votos

Bloquear todas las llamadas desde el código de área a menos que esté en los contactos

Necesito una manera de bloquear todas las llamadas de un código de área, a menos que el número esté en mi lista de contactos. ¿Alguien conoce una forma de hacerlo?

He encontrado un montón de aplicaciones que pueden bloquear por código de área, pero también bloquearán a cualquiera de mis contactos si tienen ese código de área. Podría añadir cada uno de mis contactos a una lista blanca, pero entonces tengo que acordarme de hacerlo cada vez que añado un contacto.

2 votos

Esta no es una función que Android sea capaz de realizar por sí mismo... Es posible que pueda encontrar una aplicación de contactos o marcador de terceros que tenga esta capacidad, aunque no conozco ninguna con este tipo de granularidad.

0 votos

Tengo que averiguar cómo trabajar con los números de los móviles, pero creo que funcionará. Gracias.

0 votos

Bien. Gracias por aceptar. Afortunadamente Macrodroid sí tiene esta capacidad sin entrar a leer la lista de contactos, etc. Para los números de móvil, quizás tengas que tener en cuenta el esquema de numeración ya que difiere de operador a operador (al menos en mi país). Puedes añadir todo esto en la misma macro, ya que los triggers funcionan en OR lógico . Todo lo mejor : )

3voto

beeshyams Puntos 82

automatización es la opción preferida. Hay muchas aplicaciones disponibles. Yo prefiero utilizar MacroDroid ya que es gratuito (hasta 5 macros) y fácil de aprender.


Para ello se necesitan dos macros

La primera macro sería establecer un indicador cuando la llamada es de un código de área

Macro : Código de área (nombre de la macro como ejemplo)

Disparador:

  1. Llamada entrante → Seleccionar número → abc* ( donde abc es el código de área numérico que le interesa y * es el comodín para representar cualquier número . Aquí hay que saber/experimentar - en mi caso necesitaba escribir +<2digit country code><2 digit state code>< * wild card > para probar con el teléfono fijo

  2. Necesitaría otro activador similar para identificar los números de móvil de esa zona si / en su caso

Acción : Establecer variable macrodroide → Nueva variable → de código de área ( nombre de la bandera, puede ser cualquier cosa) de tipo Booleano a verdadero

Restricciones: Dejar en blanco

En la siguiente macro rechazamos la llamada cuando las condiciones gemelas del número llamante es un no contacto y de ese código de área se cumplen

Macro : Rechazar llamada (nombre de la macro como ejemplo)

Disparador: Llamada entrante → Seleccionar contacto → No contacto

Acción :

  1. Rechazo de llamada

    añadir una restricción a esta acción mediante una pulsación larga de la acción

Variable macrodroide →de código de área = Verdadero (La macro sólo se ejecuta en este caso, satisfaciendo las condiciones de los criterios gemelos)

  1. Poner la variable macrodroide → del código de área en falso ( inicialización de la bandera )

Restricciones: dejar en blanco

Sólo he probado con el teléfono fijo del que dispongo y ha funcionado. La lógica ha sido explicada y tendría que configurar con especial atención a los códigos de área de teléfono fijo / móvil

0 votos

Los comodines no parecen funcionar para mí. Si introduzco un número de teléfono de 10 dígitos exactos en el activador, el macrodroide lo coge sin problemas. Pero si utilizo ? como has mostrado para los últimos 7 dígitos, el disparador pierde la llamada. ¿Alguna idea de por qué puede ser?

0 votos

Aislemos el problema. En primer lugar, desactive las macros ya creadas (deslice el interruptor en la parte superior). Segundo, cree una macro simple. Trigger: como confundido por usted que no está funcionando ; Acción: llamar a rechazar; restricciones: en blanco. Guarde y pruebe. Si no funciona, las razones son las siguientes: a) el código de área o el número de comodines utilizados es incorrecto b) la macro no se activa en absoluto; desde la parte superior izquierda del menú principal de la aplicación, vaya al registro del sistema y compruebe si se llama a la macro y la hora. Si no encuentra la macro referida allí, no se está llamando en absoluto y confirma la entrada incorrecta del código de área o de los comodines

0 votos

Error tipográfico - para "Trigger: as confused by you " léase "Trigger: as created by you " - el autocorrector me matará un día

3voto

SuperDuck Puntos 1026

La solución de beeshyams no me funcionó, pero pude modificarla y hacerla funcionar. El problema que encontré fue que el disparador de "llamada entrante" sólo ocurre una vez cuando se recibe la llamada por primera vez. esto significa que si se comprueba un booleano disparado por la llamada entrante, no se establecerá todavía.

Lo primero que hice fue averiguar qué formato necesitaba para el número de teléfono creando una macro muy sencilla:

trigger: call incoming -> contacts -> any number
action: logging -> log event -> call number

Revisé los registros y vi que el número era +12345678900 . (estoy en Estados Unidos)

A continuación he borrado esa macro y he hecho lo siguiente:


T: call incoming (+1234*)
A: set variable (areacode: True)

T: call incoming (non contact)
A: set variable (noncon: True)

vamos a utilizar las variables que se establecen como nuestro disparador para rechazar la llamada. estas variables parecían establecerse en un orden aleatorio/inconsistente, así que sólo hice dos disparadores, de esa manera no importaba cuál se estableció primero. esta es una solución muy janky, pero funciona.

T: macrodroid variable change (areacode = True)
A: call reject, set variable (areacode: False), set variable (noncon: False)
C: macrodroid variable (noncon = True)

T: macrodroid variable change (noncon = True)
A: call reject, set variable (areacode: False), set variable (noncon: False)
C: macrodroid variable (areacode = True)

Por último, necesitamos una forma de restablecer las variables si nuestras macros de bloqueo de llamadas no se han activado. la mejor solución que encontré fue borrarlas después de que se completara o perdiera una llamada.

T: call missed (any number), call ended (any number),
A: call set variable (areacode: False), set variable (noncon: False)

Estoy seguro de que probablemente haya una solución más elegante, pero esto al menos me funciona. (¡Hurra, no más llamadas fraudulentas a las 6 de la mañana!) por suerte hay exactamente 5 macros libres en la aplicación, y 5 en mi solución. si tienes varios códigos de área que necesitas bloquear, puedes ponerlos todos en una macro con un disparador separado para cada uno, creo. (no lo he probado)

todo este dolor podría resolverse si se pudiera hacer que un disparador fuera causado por dos condiciones que se cumplieran. eso significaría que sólo necesitaríamos una sola macro, pero por lo que veo, esto no es posible. desafortunadamente las restricciones no te permiten acceder a la información de la llamada entrante, así que eso tampoco funciona. tal vez haya una aplicación mejor.

PreguntAndroid.com

PreguntAndroid es una comunidad de usuarios de Android en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X