工作排程¶
工作排程是安排自動伺服器裡的指令或腳本以完成指定工作的 Linux 指令。以工作排程方式執行的腳本通常是修改檔案或資料庫;然而,它們也可以執行其他不需修改伺服器資料的工作,像是送出電子郵件通知。Koha 有很多工作排程供啟用 (搜尋引擎索引、產生逾期通知、清理資料等),本章將說明這些。
Crontab 範例¶
Koha crontab 在 misc/cronjobs/crontab.example
此範例包括最常用的 cronjobs 的 boilerplate cronjob 款目的樣本。
工作排程¶
工作排程應該在 misc/ 之下,若在 misc/ 之下找不到而且以標準方式安裝伺服器時則可能在 bin/
搜尋¶
站台地圖¶
腳本路徑:misc/cronjobs/sitemap.pl
做:從 Koha instance 產生的書目紀錄與產生網站地圖檔案及其通訊協定都描述於 http://sitemaps.org。此腳本的目標是讓搜尋引擎直接近用書目紀錄。避免搜尋引擎瀏覽 Koha 的 OPAC 產生不必要的流量增加伺服器的工作量。
說明 產生檔案 sitemapindex.xml。藉此參照至多個網站地圖檔案。每個檔案至多可以容納 50,000 URL 並命多為 sitemapXXXX.xml。
檔案必須儲存在 Koha OPAC 的根錄內。就是與 robots.txt 同個目錄包括以下的內容:
Sitemap: sitemapindex.xml User-agent: * Disallow: /cgi-bin/
重建索引¶
腳本路徑:misc/migration_tools/rebuild_zebra.pl
做:納入最近變更的資料更新 Zebra 索引。
必需用到的:Zebra
頻率建議:每隔 x 分鐘,(5-15 分鐘之間) 視執行所需
流通¶
預約佇列¶
腳本路徑:misc/cronjobs/holds/build_holds_queue.pl
做:更新預約順位報表
必須用到:預約順位報表
建議頻率:每 1-4 小時
說明:
應定期執行腳本若您的圖書館系統允許讀者預約在架的館藏。此腳本決定負責滿足此預約的圖書館。
由系統偏好 StaticHoldsQueueWeight 與 RandomizeHoldsQueueWeight 負責控制此排程。
不讓所有圖書館參與館藏滿足預約計畫,應列出*要*參加該計畫的圖書館,包括圖書館的條碼,並以逗點區隔(如:」MPL,CPL,SPL,BML」 等)。
預設,預約順位將先列入提取圖書館。若無法滿足,則 build_holds_queue.pl 將取用 StaticHoldsQueueWeight 設定的圖書館。若停用 RandomizeHoldsQueueWeight (預設值為停用),則依 StaticHoldsQueueWeight 偏好設定的圖書館順序,逐一取用。
例如,系統內有三個規模不一的圖書館(大型、中型與小型),希望由大型圖書館承擔較多的預約責任,StaticHoldsQueueWeight偏好應設為」LRG,MED,SML」。
若期望各圖書館平均分擔預約的任務,應啟用RandomizeHoldsQueueWeight偏好,將隨機將預約分配給各圖書館。
讓 StaticHoldsQueueWeight 空白是禁忌,將造成 build_holds_queue 腳本忽略 RandomizeHoldsQueueWeight,使該腳本要求不是隨機卻採用字順方式填入預約。
預約過期¶
腳本路徑:misc/cronjobs/holds/cancel_expired_holds.pl
做:預設,此工作排程僅自動執行使用者設定到期日的取消預約。若圖書館使用 ExpireReservesMaxPickUpDelay 與 ExpireReservesMaxPickUpDelayCharge 偏好則此腳本也取消在預約架太久的預約並將 (若圖書館要的) 向讀者收取未提取預約到館費用。
建議頻率:逐日
取消預約¶
腳本路徑:misc/cronjobs/holds/auto_unsuspend_holds.pl
做:若將 AutoResumeSuspendedHolds 偏好設為 『允許』 則此腳本檢查不需保留的預約並移除它們。此舉將讀者放回保留之前序列。
建議頻率:逐日
固定罰款¶
腳本路徑:misc/cronjobs/staticfines.pl
做:此腳本計算並列出讀者帳戶內的罰款
說明 若 Koha 系統偏好 『finesMode』 已設為 『production』,則向讀者收取罰款。若設為 『test』,則計算罰款但不收取。
說明 假日不計入罰款。
逾期太久¶
腳本路徑:misc/cronjobs/longoverdue.pl
做:允許更改不同程度的遺失館藏,並向讀者收取館藏記錄內的重置價格。
建議頻率:每晚
說明
館員可以經由 DefaultLongOverdueLostValue 與 DefaultLongOverdueChargeValue 偏好控制逾期太久的工作排程。
追蹤借出總數¶
腳本路徑:misc/cronjobs/update_totalissues.pl
做:以最新的借出現況更新資料庫內 biblioitems.totalissues 欄位的內容。
建議頻率:每晚
警示
需考量資料庫伺服器與 Koha 伺服器的時間不同步的狀況,並使用 –since 參數取代 –interval 參數做為新增性更新的依據。
說明
可以使用此工作排程。也可使用 UpdateTotalIssuesOnCirc 系統偏好。
讀者¶
未確認的註冊¶
腳本路徑:misc/cronjobs/delete_expired_opac_registrations.pl
做:從 PatronSelfRegistrationExpireTemporaryAccountsDelay 偏好內設定讀者經由 OPAC 自行刪除註冊資料但等待館員核准的期間。
建議頻率:每晚
未確認註冊¶
腳本路徑:misc/cronjobs/delete_unverified_opac_registrations.pl
做:24 小時內讀者經由 OPAC 自行刪除註冊資料未經館員核准即自動刪除。必須先從 PatronSelfRegistrationVerifyByEmail 偏好設定由讀者的電子郵件確認。
建議頻率:每小時
更新兒童為成人讀者類型¶
腳本路徑:misc/cronjobs/j2a.pl
做:當青少年/兒童讀者的年齡達到另個讀者類型的標準時將其轉換為對映的該讀者類型。
建議頻率:每晚
DESCRIPTION
此腳本係供青少年讀者類型昇級至成人讀者類型之用,移除保證人,到讀指定讀者類型的年齡下限時昇級至適合的代碼。
USAGE EXAMPLES
「juv2adult.pl」
「juv2adult.pl」 -b=<branchcode> -f=<categorycode> -t=<categorycode> (處理單一分館,並逐一更新讀者類型)
「juv2adult.pl」 -f=<categorycode> -t=<categorycode> -v -n (處理所有分館、顯示全部訊息、報告受影響的讀者。不修改資料庫)
通知¶
信件佇列:¶
腳本路徑:misc/cronjobs/process_message_queue.pl
做:處理訊息佇列納入發送給讀者的借出、還入與預約歸檔電子郵件與簡訊以及送給讀者的電子郵件。必須將 EnhancedMessagingPreferences 偏好設為開啟
建議頻率:1-4小時
重要
到期館藏與到期提前通知由 advance_notices cron 控制。
提前通知¶
腳本路徑:misc/cronjobs/advance_notices.pl
做:應讀者的要求提供 「到期提前」 通知與 「到期館藏」 通知給需要的讀者。需將 EnhancedMessagingPreferences 偏好設為開啟
建議頻率:每晚
說明
此腳本不會真的送出通知。祗把通知置於 訊息佇列 供以後使用
Talking Tech¶
To learn more about setting up this third party product view the Talking Tech chapter.
送出通知檔¶
腳本路徑:misc/cronjobs/thirdparty/TalkingTech_itiva_outbound.pl
做:以腳本產生 Spec C 的通知檔案供 Talking Tech i-tiva 電話通知系統。
必備於:TalkingTechItivaPhoneNotification
建議頻率:每晚
收到通知檔案¶
腳本路徑:misc/cronjobs/thirdparty/TalkingTech_itiva_inbound.pl
做:腳本處理收到來自Talking Tech i-tiva 電話通知系統的結果檔案。
必備於:TalkingTechItivaPhoneNotification
建議頻率:每晚
處理中/圖書車¶
腳本路徑:misc/cronjobs/cart_to_shelf.pl
做:以 CART 位置做為館藏永久位置而更新所有館藏。
必備:NewItemsDefaultLocation、InProcessingToShelvingCart & ReturnToShelvingCart 系統偏好
建議頻率:每小時
目錄¶
批次匯入網頁服務¶
腳本路徑:misc/cronjobs/import_webservice_batch.pl
做:處理批次匯入 『網頁服務』 屬性佇列的工作排程。也可經由 UI 處理批次。
說明
此腳本適用於 OCLC Connexion
Connexion Import Daemon¶
腳本路徑:misc/bin/connexion_import_daemon.pl
做:daemon 聽取 OCLC Connexion 的請求並回應 OCLC Gateway 規格。讀取 MARC XML 的請求並從組態檔匯入參數轉交給 svc/import_bib
說明
此腳本適用於 OCLC Connexion
檢查 URL¶
腳本路徑:misc/cronjobs/check-url.pl
做:檢查 856$u 欄位裡的 URL。腳本的輸出是 CSV 或 HTML 格式。HTML 版本直接連結至 MARC 書目記錄編輯器。
建議頻率:每月
詳情見:http://wiki.koha-community.org/wiki/Check-url_enhancements
更新權威記錄¶
腳本路徑:misc/cronjobs/merge_authorities.pl
做:依照權威記錄的變動更新對應的書目資料
說明
此腳本的名稱是誤導。此腳本並未合併權威記錄反而合併與其連結的書目記錄。執行腳本時編輯權威記錄將適用於使用權威記錄的書目記錄。
必備於:dontmerge 系統偏好
建議頻率:每晚
自動更新館藏¶
腳本路徑:misc/cronjobs/automatic_item_modification_by_age.pl
做:根據在 依年齡自動修改館藏 工具的規則更新館藏
使用到的是:依年齡自動修改館藏
建議頻率:每晚
OPAC¶
RSS Feeds¶
腳本路徑:misc/cronjobs/rss/rss.pl
做:給任何 SQL 詢問使用的 RSS XML 文件 (不是供搜尋結果 RSS feed 使用)。詳情。
建議頻率:每小時
權威瀏覽器¶
腳本路徑:misc/cronjobs/build_browser_and_cloud.pl
做:在 OPAC 產生權威瀏覽的內容
必備於:OpacBrowser 系統偏好
重要
此偏好與工作排程應祗適用於法語系統。
主題/著者雲¶
腳本路徑:misc/cronjobs/cloud-kw.pl
做:從 Koha Zebra 索引產生 HTML 鍵詞雲。misc/cronjobs/cloud-sample.conf 有若干此腳本運算元的範例。
頻率:這是您可每月執行一次的腳本類型,其內容並不常變動。
系統管理¶
採訪¶
清除舊的建議¶
腳本路徑:misc/cronjobs/purge_suggestions.pl
做:從建議管理區塊移除舊的 (由您定義) 建議。
說明
The system preference PurgeSuggestionsOlderThan defines the number of days used in the script
挪威讀者資料庫¶
NL 同步於 Koha¶
腳本路徑:misc/cronjobs/nl-sync-to-koha.pl
做:同步挪威讀者資料庫 (NL) 於 Koha
說明 回應 NorwegianPatronDBUsername 與 NorwegianPatronDBPassword 系統偏好
NL 同步自 Koha¶
腳本路徑:misc/cronjobs/nl-sync-from-koha.pl
做:同步 Koha 至挪威全國讀者資料庫 (NL)
說明 回應 NorwegianPatronDBUsername 與 NorwegianPatronDBPassword 系統偏好
不適用的腳本¶
不應在未修改前執行這些:
腳本路徑:misc/cronjobs/update_items.pl
腳本路徑:misc/cronjobs/smsoverdues.pl
腳本路徑:misc/cronjobs/notifyMailsOp.pl
腳本路徑:misc/cronjobs/reservefix.pl
腳本路徑:misc/cronjobs/zebraqueue_start.pl
社會資料¶
取得社會資料報表¶
腳本路徑:misc/cronjobs/social_data/get_report_social_data.pl
做:從 Babelthèque 下載資料加入 OPAC 紀錄
建議頻率:每晚
更新社會資料¶
腳本路徑:misc/cronjobs/social_data/update_social_data.pl
做:以 Babelthèque 資料更新 OPAC 紀錄