I’m hitting this bug for the first time. Previous announcement notifications were cleared correctly after viewing the announcement, however the notification ‘Introducing Skip Credits’ announcement won’t go away. Reproducing it is simple:
- Visit Plex via app.plex.tv.
- Click on my profile icon and then click on Announcements.
- Click on ‘Introducing Skip Credits’ to open the blog post in a new tab.
- Return to the Plex app page and refresh it (without clearing cache, just clicking the browser’s refresh button). The announcement notification will appear again. If I’m still on the Announcements page, the notification will appear briefly but then disappear once the page has fully loaded (as if I clicked on the Announcements button). If I’m on any other page, the notification will just appear as if I never visited the blog post.
For reference, I don’t have any browser settings enabled that would clear cookies (I must manually clear cookies when I decide to do so). I’ve also disabled my ad blocker for any Plex domain and subdomain to no avail. I’m using Firefox 108 on Pop!_OS.
Edit: Dug into the network requests during a page load a bit. I noticed that there’s a call to https://plex.tv/api/announcements... (with a bunch of identifying query parameters) which returns a XML document containing all of the announcements. The top two announcements, ‘Introducing Skip Credits’ (which won’t be marked as read) and ‘200 Reasons to Love Live TV’ (which is marked as read) are as follows:
<Announcement id="78" title="Introducing Skip Credits" content="Now skip credits (or to mid-credits and post-credits) with just a single click. Available for Plex Pass members’ personal media collection and our free on-demand catalog." plainContent="Now skip credits (or to mid-credits and post-credits) with just a single click. Available for Plex Pass members’ personal media collection and our free on-demand catalog." imageUrl="https://assets.plex.tv/announcements/new/skip-icon.png" style="info" url="https://www.plex.tv/blog/let-the-next-episode-roll/" expireAt="0" notifyAt="1676571900" read="false"/>
<Announcement id="63" title="200 Reasons to Love Live TV" content="Attention US users! You now have access to over 200 free Live TV channels on Plex. Happy surfing!" plainContent="Attention US users! You now have access to over 200 free Live TV channels on Plex. Happy surfing!" imageUrl="https://assets.plex.tv/announcements/new/plex-live-tv-icon-200-icon.png" style="info" url="" expireAt="0" notifyAt="1636720080" read="true"/>
It seems like whatever is supposed to handle setting read=true (which I presume is something server-sided as I’d imagine that would control the read value in this XML document) isn’t working correctly.
Along with that, when clicking on the Announcements button (which makes the notification disappear until a page refresh), there’s a call to https://plex.tv/api/announcements/78?read=1... (again with identifying query parameters) that returns a HTTP 200 response with a payload of
<?xml version="1.0" encoding="UTF-8"?>
<Response code="200" status="Updated announcement status"/>