Système d'envoi et de réception de SMS. Composé d'un démon qui reçoit et traite les SMS recus et d'un client en interface textuelle qui permet d'envoyer des SMS.

README.md 2.4KB

Kannad

Kannad est un logiciel de reception et d'envoi de SMS. Il se compose d'un démon concu pour recevoir les SMS et les traiter et d'un client qui permet de lire les sms reçus, en envoyer, etc.

Licence

La licence est la licence GNU GPL

Ce programme s'inspire de modèles de la documentation gammu et npyscreen, tous deux sous licence GNU GPL v2

Prérequis

Le système utilise python 2 (2.7)

L'envoi-réception des SMS est basée sur gammu. il faut donc avoir installé gammu sur python2 (packet python-gammu sur debian-based os)

L'interface du client est basée sur npyscreen (pip install npyscreen)

Kannad daemon

Il se trouve dans daemon/ et se lance par kannad-daemon.py

Présentation

Kannad démon est dun démon qui lit les sms à intervalles réguliers et les traite grâce à des modules de traitement. Un module de traitement est simplement un fichier python comprenant une fonction traitement(numero, dateheure, message, *other).

Sont déjà proposés l'enregistrement dans uns base de donnée SQLite (qui sert au client), l'envoi par e-mail, et l'affichage à l'écran.

Configuration

La configuration des modules d'effectue dans modules/*nomdumodule*config.py Pour le détail voir la section modules

Le configuration du démon s'effectue dans kndconfig.py, on configure alors :

  • Le fichier de configuration gammu pour la connexion au téléphone (voir http://wammu.eu/docs/manual/config/) : tel_configfile
  • L'intervalle entre deux tentatives de réception, en secondes : dtreceive
  • L'ensemble des modules à activer, sous forme d'une liste de noms : actions

Kannad Client

Il se trouve dans client/ et se lance par kannad-client.py

Présentation

Le client utilise un annuaire pour enregistrer les numéros (base de donnée SQLite), permet de lister les sms recus à partir de a base de donnée du démon et d'envoyer des SMS. D'autres fonctionnalités sont prévues comme la liste des sms envoyés, l'affichage de conversations, etc.

Modules

Le module affichage se contente d'afficher le sms à l'écran

Le module mailer envoie par mail (configuration du smtp à faire) et si identify_people est à True il cherchera également dans la base de donnée du client à attribuer un nom à l'envoyeur.

Le module tosqlite écrit le sms dans une base de donnée sqlite. C'est la base de donnée utilisée par le client ensuite.

D'autres modules peuvent être ajoutés dans modules/