issue94:blocage_d_appels
Différences
Ci-dessous, les différences entre deux révisions de la page.
Prochaine révision | Révision précédente | ||
issue94:blocage_d_appels [2015/02/28 15:54] – créée andre_domenech | issue94:blocage_d_appels [2015/04/03 19:02] (Version actuelle) – d52fr | ||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
+ | ===== Article ===== | ||
+ | TITRE : Blocage d' | ||
+ | ** | ||
I haven' | I haven' | ||
Ligne 14: | Ligne 16: | ||
Weeks went by as I tried various Linux programs to monitor our landline, read the caller ID (CID), check it against a blacklist to blast the modem synch tones to the unwary, if hopeful, scavenger on the other end. | Weeks went by as I tried various Linux programs to monitor our landline, read the caller ID (CID), check it against a blacklist to blast the modem synch tones to the unwary, if hopeful, scavenger on the other end. | ||
+ | ** | ||
+ | Puisque je n'ai toujours pas eu de ses nouvelles, je suppose que Greg ne se sent pas encore dans son assiette ce mois-ci. N' | ||
+ | |||
+ | Solution contre quoi ? Vous pouvez vous le demander. Eh bien, contre les appels téléphoniques non sollicités et ennuyeux, bien sûr. Les politiciens, | ||
+ | |||
+ | Depuis plusieurs années, j'ai joué avec l' | ||
+ | |||
+ | Cette année (malheureusement après la vague d' | ||
+ | |||
+ | Ayant cru à tort que tous les modems avaient à la fois une « ligne » et un connecteur RJ-11 d' | ||
+ | |||
+ | Les semaines passèrent pendant que j' | ||
+ | |||
+ | ** | ||
I finally settled on picocom for the monitor function, minicom for setup, and modem-cmd to do the auto-answer and blast job. After many hours of writing bash scripts, testing and rewriting, I learned that: | I finally settled on picocom for the monitor function, minicom for setup, and modem-cmd to do the auto-answer and blast job. After many hours of writing bash scripts, testing and rewriting, I learned that: | ||
1. Picocom does not like running in the background. | 1. Picocom does not like running in the background. | ||
Ligne 30: | Ligne 46: | ||
So here's where the second modem comes in. (I have two now, you know.) The one-port modem connects to the extension port of the two-port modem. The two-port modem' | So here's where the second modem comes in. (I have two now, you know.) The one-port modem connects to the extension port of the two-port modem. The two-port modem' | ||
+ | ** | ||
+ | J'ai finalement choisi picocom pour la fonction de surveillance, | ||
+ | |||
+ | 1. picocom n'aime pas être en tâche de fond ; | ||
+ | 2. picocom n'a pas de fonction de journalisation, | ||
+ | 3. les commandes de réponse et de raccrochement du modem interfèrent avec la surveillance du modem ; | ||
+ | 4. le langage Expect me semblait mystérieux ; | ||
+ | 5. Même bash a des règles de comparaison complètement folles ; | ||
+ | 6. Le code du modem USB intégré n' | ||
+ | |||
+ | Leçon une : picocom veut son propre tty pour démarrer. Consacrer un terminal à lui seul. | ||
+ | |||
+ | Leçon deux : un correctif (diff) pour mettre en œuvre la journalisation est disponible pour picocom et il est facile à appliquer, même pour un bleu comme moi. Mon fichier journal picocom se nomme CID.log, mais ça peut être tout autre nom. | ||
+ | |||
+ | Leçon trois : La nature de la capture du port d'E/S en série m'a obligé, soit à suspendre la surveillance, | ||
+ | |||
+ | C'est donc là que le second modem entre en jeu. (J'en ai deux maintenant, vous savez.) Le modem à un port se connecte au port d' | ||
+ | |||
+ | ** | ||
These modems appear in my (Debian) /dev directory as ttyACM0 (the two-port) and ttyACM1 (the one-port). The command lines I use for the modems are: | These modems appear in my (Debian) /dev directory as ttyACM0 (the two-port) and ttyACM1 (the one-port). The command lines I use for the modems are: | ||
Ligne 47: | Ligne 82: | ||
Reset the modem | Reset the modem | ||
modemcmd=`/ | modemcmd=`/ | ||
+ | ** | ||
+ | Ces modems apparaissent dans mon répertoire (Debian) /dev comme ttyACM0 (le deux ports) et ttyACM1 (le monoport). Les lignes de commande que j' | ||
+ | |||
+ | La configuration | ||
+ | minicom -s -D / | ||
+ | |||
+ | La surveillance | ||
+ | picocom -ilr --logfile / | ||
+ | |||
+ | Décrocher le téléphone | ||
+ | modemcmd=`/ | ||
+ | |||
+ | Raccrocher. | ||
+ | modemcmd=`/ | ||
+ | |||
+ | Remise à zéro | ||
+ | modemcmd=`/ | ||
+ | |||
+ | ** | ||
These three modem commands are issued within a bash script after starting Picocom manually in a dedicated terminal window. The first, ATA, is used because the fax machine dream came to an end – it was too much trouble. Also, the modem was unwilling to dial without a dial tone. (Remember, it's answering a ringing phone.) | These three modem commands are issued within a bash script after starting Picocom manually in a dedicated terminal window. The first, ATA, is used because the fax machine dream came to an end – it was too much trouble. Also, the modem was unwilling to dial without a dial tone. (Remember, it's answering a ringing phone.) | ||
Ligne 64: | Ligne 118: | ||
NAME = TOLL FREE | NAME = TOLL FREE | ||
RING | RING | ||
+ | ** | ||
+ | Ces trois commandes de modem sont lancées dans un script bash après avoir démarré picocom manuellement dans une fenêtre de terminal dédié. La première, ATA, est utilisée parce que mon rêve de fax a pris fin - c' | ||
+ | |||
+ | Voici un échantillon de la sortie de picocom, y compris le bloc CID (quatre valeurs) qui arrive juste avant la deuxième sonnerie. Ce premier appel est un candidat pour la liste noire. | ||
+ | |||
+ | RING | ||
+ | DATE = 1117 | ||
+ | TIME = 1848 | ||
+ | NMBR = 8009421970 | ||
+ | NAME = TOLL FREE (Le CID dit qu'il n'est pas en liste noire ; laissons le sonner.) | ||
+ | RING | ||
+ | RING | ||
+ | DATE = 1118 | ||
+ | TIME = 0931 | ||
+ | NMBR = 8009421970 | ||
+ | NAME = TOLL FREE | ||
+ | RING | ||
+ | |||
+ | ** | ||
Ringmon, the program which issues the one-port modem commands (see above) is kicked off by incron. Incron is watching the CID.log file for the updates picocom makes. Ringmon starts Caller with a parameter “1” (Caller 1). Caller checks blacklist.srt to see whether it needs to intercept the call or just let the humans answer it. If the CALLERID is found in blacklist.srt, | Ringmon, the program which issues the one-port modem commands (see above) is kicked off by incron. Incron is watching the CID.log file for the updates picocom makes. Ringmon starts Caller with a parameter “1” (Caller 1). Caller checks blacklist.srt to see whether it needs to intercept the call or just let the humans answer it. If the CALLERID is found in blacklist.srt, | ||
Ligne 70: | Ligne 143: | ||
You may want to do something similar. The code is available here: https:// | You may want to do something similar. The code is available here: https:// | ||
+ | ** | ||
+ | |||
+ | Ringmon, le programme qui passe les commandes au modem monoport (voir ci-dessus) est lancé par incron. Incron surveille le fichier CID.log pour les mises à jour que picocom écrit. Ringmon lance Caller avec un paramètre « 1 » (Caller 1). Caller vérifie dans blacklist.srt pour voir s'il doit intercepter l' | ||
+ | |||
+ | Les autres tâches (maintenance de la liste noire, consignation d' | ||
+ | |||
+ | Si vous voulez faire quelque chose de semblable : le code est disponible ici: https:// | ||
+ | |||
+ | ===== Encarts ===== | ||
+ | ** | ||
+ | < | ||
+ | Sample from / | ||
+ | 2027650882, | ||
+ | 2028005670, | ||
+ | |||
+ | Sample from / | ||
+ | 2028005670, | ||
+ | 2028005696, | ||
+ | |||
+ | Sample from my / | ||
+ | Seq Date Time Phone Formatted Caller, Blacklist flag | ||
+ | 2021, | ||
+ | 2036, | ||
+ | |||
+ | Sample from / | ||
+ | 1205 TIME = 1433 Blacklist was sorted | ||
+ | 5. 1231 at TIME = 1340 7207639906 blacklisted | ||
+ | caller.log rebuilt 1231 TIME = 1412 | ||
+ | Blackballed call from 8552067186 added to caller.log 0101 at TIME = 1057 | ||
+ | |||
+ | Here's the maintenance screen: | ||
+ | ************************************************************ | ||
+ | * Executing / | ||
+ | ************************************************************ | ||
+ | 1. View TODAY' | ||
+ | 2. View ALL CALLS in log | ||
+ | 3. View ALL CALLS in log sorted by date, time | ||
+ | 4. View all phone numbers in the BLACKLIST | ||
+ | --------------------------------------- | ||
+ | 5. ADD the LAST caller to the blacklist | ||
+ | 6. ADD a RECENT caller to the blacklist | ||
+ | 7. ADD a 10-digit phone no. to the blacklist | ||
+ | 8. REMOVE a number from blacklist.txt | ||
+ | 9. MATCH blacklisted numbers with Name Substitutes | ||
+ | --------------------------------------- | ||
+ | 10. STOP MONITORING calls (Killspicocom) | ||
+ | 11. Kill Picocom, start Minicom on ACM0 | ||
+ | 12. Start Minicom on ACM1 | ||
+ | 13. Clean temporary CID files from /root/phone | ||
+ | |||
+ | > Enter number of your choice or enter ' | ||
+ | </ | ||
+ | ** | ||
+ | |||
+ | < | ||
+ | Exemple de / | ||
+ | 2027650882, | ||
+ | 2028005670, | ||
+ | |||
+ | Exemple de / | ||
+ | 2028005670, | ||
+ | 2028005696, | ||
+ | |||
+ | Exemple de mon / | ||
+ | Seq Date Time Phone Formatted Caller, Blacklist flag | ||
+ | 2021, | ||
+ | 2036, | ||
+ | |||
+ | Exemple de / | ||
+ | 1205 TIME = 1433 Blacklist was sorted | ||
+ | 5. 1231 at TIME = 1340 7207639906 blacklisted | ||
+ | caller.log rebuilt 1231 TIME = 1412 | ||
+ | Blackballed call from 8552067186 added to caller.log 0101 at TIME = 1057 | ||
+ | |||
+ | Voici l' | ||
+ | ************************************************************ | ||
+ | * Executing / | ||
+ | ************************************************************ | ||
+ | 1. View TODAY' | ||
+ | 2. View ALL CALLS in log [Voir TOUS les APPELS dans le journal] | ||
+ | 3. View ALL CALLS in log sorted by date, time [Voir TOUS les APPELS triés par date, heure] | ||
+ | 4. View all phone numbers in the BLACKLIST [Voir tous les numéros de la LISTE NOIRE] | ||
+ | --------------------------------------- | ||
+ | 5. ADD the LAST caller to the blacklist [AJOUTER le DERNIER appelant en liste noire] | ||
+ | 6. ADD a RECENT caller to the blacklist [AJOUTER une appelant RÉCENT en liste noire] | ||
+ | 7. ADD a 10-digit phone no. to the blacklist [AJOUTER un numéro à 10 chiffres à la liste noire] | ||
+ | 8. REMOVE a number from blacklist.txt [RETIRER un numéro de la liste noire] | ||
+ | 9. MATCH blacklisted numbers with Name Substitutes [SUBSTITUER les noms aux numéros en liste noire] | ||
+ | --------------------------------------- | ||
+ | 10. STOP MONITORING calls (Killspicocom) [ARRETER de SURVEILLER les appels] | ||
+ | 11. Kill Picocom, start Minicom on ACM0 [Tuer picocom, démarrer minicom sur ACM0] | ||
+ | 12. Start Minicom on ACM1 [Démarrer minicom sur ACM1] | ||
+ | 13. Clean temporary CID files from /root/phone [Nettoyer les fichiers temporaires de / | ||
+ | |||
+ | > Enter number of your choice or enter ' | ||
+ | </ | ||
+ | |||
+ | ** | ||
+ | < | ||
+ | LIST OF PROGRAMS | ||
+ | File spec. | ||
+ | / | ||
+ | / | ||
+ | | ||
+ | / | ||
+ | / | ||
+ | |||
+ | Available from repositories: | ||
+ | minicom | ||
+ | modem-cmd | ||
+ | inchron | ||
+ | nano | ||
+ | picocom | ||
+ | sed Phone number formatting to (XXX) xxx-xxxx | ||
+ | tr, grep File editing | ||
+ | |||
+ | LIST OF FILES | ||
+ | File spec. | ||
+ | / | ||
+ | / | ||
+ | / | ||
+ | / | ||
+ | / | ||
+ | | ||
+ | / | ||
+ | / | ||
+ | / | ||
+ | </ | ||
+ | ** | ||
+ | |||
+ | < | ||
+ | LISTE DES PROGRAMMES | ||
+ | Fichier | ||
+ | / | ||
+ | / | ||
+ | | ||
+ | / | ||
+ | / | ||
+ | |||
+ | |||
+ | Disponibles dans les dépôts : | ||
+ | minicom | ||
+ | modem-cmd | ||
+ | inchron | ||
+ | nano | ||
+ | picocom | ||
+ | sed Formatage des numéros à (XXX) xxx-xxxx | ||
+ | tr, grep | ||
+ | |||
+ | LISTE DES FICHIERS | ||
+ | Fichier | ||
+ | / | ||
+ | / | ||
+ | / | ||
+ | / | ||
+ | / | ||
+ | / | ||
+ | / | ||
+ | / | ||
+ | </ |
issue94/blocage_d_appels.1425135296.txt.gz · Dernière modification : 2015/02/28 15:54 de andre_domenech