This change enable defining the notification body as HTML or Markdown. This can be very
useful to have more user-friendly notifications such as:
* applying a heading style to the `{watch_title}` to make it stand out
* creating clickable links using the `{watch_url}`, `{preview_url}` and `{diff_url}`.
Changes
=======
* Add a `notification_format` to the notification settings, defaults to plain text.
* Use the `body_format` parameter of Apprise's `notify` method.
Co-authored-by: Malo Jaffré <malo.jaffre@dunnhumby.com>
89 lines
5.2 KiB
Django/Jinja
89 lines
5.2 KiB
Django/Jinja
|
|
{% from '_helpers.jinja' import render_field %}
|
|
|
|
{% macro render_notifications_field(form) %}
|
|
|
|
<div class="pure-control-group">
|
|
{{ render_field(form.notification_urls, rows=5, placeholder="Examples:
|
|
Gitter - gitter://token/room
|
|
Office365 - o365://TenantID:AccountEmail/ClientID/ClientSecret/TargetEmail
|
|
AWS SNS - sns://AccessKeyID/AccessSecretKey/RegionName/+PhoneNo
|
|
SMTPS - mailtos://user:pass@mail.domain.com?to=receivingAddress@example.com")
|
|
}}
|
|
<div class="pure-form-message-inline">Use <a target=_new
|
|
href="https://github.com/caronc/apprise">AppRise
|
|
URLs</a> for notification to just about any service!
|
|
</div>
|
|
</div>
|
|
<div id="notification-customisation">
|
|
<div class="pure-control-group">
|
|
{{ render_field(form.notification_title, class="m-d") }}
|
|
<span class="pure-form-message-inline">Title for all notifications</span>
|
|
</div>
|
|
<div class="pure-control-group">
|
|
{{ render_field(form.notification_body , rows=5) }}
|
|
<span class="pure-form-message-inline">Body for all notifications</span>
|
|
</div>
|
|
<div class="pure-control-group">
|
|
{{ render_field(form.notification_format , rows=5) }}
|
|
<span class="pure-form-message-inline">Format for all notifications</span>
|
|
</div>
|
|
<div class="pure-controls">
|
|
<span class="pure-form-message-inline">
|
|
These tokens can be used in the notification body and title to
|
|
customise the notification text.
|
|
</span>
|
|
<table class="pure-table" id="token-table">
|
|
<thead>
|
|
<tr>
|
|
<th>Token</th>
|
|
<th>Description</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
<tr>
|
|
<td><code>{base_url}</code></td>
|
|
<td>The URL of the changedetection.io instance you are running.</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>{watch_url}</code></td>
|
|
<td>The URL being watched.</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>{watch_uuid}</code></td>
|
|
<td>The UUID of the watch.</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>{watch_title}</code></td>
|
|
<td>The title of the watch.</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>{watch_tag}</code></td>
|
|
<td>The tag of the watch.</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>{preview_url}</code></td>
|
|
<td>The URL of the preview page generated by changedetection.io.</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>{diff_url}</code></td>
|
|
<td>The URL of the diff page generated by changedetection.io.</td>
|
|
</tr>
|
|
<tr>
|
|
<td><code>{current_snapshot}</code></td>
|
|
<td>The current snapshot value, useful when combined with JSON or CSS filters
|
|
</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
<span class="pure-form-message-inline">
|
|
URLs generated by changedetection.io (such as <code>{diff_url}</code>) require the <code>BASE_URL</code> environment variable set.<br/>
|
|
Your <code>BASE_URL</code> var is currently "{{base_url}}"
|
|
</span>
|
|
</div>
|
|
</div>
|
|
<div class="pure-control-group">
|
|
{{ render_field(form.trigger_check) }}
|
|
</div>
|
|
{% endmacro %}
|