[MÀJ] Android 12 et ancienne version : Régler correctement le mode « Ne pas déranger »

Une contrainte ne fonctionnait pas correctement avec l’ancien code, le nouveau fonctionne correctement.


Parce que je ne suis pas forcément d’accord sur le fait que ce soit à la personne qui envoie les messages à se demander s’il vous dérange ou non, et que je ne suis pas tout à fait d’accord de me dire que c’est à moi de mettre le téléphone en silencieux quand je ne veux pas être dérangé.

Tout comme je n’ai pas envie que des personne viennent sonner chez moi le soir tard et que je n’ai pas envie de laisser la fenêtre ouverte quand il y a du bruit dehors.

Déjà, régler ses applications en enlevant les notifications qui ne sont pas importantes est un bon début pour une meilleure tranquillité.

Ensuite, il y a le mode « Ne pas déranger » sur Android (et sans doute sur iOS aussi) qui permet d’éviter de se faire réveiller par n’importe qui parce que vous avez oublié de mettre votre téléphone en silencieux.

Reste évidemment à bien régler ce mode qui n’est pas très intuitif.


Pour ce faire, aller dans les paramètres d’Android puis chercher « ne pas déranger ».

Suivant la version de votre Android, les paramètres ne sont pas tout à fait les mêmes, mais globalement il faut remplir comme ceci :

  • Appels : à vous de choisir, personnellement j’ai mis « Contacts favoris uniquement » pour des gens à qui je peux répondre en cas d’urgence
  • Appels fréquents / récurrents : autoriser (en cas de vrai problème)
  • Alarmes, rappels et événements : à autoriser (ce serait bête de ne pas se faire réveiller à cause de ce mode)
  • Programme / Horaires : Weeknight (cocher les jours voulus) et vérifier que le programme est bien activé
  • Heure de début : à vous de voir à partir de quelle heure vous ne voulez plus être dérangé
  • Heure de fin : idem
  • Durée par défaut / Pour combien de temps : Jusqu’à la désactivation
  • Cocher « l’alarme peut remplacer l’heure de fin » sur les anciennes versions d’Android

Pour les versions récentes d’Android, l’alarme est dissociée du mode « ne pas déranger » par défaut, c’est également pour ça qu’il faut faire attention à ce que le mode ne coupe pas le réveil.

Il n’est pas possible de désactiver simplement le mode « Ne pas déranger » au réveil via les « ROUTINES » Google ou Bixby qui fonctionnent en « SI… ALORS », à chaque fois j’ai eu le message « Vous ne pouvez pas désactiver le mode Ne pas déranger car il est soumis à une planification », non sans blague ? C’est tout l’intérêt du truc…

Petite subtilité, IL NE FAUT PAS activer le mode une fois règlé ! Il s’activera tout seul avec la programmation des heures qu’on vient d’inscrire.


Heureusement, il est possible de passer par une application externe comme Macrodroid qui permet d’aller encore plus loin dans les conditions et les actions, comme par exemple, ne pas réactiver tout de suite les sons tant que le réveil est reporté (pour ceux qui aiment encore traîner un peu au lit :P) et surtout, qui fonctionne !

J’ai fait la macro ci-dessous car elle est introuvable sur le net même si elle n’est pas compliquée.

Le truc c’est de passer par la détection des notifications car l’alarme envoie des notifications via l’application « Horloge ».

Pour la macro ci-dessous, je me sers de l’application Horloge de Google.

Comme la condition pour les heures d’activation du mode « Ne pas déranger » est déjà programmée par Android dans les paramètres du mode « Ne pas déranger », on ne va rajouter que les détections des notifications.

Il faut simplement bien entrer le libellé « Réveil » (sans les guillemets, avec la majuscule, avec l’accent et sans espace à la fin) à l’alarme qui vous sert de réveil (au-dessus des chiffres) et c’est tout.

Cliquer sur le label pour mettre un nom à l’alarme

Toute la subtilité étant de comprendre comment l’application Horloge fonctionne avec ses notifications :

La première notification de rappel apparaît 2h avant l’heure de l’alarme sous la forme :
Alarme imminente
jour heure - libellé

Disparition de la 1e notification et apparition de la 2e

La seconde durant toute la sonnerie du réveil sous la forme :
libellé
jour heure

Disparition de la 2e notification et apparition de la 3e OU Disparition de la 2e notification et arrêt du réveil

La troisième lors du choix de répétition de l’alarme sous la forme :
Alarme répétée
jour heure - libellé

Disparition de la 3e notification et ré-apparition si alors encore repoussée OU Disparition de la 3e notification arrêt du réveil

On peut jouer sur le fait qu’il y ait un son en lecture, un vibreur, du temps d’attente pour le report du réveil, de redéfinir « Ne pas déranger » à la notification de répétition, de rajouter des conditions etc.

Le plus simple, qui ne demande pas de tout changer, tient sur quelques actions et consiste à ne pas toucher au mode « Ne pas déranger » ni à ses réglages tant qu’une notification pour le Réveil est présente.
Enfin, il faut imposer un temps d’attente pour éviter que la macro pense qu’il n’y a plus de notification avant que la suivante apparaisse (même s’il n’y a qu’une demi-seconde entre 2 notifications, ça suffit à arrêter la boucle).

Cliquer pour agrandir

Explication :

  • La macro (le bout de code avec les actions à faire) se déclenchera lorsqu’une notification de l’appli Horloge contenant le mot « Réveil » apparaît.
  • Tant qu’une notification est présente, tu attends qu’elle disparaisse
  • En parallèle, tant qu’une notification disparaît, tu attends 1 seconde
    • Si une nouvelle notification apparaît, tu attends qu’elle disparaisse
    • Sinon tu désactives le mode « Ne pas déranger » en autorisant toutes les notifications et sons et tu arrêtes la boucle
  • Enfin, la macro ne doit s’activer que si la notification reçue du réveil est de 21h à 10h (j’ai mis volontairement plus large que le mode « Ne pas déranger ») ET si le mode « Ne pas déranger » a une condition.

La macro est également disponible ici directement en téléchargement pour Macrodroid.

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée.

Possibilité d'ajouter une balise de SPOILER via la syntaxe suivante :
[spoiler] Texte à cacher [/spoiler]