WO2013054109A2 - Internet protocol (ip)-based phone systems - Google Patents

Internet protocol (ip)-based phone systems Download PDF

Info

Publication number
WO2013054109A2
WO2013054109A2 PCT/GB2012/052512 GB2012052512W WO2013054109A2 WO 2013054109 A2 WO2013054109 A2 WO 2013054109A2 GB 2012052512 W GB2012052512 W GB 2012052512W WO 2013054109 A2 WO2013054109 A2 WO 2013054109A2
Authority
WO
WIPO (PCT)
Prior art keywords
media
phone
call
server
data
Prior art date
Application number
PCT/GB2012/052512
Other languages
French (fr)
Other versions
WO2013054109A3 (en
Inventor
Furqan Alamgir
Ka Yiu YEUNG
Original Assignee
Furqan Alamgir
Yeung Ka Yiu
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Furqan Alamgir, Yeung Ka Yiu filed Critical Furqan Alamgir
Publication of WO2013054109A2 publication Critical patent/WO2013054109A2/en
Publication of WO2013054109A3 publication Critical patent/WO2013054109A3/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M3/00Automatic or semi-automatic exchanges
    • H04M3/42Systems providing special services or facilities to subscribers
    • H04M3/428Arrangements for placing incoming calls on hold
    • H04M3/4285Notifying, informing or entertaining a held party while on hold, e.g. Music On Hold
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0241Advertisements
    • G06Q30/0251Targeted advertisements
    • G06Q30/0255Targeted advertisements based on user history
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0241Advertisements
    • G06Q30/0251Targeted advertisements
    • G06Q30/0261Targeted advertisements based on user location
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/1066Session management
    • H04L65/1083In-session procedures
    • H04L65/1089In-session procedures by adding media; by removing media
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M3/00Automatic or semi-automatic exchanges
    • H04M3/42Systems providing special services or facilities to subscribers
    • H04M3/487Arrangements for providing information services, e.g. recorded voice services or time announcements
    • H04M3/4872Non-interactive information services
    • H04M3/4878Advertisement messages
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M2203/00Aspects of automatic or semi-automatic exchanges
    • H04M2203/55Aspects of automatic or semi-automatic exchanges related to network data storage and management
    • H04M2203/551Call history
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M2203/00Aspects of automatic or semi-automatic exchanges
    • H04M2203/60Aspects of automatic or semi-automatic exchanges related to security aspects in telephonic communication systems
    • H04M2203/6072Authentication using challenger response
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M3/00Automatic or semi-automatic exchanges
    • H04M3/42Systems providing special services or facilities to subscribers
    • H04M3/42348Location-based services which utilize the location information of a target
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M7/00Arrangements for interconnection between switching centres
    • H04M7/006Networks other than PSTN/ISDN providing telephone service, e.g. Voice over Internet Protocol (VoIP), including next generation networks with a packet-switched transport layer

Definitions

  • IP Internet Protocol
  • IP Internet Protocol
  • a media extension system for use with an internet protocol (IP) phone system for use with a plurality of phones, each having a phone identifier and a communications interface for communicating over the internet
  • IP internet protocol
  • the media extension enhancement system comprising: an authentication server having at least a communications interface for communicating over the internet, and configured to use the phone identifier to authenticate a call originated by the first phone for connecting the call to a second phone to establish a call between the first and second phones; and a media server coupled to the authentication server, to receive from the authentication server call authentication data to authenticate the established call, wherein the media server has a communications interface for communicating over the internet, and wherein the media server is configured to monitor the established call to detect when the first phone is put on hold and, responsive to the detection, to serve media stored on the media server to the first phone.
  • IP internet protocol
  • the system enables the time spent by a caller being placed on hold to be used to deliver personalised entertainment and information to a caller, and generate revenue and message replay data for advertisers.
  • Users of the IP-based phone system use IP telephone handsets with one or more phone identifiers embedded into the hardware or software of the handset.
  • the phone identifiers may include a username and password registered with the data enhancement system, which the user of the handset may also use to log-in to the IP-based phone system, an IP address and a direct dial-in (DDI) number assigned to each phone within a Private Branch Exchange (PBX) system.
  • Handsets communicate with an authentication server to enable authentication onto the system. Once authenticated, the media server receives authentication data to permit delivery of media and then monitors an established call to detect when a phone is put on hold. When this is detected, the media server can then deliver media, such as targeted advertising to the caller put on hold.
  • IP-phone calls are set-up by a call handling server, which comprises a Session Initiation Protocol (SIP) server and/or a Voice over Internet Protocol (VoIP) Softswitch.
  • SIP Session Initiation Protocol
  • VoIP Voice over Internet Protocol
  • the SIP server can be used to connect different telephone systems via the internet, for example, a company's Private Branch Exchange (PBX) and a telephone network.
  • PBX Private Branch Exchange
  • the VoIP Softswitch typically connects IP-phones to IP-phones, but can also handle traditional wired communication devices. Where a communication device is not an IP- phone, the VoIP Softswitch may also convert the call to IP traffic and send it over the internet to the recipient.
  • the call handling server allows the IP-phone call to connect to the IP-based phone system's authentication server.
  • All calls made using the IP-based phone system may be routed to the authentication server either directly or via a call handling server, before a connection between the caller and callee is established.
  • the IP-phone communications interface enables the phone to communicate over the internet with the authentication server (or via the call handling server), and the authentication server uses the phone identifier to authenticate the identity of the phone/user.
  • the IP-phone communicates with the authentication server in order for authenticity to be monitored. Once authenticity has been determined, the first phone is connected to the second phone via the call handling server (wherein the second phone may be among others, an IP-based phone, a mobile phone or a phone connected to a Public Switched Telephone Network (PSTN)).
  • PSTN Public Switched Telephone Network
  • the media server may be configured to retrieve data relating to a caller placed on hold by a customer of the media extension system and to select the served media from the media database in response to the caller data.
  • targeted media delivery may be provided, based on caller data stored within the system. This could be based on a history of companies called, such as particular services (insurance, construction, legal, takeaway food), or individual company chains for example. It will be appreciated however then such media delivery could be targeted in many different ways.
  • the system may further comprise an analytics and call history database coupled to the media server and configured to store call history data and/or caller characteristics for each user of the system which provides for detailed analysis of a user call trends.
  • the authentication server may be coupled to a call handling server, wherein the authentication server is configured to use the call handling server to detect user action on the first phone whilst the first phone is on hold and to initiate a further call or to serve further stored media in response after the established call has ended. If a user of the media extension system puts a call on hold, the on-hold event is sent via the call handling server and detected by the media server, which has a communications interface that enables communication over the internet and enables monitoring of user action on the phone during an established phone call. Such user action may be to place a call on hold.
  • the media server In response to the detection of the on-hold event, the media server delivers media and/or advertising messages stored within the media server to entertain the caller on the first phone until the hold operation has been cancelled by the callee using the second phone.
  • the media server stops delivering the media and/or advertising messages, and the call handling server re- establishes the connection between the two phones.
  • the call handling server can also monitor action by the caller placed on hold during the playing of media and/or advertising messages. Messages may be interactive and allow the caller on hold to request to hear further information or to be placed in another call related to the message once the established call has ended.
  • the caller on hold may hear music from a particular music artist, and the interactive portion of the message may ask the caller on hold to press star on their phone if they want to find out how to book tickets for the music artist's upcoming show.
  • the caller action in this case the pressing of the star key on the phone, is detected by the call handling server and communicated to the analytics and call history database.
  • the database stores this information as a caller characteristic to be used in the future to deliver targeted media messages to the caller.
  • the authentication server and/or call handling server is/are configured to receive data regarding the caller action during the on hold period and to activate a further call in response to the caller action after the reestablished call has ended.
  • the authentication server may be configured to poll each IP-phone in the system at regular intervals while the phone is not established in a call in order to confirm that the phone is still connected to the internet. For example, the authentication server may check via the call handling server the connection of each IP-phone to the internet every 3600 seconds. If connected, the authentication server may also verify the authenticity of the IP-phone.
  • the IP-based phone system may further comprise billing servers coupled to the media server.
  • the billing servers may comprise a voice billing server and a media billing server, each configured to track user action and to, in response, allocate a revenue value related to the user action to each of an operator of the phone system and to a user of a set of the phones including the first phone.
  • the authentication server uses the user identification data (such as username, password, IP address and direct dial-in number (DDI)) to determine whether the user is a media-only customer who is using the media extension system to generate revenue, or a media and voice customer who is using the system to generate revenue and as the phone service provider. Once the authentication server has determined this, it communicates with either the media billing server only or the media and voice billing servers.
  • user identification data such as username, password, IP address and direct dial-in number (DDI)
  • the voice billing server stores data on what sort of account the user has, for example, a pay-as-you-go account or a regular payment account. In the case of a pay-as-you-go account, the voice billing server stores data on how much credit the user has remaining and how much talk time this corresponds to.
  • the voice billing server is configured to receive data from the authentication server on the number dialled by the user and determine from this and the account type how long the phone call can last. This data is communicated back to the authentication server to allow the authentication server to monitor the call length and cut-off the service if the credit has been fully expended. Furthermore, the voice billing server also receives data from the authentication server once the call has ended regarding the length of the call, so that the voice billing server may update the user credit data.
  • the authentication server communicates to the media billing server data regarding the media played to the caller placed on hold by the media server.
  • the media billing server tracks and stores media messages played during calls made by the user to allow the system owner to calculate the revenue generated and owed to the user through the playing of the media messages.
  • the voice and media billing servers may be coupled to a web server in order to link the accounts held by the two servers into one unified bill accessible by the user and system owner.
  • the media server may be configured to keep a record of which media and/or advertising messages have been played, how many times they have been played, whether callers responded to interactive options associated with the media and/or advertising messages and how long each message was played for before the call was re-established for example.
  • the data is communicated to the billing server in order to allocate a revenue value to each operator of an IP-based phone system and to a user of a set of IP-phones including the first phone. This enables the system owner to determine how much revenue can be obtained from each provider of the media and/or advertising messages.
  • the system may further comprise a user interface coupled to the authentication server via a web administration server to allow a user to access their account and obtain data on for example, called numbers and duration of calls, revenue owed to the system owner for placing voice calls and revenue owed to the user from the playing of media messages.
  • the user interface may comprise a website that the user may access using the username and password ascribed to their IP phone, IP phone system or IP PBX to log-in to the website and obtain the data described above.
  • the user interface may also allow the user to input any data into the system that would allow the user to receive targeted media when the user is put on hold by another customer of the media extension system.
  • Such input data may include music genre preferences, geographical locations of interest, gender, allowed call destinations and blocked call destinations.
  • the authentication server may also be configured to store data relating to call preferences retrieved from the user interface or otherwise, to monitor calls being placed by the user. For example, if a company using the media extension service decides that employees may not place calls to country X, then the company may provide this data to be stored within the authentication server (via the user interface or upon registration for the service or otherwise), such that any calls placed to country X will be not be connected by the system.
  • the authentication server may prompt a message to be played to the caller to inform them that the called number is not allowed by the company.
  • the system may further comprise an analytics and call history database coupled to the media server to determine the user data from one or more of the previously established calls and/or the user action. If the callee using the second phone puts the caller using the first phone on hold, the on-hold event is detected by the media server, which has a communications interface that enables communication over the internet and to enable monitoring of callee action on the second phone during an established phone call. In response to the detection of the on-hold event, the media server may use the phone identifiers embedded within the IP-phone used by the caller to determine the identity of the caller/IP-phone, and communicate with the analytics and call history database to retrieve a set of call history data related to the user of the first phone.
  • the analytics and call history database may provide information on previous calls made by the user of the first phone.
  • the analytics and call history database may store data on the last six calls placed using a particular IP-phone, which may be used to determine caller trends or characteristics.
  • the analytics and call history database may store data obtained by the call handling server during previous calls relating to user action during an on-hold period. For example, if the caller requested to hear more about a particular media clip or advertising message during a previous call, the analytics and call history database may store this information to allow similar or related media and advertising messages to be delivered in future instances.
  • the data retrieved by the media server is used to select and deliver media and/or advertising messages stored within the media server responsive to the call history.
  • the authentication server coupled to a call handling server may be configured to receive a signal corresponding to a call request originating from a caller's IP phone.
  • a signal corresponding to a call request comprises phone identifier data, such as the username, password, IP address and direct dial-in (DDI) number as described above, geographical data related to the location of the caller's phone, called number and geographical data related to the location of the called number.
  • This data enables the authentication server to authenticate the caller identity of the call placed to a user of the media extension system.
  • the authentication data may further use the geographical location related to the caller and called numbers in order to provide targeted media. For example, a caller from location A may call a callee using the media extension system, who is located in location B.
  • the authentication server may communicate the location information of both the caller and callee to the media server in order for the media server to deliver targeted media to the caller on hold.
  • the media server may play media and/or advertising messages corresponding to location A as the caller is calling from the area and may be interested in local advertisement, or may play messages corresponding to location B as the caller may have some interest in this area also.
  • the IP-based phone system may comprise a business directory coupled to a media server to sort media and/or advertising messages into sets to target groups of users with similar caller characteristics.
  • the media server and/or its connected database may extract information from an external database that companies are already signed up to, enabling sharing of information and an alternative distribution channel for providers of such a business directly.
  • the business directory may store media and advertising message profiles, such that each media clip or message has an associated ad profile which identifies which group of people or what call history should trigger the advertising to be played. This allows the media server to link together target groups of users with similar characteristics and the messages with the ad profiles suited to the group.
  • the phones may comprise IP phones
  • the call handling server comprises may be one or a combination of a Session Initiation Protocol (SIP) server, a Voice over Internet Protocol (VoIP) Softswitch and an Internet Protocol Private Branch Exchange (IP PBX).
  • SIP Session Initiation Protocol
  • VoIP Voice over Internet Protocol
  • IP PBX Internet Protocol Private Branch Exchange
  • the customer's existing IP phone system which may comprise an IP PBX, may be configured to allow the existing system to interface with the IP-based phone system. Calls made by the customer and calls received by the customer are handled by the existing IP phone service provider, but when the customer places a phone on hold, the re-configured system enables access to the media server via the authentication server.
  • the authentication server verifies the customer is registered for a media-only service, and sends a signal to the media server to deliver media to the caller placed on hold. Once the on-hold event is cancelled, the authentication server receives the off-hold signal and communicates to the media server to stop delivering the media, and the call is reconnected by the customer's existing IP phone service provider.
  • the media server may comprise a user interface for uploading the media data for storage in the media server such that the system provider can control, monitor, maintain and update the media server and its stored content. Advertisers and/or users may also have their own access to their own accounts on the system, allowing access to their personal information. Furthermore, this may also enable users to tailor their interests in order to improve any targeted media delivery.
  • the media server may be configured to detect switching between on-hold and off-hold conditions for the established call and to pause and restart the served media responsive to the detected switching so that media is inserted into the phone call at the appropriate time and stopped at the appropriate time. Furthermore, the media server may be configured to receive signals corresponding to the on-hold and off-hold conditions for a plurality of phones so that media can be inserted into multiple phones, which may be connected to a local PBX exchange for example.
  • a data analytics engine may be coupled to the media server.
  • the data analytics engine is configured to receive PBX operator data relating to a plurality of operators of a respective plurality of PBX exchanges, and preferably also to receive for a plurality of historical established calls, PBX called data identifying the PBX exchanges for one or both of the first and second phones of the established calls.
  • the data analytics engine is configured, for the established call, to combine the PBX operator data and the PBX called data to determine media clip identifier data identifying one or more media clips for serving to the second phone of the established call.
  • the PBX operator data may be data that allows the authentication and media servers to determine the identity of the PBX operators at one or both ends of the call, such as the password, username, IP address and direct dial-in (DDI) numbers linked to each PBX exchange.
  • the PBX operator data may also include data characterising a PBX operator, more particularly, defining particular properties of the goods/services which a host of the PBX operator provides. This in turn may be used to identify goods/services which may be of interest to the caller placed on hold. This allows the system to determine relevant and targeted media and/or advertising messages to deliver to the second phone of the established call.
  • both the users of the first and second phone of the established call are users of the voice and media service of the media extension system
  • the operator data enables the system to retrieve from the data analytics engine any trends in the calls made by either user or in the media played to either user.
  • This enables the media server to deliver targeted media responsive to usage trends stored within the system to each user if either user is placed on hold.
  • this may also be employed to predict further goods/services in which the user may be interested, and more specifically, to identify one or a set of media clips or presentation to a caller placed on hold.
  • the system may further comprise a call handling server for connecting the established call, wherein a the PBX exchange includes the call handling server, and wherein the media server is configured for the established call, to identify the PBX, of the second phone to determine the PBX called data exchange.
  • the system may further comprise a call handling server for connecting the call; in preferred embodiments this is a SIP (Session Initiation Protocol) server.
  • the call handling server is configured to connect in a data path between the first and second phone to establish the call.
  • the call handling/SIP server is coupled to the media server and configured to remain in the data path between the first and second phone during the call to monitor the established call - to detect when the first phone is put on hold and then to signal the media server. This enables the media server to, effectively, monitor the established call to determine when this goes on/off hold, and to serve selected, stored media in response.
  • the call handling server remains in the data path of the call between the phones to monitor the established call and provide detection of a hold signal. This detection may then be communicated to a media server (itself monitoring for this detection signal) to serve media at the appropriate point in time.
  • the call handling or SIP server is thus configured to implement a Back-to-Back User Agent Protocol (B2BUA).
  • B2BUA Back
  • the invention comprises at least one PBX exchange, wherein a call handling server is configured to form part of the PBX exchange, and wherein the phone system further comprises at least one further call handling server for handling calls of one or both of an individual subscriber to the phone system and a hosted PBX exchange of the phone system.
  • a media server as discussed above for an internet protocol (IP) phone system, the media server further comprising: interfaces for communication with a call handling server and an authentication server, and processor control code configured to: interact with the authentication server to retrieve data relating to an established telephone connection; interact with the call handling server to determine when the established telephone connection is put on hold; serve media to a telephone of the telephone connection put on hold in response to the determination.
  • IP internet protocol
  • a method of providing media to a user of an IP phone system as discussed in the above aspects when user is on hold comprising: authenticating, using the system, a VoIP call between the first and second phones; detecting, using the system, when the second phone puts the first phone on hold; and providing audio or video over VoIP to the first phone in response to the detection.
  • the audio audio/video may be selected responsive to data defining one or more characteristics of a user of the first phone such as the type of business being called, call history and the like. It may also be selected from data including geographical location of the user obtained from the dialling code or area code or otherwise of the first phone, or may be stored in the system by the caller themselves upon registering for/subscribing to the service.
  • the media provided by the system may comprise a plurality of media and/or advertising messages. Such media and/or advertising messages may also be selected.
  • an interface to a call handling server in a phone system configured for connecting a call between a first phone to a second the phone to establish a call between the first and second phones; wherein the interface is coupled to the call handling server and configured to receive signals from one or more of the phones coupled to the call handling server to detect when the first phone is put on hold and route the detection to a media server configured to serve media stored on the media server to the first phone.
  • the interface enables an existing phone system to be modified/enhanced to enable connection to a media server to deliver media (e.g. advertising).
  • the interface connects to the call handling server, which may be installed in a company office for example, to detect when a call from with an outside user is put on hold.
  • the interface is configured to detect a hold signal from an employee's phone within the company office to allow this to be further routed to the media server.
  • the second phone may have a phone identifier associated therewith and the interface may further comprise an authentication server configured to use the phone identifier to authenticate a call between the first phone and the second phone to determine if routing to the media server is permitted, and wherein the routing the detection to the media server is responsive to authenticating the call.
  • the interface may need to authorise routing of the hold signal through to the media server. This allows the media server provider to verify that the company with the installed interface is registered and permitted to use the media server. In other embodiments the authentication may be done at the media server.
  • the interface may be configured to detect switching between on-hold and off-hold conditions for the established call and to route the detection to the media server such that when the hold status of a call is changed, the media server is able to detect such a change and start or halt the delivery of media (such as an advert) accordingly.
  • the interface may be connected to any call handling servers, including, but not limited to one or a combination of a Session Initiation Protocol (SIP) server, a Voice over Internet Protocol (VoIP) Softswitch and an Internet Protocol Private Branch Exchange (IP PBX).
  • SIP Session Initiation Protocol
  • VoIP Voice over Internet Protocol
  • IP PBX Internet Protocol Private Branch Exchange
  • the phone system is an IP based phone system.
  • the invention further provides processor control code to implement the above- described method, for example on a general purpose computer system or on a digital signal processor (DSP).
  • the code is provided on a physical carrier such as a disk, CD- or DVD-ROM, programmed memory such as read-only memory (Firmware), or on a data carrier such as an optical or electrical signal carrier.
  • Code (and/or data) to implement embodiments of the invention may comprise source, object or executable code in a conventional programming language (interpreted or compiled) such as C, or assembly code. As the skilled person will appreciate such code and/or data may be distributed between a plurality of coupled components in communication with one another.
  • Figure 1 shows a prior art system to provide media/advertising to a caller placed on hold.
  • Figure 2 shows a VoIP softswitch-based implementation according to an embodiment of the invention.
  • Figure 3 shows an IP PBX-based implementation according to an embodiment of the invention.
  • Figure 4 shows a called endpoint-based implementation according to an embodiment of the invention.
  • Figure 5 shows a location-based targeted service according to an embodiment of the invention.
  • Figure 6 shows a behaviour-based targeted service according to an embodiment of the invention.
  • Figure 7 shows a message sequence chart for providing advertising and/or media to a caller placed on hold in according to an embodiment of the invention.
  • Figure 8a shows an embodiment of the invention for providing targeted media and/or advertising to a callee when a caller using an IP-phone with phone identifier places the callee on hold, and providing billing data to advertisers included in the system.
  • Figure 8b shows an embodiment of the invention for providing targeted media and/or advertising to a callee when a caller's existing telephone system is interfaced with the IP-based phone system.
  • Figure 9 shows an example use of the behaviour-based targeted service.
  • Figure 10 shows possible methods to connect to and be served media and/or advertising messages in an embodiment of the invention.
  • Figure 1 1 shows an embodiment of the invention for providing a voice and media service.
  • Figure 12 shows an overview of an IP phone media extension system according to an embodiment of the invention.
  • Figure 13 shows a system architecture illustrating options for connecting to the media server in embodiments of the invention.
  • Figure 1 shows a prior art system to provide media/advertising to a caller placed on hold.
  • a caller 101 places a call to a company 103.
  • the caller's call request 104 is routed to the called company by a call handling server, which may comprise for example, a VoIP Softswitch 102.
  • a call handling server which may comprise for example, a VoIP Softswitch 102.
  • the on-hold event causes media and/or advertising messages to be played to the caller 106 until the on-hold event is cancelled.
  • Figures 2-4 show example embodiments of the present invention.
  • FIG. 2 shows an embodiment of the system including an "AdClip” media server 202.
  • An Internet Protocol (IP)-based phone system comprises an "AdClip” media server 202 coupled to a call handling server, the call handling server further comprising for example, a Voice over Internet Protocol (VoIP) Softswitch 102 which allows telephone calls from one communication device to be connected to another.
  • IP Internet Protocol
  • VoIP Voice over Internet Protocol
  • a caller 101 places a call request 104 to a company 103 that uses the IP-based phone system.
  • the caller may also be a user of the IP-based phone system, or may place the call using another phone service provider.
  • the call handling server connects the caller 101 and the called company 103, and the caller and called company are connected continually throughout the duration of the call by the call handling server, which enables the call handling server to monitor the call and any user actions during the call.
  • the caller's communication device may be a wired telephone, mobile telephone, IP-phone or any other communication device.
  • the VoIP Softswitch typically connects IP-phones to IP- phones, but can also handle traditional wired communication devices. Where the caller's communication device is not an IP-phone, the VoIP Softswitch may also convert the call to IP traffic and send it via the internet to the called company.
  • the called company may place the caller on-hold or in a call queue, by pressing the hold button on their phone handset for example. Pressing the hold button triggers an on-hold event 105 in the call handling server, which has been continually monitoring the call.
  • the on-hold event is communicated to the "AdClip" media server 202.
  • the media server identifies which phone is on hold from the data 201 a it receives, and delivers media clips or advertising messages stored within the server directly to the caller 101 . If this is the caller's first call to a user of the IP-based phone system, the "AdClip" media server delivers non-targeted media to the caller placed on hold.
  • the "AdClip” media server delivers targeted media to the caller placed on hold.
  • the "AdClip” media server is configured to store details of all calls made to the system and all calls placed by users of the system. If the caller 101 is not a user of the IP-based phone system, the "AdClip” media server captures and stores data relating to the caller, including the caller number, the called number and the profile of the called number. For example, the profile of the called number may be data related to what type of industry the called number corresponds to, such as a restaurant or a legal services company.
  • FIG. 3 shows a variant of the system, including an "AdClip” media server 202 and a call handling server further comprising a VoIP Softswitch 102 and an Internet Protocol Private Branch Exchange (IP PBX) 301 in an example of the invention.
  • a caller 101 places a call request 104 to a company 103 that uses the IP-based phone system.
  • the called company uses an IP PBX 301 , which is a business telephone system used to deliver voice or video data over a network.
  • the IP PBX 301 may be part of the IP-based phone system, or may be a legacy system that is configured to allow interfacing with the IP-based phone system, and in particular, with the "AdClip" media server.
  • the call is connected to a specific phone within the company via the call handling server as described above.
  • the on-hold event 105 is communicated via the (new or reconfigured) IP PBX to the "AdClip" media server 202.
  • the media server identifies which phone is on hold and delivers media clips or advertising messages 203 stored within the media server directly to the caller 101 .
  • an off-hold event is communicated to the "AdClip" media server via the IP PBX.
  • the media server identifies which phone the off-hold event corresponds to, stops delivering the media and allows the caller to reconnect to the called company.
  • Figure 4 shows a called endpoint-based system according to an embodiment of the invention.
  • a call handling server is within the company premises 103.
  • An Internet Protocol (IP)-based phone system comprises an "AdClip" media server 202 and a call handling server, further comprising a VoIP Softswitch 102.
  • IP Internet Protocol
  • a caller 101 places a call request 104 to a company 103.
  • the call is connected to the company via the VoIP Softswitch 102.
  • the on-hold event is communicated from an interface to the called company's call handling server to the "AdClip" media server 202.
  • This interface routes the detection of on hold signals through to the media server, which in turns identifies that a phone is on hold, and delivers media clips or advertising messages 203 stored within the server to the caller 101 .
  • an off-hold event is communicated to the "AdClip" media server.
  • the media server identifies which phone the off-hold event corresponds to, stops delivering the media and allows the caller to reconnect to the called company via the VoIP Softswitch.
  • Figure 5 shows the "AdClip" media server for location-based targeted media delivery.
  • the media server identifies the geographical location of the caller, using either the caller number, the geographic region from which the call originated, the area code or any other location identifiers.
  • the caller may or may not be a user of the IP-based phone system, but caller data as described above may be captured by the system in order to deliver targeted media.
  • the media server identifies that one caller is calling from London 501 and another is calling from Manchester 502.
  • the media server delivers location-specific advertising messages and/or media clips 503, 504 to the callers from a database of messages and clips stored and sorted within the server according to geographical regions.
  • Figure 6 shows the "AdClip" media server for behaviour-based targeted media delivery.
  • the media server identifies the identity of the caller using the username, password and IP address if the caller is a user of the IP-based phone system, or by the phone number used by the caller if they have called a user of the IP-based phone system prior to making this call.
  • the media server communicates with the analytics and call history database 601 to retrieve caller history/profile data to deliver targeted media.
  • the media server identifies two callers 602, 101 , and uses the caller identification to retrieve caller-specific data fro the analytics and call history database.
  • the database provides information on previous calls the callers made 603, 605. In response, the media server uses this data to locate and deliver relevant media stored in the media server to the callers 604, 606.
  • FIG. 7 shows the operation of the IP-based phone system as described above, including advertisers, a system owner and a business directory.
  • the figure depicts a message sequence chart for providing advertising and/or media to a caller placed on hold or in a hold queue.
  • the caller 701 initiates a call to the callee 702.
  • the caller may or may not be a user of the IP-based phone system, but caller data may be captured by the system in order to deliver targeted media in either case, as described earlier.
  • the caller is connected to the callee by a call handling server 721 , which may comprise one or both of a VoIP Softswitch and a Session Initiation Protocol (SIP) server.
  • SIP Session Initiation Protocol
  • Voice communication between the caller and callee 712 may be interrupted if the callee places the caller on-hold.
  • An on-hold event is triggered 713 and relayed to the media server 202.
  • the media server identifies which call has been placed on hold by determining the caller's identification code.
  • the media server communicates with the analytics and call history database 601 to determine any caller profile data 714 for the specific identification code. Retrieved data is used by the media server to locate and deliver targeted media and/or advertising 715 to the caller via the call handling server. Media clips are delivered until the callee 702 cancels the on-hold command.
  • An off- hold event is triggered 716 and relayed to the media server 202.
  • the media server identifies which call is now off-hold, and communicates to the call handling server for the caller and callee to be reconnected 712.
  • Advertisers 706 are able to provide media clips and/or advertising messages 708 to be stored within the media server.
  • each advertising message/media clip has an associated ad profile 709 which identifies which group of people or what call history should trigger the advertising to be played. This data is stored within the business directory 707 which is in communication with the media server 202.
  • the storage and profiling of advertising messages is part of the ad setup process 710 of the targeted media delivery service.
  • Statistics on advertising message/media clip replay times or other data relating to the advertising messages/media clips stored within the media server 718 are collated by the media server and stored within the billing server, and can be provided to the advertiser. This allows the advertiser to determine how much revenue has been generated for each advertisement, and any payments which should be paid to the system owner 705.
  • Figure 8a shows a call history-based targeted media delivery and billing system including an "AdClip" media server, an analytics and call history database and multiple billing servers.
  • a callee 801 is using the IP-based phone system to make and receive calls using IP phone handsets which contain within them, a unique username, password and IP address to be used by the IP-based phone system to verify their identity in the system.
  • a caller 806 places a call to the callee 801 .
  • the call request is received by the call handling server 721 .
  • the call handling server communicates the data on the origin of the phone call to the voice and "AdClip" authentication servers 802.
  • the servers determine whether the caller 806 is an "AdClip" customer (see Figure 8b), a voice and "AdClip” customer (described here), or not a customer of the system.
  • Voice and "AdClip" customers use the IP-based phone system to make and receive calls as well as to generate revenue whenever a caller 806 is placed on hold and media and/or advertising is delivered to the caller.
  • the caller 806 may not be a user of the IP-based phone system, and so the call handling server 721 may also convert the call from the caller to IP traffic and send it to the caller 801 , and vice versa, convert the call from the callee from IP traffic and send it via the appropriate network gateway 805 to the caller 806.
  • the call handling server may comprise a Session Initiation Protocol (SIP) server and a back-to- back user agent (B2BUA) to connect the caller and callee and handle the call.
  • SIP Session Initiation Protocol
  • B2BUA back-to- back user agent
  • the call handling server maintains the connection throughout the duration of the call, allowing the call and caller actions during the phone call to be monitored.
  • the on-hold signal is communicated to the call handling server 721 , which further communicates with the "AdClip" media server 202 in order to start delivering media to the callee 801 placed on hold.
  • the media server identifies the identity of the callee, and communicates with the analytics and call history database 601 to retrieve caller history/analytics data to deliver targeted media to the caller.
  • the database holds information on previous calls the caller made to customers of the IP- based phone system.
  • the media server uses this data to locate and deliver relevant media stored in the media server to the caller directly via the VoIP softswitch/call handling server 102.
  • the media server may be configured to keep a record of which media and/or advertising messages have been played, how many times they have been played, whether callers responded to interactive options associated with the media and/or advertising messages and how long each message was played for before the call was re-established.
  • the data is communicated to and stored within the AdClip billing server 8042 in order to allocate a revenue value to each operator of an IP-based phone system and to a user of a set of IP-phones including the callee 801 . This enables the system owner to determine how much revenue can be obtained from each provider of the media and/or advertising messages as described above.
  • the callee in this example is a voice and AdClip customer.
  • the voice and AdClip authentication servers 802 communicates with the voice billing server 8041 to determine whether the customer is a pay-as-you-go customer or not, and in the former case, how much credit is linked to their account. This allows the authentication server to cut-off a call if the user of the IP phone has exceeded the cost allowed.
  • the authentication server also communicates with the "AdClip" billing server 8042 to collate and store data on media and/or advertising messages played to the caller on hold, in order to determine the revenue the user has generated.
  • a web server 8043 links the voice billing server 8041 and the "AdClip" billing server 8042 together, so that the user can retrieve from the system unified account data, comprising payments owed to the system owner and revenue received via the "AdClip” media server.
  • a user interface 807 coupled to the authentication server via a web administration server 808 allows a user to access their account and obtain data on for example, called numbers and duration of calls, revenue owed to the system owner for placing voice calls and revenue owed to the user from the playing of media messages.
  • the user interface may comprise a website that the user may access using the username and password ascribed to their IP phone, IP phone system or IP PBX to log-in to the website and obtain the data described above.
  • the user interface may also allow the user to input any data into the system that would allow the user to receive targeted media when the user is put on hold by another customer of the media extension system.
  • Such input data may include music genre preferences, geographical locations of interest, gender, allowed call destinations and blocked call destinations.
  • Figure 8b shows a call history-based targeted media delivery and billing system including an "AdClip" media server, an analytics and call history database and multiple billing servers.
  • a customer is using an existing IP phone system comprising a legacy IP PBX 8101 and IP phones 8100 to make and receive calls.
  • the customer (single user, company or otherwise) is an "AdClip"-only customer.
  • the IP phones 8100 may not be fitted with phone identifiers as described above, but instead the legacy IP PBX 8101 may be modified to allow the legacy system to interface with the "AdClip" media server 202. Call requests from the caller are handled by the callee's own telephone service provider.
  • the modified IP PBX 8101 receives the on-hold signal and is configured to communicate with the AdClip authentication server 8102.
  • the AdClip authentication server verifies that the callee is an AdClip-only customer by communicating with the "AdClip" billing server 8042, and prompts the "AdClip” media server 202 to play media and/or advertising messages to the caller placed on hold.
  • the media is delivered to the caller 806 via the call handling server 721 , and an appropriate network gateway 805 if the caller is not using an IP phone.
  • the off-hold event is handled in the same way, and the IP PBX reconnects the caller and callee via the callee's own telephone service provider.
  • data on the media delivered to the caller is collected and stored within the AdClip billing server 8042 in order to keep a record of the revenue generated by the customer.
  • Figure 9 shows an example use of the behaviour-based targeted service.
  • a caller 101 first makes a call to a phone within Legal Company A (company A) 903.
  • Company A has a call handling server installed on their premises or hosted remotely (such as shown in Figure 2) and also has a connection through to the Media Server 202 via connection 904 which may be via company A's own local PBX system.
  • identification details from caller phone 101 are communicated to the Media Server 202 and its associated database 908 to log such data.
  • Data stored may include one or more of a caller-ID (CLID), or username/login/ID details and the like. The latter may be provided, for example, if the phone 101 is provisioned from the company providing the enhanced IP based phone system described herein.
  • CLID caller-ID
  • the latter may be provided, for example, if the phone 101 is provisioned from the company providing the enhanced IP based phone system described herein.
  • Phone 101 details in combination with details of the company being called (for example the type of service the company provides) are logged by the Media Server and its database. It will be appreciated however that many other forms of information can be stored, such as the particular user dialled, a particular team with company A (for example, the type of legal service) as is appropriate to the particular company/service.
  • caller phone 101 is then used to call another company: Legal Company B (company B).
  • Company B as with company A also has an account with the provider of the enhanced IP based phone system described herein, with a connection through to the Media Server 202 and its database 908. Again details of the caller phone and company B are transmitted to the Media Server 202 and its database 908.
  • the Media Server recognises that this caller has previously called another legal company and determines that caller 101 has a history of being interested in legal services. Whilst waiting in a queue to speak to someone at company B, or being put on hold by company B, the Media Server is then able to deliver targeted adverts 909 to caller phone 101 related to legal services and/or related areas.
  • such targeted adverts may also be location based if so desired.
  • the local PBX in company A may need to be modified to allow communication with the Media Server. This may be via an adapter/interface for example, or may be via modification to the software running on the local PBX system, or a combination of both.
  • Company A's phone system has a PBX hosted by the provider of the media server and similarly has phones configured and provided by the provider of the media server then Company A's phones themselves may communicate directly with the media server.
  • Figure 10 summarises different ways a call to a user of the IP-based phone system may be handled.
  • the user is a voice and "AdClip" customer
  • the calls placed by the user and received by the user are handled by the system's voice platform 1001 .
  • the customer may have a single phone 1002 or a plurality of phones connected together by an IP PBX system 1003. Call requests in to and out of the system are handled by the voice platform.
  • the single phone 1002 or the IP PBX 1003 communicates with the media server 202 to deliver media to the caller.
  • the user may be an "AdClip"-only customer.
  • the customer uses their existing legacy system to make and receive calls, which is reconfigured/modified (for example by way of an interface to the media server) to access the media server when requested.
  • the call is handled by the customer's own telephone service provider 1005.
  • the on-hold signal prompts the modified IP PBX to access the media server 202, and media is delivered to the caller 101 .
  • Figure 1 1 shows a time line of events within the call handling server of the IP-based phone system.
  • the call handling server first receives a call request from a caller, containing within it data defining the callee, which is used by the call handling server to bring in the callee.
  • the server connects the caller and callee, and continues to hold the connection throughout the duration of the call. This continual connection allows the server to monitor the status of the call and to detect user action during the call, such as on-hold events and interaction during the playing of media.
  • the call handling server communicates these events to the relevant system servers to initiate the appropriate action. For example, on-hold events are communicated to the media server to prompt the delivery of media to the caller on hold, and user action during the playing of interactive media is sent to media and analytics servers.
  • FIG 12 shows an overview of a typical system.
  • Phones including IP phones, traditional wired phones and mobile phones, can interface with the system via either a PSTN or internet gateway.
  • the system as described above, is capable of converting calls to and from IP traffic via the call handling server, which may comprise a Session Initiation Protocol (SIP) server.
  • SIP Session Initiation Protocol
  • a telecommunications switch connects two or more telephone lines together.
  • the system may also comprise an Authentication, Authorisation and Accounting (AAA) server(s) to: authenticate a customer's identity in the system by verifying the username, password and IP address and optionally port associated with the customer's IP phone or IP PBX; use the authentication data to determine whether the customer is authorised to access particular services provided by the system, such as the "AdClips" and the "AdClips" plus Voice services; and to keep track of the customer's usage of the system services to capture usage trends and to keep data on revenue generated by the customer and revenue owed to the system owner for using the services.
  • AAA Authentication, Authorisation and Accounting
  • FIG 13 shows an overview of a typical system.
  • Users may connect to the system using an IP PBX 1301 configured to interface with the system.
  • the IP PBX may optionally connect to the system via an additional interfacing box 1303, which may contain within it the instructions to connect to the media server 202 when a user presses hold on their phone, and authentication data as described above and in Figure 12.
  • the user may also connect to the system from a virtual phone network 1307, or the user may be an individual or have a hosted IP PBX 1305 which connect to the system via call handling and authentication servers 1306.
  • the media server 202 receives input from each user when a call is placed containing identification data, such as the username, password, IP address and direct dial-in (DDI) number associated with the user's IP phone or IP PBX or virtual phone network.
  • identification data such as the username, password, IP address and direct dial-in (DDI) number associated with the user's IP phone or IP PBX or virtual phone network.
  • the media server communicates this data to the analytics and call history database 601 in order to retrieve user call and/or media trends/data which allow the media server to deliver targeted media to the caller on hold.

Abstract

A media extension system for use with an internet protocol (IP) phone system comprising a plurality of phones, each having a phone identifier and a communications interface for communicating over the internet. The system comprises an authentication server having at least a communications interface for communicating over the internet. The authentication server is configured to use the phone identifiers to authenticate calls between phones. A media server coupled to said authentication server receives call authentication data from the media server to authenticate an established call. The media server is configured to monitor the established call to detect when a call is put on hold and, responsive to the detection, to serve media stored on the media server to the phone put on hold.

Description

Internet Protocol (IP)-Based Phone Systems
FIELD OF THE INVENTION This invention relates to Internet Protocol (IP)-based phone systems for the delivery of media and/or advertising to users of the phone systems, in embodiments after a connection between the users has been established and upon a callee pressing the hold button on their phone. BACKGROUND TO THE INVENTION
Techniques are known for playing advertisements to users during the set up procedure of the call, and for delivering account status and service information messages to callers in a call centre queue. However, technical limitations of current systems make them inflexible and tend to annoy users for providing information they do not want to hear or for playing advertisements that are not relevant to them.
Background prior art can be found in GB2360418, US6,819,759, US 2002/0010626, WO 2007/053448, WO 2008/143948 and US 2007/0004384.
SUMMARY OF THE INVENTION
According to an aspect of the invention there is provided a media extension system for use with an internet protocol (IP) phone system for use with a plurality of phones, each having a phone identifier and a communications interface for communicating over the internet the media extension enhancement system comprising: an authentication server having at least a communications interface for communicating over the internet, and configured to use the phone identifier to authenticate a call originated by the first phone for connecting the call to a second phone to establish a call between the first and second phones; and a media server coupled to the authentication server, to receive from the authentication server call authentication data to authenticate the established call, wherein the media server has a communications interface for communicating over the internet, and wherein the media server is configured to monitor the established call to detect when the first phone is put on hold and, responsive to the detection, to serve media stored on the media server to the first phone. Broadly speaking the system enables the time spent by a caller being placed on hold to be used to deliver personalised entertainment and information to a caller, and generate revenue and message replay data for advertisers. Users of the IP-based phone system use IP telephone handsets with one or more phone identifiers embedded into the hardware or software of the handset. The phone identifiers may include a username and password registered with the data enhancement system, which the user of the handset may also use to log-in to the IP-based phone system, an IP address and a direct dial-in (DDI) number assigned to each phone within a Private Branch Exchange (PBX) system. Handsets communicate with an authentication server to enable authentication onto the system. Once authenticated, the media server receives authentication data to permit delivery of media and then monitors an established call to detect when a phone is put on hold. When this is detected, the media server can then deliver media, such as targeted advertising to the caller put on hold.
IP-phone calls are set-up by a call handling server, which comprises a Session Initiation Protocol (SIP) server and/or a Voice over Internet Protocol (VoIP) Softswitch. The SIP server can be used to connect different telephone systems via the internet, for example, a company's Private Branch Exchange (PBX) and a telephone network. The VoIP Softswitch typically connects IP-phones to IP-phones, but can also handle traditional wired communication devices. Where a communication device is not an IP- phone, the VoIP Softswitch may also convert the call to IP traffic and send it over the internet to the recipient. The call handling server allows the IP-phone call to connect to the IP-based phone system's authentication server. All calls made using the IP-based phone system may be routed to the authentication server either directly or via a call handling server, before a connection between the caller and callee is established. The IP-phone communications interface enables the phone to communicate over the internet with the authentication server (or via the call handling server), and the authentication server uses the phone identifier to authenticate the identity of the phone/user. The IP-phone communicates with the authentication server in order for authenticity to be monitored. Once authenticity has been determined, the first phone is connected to the second phone via the call handling server (wherein the second phone may be among others, an IP-based phone, a mobile phone or a phone connected to a Public Switched Telephone Network (PSTN)). Existing methods for providing personalised services to callers do not use an automated authentication step to determine the identity of the caller and use this to retrieve caller data and caller history. These systems typically use caller data such as the caller number, the called number or the geographic region from which the call originated to provide the personalised services. The use of phone identifiers as described herein enables verification of the authenticity of the caller and to determine if they are subscribers to the service. Furthermore, the phone identifier allows caller history to be extracted from the system database in order to provide a more targeted and personalised service to the caller.
The media server may be configured to retrieve data relating to a caller placed on hold by a customer of the media extension system and to select the served media from the media database in response to the caller data. In other words, targeted media delivery may be provided, based on caller data stored within the system. This could be based on a history of companies called, such as particular services (insurance, construction, legal, takeaway food), or individual company chains for example. It will be appreciated however then such media delivery could be targeted in many different ways. Accordingly, the system may further comprise an analytics and call history database coupled to the media server and configured to store call history data and/or caller characteristics for each user of the system which provides for detailed analysis of a user call trends. Analysis need not be focussed on a particular user, it could also be provided for a group of people such as for outgoing calls from a company having the system installed, providing targeted media delivery based on group trends. The authentication server may be coupled to a call handling server, wherein the authentication server is configured to use the call handling server to detect user action on the first phone whilst the first phone is on hold and to initiate a further call or to serve further stored media in response after the established call has ended. If a user of the media extension system puts a call on hold, the on-hold event is sent via the call handling server and detected by the media server, which has a communications interface that enables communication over the internet and enables monitoring of user action on the phone during an established phone call. Such user action may be to place a call on hold. In response to the detection of the on-hold event, the media server delivers media and/or advertising messages stored within the media server to entertain the caller on the first phone until the hold operation has been cancelled by the callee using the second phone. When an off-hold event is detected by the call handling server and communicated to the media server, the media server stops delivering the media and/or advertising messages, and the call handling server re- establishes the connection between the two phones. However, the call handling server can also monitor action by the caller placed on hold during the playing of media and/or advertising messages. Messages may be interactive and allow the caller on hold to request to hear further information or to be placed in another call related to the message once the established call has ended. For example, the caller on hold may hear music from a particular music artist, and the interactive portion of the message may ask the caller on hold to press star on their phone if they want to find out how to book tickets for the music artist's upcoming show. The caller action, in this case the pressing of the star key on the phone, is detected by the call handling server and communicated to the analytics and call history database. The database stores this information as a caller characteristic to be used in the future to deliver targeted media messages to the caller. In embodiments the authentication server and/or call handling server is/are configured to receive data regarding the caller action during the on hold period and to activate a further call in response to the caller action after the reestablished call has ended.
The authentication server may be configured to poll each IP-phone in the system at regular intervals while the phone is not established in a call in order to confirm that the phone is still connected to the internet. For example, the authentication server may check via the call handling server the connection of each IP-phone to the internet every 3600 seconds. If connected, the authentication server may also verify the authenticity of the IP-phone.
The IP-based phone system may further comprise billing servers coupled to the media server. The billing servers may comprise a voice billing server and a media billing server, each configured to track user action and to, in response, allocate a revenue value related to the user action to each of an operator of the phone system and to a user of a set of the phones including the first phone. The authentication server uses the user identification data (such as username, password, IP address and direct dial-in number (DDI)) to determine whether the user is a media-only customer who is using the media extension system to generate revenue, or a media and voice customer who is using the system to generate revenue and as the phone service provider. Once the authentication server has determined this, it communicates with either the media billing server only or the media and voice billing servers. The voice billing server stores data on what sort of account the user has, for example, a pay-as-you-go account or a regular payment account. In the case of a pay-as-you-go account, the voice billing server stores data on how much credit the user has remaining and how much talk time this corresponds to. The voice billing server is configured to receive data from the authentication server on the number dialled by the user and determine from this and the account type how long the phone call can last. This data is communicated back to the authentication server to allow the authentication server to monitor the call length and cut-off the service if the credit has been fully expended. Furthermore, the voice billing server also receives data from the authentication server once the call has ended regarding the length of the call, so that the voice billing server may update the user credit data. When a call is placed on hold by the user, the authentication server communicates to the media billing server data regarding the media played to the caller placed on hold by the media server. The media billing server tracks and stores media messages played during calls made by the user to allow the system owner to calculate the revenue generated and owed to the user through the playing of the media messages. The voice and media billing servers may be coupled to a web server in order to link the accounts held by the two servers into one unified bill accessible by the user and system owner.
Thus, the media server may be configured to keep a record of which media and/or advertising messages have been played, how many times they have been played, whether callers responded to interactive options associated with the media and/or advertising messages and how long each message was played for before the call was re-established for example. The data is communicated to the billing server in order to allocate a revenue value to each operator of an IP-based phone system and to a user of a set of IP-phones including the first phone. This enables the system owner to determine how much revenue can be obtained from each provider of the media and/or advertising messages.
The system may further comprise a user interface coupled to the authentication server via a web administration server to allow a user to access their account and obtain data on for example, called numbers and duration of calls, revenue owed to the system owner for placing voice calls and revenue owed to the user from the playing of media messages. The user interface may comprise a website that the user may access using the username and password ascribed to their IP phone, IP phone system or IP PBX to log-in to the website and obtain the data described above. The user interface may also allow the user to input any data into the system that would allow the user to receive targeted media when the user is put on hold by another customer of the media extension system. Such input data may include music genre preferences, geographical locations of interest, gender, allowed call destinations and blocked call destinations.
The authentication server may also be configured to store data relating to call preferences retrieved from the user interface or otherwise, to monitor calls being placed by the user. For example, if a company using the media extension service decides that employees may not place calls to country X, then the company may provide this data to be stored within the authentication server (via the user interface or upon registration for the service or otherwise), such that any calls placed to country X will be not be connected by the system. The authentication server may prompt a message to be played to the caller to inform them that the called number is not allowed by the company.
The system may further comprise an analytics and call history database coupled to the media server to determine the user data from one or more of the previously established calls and/or the user action. If the callee using the second phone puts the caller using the first phone on hold, the on-hold event is detected by the media server, which has a communications interface that enables communication over the internet and to enable monitoring of callee action on the second phone during an established phone call. In response to the detection of the on-hold event, the media server may use the phone identifiers embedded within the IP-phone used by the caller to determine the identity of the caller/IP-phone, and communicate with the analytics and call history database to retrieve a set of call history data related to the user of the first phone. The analytics and call history database may provide information on previous calls made by the user of the first phone. For example, the analytics and call history database may store data on the last six calls placed using a particular IP-phone, which may be used to determine caller trends or characteristics. Additionally or alternatively, the analytics and call history database may store data obtained by the call handling server during previous calls relating to user action during an on-hold period. For example, if the caller requested to hear more about a particular media clip or advertising message during a previous call, the analytics and call history database may store this information to allow similar or related media and advertising messages to be delivered in future instances. The data retrieved by the media server is used to select and deliver media and/or advertising messages stored within the media server responsive to the call history.
The authentication server coupled to a call handling server may be configured to receive a signal corresponding to a call request originating from a caller's IP phone. Such a signal corresponding to a call request comprises phone identifier data, such as the username, password, IP address and direct dial-in (DDI) number as described above, geographical data related to the location of the caller's phone, called number and geographical data related to the location of the called number. This data enables the authentication server to authenticate the caller identity of the call placed to a user of the media extension system. The authentication data may further use the geographical location related to the caller and called numbers in order to provide targeted media. For example, a caller from location A may call a callee using the media extension system, who is located in location B. When the callee places the caller on hold, the authentication server may communicate the location information of both the caller and callee to the media server in order for the media server to deliver targeted media to the caller on hold. The media server may play media and/or advertising messages corresponding to location A as the caller is calling from the area and may be interested in local advertisement, or may play messages corresponding to location B as the caller may have some interest in this area also.
The IP-based phone system may comprise a business directory coupled to a media server to sort media and/or advertising messages into sets to target groups of users with similar caller characteristics. In other words, the media server and/or its connected database may extract information from an external database that companies are already signed up to, enabling sharing of information and an alternative distribution channel for providers of such a business directly. Furthermore, the business directory may store media and advertising message profiles, such that each media clip or message has an associated ad profile which identifies which group of people or what call history should trigger the advertising to be played. This allows the media server to link together target groups of users with similar characteristics and the messages with the ad profiles suited to the group.
The phones may comprise IP phones, and the call handling server comprises may be one or a combination of a Session Initiation Protocol (SIP) server, a Voice over Internet Protocol (VoIP) Softswitch and an Internet Protocol Private Branch Exchange (IP PBX).
In the case where a customer of the IP-based phone system has opted for a media- only service, the customer's existing IP phone system, which may comprise an IP PBX, may be configured to allow the existing system to interface with the IP-based phone system. Calls made by the customer and calls received by the customer are handled by the existing IP phone service provider, but when the customer places a phone on hold, the re-configured system enables access to the media server via the authentication server. The authentication server verifies the customer is registered for a media-only service, and sends a signal to the media server to deliver media to the caller placed on hold. Once the on-hold event is cancelled, the authentication server receives the off-hold signal and communicates to the media server to stop delivering the media, and the call is reconnected by the customer's existing IP phone service provider.
The media server may comprise a user interface for uploading the media data for storage in the media server such that the system provider can control, monitor, maintain and update the media server and its stored content. Advertisers and/or users may also have their own access to their own accounts on the system, allowing access to their personal information. Furthermore, this may also enable users to tailor their interests in order to improve any targeted media delivery.
The media server may be configured to detect switching between on-hold and off-hold conditions for the established call and to pause and restart the served media responsive to the detected switching so that media is inserted into the phone call at the appropriate time and stopped at the appropriate time. Furthermore, the media server may be configured to receive signals corresponding to the on-hold and off-hold conditions for a plurality of phones so that media can be inserted into multiple phones, which may be connected to a local PBX exchange for example. A data analytics engine may be coupled to the media server. In embodiments the data analytics engine is configured to receive PBX operator data relating to a plurality of operators of a respective plurality of PBX exchanges, and preferably also to receive for a plurality of historical established calls, PBX called data identifying the PBX exchanges for one or both of the first and second phones of the established calls. In embodiments the data analytics engine is configured, for the established call, to combine the PBX operator data and the PBX called data to determine media clip identifier data identifying one or more media clips for serving to the second phone of the established call.
The PBX operator data may be data that allows the authentication and media servers to determine the identity of the PBX operators at one or both ends of the call, such as the password, username, IP address and direct dial-in (DDI) numbers linked to each PBX exchange. In embodiments the PBX operator data may also include data characterising a PBX operator, more particularly, defining particular properties of the goods/services which a host of the PBX operator provides. This in turn may be used to identify goods/services which may be of interest to the caller placed on hold. This allows the system to determine relevant and targeted media and/or advertising messages to deliver to the second phone of the established call. If both the users of the first and second phone of the established call are users of the voice and media service of the media extension system, the operator data enables the system to retrieve from the data analytics engine any trends in the calls made by either user or in the media played to either user. This enables the media server to deliver targeted media responsive to usage trends stored within the system to each user if either user is placed on hold. Further, where there is historical call data available, for example, indicating that a caller is or has been interested in a particular set of goods and/or services as determined from the PBX operator data, this may also be employed to predict further goods/services in which the user may be interested, and more specifically, to identify one or a set of media clips or presentation to a caller placed on hold.
Thus, data from multiple exchanges may be shared in order to determine a history of calls made by particular phones, and then analysed in order to improve any targeted media delivered in subsequent phones calls. The system may further comprise a call handling server for connecting the established call, wherein a the PBX exchange includes the call handling server, and wherein the media server is configured for the established call, to identify the PBX, of the second phone to determine the PBX called data exchange.
The system may further comprise a call handling server for connecting the call; in preferred embodiments this is a SIP (Session Initiation Protocol) server. The call handling server is configured to connect in a data path between the first and second phone to establish the call. Furthermore, the call handling/SIP server is coupled to the media server and configured to remain in the data path between the first and second phone during the call to monitor the established call - to detect when the first phone is put on hold and then to signal the media server. This enables the media server to, effectively, monitor the established call to determine when this goes on/off hold, and to serve selected, stored media in response. In other words, in embodiments the call handling server remains in the data path of the call between the phones to monitor the established call and provide detection of a hold signal. This detection may then be communicated to a media server (itself monitoring for this detection signal) to serve media at the appropriate point in time. In embodiments the call handling or SIP server is thus configured to implement a Back-to-Back User Agent Protocol (B2BUA).
In another embodiment, the invention comprises at least one PBX exchange, wherein a call handling server is configured to form part of the PBX exchange, and wherein the phone system further comprises at least one further call handling server for handling calls of one or both of an individual subscriber to the phone system and a hosted PBX exchange of the phone system.
According to another aspect of the invention there is also provided a media server as discussed above for an internet protocol (IP) phone system, the media server further comprising: interfaces for communication with a call handling server and an authentication server, and processor control code configured to: interact with the authentication server to retrieve data relating to an established telephone connection; interact with the call handling server to determine when the established telephone connection is put on hold; serve media to a telephone of the telephone connection put on hold in response to the determination. According to a still further aspect of the invention there is provided a method of providing media to a user of an IP phone system as discussed in the above aspects when user is on hold, the method comprising: authenticating, using the system, a VoIP call between the first and second phones; detecting, using the system, when the second phone puts the first phone on hold; and providing audio or video over VoIP to the first phone in response to the detection.
The audio audio/video may be selected responsive to data defining one or more characteristics of a user of the first phone such as the type of business being called, call history and the like. It may also be selected from data including geographical location of the user obtained from the dialling code or area code or otherwise of the first phone, or may be stored in the system by the caller themselves upon registering for/subscribing to the service. Furthermore, the media provided by the system may comprise a plurality of media and/or advertising messages. Such media and/or advertising messages may also be selected.
According to a still further aspect of the invention there is provided an interface to a call handling server in a phone system, the call handling server configured for connecting a call between a first phone to a second the phone to establish a call between the first and second phones; wherein the interface is coupled to the call handling server and configured to receive signals from one or more of the phones coupled to the call handling server to detect when the first phone is put on hold and route the detection to a media server configured to serve media stored on the media server to the first phone. The interface enables an existing phone system to be modified/enhanced to enable connection to a media server to deliver media (e.g. advertising). The interface connects to the call handling server, which may be installed in a company office for example, to detect when a call from with an outside user is put on hold. The interface is configured to detect a hold signal from an employee's phone within the company office to allow this to be further routed to the media server.
The second phone may have a phone identifier associated therewith and the interface may further comprise an authentication server configured to use the phone identifier to authenticate a call between the first phone and the second phone to determine if routing to the media server is permitted, and wherein the routing the detection to the media server is responsive to authenticating the call.
In other words, the interface may need to authorise routing of the hold signal through to the media server. This allows the media server provider to verify that the company with the installed interface is registered and permitted to use the media server. In other embodiments the authentication may be done at the media server.
The interface may be configured to detect switching between on-hold and off-hold conditions for the established call and to route the detection to the media server such that when the hold status of a call is changed, the media server is able to detect such a change and start or halt the delivery of media (such as an advert) accordingly.
The interface may be connected to any call handling servers, including, but not limited to one or a combination of a Session Initiation Protocol (SIP) server, a Voice over Internet Protocol (VoIP) Softswitch and an Internet Protocol Private Branch Exchange (IP PBX). Accordingly, in variants the phone system is an IP based phone system.
The invention further provides processor control code to implement the above- described method, for example on a general purpose computer system or on a digital signal processor (DSP). The code is provided on a physical carrier such as a disk, CD- or DVD-ROM, programmed memory such as read-only memory (Firmware), or on a data carrier such as an optical or electrical signal carrier. Code (and/or data) to implement embodiments of the invention may comprise source, object or executable code in a conventional programming language (interpreted or compiled) such as C, or assembly code. As the skilled person will appreciate such code and/or data may be distributed between a plurality of coupled components in communication with one another. BRIEF DESCRIPTION OF THE DRAWINGS
Figure 1 shows a prior art system to provide media/advertising to a caller placed on hold. Figure 2 shows a VoIP softswitch-based implementation according to an embodiment of the invention.
Figure 3 shows an IP PBX-based implementation according to an embodiment of the invention.
Figure 4 shows a called endpoint-based implementation according to an embodiment of the invention. Figure 5 shows a location-based targeted service according to an embodiment of the invention.
Figure 6 shows a behaviour-based targeted service according to an embodiment of the invention.
Figure 7 shows a message sequence chart for providing advertising and/or media to a caller placed on hold in according to an embodiment of the invention.
Figure 8a shows an embodiment of the invention for providing targeted media and/or advertising to a callee when a caller using an IP-phone with phone identifier places the callee on hold, and providing billing data to advertisers included in the system.
Figure 8b shows an embodiment of the invention for providing targeted media and/or advertising to a callee when a caller's existing telephone system is interfaced with the IP-based phone system.
Figure 9 shows an example use of the behaviour-based targeted service.
Figure 10 shows possible methods to connect to and be served media and/or advertising messages in an embodiment of the invention.
Figure 1 1 shows an embodiment of the invention for providing a voice and media service. Figure 12 shows an overview of an IP phone media extension system according to an embodiment of the invention.
Figure 13 shows a system architecture illustrating options for connecting to the media server in embodiments of the invention.
DETAILED DESCRIPTION OF PREFERRED EMBODIMENTS Significant time can be spent on hold on the phone whilst waiting to be connected, whether in a call centre queue or during a business phone call. We describe a method to deliver media and/or advertising to business and residential users of an IP-based phone system when a caller is placed on hold by a callee in order to provide the caller with entertainment and to generate revenue for advertisers/media sources. The method described here comprises delivering targeted advertising, media and the like to a caller on hold based on information collected by the IP-based phone system on their previous calls. Media/advertising could include, for example, comedy sketches from comedians advertising an up-coming tour and music clips from new albums going on sale, with the option for the user to find out more about the media after their call has ended.
Figure 1 shows a prior art system to provide media/advertising to a caller placed on hold. A caller 101 places a call to a company 103. The caller's call request 104 is routed to the called company by a call handling server, which may comprise for example, a VoIP Softswitch 102. When the call is in a queue or the caller is placed on hold 105, the on-hold event causes media and/or advertising messages to be played to the caller 106 until the on-hold event is cancelled.
Figures 2-4 show example embodiments of the present invention.
Figure 2 shows an embodiment of the system including an "AdClip" media server 202. An Internet Protocol (IP)-based phone system comprises an "AdClip" media server 202 coupled to a call handling server, the call handling server further comprising for example, a Voice over Internet Protocol (VoIP) Softswitch 102 which allows telephone calls from one communication device to be connected to another. A caller 101 places a call request 104 to a company 103 that uses the IP-based phone system. The caller may also be a user of the IP-based phone system, or may place the call using another phone service provider. The call handling server connects the caller 101 and the called company 103, and the caller and called company are connected continually throughout the duration of the call by the call handling server, which enables the call handling server to monitor the call and any user actions during the call. The caller's communication device may be a wired telephone, mobile telephone, IP-phone or any other communication device. The VoIP Softswitch typically connects IP-phones to IP- phones, but can also handle traditional wired communication devices. Where the caller's communication device is not an IP-phone, the VoIP Softswitch may also convert the call to IP traffic and send it via the internet to the called company.
The called company may place the caller on-hold or in a call queue, by pressing the hold button on their phone handset for example. Pressing the hold button triggers an on-hold event 105 in the call handling server, which has been continually monitoring the call. The on-hold event is communicated to the "AdClip" media server 202. The media server identifies which phone is on hold from the data 201 a it receives, and delivers media clips or advertising messages stored within the server directly to the caller 101 . If this is the caller's first call to a user of the IP-based phone system, the "AdClip" media server delivers non-targeted media to the caller placed on hold. If the caller has called either the called company 103 or another user of the IP-based phone system prior to making this call, the "AdClip" media server delivers targeted media to the caller placed on hold. The "AdClip" media server is configured to store details of all calls made to the system and all calls placed by users of the system. If the caller 101 is not a user of the IP-based phone system, the "AdClip" media server captures and stores data relating to the caller, including the caller number, the called number and the profile of the called number. For example, the profile of the called number may be data related to what type of industry the called number corresponds to, such as a restaurant or a legal services company. This captured data is used by the "AdClip" media server to deliver targeted media by identifying any trends in the caller's called numbers. When the called company cancels the on-hold command, an off-hold event is communicated to the "AdClip" media server via the call handling server. The media server identifies which phone the off-hold event corresponds to, stops delivering the media and allows the caller to reconnect to the called company. Figure 3 shows a variant of the system, including an "AdClip" media server 202 and a call handling server further comprising a VoIP Softswitch 102 and an Internet Protocol Private Branch Exchange (IP PBX) 301 in an example of the invention. A caller 101 places a call request 104 to a company 103 that uses the IP-based phone system. In this example, the called company uses an IP PBX 301 , which is a business telephone system used to deliver voice or video data over a network. The IP PBX 301 may be part of the IP-based phone system, or may be a legacy system that is configured to allow interfacing with the IP-based phone system, and in particular, with the "AdClip" media server. The call is connected to a specific phone within the company via the call handling server as described above. When the called company places the caller on hold or in a queue, the on-hold event 105 is communicated via the (new or reconfigured) IP PBX to the "AdClip" media server 202. The media server identifies which phone is on hold and delivers media clips or advertising messages 203 stored within the media server directly to the caller 101 . When the called company cancels the on-hold command, an off-hold event is communicated to the "AdClip" media server via the IP PBX. The media server identifies which phone the off-hold event corresponds to, stops delivering the media and allows the caller to reconnect to the called company. Figure 4 shows a called endpoint-based system according to an embodiment of the invention. In this example a call handling server is within the company premises 103. An Internet Protocol (IP)-based phone system comprises an "AdClip" media server 202 and a call handling server, further comprising a VoIP Softswitch 102. A caller 101 places a call request 104 to a company 103. The call is connected to the company via the VoIP Softswitch 102. When the called company places the caller on hold or in a queue, the on-hold event is communicated from an interface to the called company's call handling server to the "AdClip" media server 202. This interface routes the detection of on hold signals through to the media server, which in turns identifies that a phone is on hold, and delivers media clips or advertising messages 203 stored within the server to the caller 101 . When the called company cancels the on-hold command, an off-hold event is communicated to the "AdClip" media server. The media server identifies which phone the off-hold event corresponds to, stops delivering the media and allows the caller to reconnect to the called company via the VoIP Softswitch. Figure 5 shows the "AdClip" media server for location-based targeted media delivery. When an on-hold event is communicated to the "AdClip" media server, the media server identifies the geographical location of the caller, using either the caller number, the geographic region from which the call originated, the area code or any other location identifiers. The caller may or may not be a user of the IP-based phone system, but caller data as described above may be captured by the system in order to deliver targeted media. The media server identifies that one caller is calling from London 501 and another is calling from Manchester 502. In response, the media server delivers location-specific advertising messages and/or media clips 503, 504 to the callers from a database of messages and clips stored and sorted within the server according to geographical regions.
Figure 6 shows the "AdClip" media server for behaviour-based targeted media delivery. When an on-hold event is communicated to the "AdClip" media server, the media server identifies the identity of the caller using the username, password and IP address if the caller is a user of the IP-based phone system, or by the phone number used by the caller if they have called a user of the IP-based phone system prior to making this call. Once identified, the media server communicates with the analytics and call history database 601 to retrieve caller history/profile data to deliver targeted media. The media server identifies two callers 602, 101 , and uses the caller identification to retrieve caller-specific data fro the analytics and call history database. The database provides information on previous calls the callers made 603, 605. In response, the media server uses this data to locate and deliver relevant media stored in the media server to the callers 604, 606.
Figure 7 shows the operation of the IP-based phone system as described above, including advertisers, a system owner and a business directory. The figure depicts a message sequence chart for providing advertising and/or media to a caller placed on hold or in a hold queue. The caller 701 initiates a call to the callee 702. The caller may or may not be a user of the IP-based phone system, but caller data may be captured by the system in order to deliver targeted media in either case, as described earlier. The caller is connected to the callee by a call handling server 721 , which may comprise one or both of a VoIP Softswitch and a Session Initiation Protocol (SIP) server. Voice communication between the caller and callee 712 may be interrupted if the callee places the caller on-hold. The callee presses an on-hold button, or otherwise, on his communication device. An on-hold event is triggered 713 and relayed to the media server 202. The media server identifies which call has been placed on hold by determining the caller's identification code. The media server communicates with the analytics and call history database 601 to determine any caller profile data 714 for the specific identification code. Retrieved data is used by the media server to locate and deliver targeted media and/or advertising 715 to the caller via the call handling server. Media clips are delivered until the callee 702 cancels the on-hold command. An off- hold event is triggered 716 and relayed to the media server 202. The media server identifies which call is now off-hold, and communicates to the call handling server for the caller and callee to be reconnected 712.
Advertisers 706 are able to provide media clips and/or advertising messages 708 to be stored within the media server. In addition, each advertising message/media clip has an associated ad profile 709 which identifies which group of people or what call history should trigger the advertising to be played. This data is stored within the business directory 707 which is in communication with the media server 202. The storage and profiling of advertising messages is part of the ad setup process 710 of the targeted media delivery service. Statistics on advertising message/media clip replay times or other data relating to the advertising messages/media clips stored within the media server 718 are collated by the media server and stored within the billing server, and can be provided to the advertiser. This allows the advertiser to determine how much revenue has been generated for each advertisement, and any payments which should be paid to the system owner 705.
Figure 8a shows a call history-based targeted media delivery and billing system including an "AdClip" media server, an analytics and call history database and multiple billing servers. A callee 801 is using the IP-based phone system to make and receive calls using IP phone handsets which contain within them, a unique username, password and IP address to be used by the IP-based phone system to verify their identity in the system. A caller 806 places a call to the callee 801 . The call request is received by the call handling server 721 . The call handling server communicates the data on the origin of the phone call to the voice and "AdClip" authentication servers 802. The servers determine whether the caller 806 is an "AdClip" customer (see Figure 8b), a voice and "AdClip" customer (described here), or not a customer of the system. Voice and "AdClip" customers use the IP-based phone system to make and receive calls as well as to generate revenue whenever a caller 806 is placed on hold and media and/or advertising is delivered to the caller. In the embodiment of the invention shown in Figure 8a, the caller 806 may not be a user of the IP-based phone system, and so the call handling server 721 may also convert the call from the caller to IP traffic and send it to the caller 801 , and vice versa, convert the call from the callee from IP traffic and send it via the appropriate network gateway 805 to the caller 806. The call handling server may comprise a Session Initiation Protocol (SIP) server and a back-to- back user agent (B2BUA) to connect the caller and callee and handle the call. The call handling server maintains the connection throughout the duration of the call, allowing the call and caller actions during the phone call to be monitored. When the callee places the caller 806 on hold, the on-hold signal is communicated to the call handling server 721 , which further communicates with the "AdClip" media server 202 in order to start delivering media to the callee 801 placed on hold. The media server identifies the identity of the callee, and communicates with the analytics and call history database 601 to retrieve caller history/analytics data to deliver targeted media to the caller. The database holds information on previous calls the caller made to customers of the IP- based phone system. In response, the media server uses this data to locate and deliver relevant media stored in the media server to the caller directly via the VoIP softswitch/call handling server 102. The media server may be configured to keep a record of which media and/or advertising messages have been played, how many times they have been played, whether callers responded to interactive options associated with the media and/or advertising messages and how long each message was played for before the call was re-established. The data is communicated to and stored within the AdClip billing server 8042 in order to allocate a revenue value to each operator of an IP-based phone system and to a user of a set of IP-phones including the callee 801 . This enables the system owner to determine how much revenue can be obtained from each provider of the media and/or advertising messages as described above.
The callee in this example is a voice and AdClip customer. When a user of IP phone 801 places a call, the call request is handled as described above. The voice and AdClip authentication servers 802 communicates with the voice billing server 8041 to determine whether the customer is a pay-as-you-go customer or not, and in the former case, how much credit is linked to their account. This allows the authentication server to cut-off a call if the user of the IP phone has exceeded the cost allowed. When the user of the IP phone places a caller on hold, the authentication server also communicates with the "AdClip" billing server 8042 to collate and store data on media and/or advertising messages played to the caller on hold, in order to determine the revenue the user has generated. A web server 8043 links the voice billing server 8041 and the "AdClip" billing server 8042 together, so that the user can retrieve from the system unified account data, comprising payments owed to the system owner and revenue received via the "AdClip" media server. A user interface 807 coupled to the authentication server via a web administration server 808 allows a user to access their account and obtain data on for example, called numbers and duration of calls, revenue owed to the system owner for placing voice calls and revenue owed to the user from the playing of media messages. The user interface may comprise a website that the user may access using the username and password ascribed to their IP phone, IP phone system or IP PBX to log-in to the website and obtain the data described above. The user interface may also allow the user to input any data into the system that would allow the user to receive targeted media when the user is put on hold by another customer of the media extension system. Such input data may include music genre preferences, geographical locations of interest, gender, allowed call destinations and blocked call destinations.
Figure 8b shows a call history-based targeted media delivery and billing system including an "AdClip" media server, an analytics and call history database and multiple billing servers. A customer is using an existing IP phone system comprising a legacy IP PBX 8101 and IP phones 8100 to make and receive calls. The customer (single user, company or otherwise) is an "AdClip"-only customer. In this example, the IP phones 8100 may not be fitted with phone identifiers as described above, but instead the legacy IP PBX 8101 may be modified to allow the legacy system to interface with the "AdClip" media server 202. Call requests from the caller are handled by the callee's own telephone service provider. When the callee 8100 puts the caller 806 on hold, the modified IP PBX 8101 receives the on-hold signal and is configured to communicate with the AdClip authentication server 8102. The AdClip authentication server verifies that the callee is an AdClip-only customer by communicating with the "AdClip" billing server 8042, and prompts the "AdClip" media server 202 to play media and/or advertising messages to the caller placed on hold. The media is delivered to the caller 806 via the call handling server 721 , and an appropriate network gateway 805 if the caller is not using an IP phone. When the on-hold event is cancelled by the callee, the off-hold event is handled in the same way, and the IP PBX reconnects the caller and callee via the callee's own telephone service provider. As described above, data on the media delivered to the caller is collected and stored within the AdClip billing server 8042 in order to keep a record of the revenue generated by the customer.
Figure 9 shows an example use of the behaviour-based targeted service. A caller 101 first makes a call to a phone within Legal Company A (company A) 903. Company A has a call handling server installed on their premises or hosted remotely (such as shown in Figure 2) and also has a connection through to the Media Server 202 via connection 904 which may be via company A's own local PBX system. On making a call to company A, identification details from caller phone 101 are communicated to the Media Server 202 and its associated database 908 to log such data. Data stored may include one or more of a caller-ID (CLID), or username/login/ID details and the like. The latter may be provided, for example, if the phone 101 is provisioned from the company providing the enhanced IP based phone system described herein. Phone 101 details, in combination with details of the company being called (for example the type of service the company provides) are logged by the Media Server and its database. It will be appreciated however that many other forms of information can be stored, such as the particular user dialled, a particular team with company A (for example, the type of legal service) as is appropriate to the particular company/service.
At a later point in time, caller phone 101 is then used to call another company: Legal Company B (company B). Company B, as with company A also has an account with the provider of the enhanced IP based phone system described herein, with a connection through to the Media Server 202 and its database 908. Again details of the caller phone and company B are transmitted to the Media Server 202 and its database 908. This time, the Media Server recognises that this caller has previously called another legal company and determines that caller 101 has a history of being interested in legal services. Whilst waiting in a queue to speak to someone at company B, or being put on hold by company B, the Media Server is then able to deliver targeted adverts 909 to caller phone 101 related to legal services and/or related areas. Based on location details (previously logged via an account with the Media Server provider and/or via CLID) such targeted adverts may also be location based if so desired. In Figure 9, the local PBX in company A may need to be modified to allow communication with the Media Server. This may be via an adapter/interface for example, or may be via modification to the software running on the local PBX system, or a combination of both. In variants, if Company A's phone system has a PBX hosted by the provider of the media server and similarly has phones configured and provided by the provider of the media server then Company A's phones themselves may communicate directly with the media server.
Figure 10 summarises different ways a call to a user of the IP-based phone system may be handled. In the case where the user is a voice and "AdClip" customer, the calls placed by the user and received by the user are handled by the system's voice platform 1001 . The customer may have a single phone 1002 or a plurality of phones connected together by an IP PBX system 1003. Call requests in to and out of the system are handled by the voice platform. When a caller is placed on hold, the single phone 1002 or the IP PBX 1003 communicates with the media server 202 to deliver media to the caller.
Alternatively, the user may be an "AdClip"-only customer. In this scenario, and as described above and in Figure 8b, the customer uses their existing legacy system to make and receive calls, which is reconfigured/modified (for example by way of an interface to the media server) to access the media server when requested. When a caller 101 places a call to an "AdClip"-only customer, the call is handled by the customer's own telephone service provider 1005. However, when the caller 101 is placed on hold, the on-hold signal prompts the modified IP PBX to access the media server 202, and media is delivered to the caller 101 .
Figure 1 1 shows a time line of events within the call handling server of the IP-based phone system. The call handling server first receives a call request from a caller, containing within it data defining the callee, which is used by the call handling server to bring in the callee. The server connects the caller and callee, and continues to hold the connection throughout the duration of the call. This continual connection allows the server to monitor the status of the call and to detect user action during the call, such as on-hold events and interaction during the playing of media. The call handling server communicates these events to the relevant system servers to initiate the appropriate action. For example, on-hold events are communicated to the media server to prompt the delivery of media to the caller on hold, and user action during the playing of interactive media is sent to media and analytics servers.
Figure 12 shows an overview of a typical system. Phones, including IP phones, traditional wired phones and mobile phones, can interface with the system via either a PSTN or internet gateway. The system, as described above, is capable of converting calls to and from IP traffic via the call handling server, which may comprise a Session Initiation Protocol (SIP) server. A telecommunications switch connects two or more telephone lines together. The system may also comprise an Authentication, Authorisation and Accounting (AAA) server(s) to: authenticate a customer's identity in the system by verifying the username, password and IP address and optionally port associated with the customer's IP phone or IP PBX; use the authentication data to determine whether the customer is authorised to access particular services provided by the system, such as the "AdClips" and the "AdClips" plus Voice services; and to keep track of the customer's usage of the system services to capture usage trends and to keep data on revenue generated by the customer and revenue owed to the system owner for using the services.
Figure 13 shows an overview of a typical system. Users may connect to the system using an IP PBX 1301 configured to interface with the system. The IP PBX may optionally connect to the system via an additional interfacing box 1303, which may contain within it the instructions to connect to the media server 202 when a user presses hold on their phone, and authentication data as described above and in Figure 12. The user may also connect to the system from a virtual phone network 1307, or the user may be an individual or have a hosted IP PBX 1305 which connect to the system via call handling and authentication servers 1306. The media server 202 receives input from each user when a call is placed containing identification data, such as the username, password, IP address and direct dial-in (DDI) number associated with the user's IP phone or IP PBX or virtual phone network. The media server communicates this data to the analytics and call history database 601 in order to retrieve user call and/or media trends/data which allow the media server to deliver targeted media to the caller on hold.
The skilled person will appreciate that in this specification when we refer to phones this includes both physical hardware based phones and software based phones - in general any electronic device with telephone functionality.
No doubt many other effective alternatives will occur to the skilled person. It will be understood that the invention is not limited to the described embodiments and encompasses modifications apparent to those skilled in the art and lying within the spirit and scope of the claims appended hereto.

Claims

1 . A media extension system for use with an internet protocol (IP) phone system comprising a plurality of phones, each having a phone identifier and a communications interface for communicating over the internet, the media extension system comprising: an authentication server having at least a communications interface for communicating over the internet, and configured to use a said phone identifier to authenticate a call originated by a first said phone for connecting said call to a second said phone to establish a call between said first and second phones; and
a media server coupled to said authentication server, to receive from said authentication server call authentication data to authenticate said established call, wherein said media server has a communications interface for communicating over the internet, and wherein said media server is configured to monitor said established call to detect when said first phone is put on hold and, responsive to said detection, to serve media stored on said media server to said first phone.
2. A media extension system as claimed in claim 1 wherein said media server is configured to retrieve user data relating to a user of said first phone and to select said served media responsive to said user data.
3. A media extension system as claimed in claim 2 further comprising an analytics and call history database coupled to said media server and configured to store call history data and/or caller characteristics for each user of the system. 4. A media extension system as claimed in any preceding claim wherein said authentication server is coupled to a call handling server, wherein said authentication server is configured to use said call handling server to detect user action on said first phone whilst said first phone is on hold and to initiate a further call, or to serve further stored media, in response after said established call has ended.
5. A media extension system as claimed in claim 4 further comprising a billing server coupled to said media server and configured to track said user action and to, in response, allocate a revenue value related to said user action to each of an operator of said phone system and to a user of a set of said phones including said first phone.
6. A media extension system as claimed in claim 5 further comprising an analytics and call history database coupled to said media server to determine said user data from one or more previous said established calls and/or when dependent on claim 4 said user action.
7. A media extension system as claimed in any preceding claim wherein said media server is configured to retrieve user data relating to a user said first phone and to select said served media responsive to said user data, the system further comprising an analytics and call history database coupled to said media server and configured to store call history data and/or caller characteristics for each user of the system, wherein said caller characteristics and call history data are retrieved by said media server to determine a set of targeted media and/or advertising messages for each user of the system. 8. A media extension system as claimed in any preceding claim wherein said authentication server is able to receive a signal corresponding to a call request originating from said first phone.
9. A media extension system as claimed in claim 8 wherein said signal corresponding to a call request comprises phone identifier data, geographical data related to the location of said first phone and called number of said second phone.
10. A media extension system as claimed in any preceding claim further comprising a business directory coupled to said media server to sort media and/or advertising messages into sets to target groups of users with similar caller characteristics.
1 1 . A media extension system as claimed in any preceding claim wherein said authentication server is configured to poll said phone at intervals whilst said phone is not established in a said call to confirm that said phone is connected to the internet.
12. A media extension system as claimed in any preceding claim when dependent on claim 4, wherein said phones comprise IP phones, and wherein said call handling server comprises one or a combination of a Session Initiation Protocol (SIP) connection, a Voice over Internet Protocol (VoIP) Softswitch and an Internet Protocol Private Branch Exchange (IP PBX).
13. A media extension system as claimed in any preceding claim wherein said media server has a user interface for uploading said media data for storage in said media server.
14. A media extension system as claimed in any preceding claim wherein said media server is configured to detect switching between on-hold and off-hold conditions for said established call and to pause and restart said served media responsive to said detected switching.
15. A media extension system as claimed in claim 14 wherein said media server is configured to receive signals corresponding to said on-hold and off-hold conditions for a plurality of phones. 16. A media extension system as claimed in any preceding claim further comprising a data analytics engine coupled to said media server; wherein said data analytics engine is configured to receive PBX operator data relating to a plurality of operators of a respective plurality of PBX exchanges and to receive, for a plurality of historical said established calls, PBX called data identifying said PBX exchanges for one or both of said first and second phones of said established calls, and wherein said data analytics engine is configured, for a said established call, to combine said PBX operator data and said PBX called data to determine, for said media server, media clip identifier data identifying one or more media clips for serving to said second phone of said established call.
17. A media extension system as claimed in claim 16 further comprising a call handling server for connecting said established call, wherein a said PBX exchange includes said call handling server, and wherein said media server is configured for said established call to identify said PBX exchange of said second phone to determine said PBX called data.
18. A media extension system as claimed in any preceding claim, further comprising a call handling server for connecting said call, wherein said call handling server is configured to connect in a data path between said first and second phone to establish said call, and wherein said call handling server is coupled to said media server and configured to remain in said data path between said first and second phone during said call to monitor said established call to detect when said first phone is put on hold and then to signal said media server when said established call is put on hold, whereby said media server is able to monitor said established call for serving said stored media.
19. A media extension system as claimed in claim 18 wherein said call handling server is configured to implement a Back-to-Back User Agent (B2BUA) protocol. 20. A media extension system as claimed in claim 18 or 19 further comprising at least one PBX exchange, wherein said call handling server is configured to form part of said PBX exchange, and wherein said phone system further comprises at least one further said call handling server for handling calls of one or both of an individual subscriber to said phone system and a hosted PBX exchange of said phone system.
21 . A media server for an internet protocol (IP) phone system, the media server comprising:
interfaces for communication with a call handling server and an authentication server; and
processor control code configured to:
interact with said authentication server to retrieve data relating to an established telephone connection;
interact with said call handling server to determine when said established telephone connection is put on hold;
serve media to a telephone of said telephone connection put on hold in response to said determination.
22. A method of using an IP phone media extension system as recited in any preceding claim for providing media to a phone user when the user is on hold, the method comprising:
authenticating, using said system, a VoIP (voice over internet protocol) call between said first and second phones;
detecting, using said system, when said second phone puts said first phone on hold; and providing audio/video over VoIP to said first phone in response to said detection.
23. A method as claimed in claim 22 further comprising selecting said audio/video responsive to data defining one or more characteristics of a user of said first phone.
24. A method as claimed in claim 22 or 23 wherein said system stores a plurality of media and/or advertising messages, and wherein the method enables said media and/or advertising messages to be selected.
25. A method as claimed in claim 22, 23 or 24 further comprising, for established said VoIP calls: receiving PBX operator data relating to a plurality of operators of a respective plurality of PBX exchanges; receiving, for a plurality of historical said established calls, PBX called data identifying said PBX exchanges for one or both of said first and second phones of said established calls analysing said PBX operator data and said PBX called data to determine one or more media clips for said media server to serve when said established call is on hold.
26. A method as claimed in claim 22, 23, 24 or 25 further comprising establishing said VoIP call using a call handling server, and continuing to monitor said VoIP call using said call handling server after said call has been established to determine when said second phone puts said first phone on hold.
27. A physical data carrier carrying processer control code to implement the method of any one of claims 22 to 26.
28. An interface to a call handling server in a phone system,
said call handling server being configured for connecting a call between a first phone to a second said phone to establish a call between said first and second phones; wherein said interface is coupled to said call handling server and configured to receive signals from one or more of said phones coupled to said call handling server to detect when said first phone is put on hold and to route said detection to a media server configured to serve media stored on said media server to said first phone.
29. An interface to a call handling server as claimed in claim 28,
wherein said second phone has a phone identifier associated therewith;
wherein said interface includes an interface to an authentication server configured to use said phone identifier to authenticate a call between said first phone and said second phone to determine if routing to said media server is permitted, and wherein said routing of said detection to said media server is responsive to authenticating said call.
29. An interface to a call handling server as claimed in claim 28 or 29, further comprising a data path for clip authentication data for authenticating provision of a media clip from said media server to said second phone.
31 . An interface as claimed in claim 27, 28 or 29, wherein said interface is configured to provide a data path to detect switching between on-hold and off-hold conditions for said established call and to route said detection to said media server.
32. An interface as claimed in any one of claims 28 to 31 , wherein said phone system is an IP based phone system.
PCT/GB2012/052512 2011-10-10 2012-10-10 Internet protocol (ip)-based phone systems WO2013054109A2 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
GB1117431.5 2011-10-10
GB201117431A GB201117431D0 (en) 2011-10-10 2011-10-10 Internet protocol (IP)-based phone systems

Publications (2)

Publication Number Publication Date
WO2013054109A2 true WO2013054109A2 (en) 2013-04-18
WO2013054109A3 WO2013054109A3 (en) 2013-06-13

Family

ID=45091777

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/GB2012/052512 WO2013054109A2 (en) 2011-10-10 2012-10-10 Internet protocol (ip)-based phone systems

Country Status (2)

Country Link
GB (1) GB201117431D0 (en)
WO (1) WO2013054109A2 (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2822261A2 (en) 2013-06-20 2015-01-07 SIKOM Software GMBH Method and assembly for pooling multimodal waiting fields and searching current telephone calls for a user in a telecommunications network
WO2015168193A1 (en) * 2014-05-02 2015-11-05 Microsoft Technology Licensing, Llc Delivering content
US9967813B1 (en) 2017-03-06 2018-05-08 Sorenson Ip Holdings, Llc Managing communication sessions with respect to multiple transport media
CN111464593A (en) * 2020-03-11 2020-07-28 云知声智能科技股份有限公司 System and method for external connection mode of soft telephone exchange platform and application service cluster

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2360418A (en) 1999-09-03 2001-09-19 Michael Adam Cherrington Telephone advertising system
US20020010626A1 (en) 2000-05-22 2002-01-24 Eyal Agmoni Internert advertising and information delivery system
US6819759B1 (en) 1999-07-01 2004-11-16 Sprint Communications Company, L.P. System and method for providing personalized and customized services for call center customers waiting in queue
US20070004384A1 (en) 2005-06-29 2007-01-04 Vinod Anupam Method and apparatus for providing personalized audio content delivery during telephony hold
WO2007053448A2 (en) 2005-10-28 2007-05-10 Infreeda, Inc. A voice-response directory assistance system having a targeted advertising engine
WO2008143948A1 (en) 2007-05-14 2008-11-27 Adfonic Inc. System and method for customer background targeted media advertising

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6683941B2 (en) * 2001-12-17 2004-01-27 International Business Machines Corporation Controlling advertising output during hold periods
US7209475B1 (en) * 2001-12-28 2007-04-24 Cisco Technology, Inc. System and method for providing on-hold content in a voice over internet protocol (VoIP) environment

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6819759B1 (en) 1999-07-01 2004-11-16 Sprint Communications Company, L.P. System and method for providing personalized and customized services for call center customers waiting in queue
GB2360418A (en) 1999-09-03 2001-09-19 Michael Adam Cherrington Telephone advertising system
US20020010626A1 (en) 2000-05-22 2002-01-24 Eyal Agmoni Internert advertising and information delivery system
US20070004384A1 (en) 2005-06-29 2007-01-04 Vinod Anupam Method and apparatus for providing personalized audio content delivery during telephony hold
WO2007053448A2 (en) 2005-10-28 2007-05-10 Infreeda, Inc. A voice-response directory assistance system having a targeted advertising engine
WO2008143948A1 (en) 2007-05-14 2008-11-27 Adfonic Inc. System and method for customer background targeted media advertising

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2822261A2 (en) 2013-06-20 2015-01-07 SIKOM Software GMBH Method and assembly for pooling multimodal waiting fields and searching current telephone calls for a user in a telecommunications network
WO2015168193A1 (en) * 2014-05-02 2015-11-05 Microsoft Technology Licensing, Llc Delivering content
CN106464570A (en) * 2014-05-02 2017-02-22 微软技术许可有限责任公司 Delivering content
US9967813B1 (en) 2017-03-06 2018-05-08 Sorenson Ip Holdings, Llc Managing communication sessions with respect to multiple transport media
US11089541B2 (en) 2017-03-06 2021-08-10 Sorenson Ip Holdings, Llc Managing communication sessions with respect to multiple transport media
CN111464593A (en) * 2020-03-11 2020-07-28 云知声智能科技股份有限公司 System and method for external connection mode of soft telephone exchange platform and application service cluster

Also Published As

Publication number Publication date
WO2013054109A3 (en) 2013-06-13
GB201117431D0 (en) 2011-11-23

Similar Documents

Publication Publication Date Title
US7103172B2 (en) Managing caller profiles across multiple hold queues according to authenticated caller identifiers
US6683941B2 (en) Controlling advertising output during hold periods
US8755503B1 (en) Methods and systems for call processing and for providing call progress status over a network
US8750469B1 (en) Methods and systems for call processing
US8194847B2 (en) Method and system for voice monitoring
US8630403B2 (en) Controlling hold queue position adjustment
KR101297142B1 (en) System for providing information to client terminal during communication service
US20030108186A1 (en) Promoting use of experts to callers waiting in a hold queue
GB2417642A (en) Call tracking using SIP presence mechanism
US9141970B2 (en) Call tracking system and method
US20100082972A1 (en) Method to allow targeted advertising on mobile phones while maintaining subscriber privacy
US20080207190A1 (en) Systems and Methods to Confirm Initiation of a Callback
US11153425B2 (en) System and method for providing interactive services
US7453830B2 (en) Internet architecture for software based ACD
US7764779B2 (en) SIP ACD multi-tenant mechanism that facilitates multiple levels of partitions or tenants
WO2013054109A2 (en) Internet protocol (ip)-based phone systems
RU2461879C1 (en) Method of delivering measured advertising and/or information to subscriber through information and communication networks and system for realising said method
US8572113B2 (en) Network calling privacy with recording
US8732190B2 (en) Network calling privacy with recording
US20070002830A1 (en) Integrating telephonic service providers
US20120078692A1 (en) Systems and methods for online call measurement
US8180330B2 (en) Method for collecting user behavior during run-time in a mobile 3GPP IP-based multimedia subsystem (IMS)
US20140310104A1 (en) Advertisement delivery method
CA2745407A1 (en) Systems and methods for online call measurement
WO2007090396A2 (en) Server for communicating a display message to a user device and system for selecting a path for routing a communication call

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 12790939

Country of ref document: EP

Kind code of ref document: A2

122 Ep: pct app. not ent. europ. phase

Ref document number: 12790939

Country of ref document: EP

Kind code of ref document: A2