Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- const Crypto = require( 'crypto' );
- const Steam = require( 'steam' );
- const SteamTotp = require( 'steam-totp' );
- const SteamWebLogon = require( 'steam-weblogon' );
- const SteamCommunity = require( 'steamcommunity' );
- const TradeOfferManager = require( 'steam-tradeoffer-manager' );
- const client = new Steam.SteamClient();
- const user = new Steam.SteamUser( client );
- const webLogon = new SteamWebLogon( client, user );
- const community = new SteamCommunity();
- const manager = new TradeOfferManager( {
- steam: client,
- community: community,
- language: 'en',
- cancelTime: 150000
- } );
- const loginOpt = {
- account_name: config.steam.accountName,
- password: config.steam.password,
- two_factor_code: SteamTotp.generateAuthCode( config.steam.shared_secret )
- };
- //var reconnect = false;
- var reconnectTimer;
- client.connect();
- client.on( 'connected', function() {
- //console.log( 'connected' );
- user.logOn( loginOpt );
- } );
- client.on( 'error', function( err ) {
- //if( reconnect ) {
- if( err.toString().indexOf( 'Error: Disconnected' ) > -1 ) {
- //reconnect = false;
- loggerMess( 'Потеря соединения со Steam. Переподключение... (60сек)', 'info' );
- reconnectTimer = setTimeout( function() {
- client.connect();
- }, 60000 );
- //console.log( 'Error: Disconnected' );
- } else loggerMess( err, 'error' );
- //}
- } );
- client.on( 'logOnResponse', function( res ) {
- //console.log( 'logOnResponse: ' + res );
- if( res.eresult === Steam.EResult.OK ) {
- loggerMess( 'Авторизация Steam прошла успешно!', 'good' );
- webLogon.webLogOn( function( sessionID, cookies ) {
- manager.setCookies( cookies );
- community.setCookies( cookies );
- community.startConfirmationChecker( config.steam.refreshInterval, config.steam.identity_secret );
- } );
- //reconnect = true;
- if( reconnectTimer ) clearTimeout( reconnectTimer );
- }
- } );
- community.on( 'sessionExpired', function( error ) {
- //if( error ) loggerMess( error, 'error' );
- //if( reconnect ) {
- //reconnect = false;
- loggerMess( 'Завершение сессии. Переподключение... (60сек)', 'info' );
- reconnectTimer = setTimeout( function() {
- client.connect();
- }, 60000 );
- //console.log( 'sessionExpired' );
- //}
- });
- user.on( 'updateMachineAuth', function( sentry, callback ) {
- fs.writeFile( 'sentry', sentry.bytes );
- callback( { sha_file: getSHA1( sentry.bytes ) } );
- } );
- manager.on( 'newOffer', function( offer ) {
- ...
- } );
- function getSHA1( bytes ) {
- var shasum = Crypto.createHash( 'sha1' );
- shasum.end( bytes );
- return shasum.read();
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement