eduncan911 / podcast

iTunes and RSS 2.0 Podcast Generator in Golang
MIT License
132 stars 35 forks source link

Add Google Play podcast tags #7

Open eduncan911 opened 7 years ago

eduncan911 commented 7 years ago

This ticket is to enhance the library to generate GooglePlay Podcast tags to the feeds.

https://support.google.com/googleplay/podcasts/answer/6260341#tags

Required additional tag, at a Minimal, at the root:

The following is required by GooglePlay, for authorization of the podcast submission.

This means we will have to make these requirements in this library, possibly from the podcast.New(...) signature since it does not require Author at this time.

That would break backwards compatibility. So there is some discussion here on this.

Another option is to instead strongly suggest that if you want to submit to GooglePlay Podcasts, you must set podcast.AddAuthor(...) or else the feed will not be valid. This would probably be fine if we make it very clear.

Additional Tags

The library as it exists handles the rest of the required tags for GooglePlay at both the Podcast and Item levels.

But, we should enhance the feed and specify the GooglePlay items anyways to make it explicit. The link above has the GooglePlay tags that match the existing iTunes tags that we would follow.

Categories

We need to match up the GooglePlay categories with the iTunes categories.

Option 1: if they all match, no sweat! Use as is. crossing fingers

Option 2: (much more likely scenario) Refactor the AddCategory() to take in an Enum, and then we write out the appropiate tags for each iTunes and GooglePlay.

That would break backwards compatibility.

Option 3: a clumsy approach would be to just add in a bunch of AddGooglePlayX() funcs where X would be the tag, like Category. I'd prefer not to go down that route though.

Most likely will do Option 2, but breaks the existing. So, Version 2.0.0?

Tag Priority

Note that compatibility that GooglePlay does with iTunes tags (iTunes has no such issue).

shelomito12 commented 3 years ago

Basic itunes:email tag is currently missing in v2.4.0 when the XML is generated. In order to register my RSS feed with Apple Podcasts or Spotify, they require a valid email to get an authorization link. We can't use PodSync at the moment. Please see https://github.com/mxpv/podsync/issues/171

eduncan911 commented 3 years ago

@jzvi12 actually, it's already in the package.

p.IOwner = &Author{
    Name:  name,
    Email: email,
}

They would need to set them in that podsync codebase.

eduncan911 commented 3 years ago

@jzvi12 I'm posting a solution in https://github.com/mxpv/podsync/issues/171 for them to add to their codebase.

EDIT: Posted the information for them to make it work: https://github.com/mxpv/podsync/issues/171#issuecomment-718228084