hab mir vor einer Woche einen Raspi gekauft.
Nun einen Türöffner gebastelt…
der auch funktioniert,
aber er soll auch Daten an meinen Webserver senden,
was auch funktioniert…
da hier das Internet sehr instabil ist,
muss ich diese Abfrage auskommentieren (drei Routen im Python3-Script)
da sonst das Script hängen bleibt, wenn keine Internetverbindung besteht.
Hab keinen Plan, wie ich eine Abfrage einbauen kann,
wenn keine Internetverbindung besteht,
das einfach das Script ohne Internetverbindung weiter macht…
auch Python ist für mich Neuland (bin noch am einlesen...)
wäre über jegliche Hilfe Dankbar.
Mit freundlichen Grüßen,
Jens
Code: Alles auswählen
import re
from smartcard.System import readers
import datetime
import os
import RPi.GPIO as GPIO
import signal
import http.client
import time
import mysql.connector
from subprocess import call
call(["gpio","export","17","out"])
call(["gpio","-g","write","17","1"])
COMMAND = [0xFF, 0xCA, 0x00, 0x00, 0x00]
r = readers()
reader = r[0]
print("Reader= ", reader)
data = ''
while(1):
try:
connection = reader.createConnection()
status_connection = connection.connect()
dataCurr = connection.transmit(COMMAND)
if isinstance(dataCurr, tuple):
temp = dataCurr[0]
else:
temp = dataCurr
dataCurr = ''
for int in temp:
dataCurr += format(int)[0:] # += bf
if(dataCurr != data):
data = dataCurr
try:
cnx = mysql.connector.connect(user='Benutzer',password='Passwort',host='127.0.0.1',database='meine Datenbank')
except:
print ("Keine Verbindung")
exit(0)
cursor = cnx.cursor()
print(data)
###conn = http.client.HTTPConnection("meinserver.de")
###conn.request("GET","/myscript.php?Seite1="+Seite2)
###res = conn.getresponse()
cursor.execute("SELECT status from karten WHERE karte = %s",(data,))
result = cursor.fetchone()
ergebnis = str(result[0])
cnx.close()
print(ergebnis)
if ergebnis == "1":
call(["gpio","-g","write","17","0"])
time.sleep(3.0)
call(["gpio","-g","write","17","1"])
data = ''
except Exception as e:
continue