Skip to main content

allows synching podcast episodes to creative tonies

Project description

tonie-podcast-sync

tonie-podcast-sync allows synching podcast episodes to creative tonies.

This is a purely private project and has no association with Boxine GmbH.

Constraints and Limitations

Usage

tonie-podcast-sync is available as a pip package on pypi. Install via

pip install tonie-podcast-sync

Then, use it as shown in the following example code:

from toniepodcastsync import ToniePodcastSync, Podcast, EpisodeSorting

# Create some Podcast objects, providing the feed URL to each
pumuckl = Podcast("https://feeds.br.de/pumuckl/feed.xml")

# By default, podcasts are placed onto Tonies by newest episode first
# If you want to change the episode sorting, following options are available
# - EpisodeSorting.BY_DATE_NEWEST_FIRST (default)
# - EpisodeSorting.BY_DATE_OLDEST_FIRST
# - EpisodeSorting.RADNOM
maus = Podcast(
    "https://kinder.wdr.de/radio/diemaus/audio/gute-nacht-mit-der-maus/diemaus-gute-nacht-104.podcast",
    episode_sorting = EpisodeSorting.RANDOM
)

# If you want to adjust the volume of a podcast, set volume_adjustment to an integer other than 0
# The audio will be adjusted (+/-) by that amount in dB
checker_tobi = Podcast(
    "https://feeds.br.de/checkpod-der-podcast-mit-checker-tobi/feed.xml",
    episode_sorting = EpisodeSorting.RANDOM,
    volume_adjustment = 6
)

# Create instance of ToniePodcastSync
tps = ToniePodcastSync("<toniecloud-username>", "<toniecloud-password>")

# For an overview of your creative Tonies and their IDs
# The IDs are needed to address specific Tonies in the next step
tps.print_tonies_overview()

# Define creative Tonies based on their ID
greenTonie = "<your-tonieID>"
orangeTonie = "<your-tonieID>"

# Fetch new podcast episodes and copy them to greenTonie.
# The tonie will be filled with as much episodes as fit (90 min max).
tps.sync_podcast_to_tonie(pumuckl, greenTonie)

# Kid's should fall asleep, so let's limit the podcast
# Episodes on this tonie to 60 minutes in total.
# Use the optional parameter for this:
tps.sync_podcast_to_tonie(maus, orangeTonie, 60)

For the tonie to fetch new content from tonie-cloud, you have to press one ear for 3s (until the "ping" sound) with no tonie on the box (refer also to TonieBox manual).

Contributors

Alexander Hartmann
Alexander Hartmann

💻 🤔 🚧
Wilhelmsson177
Wilhelmsson177

💻 🤔 🚧 ⚠️
Malte Bär
Malte Bär

💻

Use the all-contributors github bot to add contributors here.

builds upon work of / kudos to

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

tonie_podcast_sync-2.1.0.tar.gz (8.1 kB view details)

Uploaded Source

Built Distribution

tonie_podcast_sync-2.1.0-py3-none-any.whl (8.6 kB view details)

Uploaded Python 3

File details

Details for the file tonie_podcast_sync-2.1.0.tar.gz.

File metadata

  • Download URL: tonie_podcast_sync-2.1.0.tar.gz
  • Upload date:
  • Size: 8.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.6.1 CPython/3.11.5 Darwin/23.2.0

File hashes

Hashes for tonie_podcast_sync-2.1.0.tar.gz
Algorithm Hash digest
SHA256 dda5240365536305a4907d21f41db100ab8c4303ab8147b53475ad3e69d110b1
MD5 7230a7fd9f43d63872b68e8d3e4c9729
BLAKE2b-256 87b1791742ec22fa83bdccfe5a43f0cd61ce27055b8285c0313c457a90548279

See more details on using hashes here.

Provenance

File details

Details for the file tonie_podcast_sync-2.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for tonie_podcast_sync-2.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 86d8d0cf9dc401dfd1b82ac912e8cf9706c52db8e863b15435213dad45a73d11
MD5 5de52203e73d6d97d0eb9c553ef3b5d4
BLAKE2b-256 4d341dcf63e1f33865849a40ffe1417ec13890b58a9332edef311a6bddf8b447

See more details on using hashes here.

Provenance

Supported by

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