var account = { shared_secret: '', identity_secret: '', accountName: '', password: '' }; var mainSteamID = ''; //Steam64! For example: "76561198046273125" const SteamUser = require('steam-user'); const Steamcommunity = require('steamcommunity'); const SteamTotp = require('steam-totp'); const TradeOfferManager = require('steam-tradeoffer-manager'); var client = new SteamUser(); var community = new Steamcommunity(); var manager = new TradeOfferManager({ "steam": client, "language": "en", "pollInterval": -1 }); account.twoFactorCode = SteamTotp.generateAuthCode(account.shared_secret); client.logOn(account); client.on('loggedOn', function(data) { console.log('Logged in'); client.setPersona(SteamUser.EPersonaState.Online); }); client.on('webSession', function(sessionID, cookies) { manager.setCookies(cookies, function(err) { if (err) { console.log('Cookie Error: ' + err); if (err != 'Access Denied') { console.log('Failed to set TradeOfferManagerCookies. Aborting...'); process.exit(); } else { console.log('Account is currently locked. Aborting...'); process.exit(); } } else { console.log('Cookies set'); } }); community.setCookies(cookies); community.chatLogon(); }); community.on('sessionExpired', function(err) { console.log('Session expired.'); if (err) { if (err.message == 'Not Logged In') { console.log('Not Logged In'); client.webLogOn(); community.chatLogon(); } else { console.log('Error :' + err.message); } } else { console.log('Relogin.'); client.webLogOn(); } }); manager.on('newOffer', function(offer) { if (offer.itemsToGive.length == 0 && offer.itemsToReceive.length > 0) { console.log("Received a donation! Accepting...") offer.accept(function(err) { if (err) { console.log("Could not accept: " + error); } else { console.log("Successfully accepted!") } }); } else if(offer.partner.getSteamID64() == mainSteamID) { console.log("Received admin offer. Accepting!") offer.accept(function(err) { if (err) { console.log("Could not accept this offer [" + offer.id + "]: " + err); } else { console.log('Offer [' + offer.id + '] sucessfully accepted.'); setTimeout(function(){ community.acceptConfirmationForObject(account.identity_secret, offer.id, function(err){ if(err){ console.log("Error confirming [" + offer.id + "]: " + err); } else { console.log("Confirmed offer [" + offer.id + "]") } }); }, 1000); } }); } else { console.log("Received an offer (not a donation, not by admin) - ignoring it!") offer.decline(function (){ console.log("Offer declined!") }); } });