wait 40s for sms

This commit is contained in:
2022-03-24 08:58:02 +01:00
parent 5e006057b4
commit aed140f232
6 changed files with 25 additions and 20 deletions
BIN
View File
Binary file not shown.
+1 -1
View File
@@ -8,4 +8,4 @@ def init_logger():
filemode='a', filemode='a',
format='%(asctime)s,%(msecs)d %(name)s %(levelname)s %(message)s', format='%(asctime)s,%(msecs)d %(name)s %(levelname)s %(message)s',
datefmt='%D:%H:%M:%S', datefmt='%D:%H:%M:%S',
level=logging.DEBUG) level=logging.INFO)
+7
View File
@@ -11,6 +11,8 @@ from pojo import ReserveResultPojo
from pojo.ReserveResultPojo import PublishType from pojo.ReserveResultPojo import PublishType
# Log subjects # Log subjects
from pojo.serial_modem import SerialModem
LOG_SUBJECT_EVENT = "EVENT" LOG_SUBJECT_EVENT = "EVENT"
LOG_SUBJECT_SMS = "SMS" LOG_SUBJECT_SMS = "SMS"
SUBJECT_SIM_INFO = "sim_card" SUBJECT_SIM_INFO = "sim_card"
@@ -63,6 +65,11 @@ class LogSender:
msg = "phone:{}, sms:{}".format(phone, sms_text) msg = "phone:{}, sms:{}".format(phone, sms_text)
self.send_log(msg=msg, subject=LOG_SUBJECT_SMS, type=TYPE_SMS_RECEIVED) self.send_log(msg=msg, subject=LOG_SUBJECT_SMS, type=TYPE_SMS_RECEIVED)
def send_timeout_log(self,serial_modem: SerialModem):
msg = "phone:{}, ccid:{}".format(serial_modem.phone_number, serial_modem.ccid)
self.send_log(msg, type=LOG_APPOINTMENT_TIMEOUT)
if __name__ == '__main__': if __name__ == '__main__':
init_logger() init_logger()
logger = logging.getLogger() logger = logging.getLogger()
+4 -4
View File
@@ -60,7 +60,7 @@ def create_modem_for_port(port: str) -> Union[SerialModem, None]:
def timeout_occurred(serial_modem: SerialModem): def timeout_occurred(serial_modem: SerialModem):
firebase_store_manager.save_timeout_contact(serial_modem.contact) firebase_store_manager.save_timeout_contact(serial_modem.contact)
oracle_log_sender.send_log(str(serial_modem.phone_number), type=LOG_APPOINTMENT_TIMEOUT) oracle_log_sender.send_timeout_log(serial_modem)
logger.info("will close timeout modem") logger.info("will close timeout modem")
serial_modem.modem.close() serial_modem.modem.close()
commandor.reset_air_plan_mode() commandor.reset_air_plan_mode()
@@ -162,8 +162,8 @@ def on_ready_for_otp(e: Event, commandor: CommandorPage):
def start_book(): def start_book():
slot_number = 1 slot_number = 3
slot_sum = 2 slot_sum = 8
for i in range(slot_number, slot_sum + 1): for i in range(slot_number, slot_sum + 1):
card_pool.reset() card_pool.reset()
logger.info("will switch to " + str(i)) logger.info("will switch to " + str(i))
@@ -214,5 +214,5 @@ if __name__ == '__main__':
logger = logging.getLogger() logger = logging.getLogger()
logger.addHandler(logging.StreamHandler(stream=sys.stdout)) logger.addHandler(logging.StreamHandler(stream=sys.stdout))
start_listen() start_listen()
# start_book() start_book()
# card_pool.switch_to_slot(12) # card_pool.switch_to_slot(12)
+2 -2
View File
@@ -9,8 +9,8 @@ from main import card_pool, get_devices_ports
def read_all_the_phone_number(): def read_all_the_phone_number():
params.oracle_log_sender.send_log(msg="SIM卡自检开始", subject=LOG_SUBJECT_EVENT, type=TYPE_EVENT_RESET_ALL_SIM_CARDS) params.oracle_log_sender.send_log(msg="SIM卡自检开始", subject=LOG_SUBJECT_EVENT, type=TYPE_EVENT_RESET_ALL_SIM_CARDS)
slot_number = 1 slot_number = 16
slot_sum = 2 slot_sum = 27
# card_pool.switch_to_slot(29) # card_pool.switch_to_slot(29)
params.firebase_store_manager.clear_all_sim_info() params.firebase_store_manager.clear_all_sim_info()
for i in range(slot_number, slot_sum + 1): for i in range(slot_number, slot_sum + 1):
+11 -13
View File
@@ -1,4 +1,3 @@
import datetime
import logging import logging
import sys import sys
import time import time
@@ -11,13 +10,11 @@ from commandor_page import CommandorPage
from logs.AppLogging import init_logger from logs.AppLogging import init_logger
from modems.ModemPool import ModemPool from modems.ModemPool import ModemPool
from modems.card_pool import CardPool from modems.card_pool import CardPool
from params import MODEM_POOL_PORTS, CARD_POOL_PORT, firebase_store_manager, oracle_log_sender from params import MODEM_POOL_PORTS, CARD_POOL_PORT
from pojo.ReserveResultPojo import ReserveResultPojo
from pojo.serial_modem import SerialModem from pojo.serial_modem import SerialModem
from utils.excel_reader import ExcelHelper from utils.excel_reader import ExcelHelper
OTP_TIMEOUT = 120 OTP_TIMEOUT = 40
is_finished = False
commandor = CommandorPage() commandor = CommandorPage()
thread_event = None thread_event = None
current_gsm_modem = None current_gsm_modem = None
@@ -30,6 +27,7 @@ current_sim_position = 1
def get_devices_ports() -> list: def get_devices_ports() -> list:
return MODEM_POOL_PORTS return MODEM_POOL_PORTS
def create_modem_for_port(port: str) -> Union[SerialModem, None]: def create_modem_for_port(port: str) -> Union[SerialModem, None]:
logger.info('Initializing modem... for ' + port) logger.info('Initializing modem... for ' + port)
serial_modem = None serial_modem = None
@@ -50,14 +48,14 @@ def timeout_occurred(serial_modem: SerialModem):
def start_to_handle_sms(serial_modem: SerialModem): def start_to_handle_sms(serial_modem: SerialModem):
global current_gsm_modem global current_gsm_modem
current_gsm_modem = serial_modem.modem current_gsm_modem = serial_modem.modem
# current_gsm_modem.deleteMultipleStoredSms(memory="MT") if "893313" in serial_modem.ccid:
# lycamobile
current_gsm_modem.deleteMultipleStoredSms(memory="SM")
serial_modem.modem.smsReceivedCallback = handle_sms serial_modem.modem.smsReceivedCallback = handle_sms
global is_finished
is_finished = False
serial_modem.modem.smsTextMode = False serial_modem.modem.smsTextMode = False
logger.info('Waiting for SMS message, for phone number ' + str(serial_modem.phone_number)) logger.info('Waiting for SMS message, for phone number ' + str(serial_modem.phone_number))
listen_at = time.time() listen_at = time.time()
while not is_finished: while True:
time.sleep(2) time.sleep(2)
# check whether timeout # check whether timeout
now = time.time() now = time.time()
@@ -67,7 +65,6 @@ def start_to_handle_sms(serial_modem: SerialModem):
timeout_occurred(serial_modem) timeout_occurred(serial_modem)
current_gsm_modem.close() current_gsm_modem.close()
return return
return
def handle_sms(sms): def handle_sms(sms):
@@ -85,9 +82,10 @@ def init_modems() -> list:
modems.append(serial_modem) modems.append(serial_modem)
return modems return modems
def start_book(): def start_book():
slot_number = 1 slot_number = 1
slot_sum = 2 slot_sum = 27
for i in range(slot_number, slot_sum + 1): for i in range(slot_number, slot_sum + 1):
card_pool.reset() card_pool.reset()
logger.info("will switch to " + str(i)) logger.info("will switch to " + str(i))
@@ -106,7 +104,8 @@ def start_book():
try: try:
# get contact for current modem # get contact for current modem
modem.get_ccid() modem.get_ccid()
contact = [contact for contact in contacts if contact.ccid.replace("F","") == modem.ccid.replace("F","")] contact = [contact for contact in contacts if
contact.ccid.replace("F", "") == modem.ccid.replace("F", "")]
if len(contact) > 0: if len(contact) > 0:
modem.phone_number = contact[0].phone modem.phone_number = contact[0].phone
modem.contact = contact[0] modem.contact = contact[0]
@@ -121,4 +120,3 @@ if __name__ == '__main__':
logger = logging.getLogger() logger = logging.getLogger()
logger.addHandler(logging.StreamHandler(stream=sys.stdout)) logger.addHandler(logging.StreamHandler(stream=sys.stdout))
start_book() start_book()
# card_pool.switch_to_slot(12)