Advertisement
Guest User

Untitled

a guest
Jun 17th, 2016
113
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.27 KB | None | 0 0
  1. var Pushover = require('node-pushover');
  2. var fs = require('fs');
  3. var util = require('util');
  4. var SteamUser = require('steam-user');
  5. var TradeOfferManager = require('steam-tradeoffer-manager');
  6. var SteamCommunity = require('steamcommunity');
  7. var SteamTotp = require('steam-totp');
  8. var community = new SteamCommunity();
  9. var client = new SteamUser();
  10. var manager = new TradeOfferManager({
  11. "steam": client,
  12. "domain": "localhost",
  13. "language": "en",
  14. });
  15. var ConfirmationChecker = false;
  16. var shared_secret = 'x';
  17. var identity_secret = 'x';
  18.  
  19. var timekey = Math.round(Date.now() / 1000);
  20. var code = SteamTotp.generateAuthCode(shared_secret);
  21.  
  22. var logOnOptions = {
  23. accountName: 'x',
  24. password: 'x',
  25. twoFactorCode: code
  26. };
  27.  
  28. var push = new Pushover({
  29. token: "x",
  30. user: "x"
  31. });
  32.  
  33. client.logOn(logOnOptions);
  34. client.on('loggedOn', function(details) {
  35. console.log("Bot connected to Steam!");
  36. });
  37.  
  38. client.on('webSession', function(sessionID, cookies) {
  39. manager.setCookies(cookies, function(err) {
  40. if(err) {
  41. console.log(err);
  42. process.exit(1);
  43. return;
  44. }
  45.  
  46. console.log("Got API key for bot: " + manager.apiKey);
  47.  
  48. community.setCookies(cookies);
  49. var identity_hashed = identity_secret.toString('base64');
  50.  
  51. var poll_interval = setInterval( function() {
  52. manager.doPoll();
  53. }, 1000);
  54. });
  55. });
  56.  
  57. manager.on('pollData', function(pollData) {
  58. fs.writeFile('polldata.json', JSON.stringify(pollData));
  59. });
  60.  
  61. manager.on('newOffer', function(offer) {
  62. var steamID = offer.partner.getSteamID64();
  63.  
  64. console.log("Received new offer from " + steamID);
  65. offer.getEscrowDuration(function(_err, daysTheirEscrow, daysMyEscrow) {
  66. if (daysTheirEscrow != 0 || daysMyEscrow != 0 || _err)
  67. {
  68. offer.decline( function() {
  69. console.log('Declined cause escrow - ' + steamID + ' - ' + daysTheirEscrow + ' - ' + daysMyEscrow);
  70. push.send("CrashBot declined!", "Error! Error! Error!\n" + offer.message + "\nError! Error! Error!");
  71. });
  72. console.log(_err);
  73. }
  74. else
  75. {
  76. if (!offer.itemsToGive.length || steamID == "76561198046273125")
  77. {
  78. console.log("Accepting offer from " + steamID);
  79. console.log("Sending notification!");
  80. var newItemsReceive = [];
  81. offer.itemsToReceive.forEach(item => newItemsReceive.push(item.market_hash_name));
  82. push.send("CrashBot accepted!", offer.message + "\nItem: " + newItemsReceive[0] + " [" + newItemsReceive.length + "]");
  83. offer.accept();
  84. }
  85. else
  86. {
  87. var newItems = [];
  88. offer.itemsToReceive.forEach(item => newItems.push(item.market_hash_name));
  89. var newItemsReceive = [];
  90. offer.itemsToReceive.forEach(item => newItemsReceive.push(item.market_hash_name));
  91. var newItemsGive = [];
  92. offer.itemsToGive.forEach(item => newItemsGive.push(item.market_hash_name));
  93. push.send("New offer!", "Give: " + newItemsGive + "! " + "Receive: " + newItemsReceive + "!");
  94. console.log("Ignoring an offer from " + steamID);
  95. console.log("Give: " + newItemsGive);
  96. console.log("Receive: " + newItemsReceive);
  97. }
  98. }
  99. });
  100. });
  101.  
  102. community.on('confKeyNeeded', function(tag, callback) {
  103. var time = Math.floor(Date.now() / 1000);
  104. console.log('Conf Key Needed');
  105. callback(null, time, SteamTotp.generateAuthCode(shared_secret, time, tag));
  106. });
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement