METHOD AND DEVICE FOR DYNAMIC STREAMING ARCHIVING CONFIGURATION

Abstract
The present invention provides a system and a method allowing users to record/stream a video conference by dialing a Content Server from any endpoint using a personal alias or aliases, or by dialing an endpoint from a content server using a personal alias or aliases. The alias(es) will define their preferred streaming/archiving template(s) and call configuration(s), allow them to set specific viewing rules for the conference and identify them as the owner of the conferences created through this alias. The alias owner can also assign default meta data (title, description, etc.) and an access list for determining who can view the recorded and/or streamed conference. By allowing this, each user can easily stream/record a conference with their preferred settings without having to check or change the settings each time a new call is made, and without changing the settings for other users.
Description

BRIEF DESCRIPTION OF THE DRAWINGS

In order to make the invention more readily understandable, the discussion that follows will refer to the accompanying drawings.



FIG. 1 is a block diagram illustrating a typical system architecture of audio and/or video conferencing equipment in a packet switched network,



FIG. 2 is a block diagram illustrating a typical system architecture of an streaming and archiving system of the present invention,



FIG. 3 shows an example template file,



FIG. 4 shows an example call configuration file,



FIG. 5 is a flow diagram illustrating the steps performed in an exemplary embodiment of calling the content server using an personal alias.





DETAILED DESCRIPTION THE INVENTION

In the following, the present invention will be discussed by describing a preferred embodiment, and by referring to the accompanying drawings. However, people skilled in the art will realize other applications and modifications within the scope of the invention as defined in the enclosed independent claims.


A content server (CS), as presented above, may be accessible through a service provider or be part of a enterprise communication network. Either way, multiple users with different setup requirements are most likely to use the same device. Therefore, a template system where each user is associated with a self defined template would therefore be the most adequate solution.


The basic idea of the present invention is to provide a system and a method allowing users to record/stream a video conference by dialing a Content Server from any endpoint using a personal alias or aliases, or by dialing an endpoint from a content server using a personal alias or aliases. The alias(es) will define their preferred streaming/archiving template(s) and call configuration(s), allow them to set specific viewing rules for the conference and identify them as the owner of the conferences created through this alias. The alias owner can also assign default meta data (title, description, etc.) and an access list for determining who can view the recorded and/or streamed conference. By allowing this, each user can easily stream/record a conference with their preferred settings without having to check or change the settings each time a new call is made, and without changing the settings for other users.



FIG. 1 show video conferencing equipment connected to a typical packet based network. H.323 is an International Telecommunications Union (ITU) standard that provides specification for computers, equipment, and services for multimedia communication over packet based networks that defines how real-time audio, video and data information is transmitted. The H.323 standard specifies four kinds of components, which, when networked together, provide the point-to-point and point-to-multipoint multimedia-communication services:

    • 1. terminals (101)
    • 2. gateways (102)
    • 3. gatekeepers (103)
    • 4. multipoint control units (MCUs)(104)


H.323 Terminals are the endpoints on the LAN that provide real-time two way communications. Terminals are usually a personal computer (PC) or a stand alone-device (e.g. video conferencing endpoint). Gatekeepers are responsible for providing address translation between an endpoints current IP address and its various H.323 ID aliases, call control and routing services to H.323 endpoints, system management and security policies. An H.323 gateway provides connectivity between an H.323 network and a non-H.323 network (e.g. ISDN). Finally, the MCUs provide support for conferences of three or more H.323 terminals.


As mentioned above, in order to produce streaming and recording outputs from a video conference, the content server (106) acts like a video conferencing endpoint (terminal). The CS (106) can join a point-to-point or a multipoint video conference just like any other endpoint, but instead of displaying the output on a screen like most regular video conferencing endpoints, it processes the data into other useful outputs.


As an endpoint the CS may also have one or more alias addresses associated with it. The alias addresses provide an alternate method of addressing the endpoint. These addresses include E.164 (network access number, telephone number, etc.), H.323 IDs (alphanumeric strings representing names, e-mail-like addresses, etc.), and any others defined in Recommendation H.225.0. Alias addresses are unique within a Zone, Domain, among Zones, and among Domains.


As discussed above, a gatekeeper (103) is a network device that provides addressing service for H.323 videoconference devices. Use of a gatekeeper (103) allows a videoconference device to “dial” another device using the videoconference alias rather than an IP address (which could be changed by DHCP). In order for a gatekeeper (103) to know where to direct a call, terminals (101) and gateways (102) must register with the gatekeeper (103), informing the gatekeeper (103) of their present IP addresses and their associated aliases. The called endpoint's E.164 address may consist of an optional service prefix followed by the E.164 alias. The service prefix consists of n digits from the set of 0 to 9, * and #, where n is a predetermined number of digits. One purpose of such a service prefix might be to request access to a Gateway. The Gatekeeper may alter this address prior to sending it to the destination.


According to the present invention, the CS (106) registers with its local gatekeeper (103) as a gateway with one or more service prefixes and/or suffixes. By doing this, all calls directed to an address starting with one of the registered service prefixes, or ending with one of the registered service suffixes, are forwarded to said content server by the gatekeeper, regardless of the remaining digits (or alphanumeric characters) in the address. The remaining digits (or alphanumeric characters) are referred to as an internal alias, and together with the service prefix or suffix they constitute a personal alias.


Personal aliases are created in the distribution device for each user through a web based user interface. The personal aliases are stored in the content server as separate records in a database. As mentioned above, a personal alias consists of two parts:

    • 1. Prefix—the service prefix registered with a local gatekeeper, identifying the distribution device as an H.323 gateway.
    • 2. Internal Alias—an alias created in the distribution device matching to the specific personal alias.


An example personal alias based on the use of E.164 aliases would be:

    • 570011


      where 57 is the service prefix and 0011 is the internal alias. Further, a personal alias is capable of being registered as both an E.164 and an H.323 ID alias. When using H.323 ID aliases the gatekeeper can support both prefixes and suffixes in the address. This means that when a call is made to a H.323 ID alias, the gatekeeper matches the called address to an internal database of registered prefixes and suffixes. If a string at the beginning or end of the address matches one of the registered prefixes or suffixes respectively, the call is forwarded to the gateway associated with this prefix or suffix, regardless of the remaining alphanumerical characters in the address. An example personal alias based on the use of H.323 ID aliases and prefixes would be:
    • stream.john.henderson


      where stream is the prefix and john.henderson is the internal alias. An example personal alias based on the use of H.323 ID aliases and suffixes would be:
    • stream.john.henderson@acme.com


      where @acme.com is the suffix and stream.john.henderson is the internal alias.



FIG. 2 is a block diagram showing the various components of an embodiment of the content server. The CS consist of a database (201) were all aliases are stored. Creation of aliases is typically done by an administrative user for security reasons. Once the alias is created, and all the administrator settings are set, the user may log into the CS through a web based User Interface (202) and set preferred recording/streaming settings for the conference. These settings will be stored in the CS's database (201) along with the internal alias. The stored information for each database record is as follows:














Alias type
Settings








Personal
Internal E.164 alias (e.g. 0011)
Admin Edit



Internal H.323 ID alias
Admin Edit



(e.g. stream.john.henderson)



Template (e.g. wmDefault-Dual-
User Edit



VGA.xml)



Call configuration (e.g.
User Edit



easyInterop.xml)



Username (e.g. john.henderson)
Admin Edit



Default Access List (e.g.
User Edit



owner = Acme_US, user = Acme R&D)



Default Category
User Edit



Default meta data (e.g. Title,
User Edit



Description, Presenter, etc.)









Access to the alias (both E.164 and H.323 alias) is preferably restricted to the administrator, but access may of course be granted to the users if necessary. However, the prefix and/or suffix portion of the personal alias is not user modifiable so it is important to present the full alias to the user rather than the internal alias to prevent confusion on what alias to dial. The full alias however is not necessary to store in the content server database.


The “Template” file stores information about the recording and streaming formats and outputs. It is in this file that the alias defines which streaming formats to use, what type of outputs to use within this streaming format and define information such as where the source media information is to be obtained from (e.g. normal video source, H.239/DuoVideo source etc). An example template file is shown in FIG. 3. The user will not need to create the file itself. All possible output configurations are stored as multiple template files in a template database (203), and in the user interface (202) the user will be presented with a list of available template files through a drop-down menu, or similar.


The “Call Configuration” file contains the H.323 settings for the call. This includes what codec's to advertise (use), what bandwidths are available for outgoing calls and what the maximum bandwidth is for all calls, and call duration settings. Alternatively this file contains Session Initiation Protocall (SIP) settings for the call, if SIP is preferred. An example template file is shown in FIG. 4. Call configuration files is stored in a internal database (204), and can be selected in a similar fashion as the template files.


The “Username” defines an owner for the personal recording alias.


“Default Access List” defines the default access list for a conference recorded or streamed based on the alias. This list defines who can view the conference and who can edit the conference details.


The “Default Category” is simply a way to assign the conference recording to a specific category if required.


“Default Meta data” allows the user to define information such as Title, Description, Presenter, Copyright, keywords etc for the conferences created with this alias.


When a user wishes to record or stream a video conference session using his/her preferred settings, he/her may dial the alias assigned to him/her by a administrator, from a terminal/endpoint. The user may choose which alias to use (E.164 or H.323 ID), if both are created in the profile. Upon receiving the call, the gatekeeper searched the dialed address for a prefix or suffix match. A prefix or suffix match is found if a part of the dialed address is identical to a registered prefix or suffix. To identify a match, the gatekeeper searched its internal storage for a prefix or suffix match. If such a match is found, the call is forwarded to the device registered with the matched prefix or suffix. E.g. a company named Acme registers its content server with a gatekeeper with the suffix @stream.acme.com. When a user dials the address john.henderson.stream@acme.com, the gatekeeper matches the prefix @acme.com to one its stored suffixes, and then forward the call to the content server at Acme.



FIG. 5 is a flow diagram illustration the steps involved in an exemplary embodiment of calling the content server using a personal alias. Upon receiving the call request (501), a call handling unit (205) in the content server analyses the receiver identification (called address), and extracts the internal alias. The internal alias can e.g. be extracted by simply removing the prefix or suffix from the receiver identification. In our example above, this would leave us with the internal alias; john.henderson.stream. When the call handling unit (205) has extracted the internal alias, it searches the CS's internal database (201) records for an internal alias match (502). An internal alias match is found if the extracted internal alias is identical to an alias stored in one of the records in the database (201). If such a match is not found, the call is rejected (503). If such a match is found, the call handling unit loads the stored information for that alias into the call handling unit. The stored information is the streaming and/or archiving settings for that alias, and defines witch template file, call configuration file, meta data, access list, etc. to use for the streaming and/or archiving task. In order to set up a call, the profile must at least define a template file and a call configuration file to use. So, the call handling unit at least gets the call configuration file (504) and template file (505) from their respective databases (204, 206), and analyses (506) them to ensure that they are valid. A template is not valid if any required information is not included within the xml file. If the template is invalid, the call is not accepted (508). If the template is valid, the call handling unit checks (509) if enough recourses is free to handle the call. If the CS does not have enough recourses to create the call, the call will be terminated (511). If enough resources are available, the call is created (512) and the recording/streaming of the conference commences (513) using the settings associated with the extracted internal alias. In our example, a match of the extracted internal alias (john.henderson.stream) is found in the database, and the call handling unit gets the associated template file (wmDefault-Dual-VGA.xml), the associate call configuration file (easyInterop.xml) and the associated access list (owner=Acme_US, user=Acme R&D), and the call request is accepted. Further, if a password is required for watching the stream, this information would be extracted from the database listing. The meta data and user name may also be used to display information to the receiving party.


The user may also stream and/or record a conference using his/her personal alias by initiating a call from the content server. This can be done in the web base user interface. The user may send a call request to any videoconferencing device by entering the address of the videoconferencing device in an address field in the user interface. In order for the content server to know which settings to use for the recording and/or streaming task, the user is required to select an internal alias from a list or enter the alias in a assigned field. If the user fails to enter a personal alias, the call handling unit uses a default alias for the call. The call handling unit then performs step 502-512 as shown in FIG. 5. Alternatively, the user interface may automatically checks if the CS has free resources when the user logs into the user interface (UI), in order to tell the user right away if a call is possible.


Further, one or more public aliases may be created. Public aliases are basically the same as personal aliases; apart from that they are not user modifiable. An administrative user may create and edit a set of public aliases, where each public alias defines the most frequently used templates and call configurations when recording/streaming conference calls. Public aliases provide users quick and easy access to standard configurations without needing to change their own personal alias before a call.


According to the invention, the distribution device may also be registered at the gatekeeper as a terminal. Instead of registering a service prefix as in the gateway model described above, the distribution device will register all the personal aliases with the gatekeeper. This method of registration will limit the number of aliases a distribution device will support, based on the maximum registrations from a single endpoint that the gatekeeper supports. This will vary between gatekeeper manufacturers. While limited in the total number of supported aliases, this method provides advanced dialing profile features for distribution devices without gateway functionality.


Under the gateway registration method it is possible for the recording system to maintain Personal Recording Aliases in the magnitude of thousands. The distribution device shall be able to register a service prefix with the gatekeeper as well as registering standard aliases as if it were a terminal. However, gateway registration of the distribution device only requires registering one or more recording prefixes, and maintaining the remainder of the alias within its own system.


One of the advantages of the present invention is that the entire call configuration, recording and streaming configuration, conference information and conference access can be configured through the use of a single alias. Further, thousands of users can use one (or a few) recording alias, or thousands of users can each have their own personal recording alias, allowing great flexibility to users. Recording Aliases can be used for individuals, groups, teams, departments—basically any individual or group can be represented by an alias. A user can easily change the configuration of how their conference is recorded by simply dialing a difference alias. Contrary to prior art, the present invention is independent of “lines”, since the alias defines all the configuration that would normally be attached to a “line”, and is no longer limited by the X lines=X recording configurations.

Claims
  • 1. A method for providing dynamic streaming and/or archiving configurations of video conference calls in a streaming and/or archiving system,
  • 2. A method according to claim 1,
  • 3. A method according to claim 1,
  • 4. A method according to claim 2,
  • 5. A method according to claim 2,
  • 6. A method according to one of the preceding claims, characterized in that said streaming and/or archiving settings comprise a template file containing settings for the recording and streaming formats and outputs, anda Call Configuration file containing the H.323 or SIP settings for the call.
  • 7. A method according to one of the preceding claims, characterized in that said streaming and/or archiving settings further includes settings for an alias owner,an access list defining who can view the conference and who can edit the conference details,a default Category assigning the conference recording to a specific category.meta data containing one or more of the following; Title, Description, Presenter, Copyright or keywords for the conference.
  • 8. A system providing dynamic streaming and/or archiving configurations of video conference calls, the system comprising at least a converting engine configured to receive a H.323 or SIP coded data stream and converting the conventional conference format coded data stream to a multimedia stream in a defined multimedia streaming format, characterized in a database configured to store a plurality of records containing aliases and their associated streaming and/or archiving settings,a call handling unit for establishing calls between the streaming and/or archiving system and a conference device, where the call handling unit is configured to send a call request using one of said aliases as sender identification, orreceive a call request from a conference device where one of said aliases is used as receiver identification,where the call handling unit is further configured to extract at least a part of said sender or receiver identification, and comparing said extracted identification with the aliases in said database, andwhere the converting engine is further configured to stream and/or record said conference call using the settings associated with a matched alias in said database, if said extracted identification matches one of said stored aliases in said database.
  • 9. A system according to claim 8,
  • 10. A system according to claim 8,
  • 11. A system according to claim 9,
  • 12. A system according to claim 9,
  • 13. A system according to one of the claims 8-12,
  • 14. A system according to one of the claims 8-13,
Priority Claims (1)
Number Date Country Kind
20064164 Sep 2006 NO national