URLWATCH-CONFIG(5) urlwatch Documentation URLWATCH-CONFIG(5)

urlwatch-config - پیکربندی رفتار urlwatch

urlwatch --edit-config

پیکربندی سراسری urlwatch شامل تنظیمات پایه‌ای برای رفتار کلی urlwatch و همچنین گزارش‌دهنده‌ها (Reporters) است.

علاوه بر گزارش همیشگی تغییرات (که هدف اصلی urlwatch است)، urlwatch به‌طور پیش‌فرض صفحات تازه اضافه‌شده (new) و خطاها (error) را نیز گزارش می‌دهد. می‌توانید این رفتار را در بخش display پیکربندی تغییر دهید:

display:
  new: true
  error: true
  unchanged: false
  empty-diff: true

اگر unchanged را روی true تنظیم کنید، urlwatch همواره تمامی صفحاتی را که بررسی شده‌اند اما تغییر نکرده‌اند نیز گزارش می‌دهد.

تنظیمات empty-diff مشخص می‌کند هنگامی که صفحه‌ای دچار تغییر می‌شود (changed)، اما به عنوان مثال به دلیل استفاده از یک diff_filter تفاوت آن به یک رشته خالی کاهش می‌یابد، چه واکنشی رخ دهد. اگر روی true تنظیم شود، urlwatch یک تغییر (خالی) را گزارش خواهد کرد. اگر روی false تنظیم شود، این تغییر در گزارش گنجانده نخواهد شد.

به دلیل شیوه ذخیره‌سازی خروجی فیلترشده، unchanged همواره محتوای قدیمی را همراه با فیلترهای زمان دریافت گزارش می‌کند؛ به این معنی که هرگونه تغییر در filter یک وظیفه، در گزارش unchanged قابل مشاهده نخواهد بود. هنگامی که صفحه تغییر کند، فیلتر جدید اعمال خواهد شد.

به همین دلیل، از unchanged نمی‌توان برای آزمایش فیلترها استفاده کرد؛ باید از گزینه خط فرمان --test-filter استفاده کنید تا فیلتر فعلی بر محتوای جاری صفحه اعمال شود.

«گزارش‌دهنده‌ها» ماژول‌هایی هستند که در صورت فعال بودن از طریق پرونده پیکربندی، اعلان‌ها را از طریق رسانه مربوط به خود تحویل می‌دهند.

برای گزینه‌های اختصاصی هر گزارش‌دهنده، urlwatch-reporters(5) را ببینید.

علاوه بر گزینه‌های خاص هر گزارش‌دهنده، تمامی گزارش‌دهنده‌ها از این گزینه‌ها پشتیبانی می‌کنند:

  • enabled: [bool] فعال‌سازی گزارش‌دهنده. (پیش‌فرض: False)
  • separate: [bool] ارسال یک گزارش جداگانه برای هر وظیفه به‌جای یک گزارش ترکیبی برای تمام وظایف. (پیش‌فرض: False)

گزارش‌دهنده‌ها در یک ساختار سلسله‌مراتبی پیاده‌سازی شده‌اند، به‌طوری که تنظیمات پیکربندی مشترک بر تمامی گزارش‌دهنده‌های فرزند اعمال می‌شود:

html
text
├───stdout
├───email
├───ifttt
├───webservice
│   ├───pushover
│   └───pushbullet
├───mailgun
├───telegram
├───slack
│   └───mattermost
├───discord
├───xmpp
├───prowl
└───shell
markdown
├───matrix
└───gotify

نکته:

تنظیم گزینه html در گزارش‌دهنده email روی true باعث ارث‌بری آن از پیکربندی html خواهد شد.

در اینجا یک نمونه پیکربندی آورده شده است که گزارش را به‌صورت رنگی در خروجی استاندارد و همچنین با استفاده از sendmail به‌صورت ایمیل HTML ارسال می‌کند:

report:
  text:
    details: true
    footer: true
    line_length: 75
  html:
    diff: unified
    separate: true
  email:
    enabled: true
    method: sendmail
    sendmail:
        path: /usr/sbin/sendmail
    from: 'urlwatch@example.org'
    to: 'you@example.org'
    html: true
    subject: '{count} changes: {jobs}'
  stdout:
    color: true
    enabled: true

هرگونه پیکربندی مربوط به یک گزارش‌دهنده خاص باید زیر کلید report در پرونده پیکربندی قرار گیرد.

اگر می‌خواهید برخی تنظیمات را برای تمام وظایف خود تغییر دهید، بخش job_defaults را در پرونده پیکربندی خود ویرایش کنید:

job_defaults:
  all:
    diff_tool: wdiff
  url:
    ignore_connection_errors: true

پرونده پیکربندی فوق تمام وظایف را برای استفاده از wdiff به عنوان ابزار تفاوت تنظیم می‌کند، و همه وظایف url خطاهای اتصال را نادیده خواهند گرفت.

زیرکلیدهای معتبر برای job_defaults عبارتند از:

  • all: بر تمام وظایف شما بدون در نظر گرفتن نوع آن‌ها اعمال می‌شود
  • shell: فقط بر وظایف shell اعمال می‌شود (با کلید command)
  • url: فقط بر وظایف url اعمال می‌شود (با کلید url)
  • browser: فقط بر وظایف browser اعمال می‌شود (با کلید navigate)

برای اطلاع از انواع مختلف وظایف و کلیدهای مجاز آن‌ها، Jobs را ببینید.

$XDG_CONFIG_HOME/urlwatch/urlwatch.yaml

urlwatch(1), urlwatch-reporters(5), urlwatch-intro(7), urlwatch-cookbook(7)

2024 Thomas Perl

October 28, 2024 urlwatch