Advertisement
Guest User

Untitled

a guest
Feb 27th, 2016
125
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. var fs = require('fs');
  2. var crypto = require('crypto');
  3.  
  4. var Steam = require('steam');
  5. var SteamWebLogOn = require('steam-weblogon');
  6. var getSteamAPIKey = require('steam-web-api-key');
  7. var SteamTradeOffers = require('steam-tradeoffers'); // change to 'steam-tradeoffers' if not running from the examples subdirectory
  8.  
  9. var admin = ''; // put your steamid here so the bot can accept your offers
  10.  
  11. var logOnOptions = {
  12.   account_name: 'xdxd9991',
  13.   password: 'notmypassnigger'
  14. };
  15.  
  16. var authCode = 'XMGMG'; // code received by email
  17.  
  18. try {
  19.   logOnOptions.sha_sentryfile = getSHA1(fs.readFileSync('sentry'));
  20. } catch (e) {
  21. console.log(e);
  22.   if (authCode !== '') {
  23.     logOnOptions.auth_code = authCode;
  24.   }
  25. }
  26.  
  27. // if we've saved a server list, use it
  28. if (fs.existsSync('servers')) {
  29.   Steam.servers = JSON.parse(fs.readFileSync('servers'));
  30. }
  31.  
  32. var steamClient = new Steam.SteamClient();
  33. var steamUser = new Steam.SteamUser(steamClient);
  34. var steamFriends = new Steam.SteamFriends(steamClient);
  35. var steamWebLogOn = new SteamWebLogOn(steamClient, steamUser);
  36. var offers = new SteamTradeOffers();
  37.  
  38. steamClient.connect();
  39. steamClient.on('connected', function() {
  40.   steamUser.logOn(logOnOptions);
  41. });
  42.  
  43. steamClient.on('logOnResponse', function(logonResp) {
  44.   if (logonResp.eresult === Steam.EResult.OK) {
  45.     console.log('Logged in!');
  46.     steamFriends.setPersonaState(Steam.EPersonaState.Online);
  47.  
  48.     steamWebLogOn.webLogOn(function(sessionID, newCookie) {
  49.       getSteamAPIKey({
  50.         sessionID: sessionID,
  51.         webCookie: newCookie
  52.       }, function(err, APIKey) {
  53.         offers.setup({
  54.           sessionID: sessionID,
  55.           webCookie: newCookie,
  56.           APIKey: APIKey
  57.         });
  58.       });
  59.     });
  60.   }
  61. });
  62. steamClient.on('error', (err) => console.log(err))
  63. steamClient.on('servers', function(servers) {
  64.   fs.writeFile('servers', JSON.stringify(servers));
  65. });
  66.  
  67. steamUser.on('updateMachineAuth', function(sentry, callback) {
  68.   fs.writeFileSync('sentry', sentry.bytes);
  69.   callback({ sha_file: getSHA1(sentry.bytes) });
  70. });
  71.  
  72. function handleOffers() {
  73.   offers.getOffers({
  74.     get_received_offers: 1,
  75.     active_only: 1,
  76.     time_historical_cutoff: Math.round(Date.now() / 1000)
  77.   }, function(error, body) {
  78.     if (
  79.       body
  80.       && body.response
  81.       && body.response.trade_offers_received
  82.     ) {
  83.       body.response.trade_offers_received.forEach(function(offer) {
  84.         if (offer.trade_offer_state === 2) {
  85.                      offers.acceptOffer({tradeOfferId: offer.tradeofferid});
  86.        
  87.          
  88.         }
  89.       });
  90.     }
  91.   });
  92. }
  93.  
  94. steamUser.on('tradeOffers', function(number) {
  95.   if (number > 0) {
  96.     handleOffers();
  97.   }
  98. });
  99.  
  100. function getSHA1(bytes) {
  101.   var shasum = crypto.createHash('sha1');
  102.   shasum.end(bytes);
  103.   return shasum.read();
  104. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement