Cron Jobs
Un cron job est une commande Linux permettant de planifier le lancement d’une commande ou d’un script sur votre serveur afin d’exécuter automatiquement des tâches à répéter. Les scripts exécutés en tant que cron job sont généralement utilisés pour effectuer des modifications sur des fichiers ou bases de données ; ils peuvent cependant effectuer d’autres tâches qui ne modifient pas les données sur le serveur, comme expédier des notifications par courriel. Vous pouvez activer plusieurs cron jobs sur Koha (lancement de l’indexation du moteur de recherche, génération d’avertissement pour retard, nettoyage des données, etc…), qui seront détaillées dans ce chapitre.
Exemple de crontab
Un exemple de crontab Koha se trouve dans misc/cronjobs/crontab.example.
The example includes sample boilerplate cronjob entries for the most commonly-used cronjobs.
Cron Jobs
Les chemins de fichier mentionnés ci-dessous présupposent que les fichiers crons sont placés dans misc/. Si vous disposez d’une installation standard et que ceux-co ne sont pas dans misc/, regardez dans bin/.
Sauvegarde
Daily Backup
Chemin du script : misc/cronjobs/backup.sh
Does: Creates a daily backup of the Koha database.
Périodicité préconisée : chaque jour
Rechercher
Carte du site
Chemin du script : misc/cronjobs/sitemap.pl
Does: Processes all biblio records from a Koha instance and generates sitemap files complying with the protocol as described on http://sitemaps.org. The goal of this script is to be able to provide to search engines direct access to biblio records. It avoids leaving search engines browsing Koha’s OPAC which would generate a lot of site traffic and server workload.
Note A file named sitemapindex.xml is generated. It contains references to multiple sitemap files. Each file contains at most 50,000 URLs and is named sitemapXXXX.xml.
The files must be stored on the Koha OPAC’s root directory. In the same directory a robots.txt file with the following contents is required:
Sitemap: sitemapindex.xml User-agent: * Disallow: /cgi-bin/
Reconstruction de l’index
Chemin du script : misc/migration_tools/rebuild_zebra.pl
Tâche effectuée : Mise à jour des index Zebra avec les données récemment modifiées
Requis par : Zebra
Périodicité préconisée : tous les n minutes (plutôt entre 5 et 15 mn), selon le niveau de performance recherché
Circulation
File des réservations
Chemin du script : misc/cronjobs/holds/build_holds_queue.pl
Tâche effectuée : Mise à jour de la file de réservations
Required by: Holds Queue Report
Périodicité préconisée : toutes les 15 mn
Description :
Ce script devrait être exécuté régulièrement si vos adhérents sont autorisés à placer des réservations sur des documents en rayon. Le script établit quelle bibliothèque doit prendre en charge la demande de réservation.
It’s behavior is controlled by the system preferences StaticHoldsQueueWeight and RandomizeHoldsQueueWeight.
Si vous ne voulez pas que toutes vos sites participent au processus de réservation en rayon, vous devez répertorier ici les sites qui *participent* au processus en saisissant leurs codes (branchcodes), séparés par des virgules (par ex. « MPL, CPL, SPL, BML », etc).
La file d’attente des réservation sera générée par défaut de manière à ce que le système gère d’abord les réservations disponibles sur le site de retrait. S’il n’y a pas d’exemplaire disponible sur le site de retrait pour établir la liste des réservations, build_holds_queue.pl utilisera la liste des bibliothèques définie dans StaticHoldsQueueWeight. Si RandomizeHoldsQueueWeight est désactivé (il l’est par défaut), le script assignera les demandes de traitement dans l’ordre des autre sites indiqués dans la préférence système StaticHoldsQueueWeight.
Par exemple si votre réseau compte trois sites de taille variable (petit, moyen et grand) et que vous souhaitez que la gestion des réservations soit effectuée par le plus grand site avant le plus petit, votre préférence système StaticHoldsQueueWeight ressemblera à quelquechose comme « LRG,MED,SML ».
Si vous souhaitez répartir de manière équitable la réponse aux demandes de réservations au sein de votre réseau, activez RandomizeHoldsQueueWeight. Lorsque cette préférence système est activée, l’ordre dans lequel les sites devront répondre aux demandes de réservations pour une demande de document disponible sera généré de façon aléatoire à chaque réactualisation de la liste.
Il est contre-indiqué de laisser StaticHoldsQueueWeight vide pour le moment. Cela force le script build_holds_queue à ignorer RandomizeHoldsQueueWeight, les demandes sont alors assignées aux sites non pas aléatoirement, mais par ordre alphabétique.
Réservations expirées
Chemin du script : misc/cronjobs/holds/cancel_expired_holds.pl
Does: By default, this cron job will only automatically cancel holds where the user has set an expiration date. If the library is using the Permettre and ExpireReservesMaxPickUpDelayCharge preferences then this script will also cancel holds that have been sitting on the hold shelf for too long and will (if the library does) charge the patron for not picking up the hold.
Périodicité préconisée : chaque jour
Réactiver les réservations
Chemin du script : misc/cronjobs/holds/auto_unsuspend_holds.pl
Does: This script checks to find holds that should no longer be suspended and removes the suspension if the Réactiver toutes les réservations suspendues preference is set to “allow”. This puts the patron back in to the queue where they were when the hold was suspended.
Périodicité préconisée : chaque jour
Amendes
Chemin du fichier : misc/cronjobs/fines.pl
Does: Calculates and posts fines to patron accounts.
Requis par : finesMode system preference
Périodicité préconisée : chaque jour
Amendes fixes
Chemin du script : misc/cronjobs/staticfines.pl
Does: this script calculates and charges overdue fines to patron accounts
Note If the Koha System Preference “finesMode” is set to “production”, the fines are charged to the patron accounts. If set to “test”, the fines are calculated but not applied.
Note Fines won’t be applied on a holiday.
Retards de longue durée
Chemin du fichier : misc/cronjobs/fines.pl
Does: allows one to specify delays for changing items to different lost statuses, and optionally charge for them using the replacement price listed on the item record.
Périodicité préconisée : chaque jour
Note
Staff can control some of the parameters for the longoverdue cron job with the DefaultLongOverdueLostValue and DefaultLongOverdueChargeValue preferences.
Suivre le nombre total de prêts
Chemin du script : misc/cronjobs/update_totalissues.pl
Does: updates the biblioitems.totalissues field in the database with the latest tally of checkouts based on historical issue statistics.
Périodicité préconisée : chaque jour
Attention
If the time on your database server does not match the time on your Koha server you will need to take that into account, and probably use the –since argument instead of the –interval argument for incremental updating.
Note
This cronjob can be used if there is a performance concern. Otherwise, use the UpdateTotalIssuesOnCirc System Preference.
Generate Patron File for Offline Circulation
Chemin du script : misc/cronjobs/create_koc_db.pl
Does: Generates the borrowers.db file for use with the Koha Offline Circulation tool
Périodicité préconisée : chaque jour
Renouvellement automatique
Chemin du script : misc/cronjobs/automatic_renewals.pl
Does: Will automatically renew items if you’re allowing automatic renewal with your circulation and fine rules.
Périodicité préconisée : chaque jour
Utilisateurs
Suppression d’adhérents par lots
Chemin du script : misc/cronjobs/delete_patrons.pl
Does: Deletes patron records in batch based on date not borrowed since, expired before, last seen, category code, or library branch.
Instrument à cordes frottées, non précisé
Chemin du script : misc/cronjobs/delete_expired_opac_registrations.pl
Does: Deletes patron registrations that were submitted via the OPAC but not reviewed by the library within the number of days entered in the PatronSelfRegistrationExpireTemporaryAccountsDelay preference.
Périodicité préconisée : chaque jour
Unconfirmed Registrations
Chemin du fichier : misc/cronjobs/delete_unverified_opac_registrations.pl
Does: Deletes patron self registrations that were submitted via the OPAC but not confirmed via email within 24 hours. This is only necessary if you are requiring patrons to confirm their registrations via email with the PatronSelfRegistrationVerifyByEmail preference.
Périodicité préconisée : chaque jour
Anonymize Patron Data
Chemin du script : misc/cronjobs/batch_anonymise.pl
Does: Used to anonymize patron data. This will remove borrowernumbers from circulation history so that the stats are kept, but the patron information is removed for privacy reasons.
Changement de type d’utilisateur: enfant à adulte
Chemin du fichier : misc/cronjobs/fines.pl
Does: Convert juvenile/child patrons from juvenile patron category and category code to corresponding adult patron category and category code when they reach the upper age limit defined in the Patron Categories.
Périodicité préconisée : chaque jour
DESCRIPTION
This script is designed to update patrons from juvenile to adult patron types, remove the guarantor, and update their category codes appropriately when they reach the upper age limit defined in the Patron Categories.
USAGE EXAMPLES
« juv2adult.pl »
« juv2adult.pl » -b=<branchcode> -f=<categorycode> -t=<categorycode> (Processes a single branch, and updates the patron categories from category to category)
« juv2adult.pl » -f=<categorycode> -t=<categorycode> -v -n (Processes all branches, shows all messages, and reports the patrons who would be affected. Takes no action on the database)
Notifications
File des messages
Chemin du script : misc/cronjobs/process_message_queue.pl
Does: processes the message queue to send the check out, check in and hold filled emails and SMS message to users and sends outgoing emails to patrons. requires EnhancedMessagingPreferences to be on
Périodicité préconisée : toutes les 15 mn
Important
Item due and Advanced due notices are controlled by the advance_notices cron.
2 = préavis de rappel
Chemin du script : misc/cronjobs/advance_notices.pl
Does: prepares « pre-due » notices and « item due » notices for patrons who request them prepares notices for patrons for items just due or coming due soon. requires EnhancedMessagingPreferences to be on
Périodicité préconisée : chaque jour
Note
This script does not actually send the notices. It queues them in the message queue for later
ODUE (Notification de retard)
Chemin du script : misc/cronjobs/overdue_notices.pl
Does: prepares messages to alert patrons of overdue messages (both via email and print)
Périodicité préconisée : chaque jour
Note
This script does not actually send the notices. It queues them in the message queue for later or generates the HTML for later printing
Voir aussi
The misc/cronjobs/advance_notices.pl program allows you to send messages to patrons in advance of their items becoming due, or to alert them of items that have just become due.
Notifications pour retard papier
Chemin du fichier : misc/cronjobs/printoverdues.sh
Does: generates PDF files from HTML files in directories and prints them
Impression des notifications de réservation
Chemin du script : misc/cronjobs/gather_print_notices.pl
Does: looks through the message queue for hold notices that didn’t go through because the patron didn’t have an email address and generates a print notice
Périodicité préconisée : chaque jour
Talking Tech
To learn more about setting up this third party product view the Talking Tech chapter.
Envoyer un fichier de notices
Chemin du script : misc/cronjobs/thirdparty/TalkingTech_itiva_outbound.pl
Does: Script to generate Spec C outbound notifications file for Talking Tech i-tiva phone notification system.
Requis par : Activer
Périodicité préconisée : chaque jour
Receiving Notices File
Chemin du script : misc/cronjobs/thirdparty/TalkingTech_itiva_inbound.pl
Does: Script to process received Results files for Talking Tech i-tiva phone notification system.
Requis par : Activer
Périodicité préconisée : chaque jour
Notifier les adhérents prochainement expirés
Chemin du script : misc/cronjobs/membership_expiry.pl
Does: Sends messages to warn patrons of their card expiration to the messaage queue cron.
Requiert : MembershipExpiryDaysNotice
Périodicité: chaque soir
En cours de traitement/Chariot de livres
Chemin du script : misc/cronjobs/cart_to_shelf.pl
Does: Updates all items with a location of CART to the item’s permanent location.
Required by: NewItemsDefaultLocation, InProcessingToShelvingCart, & ReturnToShelvingCart system preferences
Périodicité préconisée : chaque jour
Catalogue
Traitement par lot pour les imports par webservice
Chemin du script : misc/cronjobs/import_webservice_batch.pl
Does: A cron job for processing import bach queues of type “webservice”. Batches can also be processed through the UI.
Note
This script is used for OCLC Connexion
Connexion Import Daemon
Chemin du script : misc/bin/connexion_import_daemon.pl
Does: A daemon that listens for OCLC Connexion requests and is compliant with OCLC Gateway specification. It takes requests with MARC XML and import batch parameters from a configuration file and forwards it to svc/import_bib
Note
This script is used for OCLC Connexion
Suppression d’exemplaires par lot
Chemin du script : misc/cronjobs/delete_items.pl
Does: A batch item deletion tool, which generates a query against the items database and deletes the items matching the criteria specified in the command line arguments.
Vérification rapide d’URL
Chemin du script : misc/cronjobs/check-url-quick.pl
Does: Check URLs from biblio records.
Note
This script replaces the check-url.pl script
Retour
Chemin du fichier : misc/cronjobs/fines.pl
Does: checks URLs in 856$u field. Script output can now be formatted in CSV or HTML. The HTML version links directly to MARC biblio record editor.
Périodicité préconisée : chaque jour
Pour en savoir plus : http://wiki.koha-community.org/wiki/Check-url_enhancements
Supprime les notices via le leader
Chemin du script : misc/cronjobs/delete_records_via_leader.pl
Does: Attempt to delete any MARC records where the leader character 5 equals “d”
Modifier des autorités
Chemin du script : misc/cronjobs/merge_authorities.pl
Permission d’accéder à la gestion des notices d’autorité
Note
The name of this script is misleading. This script does not merge authorities together it instead merges authority data with linked bib records. Edits to authority records will be applied to bibliographic records that use that authority when this script is run.
Required by: dontmerge system preference
Périodicité préconisée : chaque jour
Abonnement(s) mis à jour :
Chemin du fichier : misc/cronjobs/fines.pl
Does: checks if there is a « late » issue on active subscriptions, and if there is, the script will set it as late, and add the next one as expected.
Périodicité préconisée : chaque jour
Mise à jour automatique d’exemplaire
Chemin du script : misc/cronjobs/automatic_item_modification_by_age.pl
Does: updates items based on the list of rules set forth in the Modification automatique d’exemplaires en fonction de l’age tool
Nécessaire pour Modification automatique d’exemplaires en fonction de l’age
Périodicité préconisée : chaque nuit
OPAC
RSS Feeds
Chemin du fichier : misc/cronjobs/fines.pl
Does: Produces an RSS XML document for any SQL query (not used for search results RSS feed). Learn more.
Périodicité préconisée : chaque jour
Autorités à fusionner
Chemin du script : misc/cronjobs/build_browser_and_cloud.pl
Does: Generate content for authorities browse in OPAC
Requis par : OpacBrowser system preference
Important
This preference and cron job should only be used on French systems.
Nuage de sujets
Chemin du fichier : misc/cronjobs/fines.pl
Does: Generates HTML keywords clouds from Koha Zebra indexes. misc/cronjobs/cloud-sample.conf has a sample of how this script operates.
Frequency: This is the type of script you can run once a month or so, the content generated isn’t going to change very much over time.
Administration système
Quota de services
Chemin du script : misc/cronjobs/services_throttle.pl
Does: resets the xISBN services throttle
Périodicité préconisée : chaque jour
Nettoyage de la base de données
Chemin du script : misc/cronjobs/cleanup_database.pl
Does: Truncates the sessions table, cleans out old zebraqueue entries, action logs and staged MARC files.
Acquisitions
Nettoie les vieilles suggestions
Chemin du script : misc/cronjobs/purge_suggestions.pl
Does: Removes old (defined by you) suggestions from the suggestion management area.
Note
The system preference PurgeSuggestionsOlderThan defines the number of days used in the script
Courriel de suggestions à traiter
Chemin du script : misc/cronjobs/notice_unprocessed_suggestions.pl
Does: Generates a notice to the fund owner that there are suggestions in need of processing
Traitement des messages EDI
Chemin du script : misc/cronjobs/edi_cron.pl
Does: Sends and received EDI messages
Périodicité préconisée : toutes les 15 minutes
Remove Temporary EDI Files
Chemin du script : misc/cronjobs/remove_temporary_edifiles.pl
Does: removes temporary EDI files that are older than 5 days
Bilans et statistiques
Lancer le rapport
Chemin du script : misc/cronjobs/runreport.pl
Tâche effectuée : exécute les rapports sauvegardés existants
Import les données des adhérents
NL sync to Koha
Script path: misc/cronjobs/nl-sync-to-koha.pl
Does: sync patrons from the Norwegian national patron database (NL) to Koha
Note Relies on NorwegianPatronDBUsername and NorwegianPatronDBPassword system preferences
NL sync from Koha
Script path: misc/cronjobs/nl-sync-from-koha.pl
Does: sync patrons from Koha to the Norwegian national patron database (NL)
Note Relies on NorwegianPatronDBUsername and NorwegianPatronDBPassword system preferences
Supprimer abonnement
Il n’y a pas de modification d’adhérent en attente.
Chemin du script : misc/cronjobs/update_items.pl
Chemin du fichier : misc/cronjobs/fines.pl
Chemin du fichier : misc/cronjobs/fines.pl
Chemin du fichier : misc/cronjobs/fines.pl
Chemin du script : misc/cronjobs/zebraqueue_start.pl
Social data
Get report social data
Script path: misc/cronjobs/social_data/get_report_social_data.pl
Does: downloads data from Babelthèque to add to OPAC records
Périodicité préconisée : chaque jour
Update social data
Script path: misc/cronjobs/social_data/update_social_data.pl
Does: updates OPAC records with Babelthèque social data