Skip to content

Instantly share code, notes, and snippets.

@mertsalik
Created May 25, 2014 15:15
Show Gist options
  • Save mertsalik/e288de27682d23c291ce to your computer and use it in GitHub Desktop.
Save mertsalik/e288de27682d23c291ce to your computer and use it in GitHub Desktop.
import serial
import time
DELETE_COMMAND = "DEL ALL"
serialport = serial.Serial("/dev/cu.usbserial-FTG76XMX", 115200, timeout=0.1)
def mesaj_gonder(numara,mesaj,Print=False):
serialport.write("AT+CSCS=\"GSM\"\r")
response = ''.join(serialport.readlines(None))
if Print is True:
print response
serialport.write("AT+CSCA?\r")
response = ''.join(serialport.readlines(None))
if Print is True:
print response
serialport.write("AT+CMGF=1\r")
response = ''.join(serialport.readlines(None))
if Print is True:
print response
serialport.write("AT+CSCS=\"GSM\"\r")
response = ''.join(serialport.readlines(None))
if Print is True:
print response
serialport.write("AT+CSMP=17,167,0,241\r")
response = ''.join(serialport.readlines(None))
if Print is True:
print response
serialport.write("AT+CNMI=2,1,0,0,0\r")
response = ''.join(serialport.readlines(None))
if Print is True:
print response
serialport.write("AT+CMGS=\"%s\"\r" % (numara))
response = ''.join(serialport.readlines(None))
if Print is True:
print response
serialport.write(mesaj + chr(26))
response = ''.join(serialport.readlines(None))
if Print is True:
print response
def mesaj_sil(cesit):
serialport.write("AT+CSCS=\"GSM\"\r")
response = ''.join(serialport.readlines(None))
#print response
serialport.write("AT+CSCA?\r")
response = ''.join(serialport.readlines(None))
#print response
serialport.write("AT+CMGF=1\r")
response = ''.join(serialport.readlines(None))
#print response
serialport.write("AT+CSCS=\"GSM\"\r")
response = ''.join(serialport.readlines(None))
#print response
serialport.write("AT+CNMI=2,1,0,0,0\r")
response = ''.join(serialport.readlines(None))
#print response
serialport.write("AT+QMGDA=\"%s\"\r" % (cesit))
response = ''.join(serialport.readlines(None))
#print response
def son_mesaj_oku():
serialport.write("AT+CSCS=\"GSM\"\r")
response0 = ''.join(serialport.readlines(None))
serialport.write("AT+CSCA?\r")
response1 = ''.join(serialport.readlines(None))
serialport.write("AT+CMGF=1\r")
response2 = ''.join(serialport.readlines(None))
serialport.write("AT+CSCS=\"GSM\"\r")
response3 = ''.join(serialport.readlines(None))
serialport.write("AT+CNMI=2,1,0,0,0\r")
response4 = ''.join(serialport.readlines(None))
serialport.write("AT+CPMS?\r")
response5 = ''.join(serialport.readlines(None))
#print response5
mesaj_sayisi = response5.split('"SM",')[1].split(',')[0]
if mesaj_sayisi == '0':
return 0
else:
serialport.write("AT+CMGR=%s\r" % (mesaj_sayisi))
response6 = ''.join(serialport.readlines(None))
return response6
def numarayi_al(mesaj):
return mesaj.split('","')[1]
#mesaj_gonder("+905384510287","Ucuncu mesaj")
#mesaj_sil(DELETE_COMMAND)
#son_mesaj = son_mesaj_oku()
#print son_mesaj
#print numarayi_al(son_mesaj)
def sicaklik_oku():
return "25"
TEMPLATE = "SICAKLIK : "
ERROR_TEMPLATE = "Mesajin icerigi anlasilamadi!"
mesaj_sil(DELETE_COMMAND)
while True:
time.sleep(10)
son_mesaj = son_mesaj_oku()
if son_mesaj is not 0:
gelen_no = numarayi_al(son_mesaj)
mesaj_sil(DELETE_COMMAND)
if "sicaklik" in son_mesaj:
mesaj_gonder(gelen_no,TEMPLATE+sicaklik_oku())
elif "durum" in son_mesaj:
mesaj_gonder(gelen_no,TEMPLATE+sicaklik_oku())
else:
mesaj_gonder(gelen_no,ERROR_TEMPLATE)
else:
time.sleep(10)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment