Выполнение скрипта после завершения загрузки Download Station на Synology NAS

Решил реализовать уведомление о завершенной загрузке торрента из DownlodStation в telegram бота.

Прочитал много решений, что можно сделать добавлением скрипта в конфиг transmission, но это не сработало на DSM 6.2

Стал изучать как работает DownlodStation и понял, что от transmission используется только частично, а значит не будут исполняться скрипты из конфига transmission. Также узнал, что список файлов храниться в таблице download_queue бд PostgreSQL.

Не придумал лучшего решения как создать свою таблицу downlod_noty и создать триггер по смене статуса загрузки (status=5 или status=8) с добавлением этой записи в мою таблицу.

Значения статусов таблицы download_queue:
1: Ожидание
2: Загрузка
3: Пауза
4: Окончание
5: Загрузка завершена
6: Проверка хэша
7: Заполнение
8: Ожидание хостинга файлов
9: Распаковка

DROP TABLE IF EXISTS "download_noty";
DROP TRIGGER IF EXISTS "onComplete" ON download_queue;
DROP FUNCTION IF EXISTS AddDownloadedNoty();
create table download_noty (
	task_id SERIAL,
	url text,
	filename varchar(1024),
	status int,
	created_at TIMESTAMP DEFAULT now() NOT NULL
);
CREATE UNIQUE INDEX download_noty_task_id_uindex ON download_noty (task_id);
CREATE OR REPLACE FUNCTION AddDownloadedNoty()
RETURNS TRIGGER AS
\$BODY$
BEGIN
INSERT INTO download_noty(task_id, url, filename, status) VALUES (new.task_id, new.url, new.filename, new.status);
RETURN new;
END;
\$BODY$
LANGUAGE plpgsql;
CREATE TRIGGER "onComplete"
AFTER UPDATE OF status ON download_queue
FOR EACH ROW WHEN (new.status = 5 or new.status = 8)
EXECUTE PROCEDURE AddDownloadedNoty();

А для мониторинга добавил скрипт в cron задачу

DL_SQL_RESULT=$(psql -t -A -U postgres -d download -c 'SELECT task_id, url FROM download_noty')

for DL_DATA in $(echo $DL_SQL_RESULT)
do
	TASK_ID=$(echo $DL_DATA 2>&1 | head -n 1 | cut -d "|" -f 1)
	FILE=$(echo $DL_DATA 2>&1 | head -n 1 | cut -d "|" -f 2)
	# Start your algorithm
	# For example send message to telegram bot
	wget  "https://api.telegram.org/bot{token}/sendMessage?chat_id={chat_id}&parse_mode=html&text=Download complete: $FILE"
	eval "psql -t -A -U postgres -d download -c 'DELETE FROM download_noty WHERE task_id = $TASK_ID'"
done

Скрипт берет все записи, отправляет уведомление в telegram бота и удаляет запись из таблицы downlod_noty.

Код доступен на GitHub