Dieses Paket enthält ein Plugin für das ControlPi-System, mit dem ein NFC-Kartenleser eingebunden werden kann. Es wird lediglich die ID der aufgelegten NFC-Karte (oder des NFC-Chips oder des Smartphones) als Nachricht auf den ControlPi-Bus gelegt.
Eine ausführliche Dokumentation ist in der Dokumentation der ControlPi-Infrastruktur zu finden.
Der Code dieses Plugins kann mit git geclonet werden:
$ git clone git://git.graph-it.com/graphit/controlpi-nfc.git
(Falls Zugang zu diesem Server per SSH besteht und Änderungen gepusht werden sollen, sollte stattdessen die SSH-URL benutzt werden.)
Dann kann es editierbar in ein virtuelles Environment installiert werden:
(venv)$ pip install --editable <Pfad zum Code-Repository>
Auf dem Raspberry Pi (oder wenn keine Code-Änderungen gewünscht sind) kann es auch direkt, ohne einen git-Clone installiert werden:
(venv)$ pip install git+git://git.graph-it.com/graphit/controlpi-nfc.git
Zur Ausführung werden ccid
und
pcsclite
benötigt und pcscd
muss aktiviert
(sudo systemctl enable pcscd --now
) sein.
Zum Installieren des benutzen pyscard
-Python-Pakets wird außerdem swig
benötigt.
Eine minimale ControlPi-Konfiguration, die dieses Plugin benutzt, ist im git-Repository enthalten:
{
"Debug": {
"plugin": "WSServer",
"web": {
"/": {
"module": "controlpi_plugins.wsserver",
"location": "Debug"
}
}
},
"Log": {
"plugin": "Log",
"filter": [{}]
},
"NFCReader": {
"plugin": "NFCReader"
}
}
Ein NFCReader
-Plugin hat keine weitere Konfiguration und es ist nur eine
Instanz pro Konfiguration sinnvoll (da weitere sowieso den gleichen
NFC-Kartenleser verwenden würden).
Mit dieser Beispiel-Konfiguration können die durch Auflegen und Entfernen
von NFC-Karten ausgelösten Events in der Debug-Oberfläche des ControlPi und
im Log in journalctl -u controlpi
gesehen werden: