upload_log.py 7.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234
  1. import time
  2. from dataclasses import dataclass
  3. from net.task_api import task_api
  4. PULL_ACCOUNT_OK = 4101099
  5. PULL_ACCOUNT_fail = 4101001
  6. START_SIMULATOR_OK = 4301099
  7. START_GAME_DEFAULT_OK = 4501099
  8. LOGING_GAME_OLD_OK = 4606099
  9. MAIN_DEFAULT_OK = 4701099
  10. FEE_XMY_OK = 4801099
  11. START_SIMULATOR_FAIL = 4301001
  12. START_GAME_DEFAULT_FAIL = 4501001
  13. LOGING_GAME_OLD_FAIL = 4606001
  14. MAIN_DEFAULT_FAIL = 4701099
  15. FEE_XMY_FAIL = 4801099
  16. @dataclass
  17. class UploadLog:
  18. simulator_ip: str # 模拟器ip
  19. simulator_mac: str # 模拟器mac
  20. pc_code: str # 电脑编号
  21. pc_ip: str # 电脑IP
  22. pc_mac: str # 电脑mac
  23. device_id: str # 手机_aid
  24. account: str # 游戏账号
  25. account_type: int # 游戏_账号类型
  26. pwd: str # 游戏账号密码
  27. game_id: int # 游戏编号
  28. coding: int # 错误码
  29. log_uuid: str
  30. operator: str # 负责人
  31. remarks: str # 备注
  32. task_type: int # 任务类型新增0活跃1
  33. script_type: int # 脚本类型
  34. simulator_code: str # 模拟器编号
  35. device_manufacturer: str # 手机_厂商
  36. device_model: str # 手机_型号
  37. device_imei: str # 手机_imei
  38. device_sdk: str # 手机_sdk
  39. device_mac: str # 手机_mac
  40. device_number: str # 手机_号码
  41. script_device_id: str # 脚本中上传
  42. err: str # 0或不传表示没有异常,其他表示异常,脚本端自定义
  43. simulator_ip_city: str # 手机_IP_城市
  44. # 定义一个方法,将对象转换为字典
  45. def to_dict(self):
  46. return {
  47. 'simulator_ip': self.simulator_ip,
  48. 'simulator_mac': self.simulator_mac,
  49. 'pc_code': self.pc_code,
  50. 'pc_ip': self.pc_ip,
  51. 'pc_mac': self.pc_mac,
  52. 'device_id': self.device_id,
  53. 'account': self.account,
  54. 'account_type': self.account_type,
  55. 'pwd': self.pwd,
  56. 'game_id': self.game_id,
  57. 'coding': self.coding,
  58. 'log_uuid': self.log_uuid,
  59. 'operator': self.operator,
  60. 'remarks': self.remarks,
  61. 'task_type': self.task_type,
  62. 'script_type': self.script_type,
  63. 'simulator_code': self.simulator_code,
  64. 'device_manufacturer': self.device_manufacturer,
  65. 'device_model': self.device_model,
  66. 'device_imei': self.device_imei,
  67. 'device_sdk': self.device_sdk,
  68. 'device_mac': self.device_mac,
  69. 'device_number': self.device_number,
  70. 'script_device_id': self.script_device_id,
  71. 'err': self.err,
  72. 'simulator_ip_city': self.simulator_ip_city
  73. }
  74. def log_init(uuid: str):
  75. return UploadLog(
  76. simulator_ip='',
  77. simulator_mac='',
  78. pc_code='',
  79. pc_ip='',
  80. pc_mac='',
  81. device_id='',
  82. account='',
  83. account_type=1,
  84. pwd='',
  85. game_id=5001,
  86. coding=PULL_ACCOUNT_OK,
  87. log_uuid=uuid,
  88. operator='',
  89. remarks='',
  90. task_type=1,
  91. script_type=1,
  92. simulator_code='',
  93. device_manufacturer='',
  94. device_model='',
  95. device_imei='',
  96. device_sdk='',
  97. device_mac='',
  98. device_number='',
  99. script_device_id='',
  100. err='',
  101. simulator_ip_city='',
  102. )
  103. def log_uuid(account: str) -> str:
  104. timestamp = int(time.time() * 1000)
  105. timestamp_str = str(timestamp)
  106. result = timestamp_str + "_" + account
  107. return result
  108. def _get_account_type(account_type: str):
  109. # 0:QQ 1:小绵羊 2:微信 3:魅族
  110. if account_type == "qq":
  111. return 0
  112. elif account_type == "小绵羊":
  113. return 1
  114. elif account_type == "微信":
  115. return 2
  116. elif account_type == "魅族":
  117. return 3
  118. else:
  119. return 1
  120. class LogInfo:
  121. def __init__(self, uuid: str):
  122. # uuid = log_uuid(account)
  123. self.upload_log = log_init(uuid)
  124. def set_account_info(self, game_id: int, account_type: str, pwd: str, account: str, task_type: int):
  125. try:
  126. self.upload_log.game_id = game_id
  127. self.upload_log.account_type = _get_account_type(account_type)
  128. self.upload_log.pwd = pwd
  129. self.upload_log.account = account
  130. self.upload_log.task_type = task_type
  131. return True, ""
  132. except Exception as e:
  133. return False, str(e)
  134. def set_device_info(self, device_id: str, device_manufacturer: str, device_model: str, device_imei: str,
  135. device_sdk: str, device_mac: str, device_number: str, script_device_id: str):
  136. try:
  137. self.upload_log.device_id = device_id
  138. self.upload_log.device_manufacturer = device_manufacturer
  139. self.upload_log.device_model = device_model
  140. self.upload_log.device_imei = device_imei
  141. self.upload_log.device_sdk = device_sdk
  142. self.upload_log.device_mac = device_mac
  143. self.upload_log.device_number = device_number
  144. self.upload_log.script_device_id = script_device_id
  145. return True, ""
  146. except Exception as e:
  147. return False, str(e)
  148. def set_pc_info(self, pc_code: str, pc_ip: str, pc_mac: str, operator: str):
  149. try:
  150. self.upload_log.pc_code = pc_code
  151. self.upload_log.pc_ip = pc_ip
  152. self.upload_log.pc_mac = pc_mac
  153. self.upload_log.operator = operator
  154. return True, ""
  155. except Exception as e:
  156. return False, str(e)
  157. def set_simulator_info(self, simulator_ip: str, simulator_mac: str, simulator_code: str, simulator_ip_city: str):
  158. self.upload_log.simulator_ip = simulator_ip
  159. self.upload_log.simulator_mac = simulator_mac
  160. self.upload_log.simulator_code = simulator_code
  161. self.upload_log.simulator_ip_city = simulator_ip_city
  162. def set_coding(self, coding: int, remarks: str):
  163. self.upload_log.coding = coding
  164. self.upload_log.remarks = remarks
  165. def set_err(self, err: str):
  166. self.upload_log.err = err
  167. def get_upload_log(self):
  168. return self.upload_log
  169. def upload_longin_log(self, status: int):
  170. if status == 1:
  171. self.upload_log.coding = LOGING_GAME_OLD_OK
  172. else:
  173. self.upload_log.coding = LOGING_GAME_OLD_FAIL
  174. task_api.upload_log_to_server(self.upload_log)
  175. def upload_main_log(self, status: int):
  176. if status == 1:
  177. self.upload_log.coding = MAIN_DEFAULT_OK
  178. else:
  179. self.upload_log.coding = MAIN_DEFAULT_FAIL
  180. task_api.upload_log_to_server(self.upload_log)
  181. def upload_fee_log(self, status: int):
  182. if status == 1:
  183. self.upload_log.coding = FEE_XMY_OK
  184. else:
  185. self.upload_log.coding = FEE_XMY_FAIL
  186. task_api.upload_log_to_server(self.upload_log)
  187. def upload_start_simulator_log(self, status: int):
  188. if status == 1:
  189. self.upload_log.coding = START_SIMULATOR_OK
  190. else:
  191. self.upload_log.coding = START_SIMULATOR_FAIL
  192. ret = task_api.upload_log_to_server(self.upload_log)
  193. return ret
  194. def upload_start_game_log(self, status: int):
  195. if status == 1:
  196. self.upload_log.coding = START_GAME_DEFAULT_OK
  197. else:
  198. self.upload_log.coding = START_GAME_DEFAULT_FAIL
  199. task_api.upload_log_to_server(self.upload_log)
  200. def upload_pull_account_log(self, status: int):
  201. if status == 1:
  202. self.upload_log.coding = PULL_ACCOUNT_OK
  203. else:
  204. self.upload_log.coding = PULL_ACCOUNT_fail
  205. task_api.upload_log_to_server(self.upload_log)