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

Feature suggestion: Have the daemon only query the api during working hours #42

Open
kremke opened this issue Feb 3, 2022 · 8 comments
Assignees
Labels
enhancement New feature or request

Comments

@kremke
Copy link

kremke commented Feb 3, 2022

Hi,

When setting up the daemon it occured to me that it might be a good idea to define a time period when there is no need for the daemon to query the api for new print jobs. For the libraries I am configuring there is no need to check for new jobs every minute during the night and by pausing the api queries there would be more system resources on the Alma server to run other tasks.

Regards,

Helgi Steindal

@mgobat mgobat added the enhancement New feature or request label Feb 3, 2022
@niemalsnever
Copy link

Hello,

I support this enhancement request, bonus points for making it possible to use the opening/working hours defined in Alma.

Best Regards,
Sven Pagel

@mgobat mgobat self-assigned this May 6, 2022
@mgobat
Copy link
Contributor

mgobat commented Mar 22, 2023

@niemalsnever, @kremke....if it were tied to working hours, what would be the best way to do that? Allow selection of one library, or would it need to be one library per printer queue?

@niemalsnever
Copy link

Since one Alma printer queue is usually (at least for us) mapped to a single physical printer, meaning a physical library site, through the Alma Print Daemon, in my book it would be the selection of one library per printer queue configured. My intention with this feature would be not having the Print Daemon retrieve and print jobs, if no one is there to actually pick up the printed letters, or intervene if something goes wrong.

@kremke
Copy link
Author

kremke commented Mar 23, 2023

I concur, I think it would be best to configure this per queue since different departments in a library can have different working hours, i.e. a circulation desk may need to listen for slips to be printed out at the desk in the evening, but the acquisitions department may stop working much earlier and don't need to check the printout queue until the next morning when the staff comes to work.

Regards,

Helgi

@mgobat
Copy link
Contributor

mgobat commented Mar 23, 2023

@niemalsnever @kremke, thanks for your input. I figured that would be the most useful way to implement, but wanted to be sure I wasn't taking it too far. Would a simpler implementation, let's say with a single start/end time set within the application itself, be at all useful if it could be delivered sooner rather than later? Or would that be a waste? Thanks.

@niemalsnever
Copy link

@mgobat A simpler implementation with a single start/end time would be nice as a first step, as it makes running the software non-stop and not having to terminate it using for example a scheduled task easier. I'm fully aware that having the daemon pull and evaluate the working hours is a complex task that cannot be implemented quickly, so having a simple schedule with a single time window in which to pull and print print jobs would be appreciated in the meantime.

Also I agree with @kremke, time windows per print queue would allow for much more flexibility as to in what time frame to fetch which jobs.

Best Regards,

Sven Pagel

@mgobat
Copy link
Contributor

mgobat commented Apr 24, 2023

@kremke, @niemalsnever, if you like, please check out version 2.2.0-beta-01 containing a simple implementation of this enhancement. You may specify "Active time" for when the Alma Print Daemon should be operational.

https://github.com/ExLibrisGroup/alma-print-daemon/releases/tag/v2.2.0-beta-01

mgobat added a commit that referenced this issue Oct 24, 2023
* Minor enhancements

GitHub Issue #10 and simple implementation of #42.

* Beta version with additional error handling, part 1

Some of GitHub issue #74. This check-in is for better printer error handling when running as an app.

* Attempt at better error trapping/logging

Work in progress...

* Change error handling a bit

GitHub Issue #74

* Write to log upon successful print

* Remove try/catch in printing

Electron printing doesn't catch "invalid deviceNmae" error. The try/catch/finally block did, but it caused a problem for printing when there were no printer issues. Remove try/catch/finally. Comment out some superfluous "WriteLog" statements.

* More for issue #74

* Implement global configuration option

Addresses GitHub issue #44 and parts of issue #76.

* Trap errors writing to log file

* Remove beta version number for 2.2 general release
@enettifee
Copy link

Our library would also find days of the week controls valuable - several of the smaller libraries don't pull holds over the weekend, so being able to just specify Monday - Friday would be helpful.

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

4 participants