-
-
Notifications
You must be signed in to change notification settings - Fork 170
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Feature request - shorter wait time #175
Comments
Hello o/ The thing is, the 1 hour refresh cycle is quite arbitrary - campaign start and end times are tracked in real time. That means the miner will automatically reload itself when the campaign starts already, and you can verify that by monitoring closely what it does right at the campaign start time. I'd like to not lower this 1 hour to anything shorter, because whole inventory reloads are expensive network-wise and I don't want to "hammer" Twitch with requests any more often than that. Everything needed to start and track a campaign at a specific time is already implemented and should be working - if it doesn't, that's what should be investigated, not the refresh cycle time being changed. That being said, to tell what's happening, please provide the output from the miner with the CALL trace enabled, by passing in |
Thanks so much for responding! I didn't realize that is how things work. |
According to the log, a channel cleanup happened exactly at 4 AM. The cleanup should've checked the online status of all channels on the list, and subscribed to their status updates. The websocket connection would then be responsible for receiving those updates within the next hour, and if one of the channels would come online, the websocket would then generate an event that would cause a channel switch to happen and start watching as expected. But that never happened, until a reload doing another channel cleanup happened at Lines 290 to 292 in a19eceb
During websocket implementation, there was an incentive on my part to create a system where this confirmation would be handled properly, but I was having trouble synchronizing the whole thing, and the websocket was simply getting stuck and preventing the program from, well, working at all. So my solution was to simply postpone this until "later" when a need for this would arise (like it does now), and until then, simply send a request for subscription and "assume" it got through properly. This thing has a related issue of #110, so when #110 is closed, this one should be closed as well, and vice versa. I'm leaving it open for anyone that possibly ends up with the same issue, so they can find the exact cause. |
I see - thanks for looking at this and it's great to hear that the solution is in sight! Unti this is solved, I can always just launch the browser with a task scheduler to make sure I get the drops if I really want a particular one :D |
Some game streams only last for 40 minutes to an hour and offer drops for watching for 30 minutes (Warframe is one example - they do it every week with two featured streamers after the weekly dev stream). Sometimes the stream may be longer, say, 1.5 hours, and requires watching for 40 minutes. In both cases mining often starts too late to achieve the goal and get the drop. Would it be possible to reduce the waiting time between checks from 1 hour to something shorter? Or possibly make it a custom setting?
Appreciate this wonderful program a lot, and this would make it perfect - thank you so much for making it in the first place!
EDIT: I checked the behavior in the version built from the latest source - it still persists. Warframeinternational channel is a good example - it should give one full drop per week and progress towards the next one, but it only gives some progress for the first one instead (the system is one drop for 40 minutes between that channel and official Warframe one)
The text was updated successfully, but these errors were encountered: