-
Posts
3545 -
Joined
-
Last visited
Everything posted by Dr. McKay
-
No.
-
Have you tried making any requests after you set your cookies to invalid values? It can't know the session has expired until it tries to make an authenticated request and Steam redirects us back to the login page.
-
No.
-
I don't see any reason why that shouldn't work. All I can figure is that you have an acceptConfirmationForObject call somewhere happening before you get your cookies.
-
Can I see your TradeOfferManager constructor?
-
Question about offer.getExchangeDetails
Dr. McKay replied to manic's topic in node-steam-tradeoffer-manager
Steam should not allow a trade offer to be canceled while it is in the middle of committing. Those cases are most likely because Steam ran into an error while committing the trade and rolled back the items it had already transferred. -
Question about offer.getExchangeDetails
Dr. McKay replied to manic's topic in node-steam-tradeoffer-manager
You're correct, there will only be a tradeID if the recipient attempted to accept the offer. A situation where there might be a tradeID but the trade did not happen is an error in Steam when attempting to commit the trade, or an escrow cancellation. I believe that if Steam has an error and rolls back, the trade offer state will go to InvalidItems since the rollback will change the item IDs (for most games). But if it's an escrow cancellation, the trade offer state will be Canceled and escrowEnds will not be null, which allows you to differentiate between cancellations by the sender and escrow cancellations. There's no way to tell which side canceled the trade in escrow though, but you presumably know whether you did it or not. -
Unfortunately not.
-
The GC can get confused if you disconnect. It may work better for you if you quit CS:GO with gamesPlayed([]), wait 5 seconds or so, then log off.
-
Sorry, the docs are unclear on this. You want to do this: csgo.on('accountData', (accountData) => { console.log(accountData); }); The accountData property only gets set after all accountData event listeners have returned.
-
No, it needs to actually connect to the Steam network so it's not going to work with OpenID. You can't, you need to retrieve the image from the community site.
-
https://github.com/DoctorMcKay/node-steam-user#getpersonassteamids-callback
-
Interesting, I wasn't aware of that behavior.
-
Difficulty Sending Trade Offers
Dr. McKay replied to PapaCthulhu's topic in node-steam-tradeoffer-manager
You need parenthesis to actually call the send method, like offer.send() -
Have you tried deleting them one by one?
-
Assuming we're talking about Valve games and games using Steam Inventory Service (which is not all games on Steam), asset IDs change when: The item is traded The item is modified (e.g. painted in TF2, renamed in TF2/CSGO) The item is attempted to be traded but the trade fails and is rolled back There are probably also a few other weird cases where an asset ID changes because this is Valve we're talking about.
-
That's a different issue. You can only have one logon instance playing a game at the same time, but if you get booted off with error LoggedInElsewhere from simply logging in and not launching a game, then modify logonID in the steam-user logOn method, which will update that obfuscated_private_ip field. Steam only allows one logon session from the same public IP with the same private IP, presumably to boot off ghost sessions if the client crashes or something. This has the side-effect of booting any other session off of Steam if you have two computers on the same public IP with network adapters that share the same private IP, even if that's not the adapter Steam uses to actually access the internet. If Steam happens to choose the wrong adapter and that IP is shared between two computers, only one of them will be able to log on at the same time. This can happen if you're running VirtualBox, Hyper-V, or some other hypervisor on both machines and you have a VM-internal network interface on both machines with the same IP.
-
The "a" instead of "U" means you logged on anonymously. Most things, including requesting persona data, don't work when logged on anonymously.
-
There should be no need to send Steam cookies to a non-Steam domain.
-
What's the URL? Cookies are only sent for the appropriate domains.
-
steam-user does not support running in a node-enabled electron renderer. You should run steam-user in the main process and expose a communication channel between the renderer and the backend. I've not done any serious work in electron, so I can't tell you how exactly to achieve this.
-
What exact issues is it showing?
-
Check out the steamGuard event. You will want to listen for this, and if lastCodeWrong is true, then wait 30 seconds before generating a new code (or manually specify an offset of at least 30 seconds, but not so much that the code is too far in the future).
-
I don't really know an awful lot about TypeScript, but my guess would be that something with TS is causing that error. TradeOffer is a function, which should not have any problems being used as a constructor, but maybe TS sees that it's not an ES6 class and decrees that it shouldn't be used as a constructor. What node version are you using?
-
It's all good. I'm on vacation right now which is why I hadn't gotten around to looking at that yet. I'll see about pushing out an update a bit later.