config.py 13 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424
  1. #!/usr/bin/env python3
  2. # -*- coding: utf-8 -*-
  3. """
  4. @Copyright (C) ansjer cop Video Technology Co.,Ltd.All rights reserved.
  5. @AUTHOR: ASJRD018
  6. @NAME: Ansjer
  7. @software: PyCharm
  8. @DATE: 2018/7/2 14:06
  9. @Version: python3.6
  10. @MODIFY DECORD:ansjer dev
  11. @file: Conf.py
  12. @Contact: chanjunkai@163.com
  13. """
  14. # 主要静态变量配置文件
  15. import datetime, os
  16. SERVER_TYPE = os.environ.get('DJANGO_SETTINGS_MODULE')
  17. print(SERVER_TYPE)
  18. # 亚马逊的数据库DynamoDB的密钥
  19. AWS_DynamoDB_REGION = 'us-west-1'
  20. AWS_DynamoDB_ACCESS_KEY = 'AKIA2E67UIMD6X23FEBG'
  21. AWS_DynamoDB_SECRET_KEY = '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'
  22. # 阿里云发邮箱
  23. ALY_SES_ACCESS_NAME = 'message@dvema.com'
  24. ALY_SES_ACCESS_PAW = 'SMtp123456'
  25. ALY_SES_ACCESS_REPLYTO = '***'
  26. # 发送邮件邮箱
  27. SES_COMPANY_EMAIL = 'user_server@nsst.com'
  28. AWS_SES_ACCESS_ID = 'AKIAJKPU23EU5QWHFPKQ'
  29. AWS_SES_ACCESS_SECRET = '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'
  30. AWS_SES_ACCESS_REGION = 'us-east-1'
  31. AWS_SES_ACCESS_REGION_WEST = 'us-west-1'
  32. AWS_BUCKET = 'ansjertest'
  33. # 设定离线时间为5分钟
  34. OFF_LINE_TIME_DELTA = 5
  35. # token的secret
  36. OAUTH_ACCESS_TOKEN_SECRET = 'a+jbgnw%@1%zy^=@dn62%'
  37. OAUTH_REFRESH_TOKEN_SECRET = 'r+jbgnw%@1%zy^=@dn62%'
  38. # access_token超时
  39. # OAUTH_ACCESS_TOKEN_TIME = datetime.timedelta(hours=1)
  40. OAUTH_ACCESS_TOKEN_TIME = datetime.timedelta(days=30)
  41. # refresh_token超时
  42. OAUTH_REFRESH_TOKEN_TIME = datetime.timedelta(days=30)
  43. # 腾讯验证,短信发送
  44. TX_PHONE_APP_ID = '1400052907'
  45. TX_PHONE_APP_KEY = '7705976ca6e85fe7b86d6bc2d11f7783'
  46. # 验证码超时时间
  47. AuthCode_Expire = 600
  48. RTMP_PUSH_URL = 'http://13.56.215.252:8091/hls'
  49. # 根路径
  50. BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
  51. ADDR_URL = []
  52. # uid token key
  53. UID_TOKEN_KEY = 'c+565*j@%^'
  54. UNICODE_ASCII_CHARACTER_SET = ('abcdefghijklmnopqrstuvwxyz'
  55. 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'
  56. '0123456789')
  57. # oss param
  58. OSS_STS_ACCESS_KEY = 'LTAIyMkGfEdogyL9'
  59. OSS_STS_ACCESS_SECRET = '71uIjpsqVOmF7DAITRyRuc259jHOjO'
  60. OSS_ROLE_ARN = 'acs:ram::1901342792446414:role/stsoss'
  61. # aws api key
  62. AWS_ACCESS_KEY_ID = ['AKIA2MMWBR4DSFG67DTG','AKIA2E67UIMD45Y3HL53'] #0国内, 1国外
  63. AWS_SECRET_ACCESS_KEY = ['aI9gxcAKPmiGgPy9axrtFKzjYGbvpuytEX4xWweL','ckYLg4Lo9ZXJIcJEAKkzf2rWvs8Xth1FCjqiAqUw']
  64. AWS_ARN = ['arn:aws-cn:s3','arn:aws:s3']
  65. #尚云服务器CRCKey
  66. CRCKey = {'AUS':'CRCKey', 'ACN':'CRCKey'} #{平台名:CRCKey值}
  67. # 不同环境配置
  68. # 本地
  69. if SERVER_TYPE == 'Ansjer.local_config.local_settings':
  70. from Ansjer.local_config.config_local import *
  71. # 美国
  72. elif SERVER_TYPE == 'Ansjer.us_config.test_settings':
  73. from Ansjer.us_config.config_test import *
  74. elif SERVER_TYPE == 'Ansjer.us_config.formal_settings':
  75. from Ansjer.us_config.config_formal import *
  76. # 国内
  77. elif SERVER_TYPE == 'Ansjer.cn_config.formal_settings':
  78. from Ansjer.cn_config.config_formal import *
  79. elif SERVER_TYPE == 'Ansjer.cn_config.test_settings':
  80. from Ansjer.cn_config.config_test import *
  81. DEVICE_TYPE = {
  82. 0: 'UNKOWN',
  83. 1: 'DVR',
  84. 2: 'NVR',
  85. 3: 'POENVR',
  86. 4: 'WIRELESSNVR',
  87. 5: 'POEIPC',
  88. 6: 'BOLTIPC',
  89. 7: 'IPC',
  90. 8: 'KAPIANJI',
  91. 9: 'FISHEYE',
  92. 10: 'C512',
  93. 11: 'C611',
  94. 12: 'C612',
  95. 13: 'C199',
  96. 14: 'C190',
  97. 15: 'C199_PRO',
  98. 17: 'C289',
  99. 18: 'C308',
  100. 10001: 'DVRPTZ'
  101. }
  102. APP_FREQUENT = {
  103. 0: 'UNKOWN',
  104. 1: '每天',
  105. 2: '三天',
  106. 3: '一周',
  107. 4: '两周',
  108. 5: '一个月',
  109. 6: '一个月以上',
  110. }
  111. # Iot Core国外
  112. AWS_IOT_SES_ACCESS_FOREIGN_ID = 'AKIA2E67UIMD62VUBV5I'
  113. AWS_IOT_SES_ACCESS_FOREIGN_SECRET = '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'
  114. AWS_IOT_SES_ACCESS_FOREIGN_REGION_AMERICA = 'us-east-1'
  115. AWS_IOT_SES_ACCESS_FOREIGN_REGION_ASIA = 'ap-southeast-1'
  116. AWS_IOT_SES_ACCESS_FOREIGN_REGION_EUROPE = 'eu-west-1'
  117. AWS_IOT_SES_ACCESS_FOREIGN_ROLE = 'arn:aws:iam::697864307463:role/Ansjer_Iot_Admin'
  118. # Iot 获取上传S3日志 key国外
  119. AWS_IOT_GETS3_PULL_FOREIGN_ID = 'AKIA2E67UIMDZSLTUD22'
  120. AWS_IOT_GETS3_PULL_FOREIGN_SECRET = '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'
  121. # Iot 获取上传S3日志 key国内
  122. AWS_IOT_GETS3_PULL_CHINA_ID = 'AKIA2MMWBR4D3F4IEZE5'
  123. AWS_IOT_GETS3_PULL_CHINA_SECRET = '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'
  124. # Iot Core国内
  125. AWS_IOT_SES_ACCESS_CHINA_ID = 'AKIA2MMWBR4DUUYPCFNJ'
  126. AWS_IOT_SES_ACCESS_CHINA_SECRET = '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'
  127. AWS_IOT_SES_ACCESS_CHINA_REGION = 'cn-northwest-1'
  128. AWS_IOT_SES_ACCESS_CHINA_ROLE = 'arn:aws-cn:iam::713816116999:role/service-role/Ansjer_Iot_Admin'
  129. IOT_HOST = {
  130. 1: 'a250bbr0p9u7as-ats.iot.cn-northwest-1.amazonaws.com.cn',
  131. 2: 'a2rqy12o004ad8-ats.iot.ap-southeast-1.amazonaws.com',
  132. 3: 'a2rqy12o004ad8-ats.iot.eu-west-1.amazonaws.com',
  133. 4: 'a2rqy12o004ad8-ats.iot.us-east-1.amazonaws.com'
  134. }
  135. ONLINE_DEVICE = 1000000
  136. SALES = {
  137. 2020: [
  138. {
  139. 'name': 'United States',
  140. 'value': [3768901, 23.337, '美国']
  141. },
  142. {
  143. 'name': 'Japan',
  144. 'value': [1886988, 9.027, '日本']
  145. },
  146. {
  147. 'name': 'Russia',
  148. 'value': [1940038, 7.923, '俄国']
  149. },
  150. {
  151. 'name': 'Germany',
  152. 'value': [1319651, 6.253, '德国']
  153. },
  154. {
  155. 'name': 'France',
  156. 'value': [1291157, 5.825, '法国']
  157. },
  158. {
  159. 'name': 'United Kingdom',
  160. 'value': [1041917, 4.567, '英国']
  161. },
  162. {
  163. 'name': 'Italy',
  164. 'value': [859811, 3.875, '意大利']
  165. }
  166. ],
  167. 2019: [
  168. {
  169. 'name': 'United States',
  170. 'value': [2768900, 37.374, '美国']
  171. },
  172. {
  173. 'name': 'Japan',
  174. 'value': [1086988, 14.672, '日本']
  175. },
  176. {
  177. 'name': 'Russia',
  178. 'value': [940038, 12.689, '俄国']
  179. },
  180. {
  181. 'name': 'Germany',
  182. 'value': [919651, 12.413, '德国']
  183. },
  184. {
  185. 'name': 'France',
  186. 'value': [691157, 9.329, '法国']
  187. },
  188. {
  189. 'name': 'United Kingdom',
  190. 'value': [541917, 7.315, '英国']
  191. },
  192. {
  193. 'name': 'Italy',
  194. 'value': [459811, 6.206, '意大利']
  195. }
  196. ],
  197. 2018: [
  198. {
  199. 'name': 'United States',
  200. 'value': [2068912, 32.329, '美国']
  201. },
  202. {
  203. 'name': 'Japan',
  204. 'value': [1007988, 15.751, '日本']
  205. },
  206. {
  207. 'name': 'Germany',
  208. 'value': [909653, 14.214, '德国']
  209. },
  210. {
  211. 'name': 'Russia',
  212. 'value': [900038, 14.064, '俄国']
  213. },
  214. {
  215. 'name': 'France',
  216. 'value': [601158, 9.394, '法国']
  217. },
  218. {
  219. 'name': 'United Kingdom',
  220. 'value': [501920, 7.843, '英国']
  221. },
  222. {
  223. 'name': 'Italy',
  224. 'value': [409813, 6.404, '意大利']
  225. }
  226. ],
  227. 2017: [
  228. {
  229. 'name': 'United States',
  230. 'value': [1668900, 30.914, '美国']
  231. },
  232. {
  233. 'name': 'Japan',
  234. 'value': [906988, 16.800, '日本']
  235. },
  236. {
  237. 'name': 'Germany',
  238. 'value': [809651, 14.998, '德国']
  239. },
  240. {
  241. 'name': 'Russia',
  242. 'value': [800038, 14.820, '俄国']
  243. },
  244. {
  245. 'name': 'France',
  246. 'value': [501157, 9.283, '法国']
  247. },
  248. {
  249. 'name': 'United Kingdom',
  250. 'value': [401920, 7.445, '英国']
  251. },
  252. {
  253. 'name': 'Italy',
  254. 'value': [309822, 5.739, '意大利']
  255. }
  256. ],
  257. 2016: [
  258. {
  259. 'name': 'United States',
  260. 'value': [1468900, 31.943, '美国']
  261. },
  262. {
  263. 'name': 'Japan',
  264. 'value': [806988, 17.549, '日本']
  265. },
  266. {
  267. 'name': 'Germany',
  268. 'value': [709651, 15.432, '德国']
  269. },
  270. {
  271. 'name': 'Russia',
  272. 'value': [700038, 15.223, '俄国']
  273. },
  274. {
  275. 'name': 'France',
  276. 'value': [401157, 8.724, '法国']
  277. },
  278. {
  279. 'name': 'United Kingdom',
  280. 'value': [301917, 6.566, '英国']
  281. },
  282. {
  283. 'name': 'Italy',
  284. 'value': [209811, 4.562, '意大利']
  285. }
  286. ]
  287. }
  288. # type =2
  289. JPUSH_CONFIG = {
  290. 'com.ansjer.accloud_ab': {
  291. 'Key': 'f0dc047e5e53fd14199de5b0',
  292. 'Secret': 'aa7f7db33e9f0a7f3871aa1c'},
  293. 'com.ansjer.adcloud_ab': {
  294. 'Key': '76d97b535185114985608234',
  295. 'Secret': 'c9a92b301043cc9c52778692'},
  296. 'com.ansjer.zccloud_ab': {
  297. 'Key': 'd9924f56d3cc7c6017965130',
  298. 'Secret': '869d832d126a232f158b5987'},
  299. 'com.ansjer.loocamccloud_ab': {
  300. 'Key': 'd1cc44797b4642b0e05304fe',
  301. 'Secret': 'c3e8b4ca8c576de61401e56a'},
  302. 'com.ansjer.loocamdcloud_ab': {
  303. 'Key': '76d97b535185114985608234',
  304. 'Secret': 'c9a92b301043cc9c52778692'},
  305. 'com.ansjer.zccloud_a': {
  306. 'Key': '57de2a80d68bf270fd6bdf5a',
  307. 'Secret': '3d354eb6a0b49c2610decf42'},
  308. 'com.ansjer.accloud_a': {
  309. 'Key': 'ff95ee685f49c0dc4013347b',
  310. 'Secret': 'de2c20959f5516fdeeafe78e'},
  311. 'com.ansjer.adcloud_a': {
  312. 'Key': '2e47eb1aee9b164460df3668',
  313. 'Secret': 'b9137d8d684bc248f1809b6d'},
  314. 'com.ansjer.loocamccloud_a': {
  315. 'Key': '23c9213215c7ca0ec945629b',
  316. 'Secret': '81e4b1e859cc8387e2e6c431'},
  317. 'com.ansjer.loocamdcloud_a': {
  318. 'Key': '1dbdd60a16e9892d6f68a073',
  319. 'Secret': '80a97690e7e043109059b403'},
  320. 'com.ansjer.customizedb_a': {
  321. 'Key': '9d79630aa49adfa291fe2568',
  322. 'Secret': '4d8ff52f88136561875a0212'},
  323. 'com.ansjer.customizedd_a': {
  324. 'Key': '8fc4f495685bde53341ee25d',
  325. 'Secret': 'f1da11fa466509fa2670fb66',
  326. }
  327. }
  328. # type =1
  329. FCM_CONFIG = {
  330. 'com.ansjer.zccloud_a': 'AAAAb9YP3rk:APA91bHu8u-CTpcd0g6lKPo0WNVqCi8jZub1cPPbSAY9AucT1HxlF65ZDUko9iG8q2ch17bwu9YWHpK1xI1gHSRXCslLvZlXEmHZC0AG3JKg15XuUvlFKACIajUFV-pOeGRT8tM6-31I',
  331. 'com.ansjer.loocamccloud_a': 'AAAAb9YP3rk:APA91bFCgd-kbVmpK4EVpfdHH_PJZQCYTkOGnTZdIuBWEz2r7aMRsJYHOH3sB-rwcbaRWgnufTyjX9nGQxb6KxQbWVk4ah_H-M3IqGh6Mb60WQQAuR33V6g_Jes5pGL6ViuIxGHqVMaR',
  332. 'com.ansjer.loocamdcloud_a': 'AAAAb9YP3rk:APA91bGw2I2KMD4i-5T7nZO_wB8kuAOuqgyqe5rxmY-W5qkpYEx9IL2IfmC_qf6B_xOyjIDDSjckvMo-RauN__SEoxvAkis7042GRkoKpw7cjZ_H8lC-d50PC0GclPzccrOGFusyKbFY',
  333. 'com.ansjer.customizedb_a': 'AAAAb9YP3rk:APA91bE7kI4vcm-9h_CJNFlOZfc-xwP4Btn6AnjOrwoKV6fgYN7fdarkO76sYxVZiAbDnxsFfOJyP7vQfwyan6mdjuyD5iHdt_XgO22VqniC0vA1V4GJiCS8Tp7LxIX8JVKZl9I_Powt',
  334. 'com.ansjer.customizeda_a': 'AAAAb9YP3rk:APA91bF0HzizVWDc6dKzobY9fsaKDK4veqkOZehDXshVXs8pEEvNWjR_YWbhP60wsRYCHCal8fWN5cECVOWNMMzDsfU88Ty2AUl8S5FtZsmeDTkoGntQOswBr8Ln7Fm_LAp1VqTf9CpM',
  335. 'com.ansjer.customizedd_a': 'AAAAb9YP3rk:APA91bHkxOozJWBrlv3eNT0PgwosYENI9aM4Zuzd418cX-iKkpa1zFNC5MkNDKApx1KH4fhmAfaJ6IMRZ0nj5GIxCpstDYCaZWwgC7-etqfSxG5JAq8LOwJx0o_1tUZqwjIic8ztsg0o',
  336. 'com.ansjer.adcloud_a': 'AAAAb9YP3rk:APA91bFm06w8b9OKQ0gz0iaWFuRqRIkvgAz6z7Gp3dBU_X-LNGJQd1hc1QR2W7QzBglF8SHtERA45a2lbdLRa5qv7hxfd6W_sJLBK7dA8jklsOQBvy505oUzTwMKWy4TwH-exps9KrhO',
  337. 'com.ansjer.accloud_a': 'AAAAb9YP3rk:APA91bFm06w8b9OKQ0gz0iaWFuRqRIkvgAz6z7Gp3dBU_X-LNGJQd1hc1QR2W7QzBglF8SHtERA45a2lbdLRa5qv7hxfd6W_sJLBK7dA8jklsOQBvy505oUzTwMKWy4TwH-exps9KrhO',
  338. 'com.ansjer.zccloud_ab': 'AAAAb9YP3rk:APA91bHu8u-CTpcd0g6lKPo0WNVqCi8jZub1cPPbSAY9AucT1HxlF65ZDUko9iG8q2ch17bwu9YWHpK1xI1gHSRXCslLvZlXEmHZC0AG3JKg15XuUvlFKACIajUFV-pOeGRT8tM6-31I',
  339. }
  340. APNS_CONFIG = {
  341. 'com.ansjer.loocamccloud': {
  342. 'pem_path': 'AnsjerPush/file/apns_pem/lcc-dev.pem',
  343. },
  344. 'com.ansjer.zosidcloud': {
  345. 'pem_path': 'AnsjerPush/file/apns_pem/zosidcloud-dev.pem',
  346. },
  347. 'com.ansjer.customizedb': {
  348. 'pem_path': 'AnsjerPush/file/apns_pem/customizedb-dev.pem',
  349. },
  350. 'com.ansjer.customizeda': {
  351. 'pem_path': 'AnsjerPush/file/apns_pem/customizeda-dev.pem',
  352. },
  353. 'com.ansjer.zccloud': {
  354. 'pem_path': 'Ansjer/file/apns_pem/zccloud-dev.pem',
  355. },
  356. 'com.ansjer.accloud': {
  357. 'pem_path': 'AnsjerPush/file/apns_pem/accloud-dev.pem',
  358. },
  359. 'com.ansjer.customizedc':{
  360. 'pem_path': 'AnsjerPush/file/apns_pem/customizedc.pem',
  361. },
  362. 'com.ansjer.customizede': {
  363. 'pem_path': 'AnsjerPush/file/apns_pem/customizede.pem',
  364. },
  365. }
  366. APNS_MODE = 'dev'
  367. SERVER_TYPE = os.environ.get('DJANGO_SETTINGS_MODULE')
  368. JPUSH_CODE = {
  369. -1: '只库存不推送',
  370. 200: '推送成功',
  371. 400: '错误请求',
  372. 401: '没有验证信息或者验证失败',
  373. 403: '请求被拒绝',
  374. 404: '资源不存在,请求的用户的不存在,请求的格式不被支持',
  375. 405: '请求方法不合适',
  376. 410: '请求的资源已下线',
  377. 429: '请求超出了频率限制',
  378. 500: '极光内部服务错误',
  379. 502: '业务服务器下线了或者正在升级。请稍后重试',
  380. 503: '服务暂时失效',
  381. 504: '代理超时'
  382. }
  383. APNS_CODE = {
  384. -1: '只库存不推送',
  385. 200: '推送成功',
  386. 400: '请求有问题',
  387. 403: '证书或Token有问题',
  388. 405: '请求方式不正确, 只支持POST请求',
  389. 410: '设备的Token与证书不一致'
  390. }
  391. APP_TYPE = {
  392. 1: 'ios',
  393. 2: 'android'
  394. }