podcast_search library

Classes

Chapters
This class represents a set of PC2.0 chapters. A chapter is a way to split a podcast episode into a series of chapters with a start and (optional) end time, and optional additions such as separate artwork and HTML links.
Episode
A class representing an individual episode.
Funding
This class represents the PC2.0 podcast:funding tag. Each instance represents a page where a user can help fund the podcast.
Genre
A class that represents the genre(s) the podcast is related to.
Item
A class that represents an individual Podcast within the search results. Not all properties may contain values for all search providers.
ITunesProvider
Pass an instance of this class to use iTunes as the podcast search engine.
Podcast
This class represents a podcast and its episodes. The Podcast is instantiated with a feed URL which is then parsed and the episode list generated.
PodcastIndexProvider
Pass an instance of this class to use PodcastIndex as the podcast search engine.
This class handles the searching. Taking the base URL we build any parameters that have been added before making a call to iTunes. The results are unpacked and stored as Item instances and wrapped in a SearchResult.
SearchProvider
Defines a list of classes that represent the search engines we can use to find Podcasts. Currently, this is iTunes and PodcastIndex.
SearchResult
This class is a container for our search results or for any error message received whilst attempting to fetch the podcast data.
Subtitle
This class represents one line within a transcript.
Transcript
This class represents a transcript.
TranscriptUrl
This class represents a PC2.0 transcript URL contained within an RSS feed.
Value
This class represents a PC2.0 value tag and is used for value-for-value payments via cryptocurrency or another payment layer.

Enums

Attribute
An enum that provides a list of valid attributes for podcasts.
Country
An enum that contains the country code for each country.
ErrorType
ResultType
TranscriptFormat
podcast_search currently supports PC2.0 Json format and standard subrip/srt format.

Constants

countTagMap → const Map<ResultType, String>
startTagMap → const Map<ResultType, String>

Exceptions / Errors

PodcastCancelledException
Thrown if the search is cancelled.
PodcastCertificateException
Thrown if we get a certificate error.
PodcastFailedException
Thrown if we get an invalid response error.
PodcastTimeoutException
Thrown if the connection times out, or we timeout waiting to receive the data.
PodcastUnknownException
Thrown if we get an unknown error.