Skip to content
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

Progress option in notifications #392

Open
TheLion opened this issue Mar 6, 2022 · 3 comments
Open

Progress option in notifications #392

TheLion opened this issue Mar 6, 2022 · 3 comments
Labels
enhancement New feature or request

Comments

@TheLion
Copy link

TheLion commented Mar 6, 2022

Is your feature request related to a problem? Please describe

No

Describe the solution you'd like

The new notifier option is great and works great.

Is it possible to create some kind of progress options well?

So it sends a status and screenshot every x min or layers.

Describe alternatives you've considered

Telegram plugin, but I use Pushover for all notifications, so through Apprise should be great!

Additional information

No response

@TheLion TheLion added the enhancement New feature or request label Mar 6, 2022
@thankyousam
Copy link

thankyousam commented Feb 16, 2024

I know this is a couple of years old now, but I've been thinking of a similar feature, so looking for any other folks ideas on this.

I have been looking at the existing code which generates the events that trigger the existing notifier actions. There is a stub of code in job_state.py which generates a layer_change event, but nothing in notifier currently listens for it.

There is a limited amount of data available in the existing print state objects, and even less when the layer change event occurs. - it's pretty much the current layer, total layer, and a job and print duration, and not even the file name of the currently printing file. There's also nothing around the ETA, or progress through the gcode.

The obvious and easy way, which I've quickly coded locally, is to provide a progress notification based on how many layers have been completed against the total layer count, e.g. trigger every 25% during the printing. I've created a new notifier event which can be added to the moonraker.conf and the % trigger supplied as config.

Another option would be to provide a progress event after every X layers, rather than every Y percent, but again this is based on the layer progress, not the true runtime of the overall print. The good thing about the percent is you can essentially say how many progress updates you want during the job, i.e. 25% will always provide 3 updates (25%, 50% and 75% - 0% is start and 100% is complete so no need to trigger). The every X layers would provide a regular heartbeat, but would obvs be variable based on the number of layers in the job.

I've put some code together which I'll look to add into a branch for review.

@TheLion
Copy link
Author

TheLion commented Feb 24, 2024

Thanks, would be great!
Now using Telegram for progress and pushover for starts/stops ;-)

@thankyousam
Copy link

PR #840 created to enable this feature in Notifier.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

2 participants