Moin,
da heute abgabe ist wollte ich mal wissen wie ihr den Code findet:
Würde mich freuen wenn z.b. @TheSupercomputer da mal rüber schaut 
edit: die Mailadressen sind nicht meine(von wem anders xD)
da heute abgabe ist wollte ich mal wissen wie ihr den Code findet:
#IMPORT Part
#IMPORT Part
import RPi.GPIO as GPIO
#Importiert die Pinbelegung des Pi's in GPIO-Zählart
import time
#Importiert die Zeitfunktion
import os
#Importiert eine Funktion für das abspielen des Alarmtons
import smtplib
#Importiert die Mailfunktion
from email.mime.text import MIMEText
from email.mime.multipart import MIMEMultipart
#Importiert die Mailfunktionen nach MIME-Standard
#GPIO Part
GPIO.setmode(GPIO.BCM)
#Definiert den Modus der GPIO-Port Zählart
GPIO.setup(20, GPIO.OUT)
#Definition des GPIO-Ausgangspin
SENSOR_PIN = 23
#Legt den GPIO-Pin für den Bewegungssensor fest(nach GPIO-Zählart)
GPIO.setup(SENSOR_PIN, GPIO.IN)
#EMAIL Part
#Definition von 3 Variablen für die Alarm-Mail
email_sender = '[email protected]'
email_receiver = '[email protected]'
subject = 'Alarm ausgelöst'
#Inhaltsangaben für Mail zu Sender, Empfänger und Inhalt
msg = MIMEMultipart()
msg['From'] = email_sender
msg['To'] = email_receiver
msg['Subject']= subject
body = 'Der Raspberry Pi hat einen Alarm ausgelöst!'
msg.attach(MIMEText(body, 'plain'))
text = msg.as_string()
#ALARM Part
def mein_callback(channel):
#Hier wird festgelegt was passiert wenn der Bewegungssensor aktiviert wird
print('Alarm ausgelöst.')
os.system('mpg123 -q /home/pi/Alarmanlage/Alarm.mp3 &')
#Verbindungsaufbau und Senden
connection = smtplib.SMTP('mail.gmx.net', 25)
connection.starttls()
connection.login(email_sender, 'Linusatsasel')
connection.sendmail(email_sender, email_receiver, text )
connection.quit()
print('Mail gesendet!')
#LED Part
print('Alarm-Licht an')
#Schleife mit An- und Ausschalten der LED mit etwas Zeit dazwischen="Blinken"
for i in range(50):
GPI
utput(20, True)
time.sleep(0.2)
GPI
utput(20, False)
time.sleep(0.2)
#GPIO.cleanup()
print('Alarm-Licht aus')
try:
GPIO.add_event_detect(SENSOR_PIN , GPIO.RISING, callback=mein_callback)
while True:
time.sleep(100)
except KeyboardInterrupt:
print ('Alarmanlage wird entschärft. Bitte Warten...')
GPIO.cleanup()
#IMPORT Part
import RPi.GPIO as GPIO
#Importiert die Pinbelegung des Pi's in GPIO-Zählart
import time
#Importiert die Zeitfunktion
import os
#Importiert eine Funktion für das abspielen des Alarmtons
import smtplib
#Importiert die Mailfunktion
from email.mime.text import MIMEText
from email.mime.multipart import MIMEMultipart
#Importiert die Mailfunktionen nach MIME-Standard
#GPIO Part
GPIO.setmode(GPIO.BCM)
#Definiert den Modus der GPIO-Port Zählart
GPIO.setup(20, GPIO.OUT)
#Definition des GPIO-Ausgangspin
SENSOR_PIN = 23
#Legt den GPIO-Pin für den Bewegungssensor fest(nach GPIO-Zählart)
GPIO.setup(SENSOR_PIN, GPIO.IN)
#EMAIL Part
#Definition von 3 Variablen für die Alarm-Mail
email_sender = '[email protected]'
email_receiver = '[email protected]'
subject = 'Alarm ausgelöst'
#Inhaltsangaben für Mail zu Sender, Empfänger und Inhalt
msg = MIMEMultipart()
msg['From'] = email_sender
msg['To'] = email_receiver
msg['Subject']= subject
body = 'Der Raspberry Pi hat einen Alarm ausgelöst!'
msg.attach(MIMEText(body, 'plain'))
text = msg.as_string()
#ALARM Part
def mein_callback(channel):
#Hier wird festgelegt was passiert wenn der Bewegungssensor aktiviert wird
print('Alarm ausgelöst.')
os.system('mpg123 -q /home/pi/Alarmanlage/Alarm.mp3 &')
#Verbindungsaufbau und Senden
connection = smtplib.SMTP('mail.gmx.net', 25)
connection.starttls()
connection.login(email_sender, 'Linusatsasel')
connection.sendmail(email_sender, email_receiver, text )
connection.quit()
print('Mail gesendet!')
#LED Part
print('Alarm-Licht an')
#Schleife mit An- und Ausschalten der LED mit etwas Zeit dazwischen="Blinken"
for i in range(50):
GPI
time.sleep(0.2)
GPI
time.sleep(0.2)
#GPIO.cleanup()
print('Alarm-Licht aus')
try:
GPIO.add_event_detect(SENSOR_PIN , GPIO.RISING, callback=mein_callback)
while True:
time.sleep(100)
except KeyboardInterrupt:
print ('Alarmanlage wird entschärft. Bitte Warten...')
GPIO.cleanup()
edit: die Mailadressen sind nicht meine(von wem anders xD)