twitchdev / issues

Issue tracker for third party developers.
Apache License 2.0
72 stars 6 forks source link

icalendar api returns improperly formatted calendar data #974

Open Metaork2 opened 1 month ago

Metaork2 commented 1 month ago

Brief description When attempting to import the iCal URL into a calendar application other than Google Calendar (Outlook/Apple Mail tested) the calendar either fails to load, or displays entires at an incorrect time when the computer timezone of the calendar user doesn't match the timezone the streamer uses to create their schedule

Downloading the iCal file, the API is attempting to return the dStart and dEnd events in terms of a timezone using TZID=/<country>/<locality>:<datestring> but the file doesn't contain any VTIMEZONE information to parse the timezone to a UTC offset as per RFC 5545 ( https://datatracker.ietf.org/doc/html/rfc5545#section-3.6.5 ).

How to reproduce Example taken from streamer "piratesoftware" showing the displayed schedule on the website, next to how Outlook displays the same schedule.

Download icalendar file from https://api.twitch.tv/helix/schedule/icalendar?broadcaster_id=151368796 and attempt to import into Outlook or Apple Mail, when comparing the entries to the schedule displayed on the website, the entries in the application

Expected behavior

Entries should be converted to the users local timezone and displayed as such

Screenshots image

Additional context or questions

iCal data for one of the above calendar entries: BEGIN:VEVENT UID:27fa4dc4-2bb0-476b-b903-f70444693b3f DTSTAMP:20221113T230240Z DTSTART;TZID=/America/Los_Angeles:20221118T000000 DTEND;TZID=/America/Los_Angeles:20221118T120000 SUMMARY:Game Dev - Q/A DESCRIPTION:Software and Game Development. CATEGORIES:Software and Game Development RRULE:FREQ=WEEKLY;BYDAY=FR END:VEVENT

icalendar validator link: https://icalendar.org/validator.html?url=https://api.twitch.tv/helix/schedule/icalendar?broadcaster_id=151368796

iProdigy commented 1 month ago

Duplicate of #428