Итак, моя проблема: я создал скрипт, частично скопированный с: https://issuu.com/themagpi/docs/issue27final/17?e=1, для отправки электронного письма, когда контакт на GPIO RPI становится высоким. Мне пришлось вручную исправлять все, что сломалось между Python1 и Python3, в командной строке оно не меняется с 0 на 1. Я пробовал заменить провода, но на этом все, так как я новичок. Вот мой код:
#/usr/bin/python
# Note: you must change lines 25-27
# Import Stuff
import subprocess
import RPi.GPIO as GPIO, feedparser
from time import sleep
import smtplib, os, sys
from email.mime.text import MIMEText
from email.mime.multipart import MIMEMultipart
from email.mime.image import MIMEImage
GPIO.setwarnings (False)
GPIO.setmode(GPIO.BOARD)
# Set up GPIO Inputs
# Yellow Input
GPIO.setup(7, GPIO.IN)
# Send email message and photo from Gmail
def send_email(msg):
# Change these 3 lines to your details.
USERNAME = "elislagle2012@gmail.com"
PASSWORD = "your Gmail password"
MAILTO = "elislagle2012@gmail.com"
msg['From'] = USERNAME
msg['To'] = MAILTO
server = smtplib.SMTP('smtp.gmail.com:587')
server.ehlo_or_helo_if_needed()
server.starttls()
server.ehlo_or_helo_if_needed()
server.login(USERNAME, PASSWORD)
server.sendmail(USERNAME, MAILTO, msg.as_string())
server.quit()
print("Email sent to: " + MAILTO)
# Send email when fire alarm activated
def Send_firealarm_email():
print("Fire Alarm Activated")
msg - MIMEMultipart()
msg.attach(MIMEText('Fire Alarm on Zone 1'))
msg['Subject'] - 'Fire Alarm Notification'
send_email(msg)
player = subprocess.Popen(["mplayer", "song.mp3", "-ss", "30"], stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
# Send email when fire alarm off
def Send_cancel_email():
print("Fire Alarm Reset")
msg - MIMEMultipart()
msg.attach(MIMEText('Fire Alarm Canceled'))
msg['Subject'] - 'Fire Alarm Canceled'
send_email(msg)
player.stdin.write("q")
# Main control loop
while True:
Input_yellow = GPIO.input(7)
print(Input_yellow)
if Input_yellow == True:
Send_firealarm_email()
# if Input_yellow == False:
# Send_cancel_email()
Подробнее здесь: https://stackoverflow.com/questions/792 ... -os-script
Какая наиболее вероятная проблема в моем сценарии RPI OS? ⇐ Python
Программы на Python
-
Anonymous
1734291469
Anonymous
Итак, моя проблема: я создал скрипт, частично скопированный с: https://issuu.com/themagpi/docs/issue27final/17?e=1, для отправки электронного письма, когда контакт на GPIO RPI становится высоким. Мне пришлось вручную исправлять все, что сломалось между Python1 и Python3, в командной строке оно не меняется с 0 на 1. Я пробовал заменить провода, но на этом все, так как я новичок. Вот мой код:
#/usr/bin/python
# Note: you must change lines 25-27
# Import Stuff
import subprocess
import RPi.GPIO as GPIO, feedparser
from time import sleep
import smtplib, os, sys
from email.mime.text import MIMEText
from email.mime.multipart import MIMEMultipart
from email.mime.image import MIMEImage
GPIO.setwarnings (False)
GPIO.setmode(GPIO.BOARD)
# Set up GPIO Inputs
# Yellow Input
GPIO.setup(7, GPIO.IN)
# Send email message and photo from Gmail
def send_email(msg):
# Change these 3 lines to your details.
USERNAME = "elislagle2012@gmail.com"
PASSWORD = "your Gmail password"
MAILTO = "elislagle2012@gmail.com"
msg['From'] = USERNAME
msg['To'] = MAILTO
server = smtplib.SMTP('smtp.gmail.com:587')
server.ehlo_or_helo_if_needed()
server.starttls()
server.ehlo_or_helo_if_needed()
server.login(USERNAME, PASSWORD)
server.sendmail(USERNAME, MAILTO, msg.as_string())
server.quit()
print("Email sent to: " + MAILTO)
# Send email when fire alarm activated
def Send_firealarm_email():
print("Fire Alarm Activated")
msg - MIMEMultipart()
msg.attach(MIMEText('Fire Alarm on Zone 1'))
msg['Subject'] - 'Fire Alarm Notification'
send_email(msg)
player = subprocess.Popen(["mplayer", "song.mp3", "-ss", "30"], stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
# Send email when fire alarm off
def Send_cancel_email():
print("Fire Alarm Reset")
msg - MIMEMultipart()
msg.attach(MIMEText('Fire Alarm Canceled'))
msg['Subject'] - 'Fire Alarm Canceled'
send_email(msg)
player.stdin.write("q")
# Main control loop
while True:
Input_yellow = GPIO.input(7)
print(Input_yellow)
if Input_yellow == True:
Send_firealarm_email()
# if Input_yellow == False:
# Send_cancel_email()
Подробнее здесь: [url]https://stackoverflow.com/questions/79261175/what-is-the-most-likely-issue-in-my-rpi-os-script[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия