-
Posts
3408 -
Joined
-
Last visited
Posts posted by Dr. McKay
-
-
I don't understand what you're saying.
-
It still does some manual polls when you disabled timed polling.
-
You must have, or they obtained it from another source where you previously shared it.
-
Yes, a TradeOffer object has a confirmationMethod property as you describe.
The value of that property is different for each party in the trade. If you're the sender, then it's populated on send. A nonzero value in state CreatedNeedsConfirmation means that it's waiting on you to confirm it. A nonzero value in any other state means that you were required to initially confirm it using that method, but no further action is required on your part.
On the recipient's side, a zero value in state Active means you haven't tried to accept it yet. A nonzero value in state Active means you need to confirm it using that method before the offer can be accepted. A nonzero value in any other state means you previously had to confirm it using that method.
-
You'll want to prompt the user for their trade URL, then use the token from that URL to authenticate the trade offer.
-
What version are you running?
-
I'm assuming that you're asking whether or not Steam stopped paginating inventories? Steam paginates after 2500 items. Here's an example.
-
- Player 1 creates a trade offer and sends it to Player 2. Player 1 needs to confirm it: offer state is CreatedNeedsConfirmation and it's invisible to Player 2.
- Player 1 confirms the trade. It goes into state Active and both players can view it.
- Player 2 accepts the trade. It requires confirmation, but stays in state Active. Once accepted, the API for Player 2 says that confirmation_method is either 1 or 2 (previously 0) depending on email or mobile confirmations.
- Player 2 confirms the trade. It changes into state Accepted.
-
Extracting the token from a trade url isn't a big issue, however I would stick to tokens since it's straight forward. if the token isn't validated means the token doesn't belong to the SteamID provided or is invalid. extracting a token can be as simple as it sounds, but i believe the act of sending an offer via a trade url is more of a hassle than sending an offer via tokens (as it needs more functions).
I'm not sure we're on the same page. Allowing the usage of a trade URL wouldn't remove the ability to use a SteamID and token separately.
-
So basically you want to show a user their inventory on your site, and have them pick items from their inventory, then have your bots send a trade offer for those items?
-
You can't get a trade URL for another user without asking them. That would defeat the entire point of trade URLs (which is that you can't trade someone unless they give you their URL).
If you're friends with the user, you don't need their trade URL/token.
-
The best way to make sure that you don't miss (many) confirmations is to use the same device ID for every confirmation request (on the account).
If you use my libraries for confirmations, then you'll always use the same device ID. If you use a node app alongside a real phone, then there can be problems.
-
Hooks for polling is kind of weird in my opinion. What's your use case for declining old incoming offers? There's no limit there and I don't see any reason why you wouldn't be able to act on an offer immediately when newOffer is emitted.
-
There are HTTP hooks that you can use to override the proxy per-request.
-
This is interesting. I've never experienced any kind of delay for offers which don't need confirmation.
Are you 100% sure that the offer is "sent" and not pending confirmation (which is being auto-confirmed or something)?
-
Only in node?
-
Not presently. Are you confirming stuff in node and on a real phone?
-
Steam is Steam.
-
The only receivedOfferChanged notification is for an active received offer going into another state (decrement of "pending active offers" notification count).
5 seconds should be okay.
-
As of v1.20.0, you can pass your own SteamCommunity to the constructor of TradeOfferManager. You can pass your own request to the SteamCommunity constructor and you can specify a proxy to request via request.defaults.
-
Using the Steam client is the fastest way to get notifications, but you still need polling to make sure you get everything (Steam doesn't send notifications when offers you send in which you receive no items are accepted, for example). Polling every second is overkill, but is possible.
-
That's a known Steam issue. Some confirmations just aren't shown by Steam.
-
-
Receiving items
in node-steam-tradeoffer-manager
Posted
Is itemsToGive for sure bigger than 0? Also are you up to date?