Advertisement
Guest User

Untitled

a guest
Sep 11th, 2016
265
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. var fs = require('fs');
  2.  
  3. var project_path = process.cwd();
  4.  
  5. var express = require('express');
  6. var SteamCommunity = require('steamcommunity');
  7. var SteamUser = require('steam-user');
  8. var credentials = require(project_path + '/login/credentials.js' );
  9. var managerFactory = require(project_path + '/manager/manager.js' );
  10. var trade_offer_states = require('steam-tradeoffer-manager').ETradeOfferState;
  11. var request = require('request');
  12. var app_settings = require(project_path + '/app_settings.js');
  13. var manager = managerFactory.create();
  14.  
  15. var client = new SteamUser;
  16. var steam = new SteamCommunity();
  17. var community = steam; // alias
  18. var app = express();
  19.  
  20. app.listen(app_settings.port, function () {
  21.     console.log('App is running on ' + app_settings.port);
  22. });
  23.  
  24. var logOnOptions = credentials.getDefault();
  25. client.logOn(logOnOptions);
  26.  
  27. client.on('webSession', function(sessionID, cookies) {
  28.     console.log('webSession');
  29.     community.setCookies(cookies);
  30.     manager.setCookies(cookies);
  31.     community.startConfirmationChecker('10000', app_settings.identity_secret);
  32. });
  33.  
  34. client.on('disconnected', function(){
  35.     console.log('disconnected');
  36.     setTimeout(function(){
  37.         console.log(client);
  38.         if (client.steamID) {
  39.             client.webLogOn();
  40.         } else {
  41.             var logOnOptions = credentials.getDefault();
  42.             client.logOn(logOnOptions);
  43.         }
  44.     }, 10000);
  45. });
  46.  
  47. community.on('sessionExpired', function(err) {
  48.     if(err) {
  49.         console.log(err);
  50.     }
  51.     console.log('sessionExpired');
  52.     setTimeout(function() {
  53.         client.webLogOn();
  54.     }, 15000);
  55. });
  56.  
  57. if(fs.existsSync('polldata.json')) {
  58.     manager.pollData = JSON.parse(fs.readFileSync('polldata.json'));
  59. }
  60.  
  61. manager.on('pollData', function(pollData) {
  62.     fs.writeFile('polldata.json', JSON.stringify(pollData));
  63. });
  64.  
  65. app.set('app_settings', app_settings);
  66. app.set('offer_manager', manager);
  67. app.set('community', steam);
  68. app.set('user', client);
  69.  
  70. /* MODULES */
  71. var inventory_route = require('./routes/inventory');
  72. var auth_code_route = require('./routes/auth_code');
  73. var create_offer_route = require('./routes/create_offer');
  74. var check_escrow_route = require('./routes/check_escrow');
  75.  
  76. /* ROUTES */
  77. app.use('/get_inventory_by_steamid', inventory_route);
  78. app.use('/get_auth_code', auth_code_route);
  79. app.use('/create_offer', create_offer_route);
  80. app.use('/check_escrow', check_escrow_route);
  81. app.use('/', function(req, res){
  82.     res.json({
  83.         'success': 1,
  84.         'status': 'Online',
  85.         'status_code': 200
  86.     });
  87. });
  88.  
  89. /* HANDLERS */
  90. manager.on('sentOfferChanged', function(offer, oldState) {
  91.     if(offer.state != oldState){
  92.         if(offer.state == trade_offer_states.Accepted){
  93.             var data = {
  94.                 offer_id: offer.id,
  95.                 state: offer.state,
  96.                 query_token: app_settings.query_token
  97.             };
  98.             request.post(
  99.                 app_settings.callback_url,
  100.                 { form: data },
  101.                 function (error, response, body) {
  102.                     if (!error && response.statusCode == 200) {
  103.                         console.log("accepted tradeoffer")
  104.                     }
  105.                 }
  106.             );
  107.         }
  108.     }
  109. });
  110.  
  111. manager.on('newOffer', function(offer) {
  112.     if(!offer.isOurOffer){
  113.         offer.cancel(function(err){
  114.             console.log(err);
  115.         })
  116.     }
  117. });
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement