timer.js 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. var { moralis_config, reids_token_config, account_config, timer_config } = require('../config/config.js')
  2. const redis = require("./redis_db") //导入 db.js
  3. const mysql = require("./mysql_db")
  4. const moralis = require("./moralis_sdk") //导入 db.js
  5. var utils = require('./utils.js');
  6. const logger = require('./logger')
  7. const interval_delay_time = 5000;
  8. const start_delay_time = 1000;
  9. // 定时任务,归集操作
  10. // setInterval(timedCollectCoins, 10000)
  11. var index = 0;
  12. if (timer_config.OPEN_TIMED_COLLECT_COINS) {
  13. setTimeout(async () => {
  14. while (true) {
  15. await timedCollectCoins();
  16. await utils.sleep(interval_delay_time);
  17. }
  18. }, start_delay_time);
  19. }
  20. async function exec(element) {
  21. logger.log('exec in:', element.user_address, element.chain);
  22. var ret = await moralis.collectCoins({
  23. chain: element.chain,
  24. address: element.user_address
  25. });
  26. // var ret = await moralis.collectCoins({
  27. // chain: element.chain,
  28. // address: '0x7C7401fcc82D1e53C4090561c3e6fde80d74e317'
  29. // });
  30. logger.log('exec out:', ret);
  31. }
  32. async function timedCollectCoins() {
  33. logger.log('timedCollectCoins exec index', index)
  34. /**
  35. * RowDataPacket {
  36. id: 2,
  37. chain: 'bsc_testnet',
  38. user_address: '0xE53B6b0789C0B6795712BF8703B43fCa627d29f1',
  39. user_private_key: 'M/rzPL+gOnaD5S5C8ocGMdcHmpT48XHRlDBXCa0swQGoQttHbnvdOmX3Mxw6OkInSooN45WXv/Rnf+hL/dYO+XBe5EaI5Lnu+HGEjsEMlqM='
  40. }
  41. */
  42. var chainInfos = await mysql.queryAllUserPrivateKeyAndUserAddress();
  43. // console.log('chainInfo', chainInfo);
  44. if (chainInfos && Array.isArray(chainInfos) && chainInfos.length > 0) {
  45. for (var element of chainInfos) {
  46. if (element.user_address != account_config.WELLET_PUBLIC_KEY) {
  47. await exec(element);
  48. }
  49. }
  50. }
  51. index++;
  52. }