mirror of
https://github.com/paperless-ngx/paperless-ngx.git
synced 2025-07-28 18:24:38 -05:00
add pre-consume hook
a script hook can be defined in /etc/paperless.conf as PAPERLESS_PRE_CONSUME_SCRIPT
This commit is contained in:
@@ -8,11 +8,14 @@ class DocumentsConfig(AppConfig):
|
||||
def ready(self):
|
||||
|
||||
from .signals import document_consumption_finished
|
||||
from .signals import document_consumption_started
|
||||
from .signals.handlers import (
|
||||
set_correspondent, set_tags, run_external_script)
|
||||
set_correspondent, set_tags, run_post_consume_external_script, run_pre_consume_external_script)
|
||||
|
||||
document_consumption_finished.connect(set_tags)
|
||||
document_consumption_finished.connect(set_correspondent)
|
||||
document_consumption_finished.connect(run_external_script)
|
||||
document_consumption_finished.connect(run_post_consume_external_script)
|
||||
|
||||
document_consumption_started.connect(run_pre_consume_external_script)
|
||||
|
||||
AppConfig.ready(self)
|
||||
|
@@ -57,7 +57,7 @@ def set_tags(sender, document=None, logging_group=None, **kwargs):
|
||||
document.tags.add(*relevant_tags)
|
||||
|
||||
|
||||
def run_external_script(sender, document, **kwargs):
|
||||
def run_post_consume_external_script(sender, document, **kwargs):
|
||||
|
||||
if not settings.POST_CONSUME_SCRIPT:
|
||||
return
|
||||
@@ -73,3 +73,13 @@ def run_external_script(sender, document, **kwargs):
|
||||
str(document.correspondent),
|
||||
str(",".join(document.tags.all().values_list("slug", flat=True)))
|
||||
)).wait()
|
||||
|
||||
def run_pre_consume_external_script(sender, filename, **kwargs):
|
||||
|
||||
if not settings.PRE_CONSUME_SCRIPT:
|
||||
return
|
||||
|
||||
Popen((
|
||||
settings.PRE_CONSUME_SCRIPT,
|
||||
filename
|
||||
)).wait()
|
||||
|
Reference in New Issue
Block a user