
Bloquer les appels indésirables sur son portable est devenu quelque chose de nécessaire. On peut prendre toutes les précautions que l’on veut pour éviter des appels indésirables, ça finit par arriver, soit parce que vous avez laissé une case cochée autorisant la démarchage (version officielle), soit parce que votre numéro a été récupéré d’une façon ou d’une autre et pas forcément très légale (fuite de données, etc…).
Heureusement, en France, les numéros des démarcheurs sont réglementés, et identifiables par les premiers chiffres de leur numéro. L’Arcep a donc publié cette liste, reste alors à l’ajouter au téléphone afin de les bloquer. Pour ce faire, encore faut-il que le « dialer » du smartphone sache filtrer les numéros commençant par une séquence donnée, ce qui n’est pas le cas sur mon tel. Il me faudra donc utiliser une application dédiée.
Mise à jour 28/02/2025 : malgré SpamBlocker, je reçois beaucoup d’appels ces derniers temps à partir de numéros en 06 ou 07. C’est très embêtant car ce sont des numéros « usurpés » et il est difficile de se prémunir de ce genre d’appels (non légaux). Je rajoute donc des infos à ce sujet en fin d’article.
Voyons tout cela…
La liste de l’ARCEP
L’ARCEP a publié dans son Plan de numérotation une liste de numéros que les démarcheurs sont obligés d’utiliser :
Sachant que l’on peut être démarché par un service situé aux Antilles ou autres DOM-TOM, c’est bien toute cette liste qu’il faut ajouter à votre téléphone.
Il faut ensuite vérifier que votre téléphone vous permet de filtrer (rejeter) les appels en se basant uniquement sur les premiers chiffres d’un numéro. Certains téléphones le permettent, d’autres non. Pour le mien, ce n’est pas le cas, GrapheneOS se concentrant sur la sécurité et laissant tout le reste tel que Google le fournit dans sa version AOSP (la version libre de droit que tout le monde utilise comme base). Et donc même si j’ai la dernière version (Android 14), pas moyen de filtrer sur la base d’un préfixe.
SpamBlocker
Il faut donc utiliser une application dédiée, et c’est là qu’intervient SpamBlocker.
C’est grâce à un journal sur linuxfr, j’ai découvert SpamBlocker, beaucoup plus évolué et au développement actif. Son interface peut paraître complexe au premier regard, mais finalement tout est très simple.
L’interface de Spamblocker peut sembler chargée et complexe, mais pour chaque option, un appui sur le point d’interrogation vous expliquera ce qu’elle fait. SpamBlocker est donc finalement très simple à paramétrer. On voit par ailleurs que les SMS sont désactivés (icône grisée en haut de l’écran) puisque je n’utilise que le blocage des appels téléphoniques.
Les appels
Il faut donc commencer par ajouter la liste des numéros fournis par l’Arcep. Plutôt que de saisir les numéros un par un, ce qui peut devenir fastidieux, on va utiliser des RegEx, soit des expressions régulières, qui vont permettre de ne saisir qu’une seule entrée pour tous les numéros de France Métropolitaine. Pour les numéros d’Outre-mer, à cause des indicatifs « pays » spécifiques à chaque territoire, il faut par contre les séparer. Les exemples sont fournis sur le wiki de l’application.
Ce qui donne ceci un fois saisis :
Pour les deux dernières entrées, voir plus bas les « numéros usurpés ».
Pour le démarchage France, la règle dit que tout numéro commençant par ’33’ ou ‘0’ suivi de 162 ou 163 ou 270 etc… sera bloqué. Simple et efficace !
Pour les DOM-TOM, j’avais un doute sur l’indicatif, j’ai donc posé la question à la personne qui avait fourni la RegEx avec l’indicatif 33 : il m’a rapidement confirmé qu’il fallait bien utiliser les codes spécifiques aux DOM-TOM (voir ici) et a modifié sa proposition en conséquence. Les infos sur ce tableau :
Le type de blocage
Pour chaque numéro, j’avais dans un premier temps choisi l’action Rejeter, mais quelques mois plus tard, j’ai reçu un message vocal pour l’un des numéros bloqués. Renseignement pris, il est préférable de choisir Répondre+Raccrocher pour éviter les messages vocaux (voicemail). Normalement, dans ce mode, l’écran de verrouillage va se rallumer, mais l’appel sera raccroché avant que le téléphone ne sonne (ça peut dépendre des modèles apparemment). Il existe aussi le mode Silencieux : dans ce cas, on laisse sonner dans le vide.
Et cela fonctionne plutôt bien, comme je peux le vérifier dans le journal d’appels de l’application : quatre appels en deux jours, le 29/08 avec deux numéros très proches, on peut considérer que c’est la même boîte qui a un « pool » de numéros, et le 30/08 deux appels du même numéro. Rien depuis, fort heureusement.

L’usurpation de numéro (ou CLIP-spoofing)
Depuis quelques temps, je reçois beaucoup d’appels pour du démarchage énergétique qui utilisent des numéros en 06 ou 07 (différents à chaque appel), ce qui est théoriquement interdit. Mon numéro a du se retrouver dans une liste (peut-être suite à mon changement de fournisseur d’électricité effectué récemment ?), mais franchement on est proche du harcèlement vu le nombre d’appels. Ils connaissent mon nom et prénom, mais se trompent sur ma localisation.
L’appel commence toujours de la même façon : « Bonjour monsieur x, vous allez bien ? » suivi d’un temps de silence où l’on entend des bruits de claviers, genre call-center, puis l’argumentaire commence : nouvelles réglementations permettant de faire des économies, questionnaire rapide de quatre questions, suis-je d’accord pour y répondre ?… Vous pouvez dire ce que vous voulez pendant cette amorce, la voix ne s’arrêtera pas et ira au bout de son énoncé. Il est dès lors bien possible que la voix que vous entendiez soit une voix d’automate ! 😮
Si c’est une vraie personne, la meilleure chose à faire est de demander avec insistance que votre numéro soit retiré de leur liste, et qu’ils contreviennent à la loi sur la protection des consommateurs. Lors du dernier appel reçu, je n’ai fait que répéter cette demande sans relâche avant que la personne (?) finisse par me dire qu’elle allait faire ce que je demande (je croise les doigts).
La fois suivante, j’ai été plus à l’écoute des réponses faites, et j’en ai conclu qu’il s’agissait de morceaux audio tout préparés, car sur le tout début d’une séquence j’ai vraiment eu l’impression d’un message audio, quelque chose clochait dans l’amorce, peut-être un léger chevauchement entre deux phrases consécutives, je ne sais plus. Dès lors, les réponses sont sans doute déclenchées en fonction de mots clés détectés dans ce que je dis, il ne s’agit pas vraiment d’un dialogue, inutile de s’épuiser donc : on a sans aucun doute affaire à un automate, ou même une AI qui gère tout ça. Là aussi, j’ai tout de même eu la même promesse d’être retiré de la liste, j’ai le droit d’y croire…
Sinon, raccrocher reste la seule alternative.
Le MAN
Il existe pourtant un Mécanisme d’Authentification des Numéros de téléphone, le M.A.N, mais celui-ci n’est mis en œuvre que pour les numéros fixes. En effet, il ne peut en l’état s’appliquer aux numéros mobiles, ces derniers étant sujet à l’accueil des abonnés en itinérance internationale des étrangers sur le territoire français. Voir ce mail de A. Archambault, ancien directeur juridique de Free pour plus d’information : il semble que le législateur ne soit pas à la hauteur des enjeux techniques, et soit toujours dans une démarche de « détection des numéros de téléphone les plus signalés » ! C’est plutôt mal parti de ce côté, il ne va pas falloir en attendre grand chose.
C’est donc quasiment impossible de se protéger contre ce genre d’appel. En effet, les numéros peuvent changer aléatoirement, c’est donc inutile de bloquer le numéro, au pire on bloque un numéro légitime.
Que faire alors ?
On peut tout de même faire deux choses (à ma connaissance) :
Il existe tout de même une liste de numéros virtuels, utilisés par l’appli OnOff, voir cette page. On peut donc déjà rajouter cette règle :
Si vous êtes comme moi victime de ce type d’appels, vous remarquerez qu’une partie d’entre eux utilisent un numéro proche du votre : seuls les quatre derniers chiffres sont différents. Dès lors, on peut créer une nouvelle règle qui bloquera ceux-ci, la probabilité qu’un numéro légitime utilise les mêmes 6 premiers chiffres que votre numéro étant finalement assez faible :
À part ça, il n’y a aucune solution en l’état actuel des choses, si ne n’est essayer d’obtenir le nom de l’entreprise qui bénéficiera de cet appel (ces appels sont passés par des sociétés spécialisées dans le démarchage, pour simplifier le problème), et rapporter cette entreprise sur Signal Conso.
Dernière solution : ne décrocher que sur les numéros connus et donc dans votre liste de contacts (principe de la liste blanche), comme commencent à le faire pas mal de gens : si c’est un vrai appel, vous aurez normalement un message vocal.
Les API de requêtes
On peut aussi interroger des sites qui maintiennent des listes de numéros indésirables via cette entrée. Il en existe un tout prêt sur cette page : SIA France. Il s’agit de faire une requête sur le site Dois-je répondre.
Pour l’ajouter, copier le contenu du script et choisir « Nouveau » dans la partie « API de requête », puis faire importer et coller le contenu du script. Vous créez ainsi une nouvelle entrée :
Voilà, à vous de voir, moi je ne l’ajoute pas pour l’instant, ça ne me paraît pas nécessaire ni pertinent.
Sur la même page, il existe un autre script « Tellows »pour l’international qui interroge le site Tellows.
Le fichier
SpamBlocker permet aussi d’exporter ou d’importer la liste, alors pour gagner du temps et éviter de tout avoir à saisir, voici la mienne tenant de compte des infos ci-dessus, à l’exception de l’entrée pour « les numéros proches » (à vous de voir si vous observez ce type de numéros) :
Tester un munéro
Une fois que vous avez saisi tous vos filtres, vous pouvez aussi vérifier qu’une règle fonctionne bien comme vous le souhaitez :
Spamblocker est vraiment très complet ! 😎
Les SMS
SpamBlocker peut aussi filtrer les notifications des SMS (les messages apparaîtront tout de même dans l’application SMS). Le filtrage peut se faire à partir du numéro comme pour les appels téléphoniques, mais aussi à base d’expressions régulières (Regex) pour le contenu des messages.
Comme il n’existe pas de liste comme pour le démarchage téléphonique, le filtrage par plage de numéros peut se révéler risqué. Recevant peu voir pas du tout de SMS indésirables, je n’utiliserai pas cette option.
Pour les rares cas, c’est plus simple de répondre STOP au numéro émetteur. On peut aussi signaler un spam SMS en transférant le message gratuitement au 33700 (on recevra par la suite un message demandant de préciser l’émetteur et l’heure du message).
Bonjour,
Je vous suis régulièrement et j’apprécie la qualité de vos articles.
Celui-ci tombe à point car je n’arrivais pas à trouver la bonne syntaxe pour le blocage des numéros !
Un grand merci également pour la liste 🙂
… en fait j’utilisais l’appli téléphone de Google qui identifie bien les spams mais ne les bloque pas.
Les formats de numéros que je rajoutais dans les paramètres de blocage ne fonctionnaient pas.
J’ai essayé les formats type : 0033162* et +33162* (sans succès, je recevais toujours les appels)
Et là je vois que le format de votre liste rajoute un point entre le numéro et l’étoile à la fin.
Du coup, j’avais déjà essayé Spamblocker comme ça de base mais ça ne servait à rien.
Je reteste donc cette appli avec votre liste et j’espère ne plus avoir d’appel
Encore un grand merci pour cet article et d’autres sur Linux 😉
P.S.: au fait, toujours autant satisfait de votre Debian ?
Merci à toi pour le retour sur le blog ! 😀
Pour la syntaxe, c’est celle de SpamBlocker (voir « Regex Pattern » sur cette page). Pour les autres solutions, elle peut être différente.
Oui, toujours très content : Debian « testing » + Gnome, ça me convient parfaitement, c’est le combo idéal pour moi…
Merci Pascal, encore un article intéressant, j’ai laissé tomber l’appli Orange téléphone pour SpamBlocker.
Après avoir reçu un message vocal sur un numéro bloqué, il apparaît qu’il est préférable de choisir « Répondre+Raccrocher » comme type de blocage.
J’ai mis à jour l’article pour tenir compte de cette information.
Bonjour,
Ta liste ne fonctionne pas … Si on fait avec ton fichier un test : 0947848595 le numéro passe …
Moi j’ai plutôt fait comme cela :
{"global":{"enabled":true,"callEnabled":true,"smsEnabled":true,"mmsEnabled":true},"historyOptions":{"showPassed":true,"showBlocked":true,"showIndicator":false,"ttl":-1,"logSmsContent":false,"initialSmsRowCount":1},"regexOptions":{"numberCollapsed":false,"contentCollapsed":false,"quickCopyCollapsed":false,"maxNoneScrollRows":10,"maxRegexRows":3,"maxDescRows":2,"listHeightPercentage":60},"botOptions":{"listCollapsed":false},"theme":{"type":1},"language":{"lang":"fr"},"contacts":{"enabled":true,"isExcusive":false},"stir":{"enabled":true,"isExcusive":false,"includeUnverified":false},"spamDB":{"ttl":180},"repeatedCall":{"enabled":false,"times":1,"inXMin":5},"dialed":{"enabled":false,"inXDay":3},"recentApps":{"list":[],"inXMin":5},"meetingMode":{"list":[],"priority":20},"blockType":{"type":0,"config":""},"offTime":{"enabled":false,"stHour":0,"stMin":0,"etHour":0,"etMin":0},"numberRules":{"rules":[{"id":10,"pattern":"(33)?(64466|64467|64468|64469|7568|7569).+","patternExtra":"","patternFlags":5,"patternExtraFlags":5,"description":"OnOff","priority":3,"isBlacklist":true,"flags":3,"importance":2,"schedule":",00:00-00:00,false","blockType":0,"blockTypeConfig":""},{"id":9,"pattern":"(33)?(9475|9476|9477|9478|9479).+","patternExtra":"","patternFlags":5,"patternExtraFlags":5,"description":"Démarcheurs France Outre-Mer","priority":2,"isBlacklist":true,"flags":3,"importance":2,"schedule":",00:00-00:00,false","blockType":0,"blockTypeConfig":""},{"id":8,"pattern":"(33)?(162|163|270|271|377|378|424|425|568|569|948|949).+","patternExtra":"","patternFlags":5,"patternExtraFlags":5,"description":"Démarcheurs France Métropolitaine","priority":1,"isBlacklist":true,"flags":3,"importance":2,"schedule":",00:00-00:00,false","blockType":0,"blockTypeConfig":""}]},"contentRules":{"rules":[]},"quickCopyRules":{"rules":[]},"callAlert":{"enabled":false,"collapsed":false,"duration":0,"regexStr":"","regexFlags":0,"timestamp":0},"apiQuery":{"apis":[],"listCollapsed":false},"apiReport":{"apis":[],"listCollapsed":false},"bots":{"bots":[{"id":1,"desc":"Nettoyage de la base de données de spam","schedule":{"type":"Weekly","weekdays":["MONDAY","TUESDAY","WEDNESDAY","THURSDAY","FRIDAY","SATURDAY","SUNDAY"],"time":{"hour":0,"min":0}},"actions":[{"type":"CleanupSpamDB","expiry":90}],"enabled":true,"workUUID":"b0e72561-f53d-4ed8-b027-50f119f3040f","lastLog":"{\"text\":\"Nettoyage de la base de données des appels indésirables, suppression de 0 enregistrements avant l'horodatage : 1732872500933.\\n\",\"markups\":[{\"start\":0,\"end\":126,\"color\":-4144960}]}","lastLogTime":1740648500942}]},"spamNumbers":{"numbers":[]}}
Bien à vous
Merci pour ton retour, très intéressant.
C’est étonnant, car la syntaxe utilisée est celle indiquée dans l’appli, et mon journal d’appel montre que ça marche.
Je ne sais pas comment tu as fait ton test d’ailleurs ? tu as une méthode pour tester ??
Mais bon, c’est intéressant parce qu’en regardant le wiki de l’appli (ici) il y a les expressions REGEX toutes prêtes et en deux entrées on bloque tous les numéros France + DOMTOM, c’est donc beaucoup plus efficace comme ça effectivement. Je n’avais pas vu ça.
Et je vois que tu as ajouté les numéros qui commencent par 064466 064467 064468 064469 067568 067569 : ce sont les numéros utilisés par l’appli OnOff, c’est ça ?
Je vais refaire le fichier en fonction de cela, et ajouter dans l’article des infos sur les appels avec des numéros en 06 ou 07 (numéros usurpés, parfois proches de son propre numéro) qui sont bien embêtants et qui me pourrissent la vie en ce moment 😡 C’est d’ailleurs comme ça que j’ai lu quelque chose sur l’appli OnOff et les numéros suspects…
Bonjour
Cela donne cela non ?
{"global":{"enabled":true,"callEnabled":true,"smsEnabled":false,"mmsEnabled":true},"historyOptions":{"showPassed":true,"showBlocked":true,"showIndicator":false,"ttl":-1,"logSmsContent":false,"initialSmsRowCount":1},"regexOptions":{"numberCollapsed":false,"contentCollapsed":false,"quickCopyCollapsed":false,"maxNoneScrollRows":10,"maxRegexRows":3,"maxDescRows":2,"listHeightPercentage":60},"botOptions":{"listCollapsed":false},"theme":{"type":1},"language":{"lang":"fr"},"contacts":{"enabled":true,"isExcusive":false},"stir":{"enabled":true,"isExcusive":false,"includeUnverified":false},"spamDB":{"ttl":180},"repeatedCall":{"enabled":false,"times":1,"inXMin":5},"dialed":{"enabled":false,"inXDay":3},"recentApps":{"list":[],"inXMin":5},"meetingMode":{"list":[],"priority":20},"blockType":{"type":2,"config":"1"},"offTime":{"enabled":false,"stHour":0,"stMin":0,"etHour":0,"etMin":0},"numberRules":{"rules":[{"id":20,"pattern":"(?:33)?(1(?:62|63)|2(?:70|71)|3(?:77|78)|4(?:24|25)|5(?:68|69)|9(?:48|49))\\d{6}","patternExtra":"","patternFlags":5,"patternExtraFlags":5,"description":"Blocage Démarchage","priority":4,"isBlacklist":true,"flags":3,"importance":2,"schedule":",00:00-00:00,false","blockType":2,"blockTypeConfig":"1"},{"id":10,"pattern":"(33)?(64466|64467|64468|64469|7568|7569).+","patternExtra":"","patternFlags":5,"patternExtraFlags":5,"description":"OnOff","priority":3,"isBlacklist":true,"flags":3,"importance":2,"schedule":",00:00-00:00,false","blockType":2,"blockTypeConfig":"1"},{"id":19,"pattern":"^(?:33|0)?(?:9475|9476|9477|9478|9479)\\d{5}$","patternExtra":"","patternFlags":5,"patternExtraFlags":5,"description":"FRANCE d'Outre-mer","priority":2,"isBlacklist":true,"flags":3,"importance":2,"schedule":",00:00-00:00,false","blockType":2,"blockTypeConfig":"1"},{"id":18,"pattern":"^(?:33|0)?(?:162|163|270|271|377|378|424|425|568|569|948|949)\\d{6}$","patternExtra":"","patternFlags":5,"patternExtraFlags":5,"description":"FRANCE Metropole","priority":1,"isBlacklist":true,"flags":3,"importance":2,"schedule":",00:00-00:00,false","blockType":2,"blockTypeConfig":"1"}]},"contentRules":{"rules":[]},"quickCopyRules":{"rules":[]},"callAlert":{"enabled":false,"collapsed":false,"duration":0,"regexStr":"","regexFlags":0,"timestamp":0},"apiQuery":{"apis":[{"id":1,"desc":"SIA France","actions":[{"type":"ParseIncomingNumber","numberFilter":"^(?:33:0)?\\d{9}$"},{"type":"HttpDownload","method":0,"url":"https://www.doisjerepondre.fr/numero-de-telephone/0{domestic}","header":"","body":""},{"type":"ParseQueryResult","negativeSig":"\\dx négative","negativeFlags":5,"positiveSig":"","positiveFlags":5,"categorySig":"NéGATIVE ([A-Z]+)","categoryFlags":1029},{"type":"FilterSpamResult"},{"type":"ImportToSpamDB","importReason":"Manually"}],"enabled":true},{"id":2,"desc":"Tellows","actions":[{"type":"ParseIncomingNumber","numberFilter":".*"},{"type":"HttpDownload","method":0,"url":"https://www.tellows.fr/basic/num/%2B{cc}{domestic}?json=1","header":"","body":""},{"type":"ParseQueryResult","negativeSig":"\"score\":\"(7|8|9)\"","negativeFlags":5,"positiveSig":"\"score\":\"(1|2|3)\"","positiveFlags":5,"categorySig":"","categoryFlags":5},{"type":"FilterSpamResult"},{"type":"ImportToSpamDB","importReason":"Manually"}],"enabled":true}],"listCollapsed":false},"apiReport":{"apis":[],"listCollapsed":false},"bots":{"bots":[{"id":1,"desc":"Nettoyage de la base de données de spam","schedule":{"type":"Weekly","weekdays":["MONDAY","TUESDAY","WEDNESDAY","THURSDAY","FRIDAY","SATURDAY","SUNDAY"],"time":{"hour":0,"min":0}},"actions":[{"type":"CleanupSpamDB","expiry":90}],"enabled":true,"workUUID":"b0e72561-f53d-4ed8-b027-50f119f3040f","lastLog":"{\"text\":\"Nettoyage de la base de données des appels indésirables, suppression de 0 enregistrements avant l'horodatage : 1732872500933.\\n\",\"markups\":[{\"start\":0,\"end\":126,\"color\":-4144960}]}","lastLogTime":1740648500942}]},"spamNumbers":{"numbers":[]}}
Bonjour Paul,
J’ai revu tout ça de près, et mis l’article à jour.
J’ai compris pourquoi tu dis que le numéro 0947848595 passait avec ma liste : en fait cette dernière utilise les codes pays spécifiques aux DOM-TOM et pas ton numéro (équivalent à +33947848595).
C’est d’ailleurs ce que tu fais dans tes RegEx, tu utilises tout le temps le code pays « 33 » pour les numéros DOM-TOM (« ^(?:33|0)?(?:9475|9476|9477|9478|9479)\\d{5}$ »). Ce qui n’est pas correct, j’en ai eu la confirmation (voir l’article modifié).
Je vois que tu as aussi ajouté le script « API de requête » de SIA France. Je vais ajouter cette possibilité dans l’article, même si je ne l’utilise pas (je ne suis pas persuadé de son intérêt pour mon cas, ni de sa pertinence, le site manque d’infos je trouve).
Bonjour
Maintenant le numéro +33947848595
Ou meme 0947848595 passent ne block plus ‘
Normal ?
Ben oui ! D’où sors-tu ce numéro et comment le teste-tu ?
Je le test en utilisant l’outil de test de l’application SpamBlocker. Le numéro c’est numéro sur le site des numéros de spam ….
Ah merci, je n’avais pas vu que l’on pouvait tester un numéro ! Pratique.
De quel site de spam parles-tu ? c’est peut-être un numéro saisi par erreur ?
J’imagine que c’est un numéro censé venir des DOM-TOM, avec un code 09478 ? J’en ai profité pour ajouter le tableau des codes pays pour les DOM-TOM dans l’article.
Pour ce numéro, censé venir de La Réunion ou de Mayotte, si tu reçois cet appel, il aura un code pays +262. Et donc le numéro serait +262947848595 et jamais +33947848595 ou 0947848595.
Okay par contre j’ai mis ton script c’est pas le même que dans le wiki me semble ?
Je n’ai pas mis de script à disposition mais un fichier de configuration.
Peux-tu être plus précis ?
Bonsoir
Juste on retrouve pas les règles qui sont ici https://github.com/aj3423/SpamBlocker/wiki/Regex-Workflow-Templates
Tu as noté que sur celle concernant les DOM-TOM, il est indiqué : « This original regex is wrong! » ? Et qu’ici tu trouveras les nouvelles ?
https://github.com/aj3423/SpamBlocker/issues/239
Parfait. Merci