Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (Brite)
  • No Skin
Collapse
A microphone in front of an orange-yellow circle. Graphic.

Podcasting Chat Community

  1. Home
  2. World
  3. Planet Rage is going #live!

Planet Rage is going #live!

Scheduled Pinned Locked Moved World
livepodcast
1 Posts 1 Posters 0 Views
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • PodcastsLive :pci:P This user is from outside of this forum
    PodcastsLive :pci:P This user is from outside of this forum
    PodcastsLive :pci:
    wrote last edited by
    #1

    Planet Rage is going #live!

    Planet Rage EPISODE #210 Live!

    stream url: http://listen.noagendastream.com/noagenda

    show url: https://planetrage.show

    #podcast

    Link Preview Image
    1 Reply Last reply
    1
    0
    • podcastindex.socialI podcastindex.social shared this topic

    Hello! It looks like you're interested in this conversation, but you don't have an account yet.

    Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.

    With your input, this post could be even better πŸ’—

    Register Login
    Reply
    • Reply as topic
    Log in to reply
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes



    Podcasting.Chat Banner

    Welcome To Podcasting.Chat!

    This forum is for podcasters, podcast guests, and podcast enthusiasts alike to share tips, tricks, and their love of the medium.

    This forum is fully federated, so you are able to contribute to any discussion here through your own software of choice (e.g. Mastodon, Misskey, Lemmy, Piefed, etc.). So you can sign up for an account here and it federates around the Fediverse. You can also follow feeds and topics from your other Fedi-enabled accounts.





    Recent Posts


    • Jake SpurlockW
      Jake Spurlock
      I Built My Own iMessage Wrapped (And So Can You)

      My daughter was joking that someone should build a Spotify Wrapped, but for iMessage β€” your year in emoji and reactions. My wife said my brother-in-law should build it since he works at Apple. (Every Apple problem is his fault in our house.)

      From the other room, my daughter yelled: β€œI bet Dad could write this!”

      Challenge accepted.

      The Result

      Thirty minutes later, I had a working script. Here’s my 2025:

      🎁 iMessage Wrapped 2025 πŸ“± Messages Total: 35,768 Sent: 12,191 Received: 23,577 πŸ’¬ Reactions Given: 1,974 Received: 5,014 πŸ† Your Reaction Style πŸ‘ 982 ❀️ 398 πŸ˜‚ 275 ‼️ 126 ❓ 19 πŸ‘Ž 16 πŸ“ˆ Messages by Month Jan β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆ 3,052 Feb β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆ 2,621 Mar β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆ 3,422 Apr β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆ 3,696 May β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆ 3,640 Jun β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆ 3,904 Jul β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆ 2,561 Aug β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆ 2,448 Sep β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆ 2,790 Oct β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆ 3,466 Nov β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆ 2,206 Dec β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆ 1,962

      Some things I learned about myself:

      I’m a listener. I receive almost 2x as many messages as I send.People love reacting to me. 5,014 reactions received vs 1,974 given.I’m a thumbs-up guy. πŸ‘ accounts for half my reactions. Apparently I’m very agreeable.June was my chattiest month. December was quietest (holiday break mode).How It Works

      Your iMessage history lives in a SQLite database at ~/Library/Messages/chat.db. It’s just sitting there, queryable.

      The tricky bits:

      Dates are weird. Apple stores timestamps as nanoseconds since January 1, 2001 (because of course they do).Reactions are messages. When you tapback a ❀️, it’s stored as a separate message with associated_message_type set to a magic number (2000 = loved, 2001 = liked, etc.).Custom emoji reactions landed in iOS 17 and are stored in associated_message_emoji.

      Once you know the schema, it’s just SQL.

      The Script

      Here’s the full thing β€” about 100 lines of Python, no dependencies beyond the standard library:

      #!/usr/bin/env python3 """ iMessage Wrapped β€” Your year in emoji and reactions Usage: python3 imessage-wrapped.py [year] Requires: Full Disk Access for Terminal """ import sqlite3 import os import sys from datetime import datetime from pathlib import Path YEAR = int(sys.argv[1]) if len(sys.argv) > 1 else 2025 DB_PATH = Path.home() / "Library/Messages/chat.db" APPLE_EPOCH_OFFSET = 978307200 TAPBACKS = { 2000: "❀️", # Loved 2001: "πŸ‘", # Liked 2002: "πŸ‘Ž", # Disliked 2003: "πŸ˜‚", # Laughed 2004: "‼️", # Emphasized 2005: "❓", # Questioned } def get_db(): if not DB_PATH.exists(): print(f"❌ Database not found at {DB_PATH}") sys.exit(1) return sqlite3.connect(f"file:{DB_PATH}?mode=ro", uri=True) def date_filter(year): return f""" datetime(date/1000000000 + {APPLE_EPOCH_OFFSET}, 'unixepoch') >= '{year}-01-01' AND datetime(date/1000000000 + {APPLE_EPOCH_OFFSET}, 'unixepoch') < '{year + 1}-01-01' """ def main(): print(f"\n🎁 iMessage Wrapped {YEAR}\n") db = get_db() cur = db.cursor() # Message counts cur.execute(f""" SELECT COUNT(*), SUM(CASE WHEN is_from_me = 1 THEN 1 ELSE 0 END), SUM(CASE WHEN is_from_me = 0 THEN 1 ELSE 0 END) FROM message WHERE {date_filter(YEAR)} AND associated_message_type = 0 """) total, sent, received = cur.fetchone() print(f"πŸ“± Messages: {total:,} ({sent:,} sent, {received:,} received)") # Reaction counts cur.execute(f""" SELECT SUM(CASE WHEN is_from_me = 1 THEN 1 ELSE 0 END), SUM(CASE WHEN is_from_me = 0 THEN 1 ELSE 0 END) FROM message WHERE {date_filter(YEAR)} AND associated_message_type >= 2000 """) given, got = cur.fetchone() print(f"πŸ’¬ Reactions: {given + got:,} ({given:,} given, {got:,} received)") # Your tapback style print(f"\nπŸ† Your Reaction Style") cur.execute(f""" SELECT associated_message_type, COUNT(*) FROM message WHERE {date_filter(YEAR)} AND associated_message_type BETWEEN 2000 AND 2005 AND is_from_me = 1 GROUP BY associated_message_type ORDER BY COUNT(*) DESC """) for type_id, cnt in cur.fetchall(): print(f" {TAPBACKS.get(type_id, '?')} {cnt:,}") # Custom emoji cur.execute(f""" SELECT associated_message_emoji, COUNT(*) FROM message WHERE {date_filter(YEAR)} AND associated_message_emoji IS NOT NULL AND is_from_me = 1 GROUP BY associated_message_emoji ORDER BY COUNT(*) DESC LIMIT 5 """) customs = cur.fetchall() if customs: print(f"\n🎯 Custom Reactions: {', '.join(f'{e} ({c})' for e, c in customs)}") # Monthly volume print(f"\nπŸ“ˆ By Month") cur.execute(f""" SELECT strftime('%m', datetime(date/1000000000 + {APPLE_EPOCH_OFFSET}, 'unixepoch')), COUNT(*) FROM message WHERE {date_filter(YEAR)} AND associated_message_type = 0 GROUP BY 1 ORDER BY 1 """) months = ["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"] data = {row[0]: row[1] for row in cur.fetchall()} max_cnt = max(data.values()) if data else 1 for i, name in enumerate(months, 1): cnt = data.get(f"{i:02d}", 0) bar = "β–ˆ" * int(20 * cnt / max_cnt) print(f" {name} {bar} {cnt:,}") db.close() if __name__ == "__main__": main()Running ItSave the script as imessage-wrapped.pyGrant Full Disk Access to your terminal (System Settings β†’ Privacy & Security β†’ Full Disk Access)Run it:python3 imessage-wrapped.py # defaults to 2025 python3 imessage-wrapped.py 2024 # or any year

      That’s it. Your data never leaves your machine.

      What I’d Add Next

      If I turn this into a proper app:

      Shareable cards β€” export your stats as an imageConversation breakdown β€” who do you text the most?Time of day patterns β€” are you a morning texter or a midnight scroller?Streak tracking β€” longest daily conversation streak

      But honestly? The script is fun enough. Sometimes a quick hack that makes your daughter laugh is the whole point.

      The script and a slightly more polished version are on GitHub if you want to grab it.

      #Apple #iMessage #Messages #NerdyStuff #Python
      read more

    • CSB ≑ Comic Strip BloggerC
      CSB ≑ Comic Strip Blogger

      @dave

      Nope, for coding I use OpenAI codex

      Openclaw I use for reminders (cron jobs) and skills (just testing yet)

      read more

    • DaveD
      Dave

      @csb For coding agent work?

      read more

    • rickfR
      rickf

      These MAGA nutjobs are flailing at windmills again while clutching their faux pearls in mock outrage...

      Link Preview Image FCC requested transcripts of Bad Bunny’s Super Bowl halftime performance

      The Puerto Rican superstar, 31, made history as the first artist to perform a halftime show entirely in Spanish

      favicon

      The Independent (www.the-independent.com)

      read more

    Hosted On NodeBB.org -- A Goldstein Media Project
    • Login

    • Don't have an account? Register

    • Login or register to search.
    • First post
      Last post
    0
    • Categories
    • Recent
    • Tags
    • Popular
    • World
    • Users
    • Groups