The present application relates generally to communications networks. More specifically, the application relates to interactive services in communication networks.
Generally, an Electronic Service Guide (ESG) enables a terminal to obtain information relating to what services are available to end users, and how the services may be accessed. ESG fragments are independently existing pieces of the ESG. Traditionally, ESG fragments comprise XML documents, but more recently they have encompassed a vast array of items, such as for example, a SDP (Session Description Protocol) description, textual file, or an image. The ESG fragments describe one or several aspects of currently available (or future) service or broadcast programs. Such aspects may include for example: free text description, schedule, geographical availability, price, purchase method, genre, and supplementary information such as preview images or clips. Audio, video and other types of data comprising the ESG fragments may be transmitted through a variety of types of networks according to many different protocols. For example, data can be transmitted through the Internet (or other collection of networks) using protocols of the Internet protocol suite, such as Internet Protocol (IP) and User Datagram Protocol (UDP). ESG fragments may also be transmitted by using Asynchronous Layered Coding (ALC) and File Delivery over Unidirectional Transport (FLUTE) protocols. Data is often transmitted through the Internet addressed to a single user. It can, however, be addressed to a group of users, commonly known as multicasting. In the case in which the data is addressed to all users it is called broadcasting.
When interactive service offerings are provided to a subscriber of a broadcast or multicast program, an additional channel or communication link is needed for providing the interactive services. For example, if a subscriber is receiving a broadcast program in which the subscriber can interact with the program by responding to prompts in the program, the subscriber's input is provided to the service providing entity via a channel or communication link that is separate from the channel over which the program is being broadcast. This requires large overhead and results in a burden on the use of resources in the broadcast system.
In addition, subscribers are often required to manually enter input into the system in a non-uniform manner across different interactive applications, so there is opportunity for user error. If the user erroneously inputs the wrong data, the wrong data will be received which may result in undesired results. For example, the subscriber may send a non-functional answer message that does not produce the desired results. To make matters worse, the subscriber could still be charged for the erroneous, non-functional answer message, depending on the terms of any agreement between the user and a service provider for the transmission of data. Hence, there is a high risk of errors resulting in unsuccessful service or interaction requests in such a system. Moreover, there is no standardized method of specifying message interaction.
Therefore, there is a need for a method and system for providing interaction service offerings to subscribers in an efficient, flexible, and cost-effective manner. There is also a need to provide a method and system for providing interaction service offerings to a subscriber in a manner that can minimize or eliminate the frequency of errors in subscriber input and conserve transmission resources.
The following presents a simplified summary in order to provide a basic understanding of some aspects described herein. The summary is not an extensive overview, and is not intended to identify critical or required elements. The following summary merely presents some concepts in a simplified form as a prelude to the more detailed description below.
In one example, a transmitter is provided for transmitting a program, a PointerID and/or an event, to a subscriber. In this example, a device receives the program content and transmits the event and/or a PointerID in an ESG fragment. The ESG fragment may have associated metadata and data associated with a message template of an interactive component of the program. The data associated with the message template may be mapped into the metadata of the message template. Data and elements associated with the interaction service of the event may be parsed from the metadata of the ESG fragment.
In another example, a receiver is provided for receiving an ESG fragment containing an event. The ESG fragment may also be associated with metadata which may include a predetermined interaction element for creating a message template.
In another example, a method is described for providing data of an event in an ESG fragment and providing an interaction service offering associated with the event. The event may also have a subscriber interaction component in which a user can input data or requests and communicate with the program. Information associated with the interaction component can be mapped into metadata associated with the ESG fragment.
In another example, a method for providing an interaction service offering associated with an event is provided in which a first content file containing a video or audio stream of an event is provided to a subscriber terminal. A second content file containing data associated with an interaction service associated with the event is also provided. Also, a message template can be created and displayed at a subscriber terminal based on the data corresponding to the interaction services of the event.
Also, in another example, an ESG fragment containing data of an event can be received at a subscriber terminal. The ESG fragment can also have associated metadata in which data corresponding to a pre-configured message template can be mapped.
A more complete understanding of the features described herein and the advantages thereof may be acquired by referring to the following description in consideration of the accompanying drawings, in which like reference numbers indicate like features, and wherein:
In the following description, reference is made to the accompanying drawings, which form a part hereof, and in which is shown by way of illustration various features that may be used. It is to be understood that other embodiments may be utilized and structural and functional modifications may be made without departing from the scope and spirit of the present application.
One way of broadcasting data is to use an IP data casting (IPDC) network. IPDC is a combination of digital broadband broadcast and Internet Protocol. Through such an IP-based broadcasting network, one or more service providers can supply different types of IP services including on-line newspapers, radio, and television programs. These IP services are organized into one or more media streams in the form of audio, video and/or other types of data. To determine when and where these streams occur, users refer to an electronic service guide (ESG). One example used in digital video broadcasting (DVB) streams is an electronic program guide (EPG). One type of DVB is Digital video broadcasting-handheld (DVB-H), a recently developed technology that increases the capabilities and services available on small handheld devices, such as mobile telephones. The DVB-H is designed to deliver data to wireless terminal devices taking into consideration the characteristics of battery-powered devices.
DVB transport streams deliver compressed audio and video and data to a user via third party delivery networks. Moving Picture Expert Group (MPEG) is a technology by which encoded video, audio, and data within a single program is multiplexed, with other programs, into a transport stream (TS). The TS is a packetized data stream, with fixed length packets, including a header. The individual elements of a program, audio and video, are each carried within packets having a unique packet identification (PID). To enable a receiver device to locate the different elements of a particular program within the TS, Program Specific Information (PSI), which is embedded into the TS, is supplied. In addition, additional Service Information (SI), a set of tables adhering to the MPEG private section syntax, is incorporated into the TS. This enables a receiver device to correctly process the data contained within the TS.
The features herein, however, are also applicable to other multicarrier digital broadcast systems such as, for example, T-DAB, T/S-DMB, ISDB-T, and ATSC, proprietary systems such as Qualcomm MediaFLO/FLO, and non-traditional systems such 3GPP MBMS (Multimedia Broadcast/Multicast Services) and 3GPP2 BCMCS (Broadcast/Multicast Service).
ESG fragments may be efficiently transported to a receiver through the formation of containers. In this sense, a container comprises at least one ESG fragment, but may contain a plurality of fragments. Alternatively, a fragment may be carried in more than one container. The containers are transported to the receiver, for example, by using Asynchronous Layer Coding (ALC)/Layered Coding Transport (LCT) such that a single ALC/LCT transport object corresponds to a single container. The fragments can be utilized by the receiver upon reception of the entire container. Features herein may use a simple and extensible header structure apart from the fragments independent of the type and format of the individual fragments. In further embodiments, compression is applied over the entire container, including the fragments and any headers. In yet further embodiments, other envelopes, such as, e.g. a 3GPP metadata envelope may be carried within the container without the need for unnecessary repetition of parameters, such as for example, version, validity time, and identification.
Metadata within a 3GPP (3rd Generation Partnership Project) envelope or in any other form may include specific channels, specific programs, and/or specific channel bundles. Other types of metadata may include: package data, purchase data, such as operator identity data and technical data for performing the transaction, e.g., an address, protocol, price data which may be based upon package/day, channel/minute, program/minute; channel data, such as a textual description for a user, content provider branding information/logo, classification and rating data, such as genre and parental rating, channel SDP data, such as a description of capabilities needed to use the service, e.g., audio and video format and bit rate information, start and end time, addresses, addresses of synchronized auxiliary data feeds, proprietary extensions; and program data, such as a textual description for a user, start and end times, references for interactive services related to the program. This metadata may be loaded by an operator or may be performed automatically.
The features described herein may be utilized across a broad array of networks and communication protocols.
The broadcast network 114 may include a radio transmission of IP datacasting over DVB-H. The broadcast network 114 may broadcast a service such as a digital or analog television signal and supplemental content related to the service via transmitter 118. The broadcast network may also include a radio, television or IP datacasting broadcasting network. The broadcast network 114 may also transmit supplemental content which may include a television signal, audio and/or video streams, data streams, video files, audio files, software files, and/or video games. In the case of transmitting IP datacasting services, the service source 122 may communicate actual program content to user device 112 through the broadcast network 114 and additional information such as user right and access information for the actual program content through the cellular network 116 (e.g., a cellular telephone network).
The mobile device 112 may also contact the service source 122 through the cellular network 116. The cellular network 116 may comprise a wireless network and a base transceiver station transmitter 120. The cellular network may include a second/third-generation/fourth-generation (2G/3G/4G) cellular data communications network, a Global System for Mobile communications network (GSM), OMA broadcast networks, FLO, MBMS, or other wireless communication network such as a WLAN network.
Mobile device 112 may comprise a wireless interface configured to send and/or receive digital wireless communications within cellular network 116. The information received by mobile device 112 through the cellular network 116 or broadcast network 114 may include user selection, applications, services, electronic images, audio clips, video clips, and/or WTAI (Wireless Telephony Application Interface) messages. As part of cellular network 116, one or more base stations (not shown) may support digital communications with receiver device 112 while the receiver device is located within the administrative domain of cellular network 116.
As shown in
Computer executable instructions and data used by processor 128 and other components within mobile device 112 may be stored in a computer readable memory 134. The memory may be implemented with any combination of read only memory modules or random access memory modules, optionally including both volatile and nonvolatile memory, wherein some of the memory modules may be detachable. Software 140 may be stored within memory 134 and/or storage to provide instructions to processor 128 for enabling mobile device 112 to perform various functions. Alternatively, some or all of mobile device 112 computer executable instructions may be embodied in hardware or firmware (not shown).
Mobile device 112 may be configured to receive, decode and process transmissions based on the Digital Video Broadcast (DVB) standard, such as DVB-H or DVB-MHP, through a specific DVB receiver 141. Additionally, receiver device 112 may also be configured to receive, decode and process transmissions through FM/AM Radio receiver 142, WLAN transceiver 143, and telecommunications transceiver 144. Further the mobile device may be configured to receive transmissions based on the Digital Audio Broadcasting (DAB) standard (not shown). Mobile device 112 may receive radio data stream (RDS) messages.
In an example of the DVB standard, one DVB 10 Mbit/s transmission may have 200, 50 kbit/s audio program channels or 50, 200 kbit/s video (TV) program channels. The mobile device 112 may be configured to receive, decode, and process transmissions based on the Digital Video Broadcast-Handheld (DVB-H) standard or other DVB standards, such as DVB-MHP, DVB-Satellite (DVB-S), DVB-Terrestrial (DVB-T) or DVB-Cable (DVB-C). Similarly, other digital transmission formats may alternatively be used to deliver content and information of availability of supplemental services, such as ATSC (Advanced Television Systems Committee), NTSC (National Television System Committee), ISDB-T (Integrated Services Digital Broadcasting—Terrestrial), DAB (Digital Audio Broadcasting), DMB (Digital Multimedia Broadcasting) or DIRECTV. Additionally, the digital transmission may be time sliced, such as in DVB-H technology. Time-slicing may reduce the average power consumption of a mobile terminal and may enable smooth and seamless handover. Time-slicing consists of sending data in bursts using a higher instantaneous bit rate as compared to the bit rate required if the data were transmitted using a traditional streaming mechanism. In this case, the mobile device 112 may have one or more buffer memories for storing the decoded time sliced transmission before presentation.
The service provider 250 may further include a processor 270 for processing an ESG fragment containing, for example, information relating to what services are available to end users and how the services may be accessed. As one example of an ESG fragment, the ESG fragment may comprise XML documents, an SDP (Session Description Protocol) description, textual file, or an image, to name a few, and may also describe one or several aspects of currently available (or future) service or broadcast programs. The ESG fragment may also have associated metadata into which information may be embedded, inserted or mapped.
In addition, the service provider 250 may further include a mapping module 255 for mapping information elements corresponding to a messaging template associated with the interaction service of the program. The mapping module 255 may map the information elements into the metadata of a corresponding ESG fragment that is related to the program. For example, the mapping module 255 maps information elements by embedding attributes into a service guide. As an example, in an SMS message, parameters may be provided for defining characteristics of the message such as the recipient (e.g., to_header) or the content of the message body (e.g., message_body). The mapping module 255 may embed such parameters into the metadata of a service guide (i.e., ESG fragment). In this way, the attributes can be added to a service guide schema (XML schema). As one example, a user interface can be provided for the server application such that input can be received at the server application indicating corresponding interaction service offerings. The service provider 250 can then create a service guide XML schema with the appropriate attributes. The ESG fragment containing service guide information and mapped information elements in the metadata is output by ESG output 260. The messaging template can be used at the subscriber terminal for interacting with the event or program in a standardized fashion that can significantly reduce or even eliminate the possibility of input error on the part of the subscriber. Examples of the messaging template are provided in more detail below.
In the exemplary embodiment, the header 310 may have a plurality of ESG fragment descriptor entries 330 that identify the ESG fragments 340 in the container payload 320 so that the receiver may determine the exact position and/or length of each contained ESG fragment 340. For example, in one embodiment, a field specifies where the particular ESG begins within the container payload 320 by providing, for example, an offset value, start and end points, or the like. In other embodiments, metadata 350 may be associated with the individual ESG fragments 340, located within or proximate to the header 310, descriptor entries 330, an ESG fragment 340 or a mixture thereof. In one exemplary embodiment, the association of a 3GPP metadata envelope with an ESG fragment 340 may substitute for, or negate the need of additional metadata to be located in the header 310 in relation to that particular ESG fragment.
The ESG fragment may contain service/interaction information such that the service/interaction information can be provided to a subscriber or user of a terminal. In this example, the ESG fragment may contain a predefined service/interaction element that can be detected and displayed at a subscriber terminal based on information received through metadata associated with the ESG fragment. For example, information that can provide a pre-configured service interaction template can be mapped into metadata of an ESG fragment as a predetermined interaction element. A subscriber terminal can parse this information to determine the availability to interact with an accompanying broadcast program. Also, sub-elements of the predetermined interaction element can provide information on alternatives to available interactive services and attributes associated with data to create interactive service requests. Hence, a pre-configured service/interaction request template may be provided to the subscriber based on the ESG fragment metadata.
Thus, a message template or other form of a pre-configured message can be delivered in an ESG fragment of a service guide. Such messaging may be transmitted in a variety of ways such as but not limited to Short Message Service (SMS), Multimedia Message Service (MMS) or E-mail, to name a few.
As illustrated in the example of
The MessageInteractionPointer element 401 of the present example may further contain an EmailTemplate sub-element 403 to define recipients of an e-mail message and the message contents similarly as discussed above in connection with the SMSTemplate sub-element 402. As
The MessageInteractionPointer element 401 may still further contain an MMSTemplate sub-element 404 for defining or identifying an MMS message template. The MMSTemplate sub-element 404 may also be delivered inside the ESG fragment and may contain an XML element or separate file 412 for defining or identifying the message template.
The MessageInteractionPointer element 401 may also include a PointerID element 413, which may be a unique identification of the MessageInteractionPointer 401. The PointerID 413 may be used as a shorthand reference to the MessageInteractionPointer 401, and will be discussed in greater detail below.
The following table lists examples of sub-elements and attributes of the Message template that may be used:
Where the type can be an Element (E), an Attribute (A), a first level sub-element (E1), or a second level sub-element (E2) and the category can be optional (O) or preferred/mandatory (M).
In one example, the message template is created with the service guide by providing elements and attributes for creating a message such that a subscriber need not manually enter information when creating the message. For example, a service provider can create a service guide for transmission to a subscriber and can include information in the service guide fragment such as elements or attributes for creating the message template. If, for example, a pointer element (e.g., MessagingInteractionPointer element described above) is embedded into a service guide fragment (i.e., ESG fragment), a subscriber terminal can identify the elements or attributes embedded in the ESG fragment or in the metadata of the ESG fragment based on the pointer element. In an example of an SMS message, an SMS client can place the attributes in corresponding fields to pre-configure a message template containing the information. In this case, a subscriber need not manually enter corresponding message information. For example, the SMS client can place a recipient attribute in a recipient field (e.g., to_header) and can place the body of the message in a messagebody field to pre-configure an SMS template including the recipient and message body. Thus, attributes that can be used for creating a message template for sending a message may be transmitted to a subscriber in an ESG fragment. This method can be used in any form of messaging. For example, an MMS message can use corresponding attributes or parameters to send a pre-configured template in a similar fashion.
The template that is created can include a standard XML form based on the attributes embedded in the ESG fragment which a client can support. Thus, the ESG fragment may carry the template XML scheme as well as the attributes that are used to create a subscriber message. In one example, a subscriber terminal creates a message template including pre-configured information based on the attributes received in an ESG fragment. In another example, the server application may create a standardized message template. For example, in MMS messaging, the message template may be a standardized feature created by the server application and embedded in an ESG fragment as described herein. This information corresponding to a message template can be, for example, attributes such as those described in the table above and on
Hence, in this example, the service provider can send a broadcast program, such as video and audio streams for a program and accompanying data associated with interaction services that can be displayed at a subscriber terminal simultaneously.
As illustrated in the example of
In another example, a pointer element such as MessagingInteractionPointer may be received at a broadcast client application. The text of a template (XML scheme) can be parsed out and handed to a client application as a string. The client can recognize the template scheme as an XML and parse out attributes from the string. Such attributes may include, for example, a recipient or a message body. The client application may then create a pre-configured message. Also, the pre-configured message may be modified by a subscriber prior to sending, if desired.
The subscriber terminal may receive the ESG fragments associated with the service guide and containing information corresponding to a broadcast program and associated interactive services.
The subscriber can interact with the service by selecting a service offering (STEP 703) based on the received pre-configured interaction options. In this example, a subscriber can select an option through the messaging template. The resulting primitive can be sent to an SMS client to create the pre-configured service request (STEP 704). In some examples, the subscriber can further acknowledge the interaction. For example, a subscriber can place a purchase order as an interactive input and can also confirm that the order was placed. Also, in some examples, a reply message or other appropriate response can be delivered (STEP 705) by delivering the service request.
For illustration purposes, an example of the method of
Information pertaining to the program that is presented to subscribers may be delivered in a variety of ways. In one example, a “teaser” can be provided for the “American Idol” program such as “Vote for Reuben or Clay”. This information can be delivered, for example, as part of the service guide. If the information is provided as part of the service guide, the subscriber terminal may parse the information based on accompanying attributes also received in the service guide. The information may be displayed to the subscriber who views the information on a display. Thus the information may appear as a portion of the actual broadcast to the subscriber, if desired. Alternatively, the information may be delivered as part of the service guide but in an extension fragment that may be accessible via an extension parameter. An example of an extension parameter for access to the extension fragment includes ExtensionURI (type AnyURI) that can be offered by relevant ESG fragments. The information may be delivered or displayed at any time in reference to delivery of the broadcast. For example, the information may be delivered or displayed at the same time as the broadcast or at a different time, such as the next day (e.g., to remind viewers that the “American Idol” vote is continuing).
In another example of delivering program information such as a teaser for the “American Idol” program, the program information may be delivered as part of broadcasting. For example, the program information may be delivered in the video/audio stream of the broadcast itself to appear on the display as part of the broadcast. Alternatively, the information may be delivered as part of the broadcast but in a separate file. For example, the information may be delivered in an HTM field that is separate from the broadcast and may be displayed to the user on a display either simultaneously with the broadcast or at a separate time. If the information is delivered or displayed at a separate time, the information may be displayed, for example during the broadcast of a different program or during a commercial or advertisement, if desired.
The program content of the “American Idol” program in this example is received at the subscriber terminal. The subscriber terminal also receives a pointer to attributes associated with a message template. The attributes can be mapped to the metadata associated with a corresponding ESG fragment. For example, the pointer can be a MessagingInteractionPointer element for indicating attributes in the metadata of the ESG fragment that may identify and characterize the messaging template. The information of the ESG fragment received can also contain data of the message header and body, or the content of the message. The subscriber receiver may parse the received ESG fragment data to obtain a pointer to the message template from the attributes in the metadata of the ESG fragment. The message template can be displayed to the subscriber based on the attributes. In one example, the message template provides voting options and cost information for placing a vote.
The subscriber may cast a vote by selecting a corresponding choice. For example, a message template may contain a button, link or other icon or a list of such buttons, links or other icons, which a subscriber can click. Clicking the desired button or link may cause transmission of a primitive and placement of a vote for the selected corresponding individual or contestant.
In this example, the messaging template may contain any pertinent information in a pre-configured format. For example, the interaction page may also provide an option for sending fan e-mail to a desired contestant. In this example, the attribute To_header and subject_header may be pre-defined so that when the client application receives the ESG fragment (i.e., the content of the program) including the pointer element MessagingInteractionPointer (e-mail), the application provides started to prompt the user to write a message body.
In another example of the method of
In another example of the delivering message templates, a subscriber or viewer of a program can send e-mail to a contestant on the program. In this example, a program such as “American Idol” is transmitted to viewers. Service guide information can also be transmitted to the subscriber in an ESG fragment with attributes corresponding to a message template mapped in the metadata of the ESG fragments. The subscriber terminal may parse the ESG fragments, identify the attributes and display the message template such as an interaction page. The interaction page may provide any type of pertinent option. In this example, the options include an option to send an e-mail to a selected contestant on “American Idol.”
In this example, attributes such as to_header and subject_header may be pre-defined at the service provider. For example, the subject_header attribute can be defined as “Fan-mail to Reuben” such that selection of the corresponding option causes an e-mail to be sent to Reuben (a contestant on the program) with “Fan-mail to Reuben” as the subject. The program content is transmitted from the service provider to the viewer at the subscriber terminal in an ESG fragment. The ESG fragment also includes the pointer element (e.g., messagingInteractionPointer(e-mail) element) that identifies the attributes to the subscriber terminal. In this example, the attributes identified may be a to_header and a subject_header (e.g., “Fan-mail to Reuben”). A corresponding message template is displayed at the subscriber terminal which provides an option to send a fan e-mail. Selection of the option can then prompt the viewer to write a message, include attachments, etc.
Thus, in summary, a system and method is described in which a program may be provided from a service provider to a subscriber terminal that includes a pointer element indicating attributes for displaying a message template for interactive services associated with the program at the subscriber terminal. The program content, such as audio or video associated with the program, can be transmitted in an ESG fragment and the attributes can be mapped in the metadata of the ESG fragment. The message template is standardized such that the user need not know the type of interaction. Selection of a desired option in the message template can return a pre-configured message to the service provider. Depending on the form of interaction, further user interaction is not necessary. For example, if the interaction pertains to voting for a contestant on a live game show such as “American Idol”, the subscriber can select the option on the message template corresponding to the desired contestant. No additional input from the subscriber is necessary. However, if the subscriber wishes to also send an e-mail to the contestant, the subscriber may then input the message after selection of the e-mail option.
In another example, the event information in the ESG fragment may be provided to the subscriber in conjunction with the pointer element and attribute information. Thus, a subscriber can receive the program or event information (e.g., program content) at the same time as the interaction service offering. In this way, the subscriber can be apprised of the availability and selection of interaction services associated with each event or program in a plurality of events or programs while browsing.
The ESG fragment information can be used by a plurality of applications. In this example, the ESG fragment is a transport for providing the interaction service offerings associated with events. The information for providing the message template (e.g., attributes or sub-elements) may be received through an ESG fragment update while the subscriber is viewing a program or event. Thus, a subscriber can receive the information for providing a message template and updates to the information for providing the message template and display the message template while viewing the event or program.
Also, the interaction service offerings may be provided in certain select areas of the display. For example, the interaction service offerings may be displayed in a message template in a designated area of a display, as desired. The designated area of a display may be defined within the ESG fragment information, or alternatively, the designated area of the display may be defined by the original content stream.
One or more computer-readable media may be provided with computer-executable code to cause a mobile terminal (or a processor) to perform the steps described herein, and may also contain computer-readable code for mapping attributes, elements, and/or sub-elements associated with a message template. The message template may be associated with interactive service offerings of an event or program. The message template may, for example be displayed at a subscriber terminal and may provide a list of options for selection by the subscriber.
As noted above, in some embodiments, the MessagingInteractionPointer may include multiple templates for a variety of different applications, such as an email template and an interactive television program template.
In some embodiments, multiple ESG fragments may carry the full specification of a MessagingInteractionPointer and/or the templates contained therein. For example, services may be vertically similar (e.g., content and related service) or horizontally similar (e.g., similar in content), or any combination of the two, and fragments may carry templates for all of these services. In some alternative embodiments, some ESG fragments may avoid having to carry the full specification of these templates, and may instead carry a smaller PointerID that is associated with a given MessagingInteractionPointer, thereby saving bandwidth.
Upon receiving the PointerID, a terminal device may take steps to resolve the PointerID into the associated MessagingInteractionPointer, and obtain the correct template specification. This resolution can be done in a variety of ways. In some embodiments, the PointerID may be a simple data type, such as an integer, and the terminal device may consult a lookup table (or other conversion process) to identify the associated MessagingInteractionPointer. The PointerID may, for example, reference a previously-received fragment (e.g., fragment 1101) that contained the full specification. Alternatively, the PointerID may contain instructions and/or location information instructing the terminal where to obtain the full specification for the MessagingInteractionPointer templates. For example, the PointerID may be a location address identifying a memory location of the terminal's device (which can be accessed in an offline mode, if desired), or a URL such as the following:
Using this location PointerID, the receiving terminal may then retrieve the full specification from that location, or the template from this specified URL over the interaction channel.
The initial association (or mapping) of a PointerID with a MessagingInteractionPointer may be done using the ESG fragments as well. For example, a first fragment 1101 may declare a proposed PointerID for an association. Upon reception of the proposed PointerID, the device can determine whether it already has a definition for a declared PointerID (e.g., if it is already in use). If not, then the MessagingInteractionPointer-specification linked with the PointerID is taken as the mapping.
The use of PointerIDs within ESG fragments may also allow multiple (or even all, in some circumstances) fragments to avoid having to carry the full specification. For example, some templates may be for services that are dynamic, and may quickly change template formats. Placing the full specification in a fragment may run the risk of the specification being outdated by the time it is received. In such situations, and as shown in
As another approach to handling such dynamic MessagingInteractionPointers, ESG fragments may include validity data for the MessagingInteractionPointers that they carry. Such validity data may be, for example, time-based data. The receiving terminal may check the validity data according to predetermined validity criteria (e.g., templates are valid for a given amount of time beyond the time data, the time-based data identifies an expiration date and/or time, etc.), and if the terminal determines that the ESG fragment carries an outdated MessagingInteractionPointer, the terminal may take appropriate steps to retrieve an updated version. This may be done in a variety of ways, such as those described above (e.g., a lookup table may be consulted, the ESG may carry location information, etc.). For example, each template may be provided with an expiration time/date, and the mobile terminal may be configured to automatically request an updated template upon expiration of a prior template.
In some embodiments, a PointerID may take the form of a predefined MessagingInteractionPointer that is empty. The receiving terminal may determine, upon receiving an empty MessagingInteractionPointer, that it needs to retrieve the appropriate specification data.
Accordingly, one embodiment described herein may include a transmitter for transmitting electronic service guide (ESG) fragments associated with an event, the event including at least access to an interaction service, the transmitter comprising: an input for receiving an association to and/or data associated with the event to be included in an ESG fragment for transmission, the data including an association to and/or an interaction template element associated with a message template, the message template associated with an interaction service of the event; a processor for processing an ESG fragment associated with the event and/or an association thereto, the ESG fragment including metadata; a mapping module for mapping at least one element and/or an association thereto associated with the interaction service of the event into the metadata of the ESG fragment; and an output for delivering the ESG fragment in a broadcast transmission. The ESG fragment may include a unique identification, such as a pointer, that may be used as a shorthand way to refer to a corresponding interaction element without requiring full specification of the element. The pointer may be a numeric data type, such as an integer, and may contain instructions and/or location (e.g., a URL link, memory location, etc.) information identifying how and/or where a receiver may obtain the full specification for the referenced interaction element.
Another embodiment may include a method for providing an interaction service offering associated with an event and/or an association thereto comprising: obtaining information associated with the event, the event having a subscriber interaction component and/or the association thereto and the information including data corresponding to a message template associated with the interaction component of the event; assembling the information associated with the event and/or the association thereto into an electronic service guide (ESG) fragment, the ESG fragment having corresponding metadata; mapping the data corresponding to the message template associated with the event and/or the association thereto into the metadata corresponding to the ESG fragment; and delivering the ESG fragment in a broadcast transmission. The fragment may also include the unique identification discussed above.
Furthermore, an embodiment may include a device comprising a receiver, a display, a memory, and a processor configured to perform the steps of: (1) displaying program content from a broadcast stream received by the receiver; (2) extracting from one or more electronic service guide (ESG) fragments associated with the broadcast stream information relating to an interaction template and/or association thereto that permits a user of the device to interact with an entity affiliated with the program content; (3) displaying information relating to the interaction template and/or association thereto on the along with the program content; (4) receiving user input relating to the interaction template; and (5) transmitting the interaction template corresponding to user input to the entity. In the device, the association may be, for example, a link to the interaction template in a memory of the device or to the interaction template provider.
The embodiments herein include any feature or combination of features disclosed herein either explicitly or any generalization thereof. While the features herein have been described with respect to specific examples, those skilled in the art will appreciate that there are numerous variations and permutations of the above described systems and techniques.
Number | Date | Country | |
---|---|---|---|
60713720 | Sep 2005 | US |