Jump to content
McKay Development

timgfx

Member
  • Posts

    84
  • Joined

  • Last visited

Posts posted by timgfx

  1. I'm looking to cache sessions on disk. I've tried simply storing the refreshToken after logging in and then 1) setting it when initializing LoginSession, 2) calling LoginSession:refreshAccessToken(). However, this yields EResult 15 AccessDenied. I've also tried storing cookies and adding them the the session._webClient.cookieJar, but same issue.

    Am I doing something wrong or is this not supported?

    Edit: Seems like the refresh token should be used to get a new steamLoginSecure cookie instead of getting a new access token. So I suppose all I need to do is store the refresh token, set it on the LoginSession instance, and call getWebCookies

    Looks like this process is indeed correct: https://github.com/DoctorMcKay/node-steam-session/issues/11. And refreshing access tokens is just not a thing when using WebClient

  2. I am attempting to fetch all active offers after some timestamp, however this does not seem to work on sent trades (I have not tested this for received trades)

    Does this endpoint simply only apply the cutoff to received trades? I don't see steam-tradeoffer-manager doing any filtering so I'm confused about what to expect. 

    Im correctly converting timestamps to steam unix time (seconds since epoch), and have tried using both `true/false` and `1/0` for the query parameters. Both yield the same result

  3. Stack Trace:



    TypeError: Path must be a string. Received undefined
        at assertPath (path.js:28:11)
        at Object.join (path.js:489:7)
        at userData (C:\Users\timol\Desktop\myFolder\node_modules\appdirectory\lib\appdirectory.js:16:25)
        at AppDirectory._setTemplates (C:\Users\timol\Desktop\myFolder\node_modules\appdirectory\lib\appdirectory.js:134:34)
        at new AppDirectory (C:\Users\timol\Desktop\myFolder\node_modules\appdirectory\lib\appdirectory.js:129:10)
        at new SteamUser (C:\Users\timol\Desktop\myFolder\node_modules\steam-user\index.js:104:34)
        at my files


     

     

    This is steam-user index.js:104. This was always there, so this is weird. The exact same thing happens in steam-tradeoffer-manager



    this.options.dataDirectory = (new AppDirectory({
    "appName": "node-steamuser",
    "appAuthor": "doctormckay"
    })).userData();

  4. You also need to submit these in your login request.

    The thing is that I'm not logging in. I'm registering, then going to /edit?welcomed=1, grabbing a new sessionid there and doing some other things with the account. It works perfectly fine, I got all the cookies I need afaik so I don't really see what is different from logging in or relogging. Any ideas?

     

    Edit: Including those when registering changed nothing.

  5. I already found the answer; mobile headers/cookies. Now my question is whether you need anything else besides that?

     

    What I am doing right now isn't working, it still tells me that my account is restricted etc etc.

     

    Cookies I set for steamcommunity.com:

     

    mobileClientVersion=0 (2.1.3)

    mobileClient=android

    Steam_Language

     

    And headers:

    X-Requested-With: 'com.valvesoftware.android.steam',
    User-Agent: 'Mozilla/5.0 (Linux; U; Android 4.1.1; en-us; Google Nexus 4 - 4.1.1 - API 16 - 768x1280 Build/JRO03S) AppleWebKit/534.30 (KHTML, like Gecko) Version/4.0 Mobile Safari/534.30',
    Accept: 'text/javascript, text/html, application/xml, text/xml, */*'
     
    These are both taken from node-steamcommunity. What I'm doing is registering an account, and trying to activate 2fa. But I am not able to get the oauth token because I can't access /chat. I tried using the values above in all my requests and still it doesn't work. I can't find anything else I would have to add in node-steamcommunity. The only real difference is that I am registering instead of logging in, could that be the problem or am I missing something?
  6. Also make sure to provide your steamcommunity instance when creating a new tradeoffermanager instance, this makes tradeoffermanager use steamcommunity’s request instance which will make sessionExpired work with tradeoffermanager too

  7. The problem is that you’re using my shitty leaked bot :Kappa:

     

    Remove this line:

     

    language: “en”,

     

    And it’ll work. That line caches descriptions which really adds up when loading many items. Node has a default memory limit of just under 2GB. This limit can be changed as shown here: https://futurestud.io/tutorials/node-js-increase-the-memory-limit-for-your-process. I would just run it without changing the allocated memory though (unless you run into more issues)

     

    Also don’t use leaked code xd

  8. You can use node-steamcommunity's sessionExpired event to detect when your session expires, which is when you want to refresh/update your cookies. You can do this by calling steam-user's webLogOn method

  9. I'm having some problems with this - not a big deal but I'd still like to know. Somehow some cards I am receiving in a trade don't have a market_hash_name. As far as I know all cards are marketable, so how is it possible that it doesn't have a market_hash_name? Language is set if that matters

     

    Edit: Language is only needed for descriptions right? I'd rather not use it because of all the descriptions it'll load but am not sure if that's actually how it works :P

×
×
  • Create New...