[This is preliminary documentation and subject to change.]
The TSS object library, Tssadmin.dll, provides methods that you can use to load enhancement information into the Guide database and to manipulate that information. The enhancement loader methods are as follows:
The ITelevisionServices::LoadEnhancement and LoadEnhancementsFromFile methods are used to load information about enhancements into the Guide database. This information includes, for example, the file name and location of the starting page of the enhancement. Storing this information in the database enables Microsoft WebTV for Windows to query the database to locate the enhancement files associated with a particular show.
The ITelevisionServices::LoadEnhancement and LoadEnhancementsFromFile methods only store information. They do not download the Web files that constitute an enhancement page. Enhancement files can be loaded into the user's computer in ways such as:
Once the enhancement pages are downloaded onto the user's computer, information about them needs to be loaded into the Guide database. Doing this enables Microsoft® WebTV® for Windows® to locate and display the enhancement pages. If enhancement files are loaded onto the user's computer during an update of the Guide database, the Loadstub component of Broadcast Architecture loads information about enhancement files into the database. Loadstub does this by calling LoadEnhancementsFromFile. For more information about working with Loadstub, see Updating the Guide Database.
If enhancement files are loaded onto the user's computer through information encoded in the VBI, the broadcaster must also transmit an announcement trigger to load information about the enhancements into the Guide database. Otherwise, WebTV for Windows does not have the information that the show is interactive. The enhancement filter on the broadcast client receives this announcement and calls LoadEnhancement to load this information into the Guide database. For more information about announcements, see Announcements Overview.
If your application loads enhancement files onto users' computers without using Loadstub or the enhancement filter, it must load information about the enhancements into the Guide database by calling either the LoadEnhancementsFromFile or the LoadEnhancement method.
TSS also provides the method ITelevisionServices::DeleteEnhancementFromID, which enables components such as Announcement Listener to delete enhancement data from the Guide database. Typically, your application does not need to call this method. Instead, enhancement information is automatically deleted from the Guide database after the information expires. Obsolete enhancement data is periodically removed from the Guide database by Loadstub.
To enable such cleanup, you must set an expiration date and time for any enhancement data that you load. You specify the enhancement data's expiration date and time in the dateExpire parameter of LoadEnhancement or in the Expiration Date column of the text file read by LoadEnhancementsFromFile.
In addition to Loadstub's periodic deletion of expired enhancement data, your application can explicitly remove expired enhancement data by calling the ITelevisionServices::DeleteOldEnhancements method. Note that because Loadstub automatically deletes obsolete enhancement data, your application typically will not call DeleteOldEnhancements explicitly.
The ITelevisionServices::RemapEnhancements method maps enhancements to the shows or episodes they enhance.
For more information about using the enhancement methods, see Loading Enhancement Information. For general information about enhancements, see Video Enhancements.