Guten Tag liebes Forum, Ich habe ein Problem mit meinem Raspberry Pi. Ich möchte mit einem UMTS-Stick (Huawei E169) mittels eines Anrufs einen Ausgang des Raspberry Pis schalten. Dieser Anruf soll mit einer Liste verglichen werden und wenn die anrufende Nummer vorhanden ist, soll der Ausgang geschaltet werden. Ist die Nummer nicht in der Textdatei, soll angezeigt werden, dass der Nutzer nicht registriert ist. Über minicom und den Befehl AT^CVOICE=? bekomme ich ein OK auf ttyUSB0. Nun habe ich zwei fragen. Die erste: Wie kann ich abfragen ob der Anruf auch wirklich ankommt mit AT Befehlen oder wie auch immer? Zweite Frage: ich habe eine Programm geschrieben mit welchem ich mir in der Console das ganze anzeigen lassen möchte. Es kommt kein Syntax Fehler, aber dennoch löst ein Anruf nichts aus. Hier das Programm: #!/usr/bin/python2.7 import serial, re #serielle Schnittstellen Einstellungen command_channel = serial.Serial( port='/dev/ttyUSB0', baudrate=115200, parity=serial.PARITY_NONE, stopbits=serial.STOPBITS_ONE, bytesize=serial.EIGHTBITS ) #serielle Schnittstellen verbindung wird geoeffnet command_channel.open() #Aktivirung der Anrufer ID command_channel.write("AT+CLIP=1" + "\r\n") #serielle Schnittstellen verbindung wird geschlossen command_channel.close() #serielle Schnittstellen Einstellungen ser = serial.Serial( port='/dev/ttyUSB2', baudrate=9600, parity=serial.PARITY_NONE, stopbits=serial.STOPBITS_ONE, bytesize=serial.EIGHTBITS ) #serielle Schnittstellen verbindung wird geoeffnet ser.open() #Anrufer ID wird ausgelesen pattern = re.compile('.*CLIP.*"\+([0-9]+)",.*') while 1: buffer = ser.read(ser.inWaiting()).strip() buffer = buffer.replace("\n","") match = pattern.match(buffer) if match: number = match.group(1) #verifizirung der Anrufer ID if number in open('userid.txt').read(): print "User found" else: print "User not found" Ich komme einfach nicht mehr weiter und benötige diesen UMTS-Stick und ein Okay oder Nicht Okay als aussage für mein Projekt. Vielen Dank, euer doggy
-> Ruf die Nummer auf dem USB Stick an, wenn da kein RING Im Terminalprogramm angezeigt wird, ist der VOICE/(CSD) GSM Teil im Stick weg-"optimiert". (Man spart sich Flash und Testaufwand zuungunsten der 1 Promille der Personen, die sowas benoetigen) -> Falls doch ein Ring zu sehen ist: "ATA" eingeben... Dann mal schreiben was passiert!
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.