adam1
-
Posts
5 -
Joined
-
Last visited
Posts posted by adam1
-
-
@Dr. McKay I realised I can't use try/catch with the logOn method to handle this error due to lack of callback/promise. Is this something that could be changed?
Also, using `user.on('error', [..]` doesn't seem to catch this.
-
10 hours ago, Dr. McKay said:
I ran this for 5 minutes and it didn't crash. What version of steam-user are you on?
Hi, thanks for trying it out. I'm running `4.19.3` at the moment. Although when I tried this again today I had to leave it running for quite some time to generate an error... 6 hours roughly. I did get a slightly longer stack trace this time. I'm usually running it in a screen so I worry that might be chopping the stack trace off.
/Users/user/git/app/node_modules/steam-user/components/logon.js:23 throw new Error("Already logged on, cannot log on again"); ^ Error: Already logged on, cannot log on again at /Users/user/git/app/node_modules/steam-user/components/logon.js:23:10 at processTicksAndRejections (node:internal/process/task_queues:75:11) at runNextTicks (node:internal/process/task_queues:62:3) at listOnTimeout (node:internal/timers:525:9) at processTimers (node:internal/timers:499:7)
-
On 2/9/2021 at 7:37 AM, Dr. McKay said:
Can I see the rest of the stack trace, please? It's possible that there's a bug in the module.
This isn't related to the error, but I don't see any reason why you'd need to log on anonymously every time you want to send that request. You could just leave the connection open and you might run into fewer issues with Steam throttling you or something.
Hey, sure. If I change my job to run every second I can get it to happen within a minute or so usually:
Feb 10 @ 08:07:17 (UTC) /Users/user/git/app/node_modules/steam-user/components/logon.js:23 throw new Error("Already logged on, cannot log on again"); ^ Error: Already logged on, cannot log on again at /Users/user/git/app/node_modules/steam-user/components/logon.js:23:10 at processTicksAndRejections (node:internal/process/task_queues:75:11)
-
const getAppBranchInfo = (appId, branch) => new Promise(resolve => { let user = new SteamUser(); user.on('loggedOn', async () => { const productInfo = await user.getProductInfo([appId], []); const appName = productInfo.apps[appId].appinfo.common.name; const buildId = productInfo.apps[appId].appinfo.depots.branches[branch].buildid; const timeUpdated = productInfo.apps[appId].appinfo.depots.branches[branch].timeupdated; // Graefully logoff. user.logOff(); resolve({ appName: appName, buildId: buildId, timeUpdated: timeUpdated }); }); user.logOn(); }); const job = schedule.scheduleJob('*/3 * * * * *', () => { console.log(formatDate()); getAppBranchInfo(740, 'public') .then(info => { // [...] }); });
This ran for several hours before:
Feb 7 @ 05:37:21 (UTC) /Users/user/git/app/node_modules/steam-user/components/logon.js:23 throw new Error("Already logged on, cannot log on again"); ^ Error: Already logged on, cannot log on again at /Users/user/git/app/node_modules/steam-user/components/logon.js:23:10
The only thing I can think of is that attempting to login anonymously every 3 seconds is too often, but surely it's not possible to already be logged in?
Already logged on, cannot log on again (with only 1 call to .logOn per instance)
in node-steam-user
Posted
I'll keep an eye on this thread, hope you can come up with a solution. Right now I've implemented a pretty nasty workaround.