formalize liveItem

pull/324/head
Dave Jones 2022-01-08 19:09:40 -06:00
rodzic da2dd6366f
commit ffa0f095be
2 zmienionych plików z 55 dodań i 61 usunięć

Wyświetl plik

@ -162,67 +162,6 @@ full implementation details.
The following tags are being actively considered for adoption into the namespace as part of phase 4. They are a work in progress.
### **\<podcast:liveItem>** - <small>[Discuss](https://github.com/Podcastindex-org/podcast-namespace/issues/212)</small>
<br>
<b>
```xml
<podcast:liveItem
status="['pending','live','ended'(string)]"
start="[ISO8601 time stamp(string)]"
end="[ISO8601 time stamp(string)]"
>
</podcast:liveItem>
```
</b>
Channel
(optional | multiple)
This element is used for a feed to deliver a live stream to podcast apps. It takes the same format as a standard `<item>` episode tag, but holds a subset of elements along with
some additional new elements that are appropriate for a live stream context. The `start` and `end` attributes denote when the live stream "should" start and end. But, real life
dictates that those times might not be adhered to. Apps are therefore encouraged not to rely on those times as anything more than a suggestion. The canonical way to know if a
stream has started is with the `status` attribute. If `status` is "live" then the stream has started.
This item will also make use of the [podping](https://podping.cloud) notification network. A podping notification SHOULD be sent out by the host when the live stream starts to let
apps know.
Example:
```xml
<podcast:liveItem
status="live"
start="2021-09-26T07:30:00.000-0600"
end="2021-09-26T08:30:00.000-0600"
>
<title>Podcasting 2.0 Live Show</title>
<description>A look into the future of podcasting and how we get to Podcasting 2.0!</description>
<link>https://example.com/podcast/live</link>
<guid isPermaLink="true">https://example.com/live</guid>
<author>John Doe (john@example.com)</author>
<podcast:images srcset="https://example.com/images/ep3/pci_avatar-massive.jpg 1500w,
https://example.com/images/ep3/pci_avatar-middle.jpg 600w,
https://example.com/images/ep3/pci_avatar-small.jpg 300w,
https://example.com/images/ep3/pci_avatar-tiny.jpg 150w"
/>
<podcast:person href="https://www.podchaser.com/creators/adam-curry-107ZzmWE5f" img="https://example.com/images/adamcurry.jpg">Adam Curry</podcast:person>
<podcast:person role="guest" href="https://github.com/daveajones/" img="https://example.com/images/davejones.jpg">Dave Jones</podcast:person>
<podcast:person group="visuals" role="cover art designer" href="https://example.com/artist/beckysmith">Becky Smith</podcast:person>
<podcast:alternateEnclosure type="audio/mpeg" length="312">
<podcast:source uri="https://example.com/pc20/livestream" />
</podcast:alternateEnclosure>
</podcast:liveItem>
```
<br>
----
### **\<podcast:recommendations>** - <small>[Discuss](https://github.com/Podcastindex-org/podcast-namespace/issues/205)</small>
<br>

Wyświetl plik

@ -750,3 +750,58 @@ Example of specifying four different image sizes:
https://example.com/images/ep1/pci_avatar-tiny.jpg 150w"
/>
```
<br><br><br><br><!-- Tag block -->
## Live Item
`<podcast:liveItem>`<br><br>
The `liveItem` tag is used for a feed to deliver a live stream to podcast apps. It takes the same format as a standard `<item>` episode tag, and all tags that are allowed inside of
a normal `<item>` tag are also allowed as children of `<podcast:liveItem>` except for `<enclosure>` which is supplanted in this context with `<podcast:alternateEnclosure>`.
The `start` and `end` attributes denote when the live stream "should" start and end. But, real life dictates that those times might not be adhered to. Apps are therefore encouraged
not to rely solely on those times as anything more than an approximation. The canonical way to know if a stream has started is with the `status` attribute. If `status` is "live" then
the stream has started.
This tag will also make use of the [podping](https://podping.cloud) notification network. A podping notification SHOULD be sent out by the host when the live stream starts, to let
apps know.
### Parent
&nbsp; `<channel>`
### Count
&nbsp; Multiple
### Node Value
All tags that are valid inside of a standard `<item>` tag are also valid here, except for `<enclosure>`. Instead of a normal `<enclosure>` which doesn't make sense in a live context,
the `<podcast:alternateEnclosure>` tag MUST be used instead. The [`alternateEnclosure`](#alternate-enclosure) tag has robust support for specifying streaming content.
### Attributes
- **status** (required) A string that must be one of `pending`, `live` or `ended`.
- **start** (required) A string representing an ISO8601 timestamp that denotes the time when the stream is intended to start.
- **end** (required) A string representing an ISO8601 timestamp that denotes the time when the stream is intended to end.
### Examples
```xml
<podcast:liveItem
status="live"
start="2021-09-26T07:30:00.000-0600"
end="2021-09-26T09:30:00.000-0600"
>
<title>Podcasting 2.0 Live Show</title>
<description>A look into the future of podcasting and how we get to Podcasting 2.0!</description>
<link>https://example.com/podcast/live</link>
<guid isPermaLink="true">https://example.com/live</guid>
<author>John Doe (john@example.com)</author>
<podcast:images srcset="https://example.com/images/ep3/pci_avatar-massive.jpg 1500w,
https://example.com/images/ep3/pci_avatar-middle.jpg 600w,
https://example.com/images/ep3/pci_avatar-small.jpg 300w,
https://example.com/images/ep3/pci_avatar-tiny.jpg 150w"
/>
<podcast:person href="https://www.podchaser.com/creators/adam-curry-107ZzmWE5f" img="https://example.com/images/adamcurry.jpg">Adam Curry</podcast:person>
<podcast:person role="guest" href="https://github.com/daveajones/" img="https://example.com/images/davejones.jpg">Dave Jones</podcast:person>
<podcast:person group="visuals" role="cover art designer" href="https://example.com/artist/beckysmith">Becky Smith</podcast:person>
<podcast:alternateEnclosure type="audio/mpeg" length="312">
<podcast:source uri="https://example.com/pc20/livestream" />
</podcast:alternateEnclosure>
</podcast:liveItem>
```