Skip to main content

No project description provided

Project description

telediff

Telediff is a CLI tool to send notifications when a file (or the output of your script) changes, with diff tracking and many notification channels (including Slack, WhatsApp, Telegram, Google Chat, Microsoft Teams, Pushover and 100+ others)

Installation

With pipx

pipx install telediff

With uv

uv tool install telediff

Configuration

Run telediff create-config to create the default config and print its path.

Default config looks like this:

[channels]
# Format: user_friendly_channel_name = apprise_url
#
# The value is an Apprise URL (see https://github.com/caronc/apprise/wiki for all supported services).
#
# You do not need to pay for Apprise, and your messages do not go through them; it's just a library providing abstraction.
#
# Examples:
#
# telegramexample = "tgram://bottoken/ChatID"

# slackexample = "slack://TokenA/TokenB/TokenC/"

# msteamsexample = "msteams://TokenA/TokenB/TokenC/"

# pushoverexample = "pover://user@token"

You can use telediff test -c yourchannel to send a test notification.

Usage

telediff --help
usage: telediff [-h] {test,clear-cache,notify,create-config} ...

Send notifications if a file/stream changes (with diff tracking in ~/.cache).

positional arguments:
  {test,clear-cache,notify,create-config}
                        Subcommands
    test                Send a test notification for a channel
    clear-cache         Remove all cached state
    notify              Send notification if file/stream changes
    create-config       Create the default config file and output its location

options:
  -h, --help            show this help message and exit

telediff notify

telediff notify --help
usage: telediff notify [-h] --channel CHANNEL [--title TITLE] [--body BODY] [--body-prepend BODY_PREPEND] [--body-append BODY_APPEND]
                       [--title-prepend TITLE_PREPEND] [--title-append TITLE_APPEND] --file FILE [--max-length MAX_LENGTH] [--no-path-in-body]
                       [--no-color]

options:
  -h, --help            show this help message and exit
  --channel, -c CHANNEL
                        Channel to send notification to
  --title, -t TITLE     Title for notification (default: 'telediff update')
  --body, -b BODY       Body for notification (default: file contents or diff)
  --body-prepend BODY_PREPEND
                        Text to prepend to the notification body (default: empty)
  --body-append BODY_APPEND
                        Text to append to the notification body (default: empty)
  --title-prepend TITLE_PREPEND
                        Text to prepend to the notification title (default: empty)
  --title-append TITLE_APPEND
                        Text to append to the notification title (default: empty)
  --file, -f FILE       Path to the file to monitor for changes. If the file does not exist, contents of STDIN are taken and written to this
                        path. If STDIN is provided, it always replaces the file contents. Notification is sent if the file (or STDIN) changes
                        compared to the cached copy.
  --max-length MAX_LENGTH
                        Max message length (default: 1600, 0=unlimited)
  --no-path-in-body     Do not include the file path in the notification body
  --no-color            Disable colored and emoji output for this notification

telediff test

telediff test --help
usage: telediff test [-h] --channel CHANNEL [--title TITLE]

options:
  -h, --help            show this help message and exit
  --channel, -c CHANNEL
                        Channel to test
  --title, -t TITLE     Title for test notification (default: 'telediff test')

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

telediff-1.0.tar.gz (148.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

telediff-1.0-py3-none-any.whl (8.4 kB view details)

Uploaded Python 3

File details

Details for the file telediff-1.0.tar.gz.

File metadata

  • Download URL: telediff-1.0.tar.gz
  • Upload date:
  • Size: 148.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for telediff-1.0.tar.gz
Algorithm Hash digest
SHA256 6fcce2cd70562a6d1d4218a5187839801bfa7235eadb73e881164abfc3e10c19
MD5 b117c337c0a743a4ecab86ac5447db1f
BLAKE2b-256 c9c60dd1c797686b95d44fd68f50ae8a48c4391c468f56914aa58c8834bc2ab6

See more details on using hashes here.

Provenance

The following attestation bundles were made for telediff-1.0.tar.gz:

Publisher: trunk.yml on hacktegic/telediff

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file telediff-1.0-py3-none-any.whl.

File metadata

  • Download URL: telediff-1.0-py3-none-any.whl
  • Upload date:
  • Size: 8.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for telediff-1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 43155de0a090167041ff105a88b3847b62b78bced34867f312482af62dd9723f
MD5 c703a4bdd23d15ab156ca456f9c1837b
BLAKE2b-256 b43ac0dcde1815a36026e260b75e2657d0452660499bc9d9b9a14f1d6a69d6fd

See more details on using hashes here.

Provenance

The following attestation bundles were made for telediff-1.0-py3-none-any.whl:

Publisher: trunk.yml on hacktegic/telediff

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page