Jump to content
McKay Development

Dr. McKay

Administrator
  • Posts

    3628
  • Joined

  • Last visited

Everything posted by Dr. McKay

  1. GetFriendList gives you timestamps.
  2. Correct. When you're using steam-user, your "login" is a connection to the CM. It's completely distinct from your web session. When your web session expires but you're still connected you don't need to reconnect. Just get a new web session which requests new cookies from the CM.
  3. It's being called for a reason, and that reason is that your session expired. I assume that you're getting your session from node-steam-user, and you're calling logOn when it expires. That's wrong, you should call webLogOn.
  4. Use both. If the callback returns success then send success immediately. If it returns error 16 (timeout) then wait for receivedOfferChanged.
  5. let sold = JSON.parse(require('fs').readFileSync('TotalSold.json').toString('utf8')); sold.TotalItemsTraded.TotalKeys += something; require('fs').writeFileSync('TotalSold.json', JSON.stringify(sold, undefined, "\t"));
  6. You can only cancel active offers (state 2). State 4 (Countered) means that the trade offer was countered. The offer that's in state 4 is no longer active, and a new trade offer with a new trade offer ID was sent to you with the counter offer.
  7. Not at the moment. You could open a GitHub issue on https://github.com/DoctorMcKay/node-globaloffensive to get it added though I can't promise it'll happen anytime soon.
  8. It wouldn't work for CS:GO.
  9. Probably because you're using some when you mean to use forEach. And also Steam probably has a chat message rate-limit.
  10. Steam doesn't "take care" of anything chat-related except links it feels to be malicious. That said, unless you're doing something utterly insane like eval()'ing chat messages you're fine there.
  11. DigitalOcean is fine. I'd recommend them more now that they've dropped their prices than I would in the past. If you're going with a VPS then you need to read up on security so you don't get pwned. You probably want at least 2 GB of RAM. 1 GB might work but keep in mind that it also needs to support the entire OS too. On a reputable host your files are safe. You don't need to encrypt them unless you're really paranoid, and if you do go that route you can't store the key on the server or it'll defeat the purpose.
  12. https://github.com/DoctorMcKay/node-steam-tradeoffer-manager/wiki/TradeOfferManager#getoffersfilterhistoricalcutoff-callback
  13. Sure, just load two inventories and add two items from different games. Change the amount property on the item. For example: manager.getUserInventoryContents(steamID, 753, 6, true, (err, inv) => { if (err) { throw err; } let gems = inv.filter(item => item.market_hash_name == "Gems"); let item = gems[0]; item.amount = 300; offer.addMyItem(item); });
  14. You never need a trade URL to get an inventory. Just use getUserInventoryContents to get an inventory.
  15. You aren't using async properly. You need to call getInventoryContents inside of the webSession event, after you call setCookies.
  16. No. You can't get private inventories under any circumstance.
  17. The partner parameter in the URL is the account ID of the user. You can use community.getUserInventoryContents("[u:1:" + accountid + "]", . . .)
  18. Who's "the" user? The currently logged in user? playingState A friend? user
×
×
  • Create New...