Advertisement
Guest User

Steam Node.JS bot v1.0 by luk27official

a guest
May 1st, 2017
58
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. /* Steam Node.JS bot by luk27official
  2. 2016-2017          v1.0            */
  3.  
  4. username = 'user';
  5. password = 'paswrd';
  6.  
  7. var steam      = require('steam');
  8. var steamtrade = require('steam-trade');
  9. var winston    = require('winston');
  10. var readline   = require('readline');
  11. var fs         = require('fs');
  12. var steamClient = new steam.SteamClient();
  13. var SteamUser  = require('steam-user');
  14.  
  15. var appid = {
  16.     CSGO: 730,
  17.     Steam: 753
  18. };
  19.  
  20. var contextid = {
  21.     CSGO: 2,
  22.     Steam: 6
  23. }
  24.  
  25. var inTrade = false;
  26.  
  27. var myBackpack;
  28.  
  29. var rl = readline.createInterface({
  30.     input: process.stdin,
  31.     output: process.stdout
  32. });
  33.  
  34. var logger = new (winston.Logger)({
  35.         transports: [
  36.             new (winston.transports.Console)({
  37.                 colorize: true,
  38.                 level: 'debug'
  39.             }),
  40.             new (winston.transports.File)({
  41.                 level: 'info',
  42.                 timestamp: true,
  43.                 filename: 'cratedump.log',
  44.                 json: false
  45.             })
  46.         ]
  47. });
  48.  
  49. var client = new steam.SteamClient();
  50. var trade  = new steamtrade();
  51.  
  52. if(fs.existsSync('servers.json')) {
  53.     steam.servers = JSON.parse(fs.readFileSync('servers.json'));
  54. }
  55.  
  56. var sentryfile;
  57. if(fs.existsSync('sentryfile.' + username + '.hash')) {
  58.     sentryfile = fs.readFileSync('sentryfile.' + username + '.hash');
  59. }
  60.  
  61. client.logOn({
  62.     accountName: username,
  63.     password: password,
  64.     shaSentryfile: sentryfile
  65. });
  66.  
  67. client.on('error', function(e) {
  68.     if (e.eresult == steam.EResult.AccountLogonDenied) {
  69.         rl.question('Steam Guard Code: ', function(code) {
  70.             client.logOn({
  71.                 accountName: username,
  72.                 password: password,
  73.                 authCode: code
  74.             });
  75.         });
  76.     } else {
  77.         logger.error('Steam Error: ' + e.eresult);
  78.     }
  79. });
  80.  
  81. client.on('sentry', function(sentry) {
  82.     logger.info('Got new sentry file hash from Steam.  Saving.');
  83.     fs.writeFile('sentryfile.' + username + '.hash', sentry);
  84. });
  85.  
  86. client.on('loggedOn', function() {
  87.     logger.info('Logged on to Steam');
  88.     client.setPersonaName("Bot_Name");
  89.     client.setPersonaState(steam.EPersonaState.Offline);
  90. });
  91.  
  92. client.on('webSessionID', function(sessionid) {
  93.     trade.sessionID = sessionid;
  94.     client.webLogOn(function(cookie) {
  95.         cookie.forEach(function(part) {
  96.             trade.setCookie(part.trim());
  97.         });
  98.         logger.info('Logged into web');
  99.         client.setPersonaState(steam.EPersonaStateOnline);
  100.     });
  101. });
  102.  
  103.  
  104.  
  105. client.on('message', function(source, message, type, chatter)
  106. {
  107.   if (type == SteamUser.Steam.EChatEntryType.ChatMsg) {
  108. console.log(source + ' : ' + 'Received message: ' + message);
  109. if (message == '/admin') {
  110.     client.sendMessage(source, 'Hello!', steam.EChatEntryType.ChatMsg);
  111. }
  112. else {
  113.     client.sendMessage(source, 'Bot is under construction, for questions add my main account (https://steamcommunity.com/profiles/123)', steam.EChatEntryType.ChatMsg);
  114.     }
  115. }
  116. });
  117.  
  118. client.on('friend', function(id, vztah) {
  119. if (vztah == SteamUser.steam.EFriendRelationship.RequestRecipient)
  120. {
  121. console.log(id + ' has been added into my friend list!')
  122. client.addFriend(id)
  123. }
  124.   });
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement