Voir le sujet précédent :: Voir le sujet suivant |
Auteur |
Message |
MSG Modérateur


Inscrit le: 17 Avr 2012 Messages: 2869
|
Posté le: 11 Mar 2023, 01:24 -> Sujet du message: Filtrage des appels entrant |
|
|
Bonsoir ,
Lors d'appels reçus de démarchage ou autres , Free propose une commande (351) pour créer une liste de filtrage d'appels entrants de numéros ou de préfixes indésirables .
https://assistance.free.fr/articles/telephone-fixe-filtrer-les-appels-entrants-548
Malheureusement , si un numéro qu'on ne veut pas filtrer se retrouve par erreur dans cette liste , il n'y a pas d'autre choix que de tout effacer avec le code #351# , puis ressaisir tous les numéros de la liste un à un (si on les a noté quelque part) ou des préfixes (généralement les 6 premiers chiffres) .
Comme je viens de coder un programme similaire pour envoyer des commandes DTMF , mais pour un autre usage et n'ayant plus de Freebox , je me suis dit que ça pourrait intéresser certains .
Le programme est créé en Python3 , du nom de la commande : 351.py
Un fichier contenant la liste de numéros ou préfixes : 351_liste_noire.txt à modifier selon vos besoins
Et les fichiers audio des DTMF correspondant aux touches : DTMF_touche_( 0 à 9 + E et F ).wav et no.wav .
S'assurer de la présence du programme de lecture audio play , (présent sous Linux , sous windows je n'ai pas de quoi tester) .
Dans la console , tester avec la commande : play -q DTMF_touche0.wav
Le son DTMF devrait se faire entendre en sortie d'un HP ou casque audio , il faut juste augmenter le volume pour bien l'entendre.
Les fichiers doivent être dans le même dossier et le programme se lance avec la commande : python3 351.py
Il est possible d'ajuster le temps entre chaque numéro pour pouvoir raccrocher et décrocher sur la variable tp.
Listing du programme 351.py
Code: | #!/usr/bin/python3
#===============================================#
# Reprogrammation filtrage des appels entrant #
# #
# Service : Freebox ligne fixe #
# #
# Programmation : MSG - (c) 03-2023 #
#===============================================#
#///////////////////////////////////////////////
from time import sleep
import os
def DTMF(n):
# Code pour supprimer les espaces entre les chiffres
if n.count(" "): n = n.replace( " " , "" )
print(n)
n = n.replace( "*" , "E" )
n = n.replace( "#" , "F" )
for c in n:
if c in tuple("0123456789EF"):
os.system("play -q DTMF_touche_" + c + ".wav")
else:
os.system("play -q no.wav")
return
#
# lecture du ficher txt associé
#===============================
#//////////////////////////////
liste = ["# 351 #",] # code vider la liste
fo = open( "351_liste_noire.txt" , "r")
l = fo.read()
EOL = l.count( "\n" )
fo.seek(0,0)
for n in range( EOL ):
liste.append( fo.readline()[0:-1] ) # ajoute numéros à la liste
fo.close()
#
# Séquence de programmation
#===========================
#//////////////////////////
tp = 5 # pause (en secondes) raccrocher - décrocher
for n in range( EOL ):
if n == 0:
print("\n--- Décrocher ---")
sleep( tp )
DTMF( liste[n].strip(" ") )
else:
print("--- Raccrocher - Décrocher --- %2i/%i" %( n , EOL ))
sleep ( tp )
DTMF( "* 351 * " + liste[n].strip(" ") + " #" )
print("--- Raccrocher - C'est fini --- %i/%i\n" %( n+1, EOL ))
|
Le résultat de la séquence de préfixes que j'ai programmé :
Citation: | $ python3 351.py
--- Décrocher ---
#351#
--- Raccrocher - Décrocher --- 1/19
*351*018656#
--- Raccrocher - Décrocher --- 2/19
*351*021901#
--- Raccrocher - Décrocher --- 3/19
*351*022164#
--- Raccrocher - Décrocher --- 4/19
*351*025545#
--- Raccrocher - Décrocher --- 5/19
*351*027983#
--- Raccrocher - Décrocher --- 6/19
*351*035349#
--- Raccrocher - Décrocher --- 7/19
*351*036748#
--- Raccrocher - Décrocher --- 8/19
*351*037466#
--- Raccrocher - Décrocher --- 9/19
*351*037933#
--- Raccrocher - Décrocher --- 10/19
*351*042285#
--- Raccrocher - Décrocher --- 11/19
*351*044902#
--- Raccrocher - Décrocher --- 12/19
*351*046563#
--- Raccrocher - Décrocher --- 13/19
*351*048793#
--- Raccrocher - Décrocher --- 14/19
*351*051807#
--- Raccrocher - Décrocher --- 15/19
*351*053294#
--- Raccrocher - Décrocher --- 16/19
*351*055464#
--- Raccrocher - Décrocher --- 17/19
*351*055465#
--- Raccrocher - Décrocher --- 18/19
*351*098829#
--- Raccrocher - C'est fini --- 19/19
$ |
PS: ci-joint le ZIP des fichiers nécessaire pour son fonctionnement .[
_________________ Ex Alicebox, devenu Freebox.
Pacsé chez Sosh Fibre (promo de noël 2021) à 14,99€/mois la première année, 29,99€ au delà , sans options.
Livebox 4 - Débit théorique 300 Mb/s - réel < 100 Mb/s avec PC (Ordinosaure) de 20 ans d'âge . |
|
Revenir en haut |
|
 |
Busyspider Adjoint-Admin


Inscrit le: 06 Sep 2005 Messages: 68334
|
Posté le: 11 Mar 2023, 10:00 -> Sujet du message: |
|
|
Bonjour MSG
Merci de ce tuto.
Faut quand même être très spécialiste pour pouvoir le mettre en place !
_________________ .
............... |
|
Revenir en haut |
|
 |
MSG Modérateur


Inscrit le: 17 Avr 2012 Messages: 2869
|
Posté le: 11 Mar 2023, 11:55 -> Sujet du message: |
|
|
Bonjour ,
Pour être spécialiste (sur système Linux) , il faut savoir : (pour Windows , j'ai pas !)
- Télécharger le fichier ZIP en pièce joointe
- Créer un dossier et Dézipper le fichier téléchargé
- S'assurer d'avoir le language Python3 sur sa machine (présent sur Linux)
- S'assurer de la présence d'un programme permettant la lecture fichiers WAV . Sur Linux il y a play
(play -q fichier_quelconque.wav) . Modifier le programme si vous avez un autre utilitaire de lecture audio .
- Editer le fichier 351_liste_noire.txt pour créer sa propre liste noire .
- Ouvrir une console de commande
- Lancer le programme avec la commade ci-dessous et suivre les instructions en collant la sortie son du PC sur le micro du téléphone fixe .
(python3 351.py)
Je peux compiler le programme pour le rendre exécutable , mais ça empêcherait les usagers potentiels de vérifier que je n'y ais pas mis de commande dangereuse pour leur système ou données de leur ordinateur . Ça permet de comprendre et de le modifier si par exemple l'intervalle entre les numéros est trop court ou autre .
Je suis à l'écoute de vos remarques (pour la version Linux) et si un utilisateur Windows pouvait vérifier le programme sur ça machine , ça aiderait à l'adapter pour ce système . Le langage Python est universel , donc il ne devrait pas y avoir de problème pour le faire tourner sur Windows ,
PS: le contenu du fichier ZIP en pièce jointe .
- 351_liste_noir.txt (fichier contenant la liste des numéros et préfixes à filtrer , un numéro par ligne)
- 351.py (le programme Python qui va exécuter la programmation)
13 fichiers audio WAV correspondant aux sons émis par les touche du téléphone fixe
- DTMF_touche0.wav
- DTMF_touche1.wav
etc
- DTMF_touche9.wav
- DTMF_toucheE.wav (touche étoile)
- DTMF_toucheF.wav (touche dièse)
- no.wav (pour toutes autres touches inexistantes)
Le langage Python se trouve sur le lien ci-dessous (pour les utilisateurs windows) :
https://www.python.org/downloads/windows/
MSG
_________________ Ex Alicebox, devenu Freebox.
Pacsé chez Sosh Fibre (promo de noël 2021) à 14,99€/mois la première année, 29,99€ au delà , sans options.
Livebox 4 - Débit théorique 300 Mb/s - réel < 100 Mb/s avec PC (Ordinosaure) de 20 ans d'âge . |
|
Revenir en haut |
|
 |
mickeul16 Administrateur


Inscrit le: 31 Mar 2008 Messages: 19400
|
|
Revenir en haut |
|
 |
MSG Modérateur


Inscrit le: 17 Avr 2012 Messages: 2869
|
Posté le: 16 Mar 2023, 21:23 -> Sujet du message: |
|
|
Bonsoir ,
Je suis avec la version :
Citation: | Python 3.5.7 (default, Apr 4 2019, 11:58:21)
[GCC 5.5.0] on linux |
Mais peu importe , une version python 3 fera l'affaire , surtout pas du python 2 .
La première ligne sert de path pour le programme python sous Linux et pour l'éditeur de texte qui me colore automatiquement les variables , les mots clefs et gère aussi l'indentation avec les petites flèches bleu à gauche , qui me ferme une partie du code à la demande (boucles , fonctions) , très pratique . Il y a aussi une miniature du code à gauche (ascenseur) , qui permet de se déplacer rapidement lorsque le programme est très long .
Pour la compilation , Linux ne fonctionne pas pareil que windows , Je n'ai qu'à changer une valeur dans les paramètres du fichier pour le rendre exécutable ou pas . Avec Windows , il faut le compiler pour en faire un fichier.exe , à moins que ça ait changer .
Pour la programmation , j'ai une notice en anglais qui me sert souvent : https://www.tutorialspoint.com/python3/index.htm
MSG
_________________ Ex Alicebox, devenu Freebox.
Pacsé chez Sosh Fibre (promo de noël 2021) à 14,99€/mois la première année, 29,99€ au delà , sans options.
Livebox 4 - Débit théorique 300 Mb/s - réel < 100 Mb/s avec PC (Ordinosaure) de 20 ans d'âge . |
|
Revenir en haut |
|
 |
|
|
Vous ne pouvez pas poster de nouveaux sujets dans ce forum Vous ne pouvez pas répondre aux sujets dans ce forum Vous ne pouvez pas éditer vos messages dans ce forum Vous ne pouvez pas supprimer vos messages dans ce forum Vous ne pouvez pas voter dans les sondages de ce forum Vous ne pouvez pas joindre des fichiers Vous ne pouvez pas télécharger des fichiers
|
Les indispensables pour vos demandes d'aide
|