add new email list
This commit is contained in:
+10
-1
@@ -61,6 +61,15 @@ class DataManager:
|
||||
doc_ref = self._db.collection(ERROR_COLLECTION_NAME).document(result.phone)
|
||||
doc_ref.set(result.to_firestore_dict())
|
||||
|
||||
def find_appointment_detail_via_phone(self, day, phone) -> ReserveResultPojo:
|
||||
doc_ref = self._db.collection(day)
|
||||
results = doc_ref.where(u'phone', u'==', phone).stream()
|
||||
result_list = []
|
||||
for result in results:
|
||||
result_list.append(ReserveResultPojo.from_firestore_dict(result.to_dict()))
|
||||
if len(result_list) > 0:
|
||||
return result_list[0]
|
||||
|
||||
def save_timeout_contact(self, contact: ContactPojo):
|
||||
doc_ref = self._db.collection(TIMEOUT).document(str(contact.phone))
|
||||
doc_ref.set(contact.to_firestore_dict())
|
||||
@@ -147,7 +156,7 @@ class DataManager:
|
||||
|
||||
|
||||
if __name__ == '__main__':
|
||||
# params.firebase_store_manager.upload_contact_list_to_cloud()
|
||||
# params.firebase_store_manager.find_appointment_detail_via_phone(str(datetime.date.today()), 613467904)
|
||||
params.firebase_store_manager.save_to_excel()
|
||||
# params.firebase_store_manager.clear_all_sim_info()
|
||||
# print(params.firebase_store_manager.get_mail_list())
|
||||
|
||||
@@ -2,6 +2,7 @@ from dataclasses import dataclass
|
||||
|
||||
from dataclasses_json import dataclass_json
|
||||
|
||||
from pojo import ReserveResultPojo
|
||||
from pojo.SimInfoPojo import SimInfoPojo
|
||||
|
||||
|
||||
@@ -19,7 +20,7 @@ class AcceptedResultPojo:
|
||||
self.phone = phone
|
||||
|
||||
|
||||
def get_accepted_result_from(sms, sim_info: SimInfoPojo) -> AcceptedResultPojo:
|
||||
def get_accepted_result_from(sms, sim_info: ReserveResultPojo) -> AcceptedResultPojo:
|
||||
return AcceptedResultPojo(sms.text, slot_position=sim_info.slot_position, sim_position=sim_info.sim_position,
|
||||
passport=sim_info.passport, email=sim_info.email, phone=sim_info.phone,
|
||||
name=sim_info.name)
|
||||
name="{} {}".format(sim_info.lastName, sim_info.firstName))
|
||||
|
||||
@@ -28,9 +28,8 @@ class Mailer:
|
||||
aws_secret_access_key=secret)
|
||||
|
||||
def send_email(self, result: AcceptedResultPojo):
|
||||
# recipients = params.firebase_store_manager.get_mail_list()
|
||||
|
||||
recipients = ['panleicim@gmail.com','kamenonly@gmail.com']
|
||||
recipients = ['panleicim@gmail.com', 'kamenonly@gmail.com', 'tangliang0411@gmail.com']
|
||||
# recipients = ['panleicim@gmail.com']
|
||||
|
||||
mytemplate = Template(filename=definitions.ROOT_DIR + "/templates/appointment_results.html")
|
||||
self.logger.info("send email to " + str(recipients))
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
import datetime
|
||||
import json
|
||||
import logging
|
||||
import threading
|
||||
@@ -28,7 +29,7 @@ class WaitSmsWorker:
|
||||
"sms received for phone:{}(ccid:{})".format(self.serial_modem.phone_number, self.serial_modem.ccid))
|
||||
self.logger.info(
|
||||
u'== SMS message received ==\nFrom: {0}\nTime: {1}\nMessage:\n{2}\n'.format(sms.number, sms.time, sms.text))
|
||||
self.check_sms(sms, self.serial_modem.ccid)
|
||||
self.check_sms(sms, int(self.serial_modem.phone_number))
|
||||
params.oracle_log_sender.send_sms_reception_log(sms.number, sms.text, self.serial_modem.ccid)
|
||||
|
||||
def run(self):
|
||||
@@ -67,14 +68,15 @@ class WaitSmsWorker:
|
||||
else:
|
||||
return None
|
||||
|
||||
def check_sms(self, sms: Sms, ccid: str):
|
||||
self.logger.info("check sms")
|
||||
def check_sms(self, sms: Sms, phone: int):
|
||||
self.logger.info("核查 sms")
|
||||
if sms.number == self.HERMES_RDV:
|
||||
if self.ACCEPT_SENTENCE in sms.text:
|
||||
self.logger.info("收到来自hermes的短信,准备发送邮件")
|
||||
mailer = Mailer()
|
||||
sim_info = self.find_info_via_ccid(ccid)
|
||||
accepted_result = get_accepted_result_from(sms, sim_info)
|
||||
result_pojo = params.firebase_store_manager.find_appointment_detail_via_phone(
|
||||
str(datetime.date.today()), phone)
|
||||
accepted_result = get_accepted_result_from(sms, result_pojo)
|
||||
mailer.send_email(accepted_result)
|
||||
|
||||
|
||||
@@ -82,4 +84,4 @@ if __name__ == '__main__':
|
||||
worker = WaitSmsWorker(None)
|
||||
sms = Sms("HERMES RDV",
|
||||
"We are pleased to confirm your appointment. You will be welcomed on Apr 14, 2022 in our store at 17 rue de Sèvres at 4:45 PM. The given hour may be subje")
|
||||
worker.check_sms(sms, "8933130070216295758F")
|
||||
worker.check_sms(sms, int('613467904'))
|
||||
|
||||
Reference in New Issue
Block a user