37 lines
1.3 KiB
Python
37 lines
1.3 KiB
Python
import datetime
|
|
import argparse
|
|
import telebot
|
|
|
|
parser = argparse.ArgumentParser(description='send door status')
|
|
parser.add_argument('--did', type=str, default="1", help='door ID')
|
|
parser.add_argument('--ds', type=int, default=0, help='door status')
|
|
parser.add_argument('--dv', type=float, default=0, help='Vbat voltage')
|
|
parser.add_argument('--t', type=float, default=-1, help='Temperature')
|
|
parser.add_argument('--h', type=float, default=-1, help='Humidity')
|
|
parser.add_argument('--tgids', type=str, default="245058979", help='TG IDs list')
|
|
parser.add_argument('--tgtok', type=str, default="5563613923:AAFGYdokQYJfTTQYhJftGZy3KtMDSZg5p6Q", help='TG token')
|
|
args = parser.parse_args()
|
|
|
|
homebot = telebot.TeleBot(args.tgtok)
|
|
vbat = ''
|
|
|
|
if(float(args.dv)>=0):
|
|
vbat = " / Аккумулятор %.2fV" % args.dv
|
|
|
|
if(float(args.t)!=-1):
|
|
vbat = "%s / Температура %.2fV" % (vbat, args.t)
|
|
if(float(args.h)!=-1):
|
|
vbat = "%s / Влажность %.2fV" % (vbat, args.h)
|
|
|
|
ts = datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S.%f")
|
|
if(int(args.ds)==0):
|
|
msg = "Дверь %s. Открытие. %s%s" % (args.did, ts, vbat)
|
|
else:
|
|
msg = "Дверь %s. Закрытие. %s%s" % (args.did, ts, vbat)
|
|
|
|
uids = args.tgids.split(",")
|
|
for uid in uids:
|
|
homebot.send_message(uid, msg)
|
|
|
|
|