Metadata-Version: 2.4
Name: beets-notify
Version: 0.1.0
Summary: A beets plugin to send notifications when albums are imported
Project-URL: Repository, https://github.com/beetbox/beets
Author: beets community
License-Expression: MIT
License-File: LICENSE
Classifier: Environment :: Console
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Topic :: Multimedia :: Sound/Audio
Requires-Python: >=3.8
Requires-Dist: apprise>=1.0.0
Requires-Dist: beets>=1.6.0
Description-Content-Type: text/x-rst

============
beets-notify
============

A beets_ plugin to notify your devices and services when new album(s) are imported into your library.

`Apprise`_ is the backend used to send push notifications to your phone, matrix channel, email, push notification service, and many others. Apprise supports nearly *all* notification services.

If your notification service supports it, album art will be embedded in the notification, automatically handled through Apprise's attachment system.

.. _beets: https://github.com/beetbox/beets

.. _apprise: https://github.com/caronc/apprise

Install
-------

**From source (development/testing):**

.. code-block:: bash

   $ git clone https://github.com/brege/beets-notify
   $ cd beets-notify
   $ pipx inject beets apprise
   $ cp beetsplug/notify.py ~/.config/beets/plugins/

**From PyPI (not published yet):**

.. code-block:: bash

   $ pipx inject beets apprise
   $ pip install beets-notify

Apprise Urls
------------

Apprise uses `service urls`_. 

Pushover_

.. code-block:: text 

   pover://abcdefghijklmnopqrstuvwxyz1234@xyz1234zbcdefghijklmnopqrstuvw

Email_ (`Fastmail`_ supports 100+ aliased domains)

Using an app-password `1234 5678 5a5c 3b3d` for the main email `account@fastmail.com` using the alias `alias@sent.as`:

.. code-block:: text

   mailto://1234 5678 5a5c 3b3d@sent.as?user=account@fastmail.com&to=alias@sent.as

.. _service urls: https://github.com/caronc/apprise#supported-notifications

.. _Pushover: https://github.com/caronc/apprise/wiki/Notify_pushover

.. _Email: https://github.com/caronc/apprise/wiki/Notify_email

.. _Fastmail: https://github.com/caronc/apprise/wiki/Notify_email-Fastmail

``beets/config.yaml``
---------------------  

.. code-block:: yaml

    notify:
        apprise_urls:
            - "pover://abcdefghijklmnopqrstuvwxyz1234@xyz1234zbcdefghijklmnopqrstuvw"
        truncate: 3                  # albums to enumerate before truncating (...)
        body_maxlength: 512          # max body chars (pushover: 1024)
        artwork: yes                 # attach artwork
        artwork_maxsize: 1000000     # (bytes) limits (pushover: 5MB)
        show_first_art: yes          # show art for multiple album imports


