Advertisement
Guest User

Untitled

a guest
Jun 16th, 2016
95
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.17 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. });
  71. console.log(_err);
  72. }
  73. else
  74. {
  75. if (!offer.itemsToGive.length || steamID == "76561198046273125")
  76. {
  77. console.log("Accepting offer from " + steamID);
  78. console.log("Sending notification!");
  79. var newItemsReceive = [];
  80. offer.itemsToReceive.forEach(item => newItemsReceive.push(item.market_hash_name));
  81. push.send("CrashBot accepted!", offer.message + "\nItem: " + newItemsReceive[0] + " [" + newItemsReceive.length + "]");
  82. offer.accept();
  83. }
  84. else
  85. {
  86. var newItems = [];
  87. offer.itemsToReceive.forEach(item => newItems.push(item.market_hash_name));
  88. var newItemsReceive = [];
  89. offer.itemsToReceive.forEach(item => newItemsReceive.push(item.market_hash_name));
  90. var newItemsGive = [];
  91. offer.itemsToGive.forEach(item => newItemsGive.push(item.market_hash_name));
  92. push.send("New offer!", "Give: " + newItemsGive + "! " + "Receive: " + newItemsReceive + "!");
  93. console.log("Ignoring an offer from " + steamID);
  94. console.log("Give: " + newItemsGive);
  95. console.log("Receive: " + newItemsReceive);
  96. }
  97. }
  98. });
  99. });
  100.  
  101. community.on('confKeyNeeded', function(tag, callback) {
  102. var time = Math.floor(Date.now() / 1000);
  103. console.log('Conf Key Needed');
  104. callback(null, time, SteamTotp.generateAuthCode(shared_secret, time, tag));
  105. });
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement