-
Posts
3656 -
Joined
-
Last visited
Everything posted by Dr. McKay
-
Okay, here's the flow of how this works: CS:GO client sends a GCStorePurchaseInit to the GC with the items you want to buy You get back a GCStorePurchaseInitResponse containing a result (1 = OK) and a transaction ID (64-bit, even though it can currently fit into 32 bits) Concurrently, you get a ClientMicroTxnAuthRequest message via Steam. Discard the first byte of the payload (seems to be 1 in the dump you sent, not sure if that's always the case or what the significance of it is), then decode the remainder of the payload as Binary KeyValues (require('binarykvparser').parse(payload.toBuffer().slice(1))). The interesting stuff in there is the total/BillingTotal and transID (orderid is there if you want to make sure it matches what the GC sent back). Grab the transID and send it back in ClientMicroTxnAuthorize (little-endian encoded, as always) and append a 32-bit value of 2 (unsure what the significance of this is, or if it ever changes from 2. Could perhaps be an authorization result, where 1 is deny or something). You'll get back ClientMicroTxnAuthorizeResponse with a payload containing a 32-bit eresult value (1 = OK), and a 1-byte unknown value of 0. If successful, If successful, send GCStorePurchaseFinalize to the GC containing the transaction ID you from the GC before (not transID) to get your items.
-
Question manager.setCookie requires to be logged in
Dr. McKay replied to feed4rz's topic in node-steam-tradeoffer-manager
All I can say is that your cookies don't appear to be valid. Did you change IPs? It appears that Steam locks sessions to a particular IP.- 1 reply
-
- node.js
- node-steam-tradeoffer-manager
- (and 3 more)
-
https://github.com/DoctorMcKay/node-steam-tradeoffer-manager/wiki/TradeOffer#getuserdetailscallback
-
Would you mind sending me your NetHook dump? It would probably be a good idea to zip it up, encrypt the zip, attach the zip to a reply here, and PM me the password. You can't attach files to PMs. Also, for what purpose are you doing this?
-
Question how to relogin with steam guard
Dr. McKay replied to Paamayim's topic in node-steamcommunity
Yes. -
Question how to relogin with steam guard
Dr. McKay replied to Paamayim's topic in node-steamcommunity
https://github.com/DoctorMcKay/node-steamcommunity/wiki/SteamCommunity#logindetails-callback callback -> steamguard -
Question How to get your own name in console (and other users (optional))
Dr. McKay replied to MrKirby's topic in node-steam-user
Please read about asynchronous JavaScript and callbacks. getPersonas does not return anything useful, you need to provide a callback and wait for the response there. -
How often is your internet going down? You could periodically make some request that results in a response, and reconnect if you don't get a response in x time after y attempts.
-
The first error means that the data is temporarily unavailable, and you should try again. It's Steam's fault. The second error: https://steamerrors.com/26
-
When Steam goes down the application will be notified of the connection being closed. Experimental does mean that there could be problems, yes.
-
Question How to accept confirmitions in mobile app?
Dr. McKay replied to Rocket Scientist's topic in General
Your cookies need to be valid, of course. You also need to send more data when accepting a trade offer. For example, you need to include the offer ID in the POST fields, along with some other stuff. -
Linux/Unix doesn't seem to think it very important to notify applications of closed TCP connections when the network goes down. You could use node-steam-client's experimental UDP support if this is a situation that will affect you regularly: var SteamClient = require('steam-client'); var client = new SteamClient.CMClient(SteamClient.EConnectionProtocol.UDP); var user = new SteamUser(client);
-
Question How send item game as gift auto by steam bot
Dr. McKay replied to mrxbell's topic in node-steam-tradeoffer-manager
https://github.com/DoctorMcKay/node-steamcommunity/wiki/SteamCommunity#getconfirmationstime-key-callback -
loggedOn will be emitted when it reconnects.
-
Question 'callback is not a function' in send()
Dr. McKay replied to tony's topic in node-steam-tradeoffer-manager
You don't need to delete all those properties; steam-tradeoffer-manager will just ignore them. You need to provide a callback to offer.send() -
That's slightly tricky with async requests. You may want to use a module like https://www.npmjs.com/package/async
- 2 replies
-
- Steam
- Trade offer
-
(and 1 more)
Tagged with:
-
Question How to accept confirmitions in mobile app?
Dr. McKay replied to Rocket Scientist's topic in General
I have never attempted to sign into Steam from PHP. I believe there might be libraries out there that do it, but I can't help you there. -
autoRelogin will handle all cases in which it gets disconnected from Steam, including if your Internet goes down. It can't actually tell the difference, really. Steam being unavailable is Steam being unavailable, regardless of whose end the problem is on.
-
Question How to accept confirmitions in mobile app?
Dr. McKay replied to Rocket Scientist's topic in General
Are you logged in? You need to be logged in to use that. -
You can handle trade offers with steam-tradeoffer-manager.
-
You'll need to either get more IP addresses or make less requests.