tg_factory_main.js 12 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259
  1. setInterval(() => {
  2. }, 15000);
  3. const ProcessManager = require('./ProcessManager');
  4. const helper = require('./src/helper');
  5. const HttpClient = require('./src/HttpClient');
  6. const redis_help = require('./src/use_redis');
  7. const tools = require('./tools');
  8. const config = require('./etc/config.json')
  9. const hy_search_book = require('./src/api/hy/hy_search_book');
  10. const axios = require('axios');
  11. function getPlatformInfoByI(PlatformConfig,tg_platform_id){
  12. for (let index = 0; index < PlatformConfig.length; index++) {
  13. const element = PlatformConfig[index];
  14. if(element.tg_platform_id==tg_platform_id){
  15. return element
  16. }
  17. }
  18. return null
  19. }
  20. function getMainInfoById(MainConfig,main_id){
  21. // console.log("MainConfig:",MainConfig)
  22. for (let index = 0; index < MainConfig.length; index++) {
  23. const element = MainConfig[index];
  24. if(element.id==main_id){
  25. return element
  26. }
  27. }
  28. return null
  29. }
  30. let isInit = false
  31. // config.isDebug
  32. if(config.isDebug){
  33. redis_help.connect( async (results)=>{
  34. if(results){
  35. isInit = true
  36. // let MainConfig = await redis_help.getKeyValue("MainConfig")
  37. // MainConfig = JSON.parse(MainConfig)
  38. // let PlatformConfig = await redis_help.getKeyValue("PlatformConfig")
  39. // PlatformConfig = JSON.parse(PlatformConfig)
  40. // let PlatformInfo = getPlatformInfoByI(PlatformConfig,3)
  41. // let main_info = getMainInfoById(MainConfig,162)
  42. // let data = {
  43. // product_id:"393425",
  44. // product_name:"转学生自称苗疆圣子,可我才是真圣子"
  45. // }
  46. // let {promotion_name} = await require("./5_CREATE_LINK_FACTORY/qm_create_link").runTask(data,main_info,PlatformInfo,()=>{
  47. // })
  48. // console.log("promotion_name:",promotion_name)
  49. // let res = await require('./src/api/dz/dz_new_search_book').search_id("11010292075")
  50. // console.log("res:",res)
  51. // let response = helper.resolveDomain("sdksaleapi.hubeidehuic.com")
  52. // console.log("response:",response)
  53. // try {
  54. // const response = await makeRequest('PHWYF50CPI3');
  55. // console.log("response:",response)
  56. // } catch (error) {
  57. // console.error('Error in main execution:', error);
  58. // }
  59. // main()
  60. // let hy_book_data = await require('./2_PRODUCT_FACTORY/collect_hy_book').runTask({book_id:"1869900926728654850"})
  61. // console.log("hy_book_data:",hy_book_data)
  62. }
  63. })
  64. }
  65. // async function makeRequest(key = '') {
  66. // const url = `https://sdksaleapi.hubeidehuic.com/open_sdk/reader/directory/list/v1?novelsale_aid=40017686&novelsdk_aid=638505&novelsdk_version_code=230&novelsdk_device_type=V2049A&promotion_code=${key}&novelsdk_device_platform=android&version_code=290400&device_type=V2049A&sale_app_id=40017686&book_id&force_no_user_id=true&novelsdk_app_name=undefined&app_name=aweme&device_brand=vivo&device_platform=android&aid=1128&mini_app_version=2.3.0&iid=2936130190182979&device_id=825067091580075&ac=wifi&channel=douyin-huidu-gw-huidu-2940&version_name=29.4.0&os=android&ssmix=a&language=zh&os_api=31&os_version=12&manifest_version_code=290400&resolution=1080*2193&dpi=480&update_version_code=29400100&_rticket=1735289341306&first_launch_timestamp=1733382087&last_deeplink_update_version_code=0&cpu_support64=true&host_abi=arm64-v8a&is_guest_mode=0&app_type=normal&minor_status=0&appTheme=light&is_preinstall=0&need_personal_recommend=1&is_android_pad=0&is_android_fold=0&ts=1735289340&cdid=623fd2d5-5680-4aa4-95e8-78378a2ac7c5`;
  67. // const headers = {
  68. // 'Connection': 'keep-alive',
  69. // 'Cookie': 'sid_tt=85486acb04e1918afbee91a9466a9fdc;ssid_ucp_v1=1.0.0-KDVhZTIzM2QyOGFlMGE1MWRhMGIzNmI1MzFmZjlmMTVlODhjYmJiOTkKFQjr19Cz7syDAxC9zrm7Bhip_CY4CBoCbGYiIDg1NDg2YWNiMDRlMTkxOGFmYmVlOTFhOTQ2NmE5ZmRj;is_staff_user=false;sid_ucp_v1=1.0.0-KDVhZTIzM2QyOGFlMGE1MWRhMGIzNmI1MzFmZjlmMTVlODhjYmJiOTkKFQjr19Cz7syDAxC9zrm7Bhip_CY4CBoCbGYiIDg1NDg2YWNiMDRlMTkxOGFmYmVlOTFhOTQ2NmE5ZmRj;sessionid=85486acb04e1918afbee91a9466a9fdc;sessionid_ss=85486acb04e1918afbee91a9466a9fdc;uid_tt=88e8f06afa51aef4fac18f5d77607921;sid_guard=85486acb04e1918afbee91a9466a9fdc%7C1735288637%7C5184000%7CTue%2C+25-Feb-2025+08%3A37%3A17+GMT;passport_csrf_token=08c2b9062233b43ce0e2dd24171203b1;odin_tt=9783bbcf8f09663820810574a01f08b307b6e74c90aa3d8a3b4a80faa9a7d4b197d7e807043c111dcbabde8551e1111145cc87c65fce067f3c532bd796b3681a;uid_tt_ss=88e8f06afa51aef4fac18f5d77607921;passport_csrf_token_default=08c2b9062233b43ce0e2dd24171203b1;store-region=cn-gd;store-region-src=uid;n_mh=9-mIeuD4wZnlYrrOvfzG3MuT6aQmCUtmr8FxV8Kl8xY',
  70. // 'User-Agent': 'Mozilla/5.0 (Linux; Android 12; V2049A Build/SP1A.210812.003; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/120.0.6099.193 Mobile Safari/537.36 aweme/29.4.0 ToutiaoMicroApp/3.21.0 PluginVersion/29409006',
  71. // 'bdp-sec-uid': 'MS4wLjABAAAA1M_29BGiEjsgNHMP-bmblk-9qGkx5vN7Y3HgltXiFghmy1mfPlH3eonnTWpXANjE',
  72. // 'bdp-did': '825067091580075',
  73. // 'bdp-channel': 'douyin-huidu-gw-huidu-2940',
  74. // 'bdp-device-timezone-offset': '28800',
  75. // 'bdp-os-version': '12',
  76. // 'bdp-os-name': 'Android',
  77. // 'bdp-uid': '1788263942327546',
  78. // 'bdp-version-code': '290400',
  79. // 'bdp-device-platform': 'Android',
  80. // 'bdp-aid': '1128',
  81. // 'bdp-device-manufacturer': 'vivo',
  82. // 'bdp-app-id': 'tt26e45059b9d1239401',
  83. // 'bdp-device-model': 'V2049A',
  84. // 'Content-Type': 'application/json',
  85. // 'activity_now_client': '0',
  86. // 'x-bd-kmsv': '1',
  87. // 'x-tt-request-tag': 's=-1;p=1',
  88. // 'x-tt-trace-id': '00-074e072b0d2ee64e6e8d4abbf55d0468-074e072b0d2ee64e-01',
  89. // 'X-Argus': '/WluZw==',
  90. // 'X-Gorgon': '8404f06a00014b0d761b864b2932a41f362b9276f3488e7700de',
  91. // 'X-Helios': 'AkKvNQvLH57rNKMEdZDNQPlc89Q1Zrs974uhRy+IDcTR/y8Z',
  92. // 'X-Khronos': '1735289341',
  93. // 'X-Ladon': 'Z25p/Q==',
  94. // 'X-Medusa': '/mluZwqBMZ0qvrJcK0OmF6qmD3/QqgABDTUpyT1IA9+MOFfCQlYXoNnb+C/rkhLwH0AzGIam8DGpfzu3MFDs3fD3Jx12yo1AKxmV8ar5cQEJ+yz2srKfjMWVZhnlSHsA8UOdYdeclol6hoyOKCcvD9k+84icb0lW39sUS4b+3c/ZdQ2g/VnINn0Bpn+V99xK211ut9hvj+pP6zAVmrqx+c86fuUyOPwBgmLtJdoya9Z5ChWFBUpxgDZiurbYqGWHG1vDjIJSnKdKLRBhRNCmsvXf7lPifdINI8I3UOlRrZJW4m/sbQ46JlozT8Dza62mFCUJaMXSVXxrPdVxq9C06cZiwamtMQw6cnQZxcI0B2R2i65Ct45ohgrJE2g4z+nZRVrpBO9ApgIXQ/sp6jPKfbkSXHFzykdk75Ktwz67Vji7puQOOUUlyeMkaBGvEaq9EZnwOyJ3VxggUaqaH5CtKfYD7lnAM4TbjtLE3SMfZZNviajoNh7ouLeyNLUab/Qd9+MBMbWsTN49BwVlOUHKn9hp56XqRNWIWyrA55jDqL6iicuXtb8Xx//kvkccyUByLEde72oGf2/IRBIAgCvfVXH/hP6wJy1f6XjL0Or6I1qX98gWSGvN9HYObpKNGm/64vtoSpHDC1JWtcuf5ZzlsA4R8XbZKS/Tn0Y9kC89pmPnHYLscWtOFoirIRJ0DXqF/PM3kB4jilEe5Y26cvQK2LaSYcuKX7iL4rWLlVrWIh7EkoFH9Un4f8hruVSbhJMWbN+dXZyNn5BHq/+rASd0pCts3fz05xX4dYlfawDeX74MhFxnKcPZu9pS2hjqDZAPmuqKo/DWWDcsO2wT0R0Fd5k/rwtXFOxQgH07cDVkeIDpLjlT3jBdxQ6X9eDfC/EP+nQv+9WgwKkeG5FXDiIbd1++iS6Mb9V4OHmUowZDopiRFqCD5GeBQTkwEe8w05QJ4Dhdu5a5l1y3CzpS/hGgwr9Sos0QrrVXJI7x6Ah1+U05c4TNHXRe8lBUPJNWUHWBXgKznDKBh1+O+Y+jqKxTyIldTfkfXP/5H13/3Hk='
  95. // };
  96. // try {
  97. // const response = await axios({
  98. // method: 'get',
  99. // url: url,
  100. // headers: headers,
  101. // httpsAgent: new (require('https').Agent)({
  102. // rejectUnauthorized: false
  103. // })
  104. // });
  105. // console.log(response.data);
  106. // return response.data;
  107. // } catch (error) {
  108. // console.error('Error:', error.message);
  109. // throw error;
  110. // }
  111. // }
  112. // let data = await hy_search_book.search_id("1868479666362478594")
  113. // console.log("data:",data)
  114. // let response = helper.resolveDomain("clipvideoup.s6kuwan.com")
  115. // console.log("response:",response)
  116. // let MainConfig = await redis_help.getKeyValue("MainConfig")
  117. // MainConfig = JSON.parse(MainConfig)
  118. // let PlatformConfig = await redis_help.getKeyValue("PlatformConfig")
  119. // PlatformConfig = JSON.parse(PlatformConfig)
  120. // let PlatformInfo = getPlatformInfoByI(PlatformConfig,4)
  121. // let main_info = getMainInfoById(MainConfig,150)
  122. // let data = {
  123. // product_id:"11010288676",
  124. // product_name:"侍女有谋"
  125. // }
  126. // require("./5_CREATE_LINK_FACTORY/dz_create_link").runTask(data,main_info,PlatformInfo,()=>{
  127. // })
  128. // let data = await require('./src/api/dz/dz_search_book').search_id('11010288676')
  129. // console.log("data:",data)
  130. // require('./src/api/qm/qm_search_book').search_id('396740')
  131. // console.log("results:",await redis_help.getKeyValue("isPauseTask"))
  132. // let MainConfig = await redis_help.getKeyValue("MainConfig")
  133. // MainConfig = JSON.parse(MainConfig)
  134. // let PlatformConfig = await redis_help.getKeyValue("PlatformConfig")
  135. // PlatformConfig = JSON.parse(PlatformConfig)
  136. // let PlatformInfo = getPlatformInfoByI(PlatformConfig,3)
  137. // let main_info = getMainInfoById(MainConfig,151)
  138. // let data = {
  139. // product_id:"393425",
  140. // product_name:"转学生自称苗疆圣子,可我才是真圣子"
  141. // }
  142. // let {promotion_name} = await require("./5_CREATE_LINK_FACTORY/qm_create_link").runTask(data,main_info,PlatformInfo,()=>{
  143. // })
  144. // console.log("promotion_name:",promotion_name)
  145. // let n_data = await require("./src/api/qm/get_qm_promotion").getPromotionList(promotion_name)
  146. // console.log("get_qm_promotion:",n_data)
  147. // let get_hy_group_mapping = require('./src/api/hy/get_hy_group_mapping');
  148. // get_hy_group_mapping.get_group_mapping((data)=>{
  149. // if(data.code==200){
  150. // let list = data.data
  151. // }
  152. // console.log("get_hy_group_mapping:",data)
  153. // })
  154. // setTimeout( async ()=>{
  155. // let black_books = await redis_help.getKeyValue("all_black_books")
  156. // console.log("black_books:",black_books)
  157. // },5000)
  158. // let main = async function(){
  159. // let test = new HttpClient()
  160. // const postData = {
  161. // cmd:"create_link",
  162. // name:"台风夜老婆去救男秘书",
  163. // bookId:"1848991033902665730",
  164. // topUpTemplateId:"1854833762266247169",
  165. // passBackTemplateId:"6",
  166. // paidPoint:"9999999",
  167. // token:await tools.getHyToken()
  168. // };
  169. // let data = {
  170. // "name": postData.name,
  171. // "bookId": postData.bookId,
  172. // "passBackTemplateId": postData.passBackTemplateId,
  173. // "adPassbackTemplateId": "",
  174. // "topUpTemplateId": postData.topUpTemplateId,
  175. // "mediaChannel": "1",
  176. // "group": "35",
  177. // "paidPoint": postData.paidPoint,
  178. // "site": "5"
  179. // }
  180. // let res = await test.otherPost( helper.getHyCreateLinkOpt(postData.token) ,data)
  181. // console.log("res:",res)
  182. // let response = {
  183. // "message": "create_link successfully",
  184. // "received_data":{"originalId":res["data"]["originalId"],
  185. // "appId":res["data"]["appId"],
  186. // "launchPath":res["data"]["launchPath"],
  187. // "fullPath":res["data"]["fullPath"],
  188. // "wxMountLink":res["data"]["wxMountLink"]}
  189. // }
  190. // console.log("response:",response)
  191. // }
  192. // var main = function(){
  193. // require("./2_PRODUCT_FACTORY/PRODUCT_FACTORY")
  194. // require("./5_CREATE_LINK_FACTORY/CREATE_LINK_FACTORY")
  195. // require("./MAIN_SERVE_FACTORY/MAIN_SERVE_FACTORY")
  196. // require("./0_RECEIVE_FACTORY/RECEIVE_FACTORY")
  197. // require("./1_FILTER_FACTORY/FILTER_FACTORY")
  198. // }
  199. // let main = function(){
  200. // let manager = new ProcessManager()
  201. // manager.start()
  202. // manager.workers.forEach((v,k)=>{
  203. // if (v.process) {
  204. // v.process.send({
  205. // type: 'config',
  206. // data: { /* 配置数据 */ }
  207. // });
  208. // }
  209. // })
  210. // }