The application/oipfRecordingScheduler embedded object
Support in HbbTV
Available since: HbbTV 1.0 (ETSI TS 102 796 V1.1.1, OIPF DAE V1.1)
See clause A.2.24.
Support for repeated recordings with the recordAt() method is not included and hence the repeatDays argument may be ignored.
Comment
Security: Trusted
Mandatory only if PVR feature is supported.
In clause 7.10.1.1 of the OIPF DAE specification [1]:
Firstly the description of the getScheduledRecordings() method is modified as shown:
ScheduledRecordingCollection getScheduledRecordings() | |
Description | Returns a subset of all the those recordings that are scheduled but which have not yet started and which were scheduled by an application from the same origin as the caller. The subset SHALL include only scheduled recordings that were scheduled using a service from the same FQDN as the domain of the service that calls the method. |
Secondly the description of the remove() method is modified as shown:
void remove( ScheduledRecording recording ) | ||
Description | Remove a recording. For non-privileged applications, recordings SHALL only be removed when they are scheduled but not yet started and the recording was scheduled by the current service. Recordings SHALL only be removed when they are scheduled but not yet started. Additionally for terminals with the attribute manageRecordings set in the <recording> element of their capabilities set to “samedomain”, recordings shall only be removed when the recording was scheduled by applications from the same origin as the caller. As with the record() method, only the programmeID property of the scheduled recording SHALL be used to identify the scheduled recording to remove where this property is available. The other data contained in the scheduled recording SHALL NOT be used when removing a recording scheduled using methods other than recordAt(). For recordings scheduled using recordAt(), the data used to identify the recording to remove is implementation dependent. If the programmeIDType property has the value ID_TVA_GROUP_CRID then the OITF SHALL cancel the recording of the specified group. If an A/V Control object is presenting the indicated recording then the state of the A/V Control object SHALL be automatically changed to 6 (the error state). | |
Arguments | recording | The recording to be removed |
Thirdly the getInProgressRecordings() method is added as shown:
ScheduledRecordingCollection getInProgressRecordings() | |
Description | Returns those recordings that are currently in progress (i.e. those where recording has started but has not yet completed) and which were scheduled by an application from the same origin as the caller. |
In clause 9.3.3 of the OIPF DAE specification[1], the following two modifications are made as shown:
- The Boolean attribute manageRecordings specifies whether or not the OITF supports managing recordings through the JavaScript APIs defined in sections 7.10.4 and 7.10.1 of the OIPF DAE specification [1].
- “samedomain”: indicates that recordings initiated by applications from the same fully-qualified domain origin may be managed.
The OITF SHALL support the scheduling of recordings of broadcasts through the use of the following non-visual embedded object:
<object type=”application/oipfRecordingScheduler”/>
Note that the functionality in this section SHALL adhere to the security model as specified in section 10.1.
Which channels can be recorded SHALL be indicated by the ipBroadcast, DASH and HAS attributes in the PVR capability indication (see section 9.3.3). Within the channels indicated by these attributes, recording of both channels stored in the channel list and locally defined channels SHALL be supported.
Methods
ScheduledRecordingCollection getScheduledRecordings() | |
Description | Returns a subset of all the recordings that are scheduled but which have not yet started. The subset SHALL include only scheduled recordings that were scheduled using a service from the same FQDN as the domain of the service that calls the method. |
ChannelConfig getChannelConfig() | |
Description | Returns the channel line-up of the OITF in the form of a ChannelConfig object as defined in section 7.13.9. The ChannelConfig object returned from this function SHALL be identical to the ChannelConfig object returned from the getChannelConfig() method on the video/broadcast object as defined in section 7.13.1.3. |
void remove( ScheduledRecording recording ) | ||
Description | Remove a recording (either scheduled, in-progress or completed). For non-privileged applications, recordings SHALL only be removed when they are scheduled but not yet started and the recording was scheduled by the current service. As with the record() method, only the programmeID property of the scheduled recording SHALL be used to identify the scheduled recording to remove where this property is available. The other data contained in the scheduled recording SHALL NOT be used when removing a recording scheduled using methods other than recordAt(). For recordings scheduled using recordAt(), the data used to identify the recording to remove is implementation dependent. If the programmeIDType property has the value ID_TVA_GROUP_CRID then the OITF SHALL cancel the recording of the specified group. If an A/V Control object is presenting the indicated recording then the state of the A/V Control object SHALL be automatically changed to 6 (the error state). | |
Arguments | recording | The scheduled recording to be removed. |
Programme createProgrammeObject() | |
Description | Factory method to create an instance of Programme. |