config.py 12 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405
  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. # uid token key
  52. UID_TOKEN_KEY = 'c+565*j@%^'
  53. UNICODE_ASCII_CHARACTER_SET = ('abcdefghijklmnopqrstuvwxyz'
  54. 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'
  55. '0123456789')
  56. # oss param
  57. OSS_STS_ACCESS_KEY = 'LTAIyMkGfEdogyL9'
  58. OSS_STS_ACCESS_SECRET = '71uIjpsqVOmF7DAITRyRuc259jHOjO'
  59. OSS_ROLE_ARN = 'acs:ram::1901342792446414:role/stsoss'
  60. # aws api key
  61. AWS_ACCESS_KEY_ID = ['AKIA2MMWBR4DSFG67DTG','AKIA2E67UIMD45Y3HL53'] #0国内, 1国外
  62. AWS_SECRET_ACCESS_KEY = ['aI9gxcAKPmiGgPy9axrtFKzjYGbvpuytEX4xWweL','ckYLg4Lo9ZXJIcJEAKkzf2rWvs8Xth1FCjqiAqUw']
  63. AWS_ARN = ['arn:aws-cn:s3','arn:aws:s3']
  64. # 不同环境配置
  65. if SERVER_TYPE == 'Ansjer.local_settings':
  66. from Ansjer.config_local import *
  67. elif SERVER_TYPE == 'Ansjer.test_settings':
  68. from Ansjer.config_test import *
  69. elif SERVER_TYPE == 'Ansjer.formal_settings':
  70. from Ansjer.config_formal import *
  71. DEVICE_TYPE = {
  72. 0: 'UNKOWN',
  73. 1: 'DVR',
  74. 2: 'NVR',
  75. 3: 'POENVR',
  76. 4: 'WIRELESSNVR',
  77. 5: 'POEIPC',
  78. 6: 'BOLTIPC',
  79. 7: 'IPC',
  80. 8: 'KAPIANJI',
  81. 9: 'FISHEYE',
  82. 10: 'C512',
  83. 11: 'C611',
  84. 12: 'C612',
  85. 13: 'C199',
  86. 14: 'C190',
  87. 15: 'C199_PRO',
  88. 17: 'C289',
  89. 18: 'C308',
  90. 10001: 'DVRPTZ'
  91. }
  92. APP_FREQUENT = {
  93. 0: 'UNKOWN',
  94. 1: '每天',
  95. 2: '三天',
  96. 3: '一周',
  97. 4: '两周',
  98. 5: '一个月',
  99. 6: '一个月以上',
  100. }
  101. # Iot Core国外
  102. AWS_IOT_SES_ACCESS_FOREIGN_ID = 'AKIA2E67UIMD62VUBV5I'
  103. AWS_IOT_SES_ACCESS_FOREIGN_SECRET = '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'
  104. AWS_IOT_SES_ACCESS_FOREIGN_REGION_AMERICA = 'us-east-1'
  105. AWS_IOT_SES_ACCESS_FOREIGN_REGION_ASIA = 'ap-southeast-1'
  106. AWS_IOT_SES_ACCESS_FOREIGN_REGION_EUROPE = 'eu-west-1'
  107. AWS_IOT_SES_ACCESS_FOREIGN_ROLE = 'arn:aws:iam::697864307463:role/Ansjer_Iot_Admin'
  108. # Iot Core国内
  109. AWS_IOT_SES_ACCESS_CHINA_ID = 'AKIA2MMWBR4DUUYPCFNJ'
  110. AWS_IOT_SES_ACCESS_CHINA_SECRET = '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'
  111. AWS_IOT_SES_ACCESS_CHINA_REGION = 'cn-northwest-1'
  112. AWS_IOT_SES_ACCESS_CHINA_ROLE = 'arn:aws-cn:iam::713816116999:role/service-role/Ansjer_Iot_Admin'
  113. IOT_HOST = {
  114. 1: 'a250bbr0p9u7as-ats.iot.cn-northwest-1.amazonaws.com.cn',
  115. 2: 'a2rqy12o004ad8-ats.iot.ap-southeast-1.amazonaws.com',
  116. 3: 'a2rqy12o004ad8-ats.iot.eu-west-1.amazonaws.com',
  117. 4: 'a2rqy12o004ad8-ats.iot.us-east-1.amazonaws.com'
  118. }
  119. ONLINE_DEVICE = 1000000
  120. SALES = {
  121. 2020: [
  122. {
  123. 'name': 'United States',
  124. 'value': [3768901, 23.337, '美国']
  125. },
  126. {
  127. 'name': 'Japan',
  128. 'value': [1886988, 9.027, '日本']
  129. },
  130. {
  131. 'name': 'Russia',
  132. 'value': [1940038, 7.923, '俄国']
  133. },
  134. {
  135. 'name': 'Germany',
  136. 'value': [1319651, 6.253, '德国']
  137. },
  138. {
  139. 'name': 'France',
  140. 'value': [1291157, 5.825, '法国']
  141. },
  142. {
  143. 'name': 'United Kingdom',
  144. 'value': [1041917, 4.567, '英国']
  145. },
  146. {
  147. 'name': 'Italy',
  148. 'value': [859811, 3.875, '意大利']
  149. }
  150. ],
  151. 2019: [
  152. {
  153. 'name': 'United States',
  154. 'value': [2768900, 37.374, '美国']
  155. },
  156. {
  157. 'name': 'Japan',
  158. 'value': [1086988, 14.672, '日本']
  159. },
  160. {
  161. 'name': 'Russia',
  162. 'value': [940038, 12.689, '俄国']
  163. },
  164. {
  165. 'name': 'Germany',
  166. 'value': [919651, 12.413, '德国']
  167. },
  168. {
  169. 'name': 'France',
  170. 'value': [691157, 9.329, '法国']
  171. },
  172. {
  173. 'name': 'United Kingdom',
  174. 'value': [541917, 7.315, '英国']
  175. },
  176. {
  177. 'name': 'Italy',
  178. 'value': [459811, 6.206, '意大利']
  179. }
  180. ],
  181. 2018: [
  182. {
  183. 'name': 'United States',
  184. 'value': [2068912, 32.329, '美国']
  185. },
  186. {
  187. 'name': 'Japan',
  188. 'value': [1007988, 15.751, '日本']
  189. },
  190. {
  191. 'name': 'Germany',
  192. 'value': [909653, 14.214, '德国']
  193. },
  194. {
  195. 'name': 'Russia',
  196. 'value': [900038, 14.064, '俄国']
  197. },
  198. {
  199. 'name': 'France',
  200. 'value': [601158, 9.394, '法国']
  201. },
  202. {
  203. 'name': 'United Kingdom',
  204. 'value': [501920, 7.843, '英国']
  205. },
  206. {
  207. 'name': 'Italy',
  208. 'value': [409813, 6.404, '意大利']
  209. }
  210. ],
  211. 2017: [
  212. {
  213. 'name': 'United States',
  214. 'value': [1668900, 30.914, '美国']
  215. },
  216. {
  217. 'name': 'Japan',
  218. 'value': [906988, 16.800, '日本']
  219. },
  220. {
  221. 'name': 'Germany',
  222. 'value': [809651, 14.998, '德国']
  223. },
  224. {
  225. 'name': 'Russia',
  226. 'value': [800038, 14.820, '俄国']
  227. },
  228. {
  229. 'name': 'France',
  230. 'value': [501157, 9.283, '法国']
  231. },
  232. {
  233. 'name': 'United Kingdom',
  234. 'value': [401920, 7.445, '英国']
  235. },
  236. {
  237. 'name': 'Italy',
  238. 'value': [309822, 5.739, '意大利']
  239. }
  240. ],
  241. 2016: [
  242. {
  243. 'name': 'United States',
  244. 'value': [1468900, 31.943, '美国']
  245. },
  246. {
  247. 'name': 'Japan',
  248. 'value': [806988, 17.549, '日本']
  249. },
  250. {
  251. 'name': 'Germany',
  252. 'value': [709651, 15.432, '德国']
  253. },
  254. {
  255. 'name': 'Russia',
  256. 'value': [700038, 15.223, '俄国']
  257. },
  258. {
  259. 'name': 'France',
  260. 'value': [401157, 8.724, '法国']
  261. },
  262. {
  263. 'name': 'United Kingdom',
  264. 'value': [301917, 6.566, '英国']
  265. },
  266. {
  267. 'name': 'Italy',
  268. 'value': [209811, 4.562, '意大利']
  269. }
  270. ]
  271. }
  272. # type =2
  273. JPUSH_CONFIG = {
  274. 'com.ansjer.accloud_ab': {
  275. 'Key': 'f0dc047e5e53fd14199de5b0',
  276. 'Secret': 'aa7f7db33e9f0a7f3871aa1c'},
  277. 'com.ansjer.adcloud_ab': {
  278. 'Key': '76d97b535185114985608234',
  279. 'Secret': 'c9a92b301043cc9c52778692'},
  280. 'com.ansjer.zccloud_ab': {
  281. 'Key': 'd9924f56d3cc7c6017965130',
  282. 'Secret': '869d832d126a232f158b5987'},
  283. 'com.ansjer.loocamccloud_ab': {
  284. 'Key': 'd1cc44797b4642b0e05304fe',
  285. 'Secret': 'c3e8b4ca8c576de61401e56a'},
  286. 'com.ansjer.loocamdcloud_ab': {
  287. 'Key': '76d97b535185114985608234',
  288. 'Secret': 'c9a92b301043cc9c52778692'},
  289. 'com.ansjer.zccloud_a': {
  290. 'Key': '57de2a80d68bf270fd6bdf5a',
  291. 'Secret': '3d354eb6a0b49c2610decf42'},
  292. 'com.ansjer.accloud_a': {
  293. 'Key': 'ff95ee685f49c0dc4013347b',
  294. 'Secret': 'de2c20959f5516fdeeafe78e'},
  295. 'com.ansjer.adcloud_a': {
  296. 'Key': '2e47eb1aee9b164460df3668',
  297. 'Secret': 'b9137d8d684bc248f1809b6d'},
  298. 'com.ansjer.loocamccloud_a': {
  299. 'Key': '23c9213215c7ca0ec945629b',
  300. 'Secret': '81e4b1e859cc8387e2e6c431'},
  301. 'com.ansjer.loocamdcloud_a': {
  302. 'Key': '1dbdd60a16e9892d6f68a073',
  303. 'Secret': '80a97690e7e043109059b403'},
  304. 'com.ansjer.customizedb_a': {
  305. 'Key': '9d79630aa49adfa291fe2568',
  306. 'Secret': '4d8ff52f88136561875a0212'},
  307. 'com.ansjer.customizedd_a': {
  308. 'Key': '8fc4f495685bde53341ee25d',
  309. 'Secret': 'f1da11fa466509fa2670fb66',
  310. }
  311. }
  312. # type =1
  313. FCM_CONFIG = {
  314. 'com.ansjer.zccloud_a': 'AAAAb9YP3rk:APA91bHu8u-CTpcd0g6lKPo0WNVqCi8jZub1cPPbSAY9AucT1HxlF65ZDUko9iG8q2ch17bwu9YWHpK1xI1gHSRXCslLvZlXEmHZC0AG3JKg15XuUvlFKACIajUFV-pOeGRT8tM6-31I',
  315. 'com.ansjer.loocamccloud_a': 'AAAAb9YP3rk:APA91bFCgd-kbVmpK4EVpfdHH_PJZQCYTkOGnTZdIuBWEz2r7aMRsJYHOH3sB-rwcbaRWgnufTyjX9nGQxb6KxQbWVk4ah_H-M3IqGh6Mb60WQQAuR33V6g_Jes5pGL6ViuIxGHqVMaR',
  316. 'com.ansjer.loocamdcloud_a': 'AAAAb9YP3rk:APA91bGw2I2KMD4i-5T7nZO_wB8kuAOuqgyqe5rxmY-W5qkpYEx9IL2IfmC_qf6B_xOyjIDDSjckvMo-RauN__SEoxvAkis7042GRkoKpw7cjZ_H8lC-d50PC0GclPzccrOGFusyKbFY',
  317. 'com.ansjer.customizedb_a': 'AAAAb9YP3rk:APA91bE7kI4vcm-9h_CJNFlOZfc-xwP4Btn6AnjOrwoKV6fgYN7fdarkO76sYxVZiAbDnxsFfOJyP7vQfwyan6mdjuyD5iHdt_XgO22VqniC0vA1V4GJiCS8Tp7LxIX8JVKZl9I_Powt',
  318. 'com.ansjer.customizeda_a': 'AAAAb9YP3rk:APA91bF0HzizVWDc6dKzobY9fsaKDK4veqkOZehDXshVXs8pEEvNWjR_YWbhP60wsRYCHCal8fWN5cECVOWNMMzDsfU88Ty2AUl8S5FtZsmeDTkoGntQOswBr8Ln7Fm_LAp1VqTf9CpM',
  319. 'com.ansjer.customizedd_a': 'AAAAb9YP3rk:APA91bHkxOozJWBrlv3eNT0PgwosYENI9aM4Zuzd418cX-iKkpa1zFNC5MkNDKApx1KH4fhmAfaJ6IMRZ0nj5GIxCpstDYCaZWwgC7-etqfSxG5JAq8LOwJx0o_1tUZqwjIic8ztsg0o',
  320. 'com.ansjer.adcloud_a': 'AAAAb9YP3rk:APA91bFm06w8b9OKQ0gz0iaWFuRqRIkvgAz6z7Gp3dBU_X-LNGJQd1hc1QR2W7QzBglF8SHtERA45a2lbdLRa5qv7hxfd6W_sJLBK7dA8jklsOQBvy505oUzTwMKWy4TwH-exps9KrhO',
  321. 'com.ansjer.accloud_a': 'AAAAb9YP3rk:APA91bFm06w8b9OKQ0gz0iaWFuRqRIkvgAz6z7Gp3dBU_X-LNGJQd1hc1QR2W7QzBglF8SHtERA45a2lbdLRa5qv7hxfd6W_sJLBK7dA8jklsOQBvy505oUzTwMKWy4TwH-exps9KrhO',
  322. 'com.ansjer.zccloud_ab': 'AAAAb9YP3rk:APA91bHu8u-CTpcd0g6lKPo0WNVqCi8jZub1cPPbSAY9AucT1HxlF65ZDUko9iG8q2ch17bwu9YWHpK1xI1gHSRXCslLvZlXEmHZC0AG3JKg15XuUvlFKACIajUFV-pOeGRT8tM6-31I',
  323. }
  324. APNS_CONFIG = {
  325. 'com.ansjer.loocamccloud': {
  326. 'pem_path': 'AnsjerPush/file/apns_pem/lcc-dev.pem',
  327. },
  328. 'com.ansjer.zosidcloud': {
  329. 'pem_path': 'AnsjerPush/file/apns_pem/zosidcloud-dev.pem',
  330. },
  331. 'com.ansjer.customizedb': {
  332. 'pem_path': 'AnsjerPush/file/apns_pem/customizedb-dev.pem',
  333. },
  334. 'com.ansjer.customizeda': {
  335. 'pem_path': 'AnsjerPush/file/apns_pem/customizeda-dev.pem',
  336. },
  337. 'com.ansjer.zccloud': {
  338. 'pem_path': 'AnsjerPush/file/apns_pem/zccloud-dev.pem',
  339. },
  340. 'com.ansjer.accloud': {
  341. 'pem_path': 'AnsjerPush/file/apns_pem/accloud-dev.pem',
  342. },
  343. 'com.ansjer.customizedc':{
  344. 'pem_path': 'AnsjerPush/file/apns_pem/customizedc.pem',
  345. },
  346. 'com.ansjer.customizede': {
  347. 'pem_path': 'AnsjerPush/file/apns_pem/customizede.pem',
  348. },
  349. }
  350. APNS_MODE = 'dev'
  351. SERVER_TYPE = os.environ.get('DJANGO_SETTINGS_MODULE')
  352. JPUSH_CODE = {
  353. -1: '只库存不推送',
  354. 200: '推送成功',
  355. 400: '错误请求',
  356. 401: '没有验证信息或者验证失败',
  357. 403: '请求被拒绝',
  358. 404: '资源不存在,请求的用户的不存在,请求的格式不被支持',
  359. 405: '请求方法不合适',
  360. 410: '请求的资源已下线',
  361. 429: '请求超出了频率限制',
  362. 500: '极光内部服务错误',
  363. 502: '业务服务器下线了或者正在升级。请稍后重试',
  364. 503: '服务暂时失效',
  365. 504: '代理超时'
  366. }
  367. APNS_CODE = {
  368. -1: '只库存不推送',
  369. 200: '推送成功',
  370. 400: '请求有问题',
  371. 403: '证书或Token有问题',
  372. 405: '请求方式不正确, 只支持POST请求',
  373. 410: '设备的Token与证书不一致'
  374. }
  375. APP_TYPE = {
  376. 1: 'ios',
  377. 2: 'android'
  378. }