WO2010076770A2 - Communication system incorporating collaborative information exchange and method of operation thereof - Google Patents

Communication system incorporating collaborative information exchange and method of operation thereof Download PDF

Info

Publication number
WO2010076770A2
WO2010076770A2 PCT/IB2009/056036 IB2009056036W WO2010076770A2 WO 2010076770 A2 WO2010076770 A2 WO 2010076770A2 IB 2009056036 W IB2009056036 W IB 2009056036W WO 2010076770 A2 WO2010076770 A2 WO 2010076770A2
Authority
WO
WIPO (PCT)
Prior art keywords
user
information
audio
audio information
location
Prior art date
Application number
PCT/IB2009/056036
Other languages
French (fr)
Other versions
WO2010076770A3 (en
Inventor
Tara Shankar
Joseph Paparella
Original Assignee
France Telecom
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 France Telecom filed Critical France Telecom
Publication of WO2010076770A2 publication Critical patent/WO2010076770A2/en
Publication of WO2010076770A3 publication Critical patent/WO2010076770A3/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/2866Architectures; Arrangements
    • H04L67/30Profiles
    • H04L67/306User profiles
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/02Services making use of location information
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/52Network services specially adapted for the location of the user terminal

Definitions

  • the present system relates to at least one of a system, method, user interface, and apparatus for distributing contextual information via a network and performing context-driven actions based on user-specific information.
  • a mobile station such as a personal communicator, cell phone, smart phone, PalmTM, personal digital assistant (PDA), and the like, which typically have a limited Ul (e.g., no display or a limited display area), a user may not be able to conveniently access a desired blog.
  • MS mobile station
  • PDA personal digital assistant
  • SNSs social-networking and/or micro-blogging services
  • Facebook SM and Twitter SM allow users to post messages on a user's blog page
  • they do not provide real-time context-driven voice access to online messages such as "blogs,” “microblogs,” and the like.
  • the present system include a system, method, device, and/or interface which may provide a speech-driven service that may provide voice access to online microblogs such as those which may be found on an SNS such as, Twitter SM or other SNSs such as Facebook SM , etc.
  • microblogs may also include the blogs.
  • the present system may integrate with one or more third-party communication services such as, for example, SNSs or the like, to obtain information related to the user when it is determined that the user is a member of two or more SNSs.
  • the system may query Twitter SM to obtain information such as tweets posted by a user, and/or query Facebook SM to obtain additional information corresponding to the user, such as blogs and personal information.
  • This additional information may include gender information, age information, nationality information, personal preference information, purchase information, marketplace information, event information, acquaintance information, etc., or other information posted in connection with a user's SNS account at a corresponding SNS.
  • This information may then be used to, for example, to select and/or send contextual information, and/or to set a user's voice. For example, if the user is determined to be a female, the system may generate a female voice when converting text to voice. Likewise, a male voice may be used if it is determined that the user is a male. This setting may also be set by the user, as desired.
  • the system may allow a user to send updates such as, for example, spoken tweets (i.e., voice updates or voice blogs), blogs (e.g., mico-blogs, such as the kind supported by an SNS such as Twitter SM , etc., and may allow a user (i.e., a followee) to browse and/or listen to their own and/or their "followers” micro-blogs using a voice (e.g., speech) access method.
  • the term “followees” refers to SNS users (e.g., Twitter SM , Facebook SM , etc., users) whose updates are followed by, for example, caller(s) or "follower(s).”
  • the present system may "color" spoken updates or posts with predetermined sounds such as, for example, audio wallpapers which may include one or more sounds such as, for example, a main wallpaper, and/or location-dependent sounds such as "place sounds.”
  • the place sounds may correspond with predetermined sounds which are selected in accordance with a location of the user.
  • the system may update a user's location in real time at various times such as, for example, at predetermined intervals, when a new location is detected, etc.
  • the audio wallpapers may provide additional indication of a user's social presence while blogging in order to inform the user's friends (i.e., followers, etc.) of the user's approximate whereabouts and/or to further personalize the user's updates (e.g., posts, microblogs, blogs, etc.).
  • the term blogs may also refer to microblogs.
  • the present system may provide a universal speech-driven access method which may be compatible with SNSs such as blog services and the like.
  • the present application may provide a well-defined application interface (API) for voice service development on a front end and a set of libraries, wrappers and APIs for seamless integration with external applications and services on a backend.
  • API application interface
  • the present system may provide a user with a voice access to an SNS so that the user may post a user update on the SNS using, for example, a telephone. Further, the system may retrieve user text-based user updates which were posted on an SNS.
  • the present system may include a system, method, device, and/or an interface for distributing and/or rendering audio information.
  • the method may include one or more of the acts of receiving audio information; accessing user profile information corresponding to a user, combining predetermined sound information with the audio information so as to form composite audio information, and transmitting the combined audio information to one or more recipients.
  • the method may further include the act of selecting the predetermined sound information in accordance with the user profile information.
  • the method may also include the act of rendering the combined audio information.
  • the predetermined sound information may include at least one of an audio wallpaper and a sound relating to a selected location.
  • the method may further include the act of selecting the location based upon a geophysical location of a user or a user-selected location.
  • the method may also include an act of distributing the combined audio information to at least one further user.
  • the method may also include an act of determining whether the user has entered new audio information.
  • the combined audio information may include at least one of header, load, and footer portions.
  • the method may also include an act of inserting at least part of the predetermined sound information in at least one of the header or footer portions of the combined audio information. Moreover, the method may include an act of determining whether there is further audio information from the user or from a further user. The method may further include an act of transmitting a query including information related to the user.
  • a computer program stored on a computer readable memory medium may include one or more portions such as a program portion configured to receive audio information, access user profile information corresponding to a user, combine predetermined sound information with the audio information so as to form composite audio information, and/or transmit the combined audio information to one or more recipients.
  • the computer program may further include a program portion configured to select the predetermined sound information in accordance with the user profile information.
  • the computer program may also include a program portion to render the combined audio information.
  • the predetermined sound information may include at least one of an audio wallpaper and a sound relating to a selected location.
  • the computer program may also include a program portion configured to select the location based upon a geophysical location of a user or a user-selected location.
  • the computer program may also include a program portion configured to distribute the combined audio information to at least one further user.
  • the computer program may further include a program portion configured to determine whether the user has entered new audio information.
  • the combined audio information may include at least one of header, load, and footer portions.
  • a program portion configured to insert at least part of the predetermined sound information in at least one of the header or footer portions of the combined audio information.
  • a program portion which may be configured to determine whether there is further audio information from the user or from a further user.
  • the computer program may include a program portion configured to transmit a query including information related to the user.
  • the communication system may include one or more controllers (hereinafter controller) which receives audio information, accesses user profile information corresponding to a user, combines predetermined sound information with the audio information so as to form composite audio information, and/or transmits the combined audio information.
  • controller may also select the predetermined sound information in accordance with the user profile information.
  • the communication system may include a speaker which may render the combined audio information.
  • the predetermined sound information may include at least one of an audio wallpaper and a sound relating to a selected location.
  • the communication system may include a locator which determines a geophysical location of a mobile station (MS) of the user.
  • MS mobile station
  • the controller may distribute the combined audio information to at least one further user and/or determine whether the user has entered new audio information.
  • the combined audio information may include at least one of header, load, and footer portions.
  • the controller may insert at least part of the predetermined sound information in at least one of the header or footer portions of the combined audio information.
  • the audio information may be based upon text information that has been translated.
  • the controller may transmit one or more queries which include information related to the user. According to a further aspect of the system, there is disclosed a method of distributing information.
  • the method may include acts of receiving a call from a user, determining an identification (ID) of the user, accessing user profile information of the user, the user profile information including information related to account names and passwords for one or more social networking services (SNSs), receiving audio or textual information from the user, accessing one or more SNSs using the user profile information, and/or transmitting the at least one of audio and textual information or a link to the at least one or audio or textual information to the one or more SNSs.
  • ID identification
  • SNSs social networking services
  • the method may include the acts of, determining whether a user has posted information on one or more social networking services (SNSs), downloading the posted information based upon the determination, translating the downloaded posted information to audio information, determining one or more recipients for the posted information, and/or transmitting the audio information or a link to the audio information to the one or more recipients.
  • SNSs social networking services
  • the system may store audio information at a predetermined site (e.g., a database, etc.) and transmit a link to the stored data so that the audio information may be accessed by a recipient of the link.
  • a predetermined site e.g., a database, etc.
  • the audio information may include colored audio information, etc.
  • FIG. 1 shows a diagram of a communication system according to an embodiment of the present system
  • FIG. 2 is a flow diagram that illustrates a blog update process in accordance with an embodiment of the present system
  • FIG. 3 is a diagram of a communication system according to another embodiment of the present system.
  • FIG. 4 is a functional schematic of a mix servlet according to the present system
  • FIG. 5 is a diagram of a message according to an embodiment of the present system.
  • FIG. 6 shows a system in accordance with a further embodiment of the present system.
  • an operative coupling may include one or more of a wired connection and/or a wireless connection between two or more devices that enables a one and/or two-way communication path between the devices and/or portions thereof.
  • an operative coupling may include a wired and/or wireless coupling to enable communication between a content server and one or more user devices.
  • a further operative coupling, in accordance with the present system may include one or more couplings between two or more user devices, such as via a network source, such as the content server, in accordance with an embodiment of the present system.
  • rendering and formatives thereof as utilized herein refer to providing content, such as digital media, such that it may be perceived by at least one user sense, such as a sense of sight and/or a sense of hearing.
  • the present system may render a user interface on a display device so that it may be seen and interacted with by a user.
  • the present system may render audio visual content on both of a device that renders audible output (e.g., a speaker, such as a loudspeaker) and a device that renders visual output (e.g., a display).
  • a device that renders audible output e.g., a speaker, such as a loudspeaker
  • a device that renders visual output e.g., a display
  • the term content and formatives thereof will be utilized and should be understood to include audio content, visual content, audio visual content, textual content and/or other content types, unless a particular content type is specifically intended, as may be readily appreciated.
  • a device and technique for receiving a user's update (e.g., a blog or post), mixing the user's update with predetermined information so as to create mixed audio information, transmitting the mixed audio information to one or more followers, and rendering the mixed audio information.
  • the mixed audio information may be rendered via an audio and/or video device such as a speaker (SPK) and/or a display screen (e.g., a liquid crystal display).
  • SPK speaker
  • a display screen e.g., a liquid crystal display
  • the present system may collect statistics and/or preferences related to the user and/or user device in accordance with the present system, such as a relative time of an action, geolocation, network, etc.
  • the system, method, computer program, and/or device may receive audio information, access user profile information corresponding to a user, combine predetermined sound information with the audio information so as to form composite audio information, and render the combined audio information via a display.
  • the combined information may be distributed to selected recipients and thereafter rendered on one or more user interfaces which may include one or more speakers.
  • a diagram of a communication system according to an embodiment of the present system is shown in FIG. 1.
  • a system 100 may include one or more of base stations (BSs) 102-1 - 102-m, mobile stations (MSs) 104-2 - 104-n, one or more media servers 106, one or more networks 108, one or more web applications 1 10, and GPS transmitters 1 12.
  • BSs base stations
  • MSs mobile stations
  • networks 108 one or more web applications 1 10
  • GPS transmitters 1 12 GPS transmitters
  • Each base station 102-x has a corresponding service area SA-x, and may communicate with one or more MSs 104-x located in a service area of a corresponding base station 102-x using a wired and/or wireless communication method. Any suitable communication standard may be used.
  • Each MS 104-x may include any suitable communication device having a user interface.
  • MSs 104-x may include a personal communicator, a cell phone, a smart phone, a PalmTM, a personal digital assistant (PDA), a personal computer (e.g., a PC, a laptop, etc.).
  • the user interface may include one or more of a speaker, a display, a keyboard, a pointing device (e.g., a mouse, a touch pad, a touch screen, a track ball, or other suitable scrolling and/or pointing device), an audio input such as, for example, a microphone, etc.
  • Each MS 102-x may include a locator such as, for example, a global positioning system (GPS) or assisted GPS (AGPS) device or may receive signals from one or more location devices such as, for example, GPS satellites 1 12 to determine a location of the MS 102-x. Further, each MS 102-x may receive location information from the media server 106. Each MS 104-x may communicate with, a BS 102-x in which the MS is located using a suitable communication scheme (e.g., TDMA, CDMA, WiFi, Bluetooth, etc.).
  • a suitable communication scheme e.g., TDMA, CDMA, WiFi, Bluetooth, etc.
  • the media server 106 may communicate with one or more of the MSs 104-x via the BSs 102-2, via a wired link and/or via any other available link using any suitable communication scheme.
  • the media server 106 may receive information from one or more of the MSs 104-x and may determine the location of one or more of the MSs 104-x using this information.
  • the location of an MS 104-x may be determined using, for example, GPS, AGPS, triangulation, base-station identification, calling number identification (CID), and/or other suitable location technique.
  • the application server may then transmit location information to the MS 104-x or may use this information to determine a user location.
  • the user location may also correspond with one or more places (e.g., home, at work, travelling, etc.).
  • the location and/or palace information may be determined by the user and/or may be entered by a user.
  • the media server 106 may include functional components 1 14 and 1 16 and may communicate with desired Web applications 1 10 via any suitable method such as, for example, network 108, which may include one or more of a wide area network (WAN), a local area network (LAN), a proprietary network, the Internet, an intranet, etc.
  • the media server 106 may query one or more of the Web applications to determine whether user information has been updated (e.g., by editing, adding, deleting, replacing, changing, etc) the user information. The one or more queries may be performed at predetermined intervals or at other times, as desired.
  • the functional components 1 14 and 1 16 may include various components as will be described elsewhere.
  • the functional components 1 16 may include various components such as an audio component (Gigl Audio Comp-s) which may be used for processing and/or transmitting audio information, a digital audio library (DAL) and repository which may store various audio information in a suitable format, and a maintenance component (Gigl Man-t Comp-s) which may be used for maintenance and other housekeeping functions.
  • the functional component 1 14 may include an audio storage site and one or more external components which may emulate an SNS such as a Twitter SM simulator (Twitter sim-r) which may be used for simulating one or more SNSs or functions thereof.
  • the Web applications 1 10 may include one or more web applications which may include information related to a user of the present system.
  • the Web applications may include a web page provider, a social networking service provider such as, for example, a Facebook SM , Twitter SM , etc.
  • a user of the present system may include a user of, for example, an MS 104-x.
  • the user may have an account with one or more social networking services.
  • the query may include information which may be necessary to obtain information about a desired user who has an account with the one or more social networking services.
  • a query may include user identification (ID) which may be used to access the user's (social) Web page and/or other social network account information.
  • ID user identification
  • the media server 106 may receive information related to the user such as, for example, a user's latest blog, a user's latest post, a user's location, party/event information, friend information, and/or other information related to the user. Accordingly, the media server 106 may store information regarding Web applications (e.g., SNSs) which should be accessed based upon a user's ID.
  • Web applications e.g., SNSs
  • a user who posts information such as a "blog" to a Web application such as, for example, Facebook SM , Twitter SM , etc. will be known as a “blogger” or “followee” and a user who requests a posted blog of another user will be known as a “follower.”
  • a blogger may also receive the information (i.e., blogs) that were posted by the user.
  • a follower may also post blogs, etc.
  • information posted by the user will be known as “blogs” or user updates.
  • blogs may also include emergency information, municipal information, and/or other information that may be posted and/or requested by users.
  • a flow diagram that illustrates a blog update process in accordance with an embodiment of the present system is shown in FIG. 2.
  • a process 200 in accordance with an embodiment of the present system 200 may be performed using one more computers communicating over a network.
  • the process 200 can include one of more of the following acts. Further, one or more of these acts may be combined and/or separated into sub-acts, if desired.
  • the process may start during act 202 and proceed to act 204.
  • act 204 the process may receive user information entry (UIE) from a user such as a blogger.
  • UEE user information entry
  • the UIE may be transmitted from the user's MS or other communication device (e.g., a land-line phone, a personal computer (PC), etc.) and may include, for example, one or more of a user update (e.g., a micro-blog, a post, etc.), location information corresponding with a current location of the user, user identification (ID) information, etc.
  • a user update e.g., a micro-blog, a post, etc.
  • location information corresponding with a current location of the user e.g., a current location of the user
  • ID user identification
  • the system may determine a location of the user using any suitable method such as, for example, triangulation, base station location, GPS, AGPS, and/or other suitable methods. It is also envisioned that a user may not want location information used for various determinations or released to others.
  • the system may set a variable such as, a flag, to indicate that the process should not use the location information.
  • a flag such as, a flag
  • the process may set the location information to, for example, a default value (e.g., blanked out), so that the process would not use the location information unless the default value is purposefully changed by the user, for example, so that location information may be used thereafter. In either event, after completing act 204, the process may continue to act 206.
  • the process may color one or more parts of the UIE with associated audio and/or visual effects in accordance with user information so as to form colored UIE information.
  • the process may "color" spoken updates included in the UIE with predetermined sounds such as, for example, audio wallpapers which may include location dependent sounds such as "place" sounds and/or a main wallpaper.
  • the location dependent sounds may be selected by a user based upon the user's location.
  • the associated audio and/or video effects may also include information such as, time, place, user name, etc.
  • the main wallpaper may include an audio file, clip, and/or loop which was selected by, for example, the user.
  • the place sounds may correspond with predetermined sounds which are selected in accordance with a location of the user.
  • the system may update a user's location in real time such as, for example, at predetermined or other intervals, when a new location is detected, etc.
  • the audio wallpapers may provide additional indication of a user's social presence while blogging in order to inform their followers (e.g., friends), etc., of the user's approximate whereabouts and/or to further personalize the user's updates (e.g., micro blogs).
  • the process may determine the location of the user using any suitable method (e.g., GPS, AGPS, triangulation, base station ID, etc.). After completing act 206, the process may continue to act 208.
  • the process may provide (e.g., by transmitting) the colored UIE information to one or more selected recipients (e.g., followers). These recipients (e.g., followers) may be selected by the user and/or may be selected recipients based on a certain characteristic. For example, a selected recipient may log in to colored UIEs of a selected followee. Accordingly, the information may be singlecast, multicast and/or broadcast to the selected recipients. Further, the process may transmit the associated information when requested such as, for example, when an MS requests the associated information. The process may transmit the associated information as audio and/or video information to the selected recipients.
  • recipients e.g., followers
  • These recipients may be selected by the user and/or may be selected recipients based on a certain characteristic. For example, a selected recipient may log in to colored UIEs of a selected followee. Accordingly, the information may be singlecast, multicast and/or broadcast to the selected recipients. Further, the process may transmit the associated information when requested such as, for example, when an MS requests the associated
  • a follower or other user may transmit an SMS including certain information (e.g., a user's Facebook ID number) to an address (e.g., an SMS address of the system) so as to receive one or more colored UIEs corresponding to a certain user (e.g., the user with the Facebook ID).
  • certain information e.g., a user's Facebook ID number
  • an address e.g., an SMS address of the system
  • a diagram of a communication system according to another embodiment of the present system is shown in FIG. 3.
  • a system 300 may implement a voice user interface and may include one or more of a voice server 309, application servers 303, 305, 307, a database server/MySQL 320, a storage device (DriveHQ) 312, a voice server 309, and an external application server 313.
  • the system 300 may include one or more functions of the media server 106.
  • the voice server 309, application servers 303, 305, 307, the database server/MySQL 320, the storage device (DriveHQ) 312, the voice server 309, and the external application server 313 are shown separate from each other, their functions and/or components, may be combined in whole or in part. Further, one or more of the voice server 309, application servers 303, 305, 307, the database server/MySQL 320, the storage device (DriveHQ) 312, the voice server 309, and the external application server 313 may be located remotely from each other and may communicate via one or more operable couplings, such as networks.
  • the application server 303 may include one or more of a service function (blogging service, e.g., "Gigl Sevice") 302, a library function ("Gigl Library”) 314, and a database (DB) administration servlet 318.
  • the service function 302 may provide one or more of the following features or options to a user: (a) post a blog (e.g., a posting process), (b) listen to all blogs or blogs from an individual user, and (c) manage place (location) sounds and/or audio wallpaper. These features may form at least part of a menu (e.g., a voice menu) for a user's selection.
  • the user may select a desired feature using, for example, a voice or graphic based menu-system which may be output by the service function 302 to a Ul device such as a speaker and/or display (e.g., a speaker of a user's MS or land-line phone).
  • the service function 302 may be compatible with a service such as, for example, a network-based service that may implement a voice user interface and may communicate with the voice server 309.
  • the service function 302 may receive information, such as a user command (e.g., a user's voice command or key entry), processes this information accordingly, and output the processed information to the voice server 309.
  • the service function 302 may output voice information (e.g., the voice menu) to a user via the voice server 309.
  • the database (DB) administration sen/let 318 may perform one or more administration functions such as, for example, reset databases to a default state by, for example, executing *.sql scripts; reset the contents of a user's SNS account (e.g., Facebook SM , Twitter SM , etc.) and/or restart various servers or applications in the present system such as, for example, a Tomcat application server 321.
  • the DB administration servlet 318 may output a menu to a user and/or a system administrator for their convenience.
  • the voice server 309 may include, a suitable voice processing application such as, for example, a LoquendoTM runtime library 319 which may include a Loquendo (text to speech (TTS)) Engine.
  • a modified Loquendo sample application that may be included to provide support for the Loquendo TTS engine.
  • This, sample application may be written in a suitable language such as, for example, C.
  • the sample engine may include a command line utility that produces a number of sound files for a given number of text messages.
  • the usage of this command line utility may be defined by: TTSFileGenerator [options] ⁇ input_file>, where ⁇ input_file> may refer to a file to process. However, if no input file is listed, a standard input or default setting may be used.
  • One or more options of the command line utility that may be used are defined in Table 1 below. Table 1
  • the TTS servlet 306 may use this utility to convert text or the like (e.g., an SSML document) to a linear PCM audio tile such as, tor example, a 8kHz linear 16-bit PCM audio tile, for later use.
  • a Loquendo TTS SDK e.g., version 6.5 or 7.0 or later
  • a TTSFileGenerator 308 command line utility may be installed in an accessible directory (e.g., .../opt/Loquendo/LTTS/Samples/).
  • a suitable application to perform certain tasks of Runtime Library 319 may include, for example, a RealSpeak TTS engine which may include an application known as "standardex” which may process, for example, a text document and output a corresponding 8kHz linear 16-bit PCM audio file which may be referred to as, for example, "standardex.pcm".
  • the RealSpeakTM TTS engine may be included in, for example, a RealSpeechTM SDK which may be installed on the same server where the TTS servlet 306 is deployed.
  • a sample, install path for the RealSpeechTM SDK may include a path such as, for example, ".../usr/local/phoneweb/realspeak/".
  • the library function 314 may include an abstraction layer that may provide a common user interface (Ul) independent of a type of social networking service (SNS) provider (e.g., Facebook SM , Twitter SM , etc.) that is used by the user (e.g., Twitter SM , Facebook SM , etc.). Further, the abstraction layer may match user interfaces with options provided by the SNS provider. The system may use the library function 314 to access a desired SNS such as, for example, Twitter SM , Facebook SM , etc.
  • SNS social networking service
  • the library function 314 may access a data depository such as, for example, the Database server/MySQL 320 to obtain (e.g., by downloading) one or more of the following: (1 ) account user name (for the present system as opposed to an SNS account) and lookup by automatic number identification (ANI) digits, as well as a user's service subscriptions to an SNS (e.g., Twitter SM , Facebook SM ); (2) diary information which may include a single diary entry of a user (e.g., a user of the current system a "Gigl" user) which may include a timestamped name/value pair that can be used for the user related data recordings; (3) information related to pointers (e.g., URIs) for audio wallpapers and place (i.e., location) sounds which may be preselected by, for example, the user, the system, etc.; (4) blog (e.g., micro-blog) post history which may include a URL to an accessible (e.g., publicly accessible) wa
  • the library server 314 may also update and/or store information in a database such as, for example, the database server/MySQL 320.
  • the Drive HQ may be a storage service where service information is stored and may operate outside of the rest of the present system.
  • the application server 305 may include a mix servlet ("GiglMix") 304 that may communicate with the service function 302 and transmit and/or receive necessary information from the application server 303.
  • the service function 302 may transmit to the mix servlet 304 a list of uniform resource identifiers (URIs) (LU) to be sequenced, audio wallpaper, etc.
  • the list of URIs (LU) to be sequenced, audio wallpaper, etc. may be referred to as a sequence information list (SIL).
  • the mix servlet 304 may then transmit a request for information corresponding to the SIL (i.e., a SIR) using any suitable method.
  • the mix servlet 304 may transmit to the external application server 313, a SIR using a common file transfer protocol such as, for example, a HyperText Transfer Protocol (HTTP) GET to request information corresponding with the received SIL.
  • the SIL may include URIs of audio information that are to be sequenced and/or URIs of audio wallpaper corresponding to wallpapers that are to be mixed with corresponding sequenced audio information.
  • URIs may include file://URIs dependent upon whether the mix servlet 304 is installed in the same application server as the Gigl service.
  • the mix servlet 304 may cache the mixed audio in a cache such as, for example, an Apache Java Cache System (JCS). As JCS is well known in the art, a further description thereof will not be given.
  • the mixed audio may then be streamed back to the service function 302.
  • audio files may be transcoded if need be to, for example, to a suitable format such as a linear unsigned PCM 8-bit 8kHz using, for example, Java Media Framework (JMF). These converted files may also be cached in for example, the JCS cache.
  • the amplitudes of the two audio streams may be decreased by, for example, 3dB (or other predetermined amount) so as to decrease the likelihood of distortion.
  • JMF may be used by the system to transcode audio files from a linear ax-bit PCM to an ay-bit PCM (where ax and ay are integers).
  • the system may use JMF to transcode an audio file from a 16-bit PCM to, for example, an 8-bit PCM ⁇ -law.
  • a functional schematic of a mix servlet according to an embodiment of the present system is shown in FIG. 4.
  • the mix servlet may be similar to the mix servlet 304 shown in FIG. 3.
  • the mix servlet 304 may include a web service that may sequence input audio and/or mix the sequenced audio wallpaper so as to form mixed audio information.
  • Inputs to the mix servlet 304 may include, for example, audio resource URLs and/or corresponding parameters.
  • the mix servlet 304 may form mixed audio information using a mix 404 and then stream back and/or store the mixed audio information using any suitable method.
  • the mix servlet 304 may stream back the mixed audio information using an HTTP response.
  • the mix servlet 304 may be used by a process of the present system to generate audio output information that may transmitted to, for example, the service function 302 and output to user e.g., via a speaker (SPK).
  • SPK speaker
  • the mix servlet 304 may support any suitable information transfer method to send and/or receive various information.
  • the mix servlet 304 may support, for example, one or more of an HTTP GET and HTTP POST options. Further, the mix servlet 304 may be accessed using any suitable access method and may have a proprietary address (e.g., "http://server:port/GiglMix)" that may be used to communicate and/or access the mix servlet 304.
  • a proprietary address e.g., "http://server:port/GiglMix"
  • the mix servlet 304 may mix the updates with a corresponding wallpaper using the JMF to mix down two or more streams in real time.
  • a media server may deliver an audio update (e.g., a blog) through an audio connection.
  • the audio update may be downloaded through a data connection from, for example, a URL available on another service such as, for example, an SMS, IM and/or a Web service.
  • the system may optionally premix the audio update with a corresponding wallpaper and store the mixed audio update in a database, such as, for example, a network database and/or the JCS cache.
  • the mix servlet 304 may support one or more communication parameters such as, for example, those which are illustrated in Table 2 below. Table 2
  • the mix servlet 304 may stream back the mixed audio information using any suitable transmission method, such as, for example, an 8-bit PCM ⁇ -law at 8kHz.
  • the mixed audio information may include a header such as, for example, an HTTP header.
  • This header may include one or more of status information (e.g., status code: "200" OK), content type (e.g., audio/x-wav, etc.).
  • the HTTP header may include an empty HTTP header with a status code indicating that there is no content (e.g., status code "204" no content).
  • the mix servlet 304 determines that an input audio URL is determined to be invalid or that certain data may exceed predetermined limits (e.g., time, space, memory, etc.), the URL or an audio resource which depends upon the URL may be ignored. Further, a suitable corresponding message may be optionally output to a user, a system administrator, a database, etc.
  • predetermined limits e.g., time, space, memory, etc.
  • mix servlet 304 may cache an input audio stream as a file after being converted to, for example, a PCM ⁇ -law 8-bit encoding at 8 kHz sample rate. Thereafter, if it is determine that a subsequent HTTP request includes same URL as the cached audio input stream, the cached data corresponding to the cached audio stream may be retrieved and used.
  • the generated file may be temporarily stored in a database such as, for example, the App Server 305, for a predetermine time.
  • the voice server 309 may include one or more of the following a servlet such as a Tomcat application server 321 , a TTS servlet 306 (GiglTTS), an ssmLmarkup utility 316, a TTS file generator 308, and a Runtime Library 319.
  • a servlet such as a Tomcat application server 321 , a TTS servlet 306 (GiglTTS), an ssmLmarkup utility 316, a TTS file generator 308, and a Runtime Library 319.
  • the ssmLmarkup utility 316 may include a Perl-based utility (script) that may produce SSML markup from text strings that it may receive, and/or add the produced SSML markup to plain text posts (e.g., Twitter SM posts) using, for example a command such as, call tweet.
  • the ssmLmarkup utility 316 may use natural language processing concept to further identify the contents of post such as a Twitter SM post
  • the ssmLmarkup utility 316 may be used by, for example, the TTS servlet 306 to, for example, format raw text and send this formatted raw text to the TTS File generator
  • the ssmLmarkup utility 316 may also provide functionality, such as a sentence splitter, pause/break detection and/or a translation of elements such as, Emoticon,
  • the translation may be sent to, for example, the TTS file generator 308 or other elements of the present system for further processing.
  • the ssmLmarkup utility 316 may be implemented using any suitable method such as, for example, a Perl script which may operate using, for example, Perl 5.8 that may be installed on the same server where the TTS servlet 306 is deployed.
  • An installed path for Perl may include, for example, the following paths for WindowsTM and LinuxTM platforms as set forth in Table 3 below. Table 3
  • the ssmljmarkup utility 316 may be called by the TTS servlet306 to format raw text before sending off to, for example, the TTS file generator 308.
  • the TTS file generator 308 may include a command line program and/or may include a modified Loquendo sample application written in, a suitable language, such as, C and may receive a speech synthesis markup language (SSML) document as an input and may produce an encoded audio file such as, for example, a pcml 6 encoded audio file from this SSML document. To ensure compatibility, the TTS file generator 308 may be installed in the same server where the TTS 306 is installed. Further, SSML markup components may also be installed in this server. TTS File Generator 308 may include versions which are, for example, compatible with a Loquendo TTS engine and/or a RealSpeak(tm) TTS engine. The TTS File Generator 308 may convert input text to an audio file such as, for example, an 8 kHz linear 16-bit PCM audio file.
  • SSML speech synthesis markup language
  • the Tomcat application server 321 may include the TTS servlet 306 and may receive/transmit information to the service function 302 and may communicate with other elements within the voice server 309.
  • the Tomcat application server may operate in accordance with, for example, Tomcat 4.x or other applications.
  • the TTS servlet 306 may be a web service and/or may be compatible with suitable applications such as, for example, the Tomcat 4.x application server operating in Tomcat application server 321.
  • the TTS servlet 306 may render strings of text to audio files having a predetermined format such as, for example, TTS audio files. This servlet may run on the Tomcat application server 321 and/or may use different TTS engines to achieve a desire quality and/or flexibility.
  • the TTS servlet 306 may use an SSML markup component to enrich raw text according to different context of the input text. Further, the TTS servlet 306 may use a TTS file generator and SSML markup components.
  • the TTS servlet 306 may be located in for example, the voice server 309 and may receive a raw text string as input and return an expressive TTS as an output audio file. This output file may then be transmitted to, for example, the service function 302.
  • this input may be written to a file by the system.
  • the text can either be a name or a tweet (e.g., entered using Twitter SM via the Internet).
  • the ssml_markup tool 316 may be started and/or may be passed parameters which may include, for example, a name of the file, etc.
  • the smml_markup application may then process the file which corresponds to the received file name and output a corresponding XML file with embedded SSML tags. This XML file may then be transmitted to the TTS file generator 308.
  • the TTS servlet 306 may include a web service that may, for example, convert raw text input into a more expressive, natural, and/or fluent voice audio stream. This web service may use different text to speech TTS engines to achieve a desired quality.
  • the TTS servlet 306 may use an optional SSML Markup component to further enrich raw text according to a determined context of the input text.
  • the TTS servlet 304 may support, for example, various information transfer methods such as, for example, one or more of an HTTP GET and HTTP POST options.
  • the TTS servlet 306 may be accessed using any suitable access method and may have a proprietary address or URL such as, for example, (e.g., "http://server:port/GigllTS)" that may be used to communicate and/or access the TTS servlet 306.
  • a proprietary address or URL such as, for example, (e.g., "http://server:port/GigllTS)" that may be used to communicate and/or access the TTS servlet 306.
  • the TTS servlet 306 may support one or more communication parameters such as, for example, those which are illustrated in Table 4 below.
  • the TTS servlet 306 may stream back audio information that it generates using any suitable transmission method, such as, for example, an 8-bit PCM ⁇ -law at 8kHz (i.e., 8/8 or other values). Further, this audio information may include a header such as, for example, an HTTP header. This header may include one or more of status information (e.g., status code: "200" OK), content type (e.g., audio/x-wav, etc.) which, for the sake of simplicity, may be similar to status codes used by other applications.
  • status information e.g., status code: "200" OK
  • content type e.g., audio/x-wav, etc.
  • the TTS file generator 308 may receive the XML file and process this file and may output a corresponding audio file having a desired file format and bit rate such as, for example, a 16-bit PCM file.
  • the PCM file may then be streamed back to the service function 302 where it may be cached locally.
  • the application server 307 may include management components which may include one or more of an account management sever 310 (GiglWeb), an account management library 31 7 (Gigler Library), the administration servlet 318 (aka, DBAdmin servlet) and applications for logging, configuration, and/or provisioning.
  • the account management server 310 may include a web application that may provide basic account management functions.
  • the account management server 310 may interface with the account management library 31 7 to access, for example, various data through a database abstraction layer (DAL).
  • DAL database abstraction layer
  • the account management server 310 may include a graphical user interface (GUI) and/or a voice interface.
  • GUI graphical user interface
  • the account management server 310 may also access the administration servlet 318 which may perform various account and/or system functions such as, for example, a server reset.
  • the account management server 310 may include a separate web application that provides basic self serviced account management for one or more users of the present system (e.g., Gigl users).
  • the account management server 310 may interface with, for example, the Gigler library 31 7 to access and/or modify account information of users of the present system, which may be currently stored in a database such as, for example the Database Server/MySQL 320.
  • the account management server 310 may provide user account management functions which may include functions such as ( 1 ) new user account creation, (2) registered user profile update, (3) DB administration (admin), and/or other account management functions.
  • a new user may register (e.g., using a self registration) with the present system by, for example, providing one of more of (1 ) a Gigl username/password, (2) calling telephone ID or calling ID/password and/or (3) SNS username/password.
  • the Gigl username/password may be a unique user name that may be selected by a user or automatically selected by the system (e.g., if requested by a user).
  • the calling telephone ID may include one or more user telephone numbers or other identification numbers that may be used to identify a user when, for example, a user calls the system.
  • a user when a user calls the system from a telephone having a number which corresponds with, for example, the telephone ID (determined, for example, using ANI or other suitable method), the user may be automatically connected (e.g., by the system) to an SNS account (e.g, a Twitter SM , Facebook SM , or other account) using corresponding information (e.g., a username/password or other identification) that is saved by the present system. Accordingly, the user may then provide user updates (e.g., microblogs) using a voice rather than a text transmission.
  • SNS account e.g, a Twitter SM , Facebook SM , or other account
  • user updates e.g., microblogs
  • the present system may then translate the user's voice to a corresponding text file which may include other information such as, for example, time and place information, etc., and transmit this information to a corresponding SNS. Likewise, the present system may color the user update information (UIE) and transmit this information to predetermined followers.
  • UAE user update information
  • the present system may also recognize when a user is calling from home, work, a mobile number, etc., and use this information to determine a user's location.
  • the calling ID may correspond with a unique identifier that a user may use to identify the user.
  • the unique identifier may be used when, for example, a user accesses the present system using a communication means that may not correspond with a user's registered telephone number such as, for example, a telephone having a blocked caller ID setting, a public telephone, a phone on a private branch exchange (PBX) with multiple lines, or other communication means. Accordingly, after contacting the system, the user may enter (e.g., using a keyboard, a voice command, etc.) the registered calling ID (that may be unique to the user) and/or corresponding password to access the system. Then, the system may process the user's call in a similar fashion as when the user calls from a recognized phone.
  • a communication means that may not correspond with a user's registered telephone number such as, for example, a telephone having a blocked caller ID setting, a public telephone, a phone on a private branch exchange (PBX) with multiple lines, or other communication means.
  • PBX private branch exchange
  • the system may also have a setting which requires a user to enter a predetermined password which may be desirable when a user may share a telephone with others so that a user's privacy may be ensured. Accordingly, if several users share the same phone line, privacy may be assured through use of the user entered predetermined password.
  • a user is a registered user of the present system (e.g., a registered Gigl user)
  • the user may be able to login to, for example, the account management server 310 and modify user account setting and/or other information.
  • a user may add, change and/or modify information such as, an SNS username/password (e.g., a Gigl and/or Twitter SM username/password), user calling ID such as, for example, one or more user phone numbers, account preferences, etc.
  • SNS username/password e.g., a Gigl and/or Twitter SM username/password
  • user calling ID such as, for example, one or more user phone numbers, account preferences, etc.
  • the present system may operate as a part of network framework under a
  • the present system may utilize applications and/or features provided by, for example, the network framework and/or Tomcat application server to provide logging and/or configuration operations.
  • the system may rely upon this framework for caching and/or logging all events associated with voice processing and other functions of the present invention.
  • the present system may log all information (or select information) associated with internal processing and inter-component communication. It may also aid in the collection of relevant traffic data.
  • a Java application web.xml file may be used as a configuration data source for the system.
  • Configuration attributes introduced by the present system in a network application saved as a web.xml type file are shown below in Table 5.
  • Provisioning for accounts may be provided separately for front and back ends.
  • the present system may provide these functions as needed.
  • the present system may store per-user information that may not be stored and/or accessible by the SNS providers (e.g, Twitter SM , Facebook SM , blogging, micro-blogging sites, etc.) themselves. This per-user information may be necessary to support a rich audio-micro-blogging experience and/or may provide additional per-user information that the present system or components thereof (e.g., the service provider 302 or other elements/applications) may require.
  • SNS providers e.g, Twitter SM , Facebook SM , blogging, micro-blogging sites, etc.
  • the system may include one or more repositories, such as, for example, the Database Server/MySQL 320, which may store one or more "audio wallpapers" that may serve as background for the user's (e.g., the followee's) entries such as, for example, audio blog entries, which may personalized a user's identity and/or serve as a marker of a user's identity.
  • a user may define an arbitrary list of places that can be specified as the place (or location) from which, for example, a blog entry originates (or the user is currently located) and store this information in the one or more repositories.
  • the term audio wallpaper as utilized herein may be referred to simply as "wallpaper" unless context indicates otherwise.
  • the Database Server/MySQL 320 may store user information such as, for example, one or more of audio wallpapers, corresponding user locations, and other per-user information.
  • the Database Server/MySQL 320 may also store other local information.
  • the account management library 317 may include an abstraction layer that may attempt to front SNSs (e.g., Twitter SM , Facebook SM , micro- blogging services, etc.) with a common interface.
  • the service function 302 may use the account management library 317 to gain access to an SNS such as, for example, Twitter SM , Facebook SM , etc., using a common interface.
  • the account management library 317 may use the database server/MySQL320 as a data repository for storing data for later use.
  • the user information may supplement user profile information (UPI) that is stored at an external application (e.g., Twitter.com and/or Facebook.com).
  • the database server/MySQL 320 may also store URLs referring to audio user updates (e.g., micro-blog entries which may include spoken microblog entries, etc.) and/or other audio assets.
  • the user information may be used by the system to perform various functions such as is shown in Table 6 below.
  • the system may also include External Application Wrappers (EAWs) such as, for example, JavaTM wrappers which may be used to integrate communication between the present system with external applications such as, for example, SNS applications (e.g., Twitter SM , Facebook SM , etc.).
  • EAWs External Application Wrappers
  • the EAWs may provide a plurality of general functional layers.
  • the general function layers may include an "upper" functional layer which may be generic so as to minimize work which may be necessary for switching providers; and a "lower" functional layer may be used for actual communication with the external applications such as SNSs (e.g., Twitter SM , Facebook SM , etc.).
  • a Twitter Wrapper may use a 'ThinkTank Java Twitter API" to interface with Twitter.com based upon configuration information such as, for example, user name, password, SNS service (type), etc.
  • configuration information such as, for example, user name, password, SNS service (type), etc.
  • the ThinkTank Java Twitter API may be extended to communicate with, for example, a Twitter SM simulator for testing and/or other purposes based on the configuration information.
  • a Facebook Wrapper may use a 'ThinkTank Java Facebook API" to interface with Facebook.com in a similar fashion.
  • the present system may also include a front end visual user interface (VUI) API which may provide convenient access to user profile information and other information to, for example, service developers. Accordingly, these service developers may easily introduce new functionality to Service VUIs and/or introduce new voice services to the present system.
  • VUI visual user interface
  • the front end VUI API may be invoked using an exception mechanism and may provide general common functionality that can be used for speech-driven projects, such as uniform handling of retries and disambiguation.
  • the present system may provide an external application which may include an SNS.
  • the external application server may provide, for example, a full-scale blog system (e.g., an SNS service) built upon Ruby on Rails or other suitable structure.
  • This full-scale blog system may provide for the creation of traditional web blog forums, specialized microblog forums, and/or other forums or services such as, for example, an SNS simulator (e.g., a Twitter SM Simulator, etc.).
  • SNS simulator e.g., a Twitter SM Simulator, etc.
  • a major difference between them is in the treatment of forum topics.
  • micro-blog forums are typically user-centric.
  • a typical micro-blog forum topic may be associated with a particular user and only this user may submit updates to his topic, although, all members of the user's community may typically have access to read them.
  • these forums are typically topic-centric and allow the creation of multiple topics by users who may contribute to each topic.
  • the present system may also provide a simple mail service (SMS) notification that may provide blogs, posts, updates, and/or associated information to a user's (e.g., a follower's) account phone number if a user has selected this options. Accordingly, the follower may receive a followee's updates over SMS if desired.
  • SMS simple mail service
  • the present system may include an audio file server which may provide online storage and sharing of audio files. These files may be accessible from a network such as, for example, the Internet so that, an SNS (e.g., Twitter SM ) user may access the files via an interface (e.g., a Web, Mobile, etc. interface).
  • a network such as, for example, the Internet so that, an SNS (e.g., Twitter SM ) user may access the files via an interface (e.g., a Web, Mobile, etc. interface).
  • an SNS e.g., Twitter SM
  • an interface e.g., a Web, Mobile, etc. interface
  • a recorded post (user update) may be uploaded to the audio file server via, for example, an FTP protocol. Then, the recorded post may be loaded from the audio file server via an HTTP protocol by a user request.
  • An account setup/management process in accordance with an embodiment of the present system will now be described. Before a user may use the present application, it may be necessary to open a separate SNS account (e.g., a Twitter SM account that may be created through, for example, "http://twitter.com”), so that an external interface may be created for the present system to interact with, for example, the account management server 310 so that necessary information (e.g., user account information) may be downloaded by the present system.
  • SNS account e.g., a Twitter SM account that may be created through, for example, "http://twitter.com”
  • necessary information e.g., user account information
  • the present system may include an SNS server which may provide a user with an account and may provide account information to various elements of the system. Further, the present system may also provide a testing SNS server which may be used for system maintenance, testing, and/or other purposes.
  • the system may also establish an SNS account using information related to a user which may have been provided when a user subscribed to a telephony service such as, for example, a landline (e.g., pots) telephone, cellular and/or other mobile account.
  • a landline e.g., pots
  • the storage device 312 may provide online services such as, for example, online storage and file sharing to users.
  • the storage device 312 may be controlled so as to limit, for example, an amount of storage (e.g., I GB), a maximum download in bytes per unit time (e.g, 200MB/month), a maximum number of FTP connections (e.g., 2 max), and/or a maximum download or upload speed (e.g., 220 KB/sec).
  • the storage device may be controlled by the account management server 310 so as to provide a desired type or quality-of-service (QoS).
  • QoS quality-of-service
  • the external application server 313, may include applications that may be used access any SNS such as, for example, Twitter SM , Facebook SM , etc.
  • the application server 313 may also include applications for emulating an SNS (e.g., Facebook SM , etc.), which may be used, for example, to set up a user's account, testing, development, during network failures, and/or for other uses.
  • the application server 313 may access SNSs using any suitable network (e.g., the Internet, an intranet, a LAN, WAN, proprietary network, a system bus, etc.).
  • Recorded audio may be captured by the system using, for example, the service function 302 using any suitable method.
  • the service function 302 may use a record tag such as, for example, a VXML ⁇ record> tag using an audio type of audio/x-wav (e.g., 8-bit 8kHz ⁇ -Law) and a maximum recording time of 30000ms.
  • audio type and/or maximum recording type can include other settings.
  • the recorded audio post (e.g., blog) may be uploaded to, for example, the application server 307 encoded as, for example, multipart/form-data in any suitable file format.
  • the audio may also be transmitted without encoding and/or as a live stream, as desired.
  • An audio decoding application may be used to record decoded audio which corresponds with the coded audio file.
  • an Apache.commons.file ⁇ pload library may be used to decode the encoded audio file attachment.
  • the system may also store the audio file in a memory as will be described below.
  • the system may then create a new mixed audio file by invoking, for example, the mix servlet 304, and passing the recorded post and corresponding audio wallpaper and/or place sound to the mix servlet 304.
  • This may be done directly or by passing pointers (e.g., URI's) to the mix servlet 304 as is described herein.
  • pointers e.g., URI's
  • JMF Java Media Framework
  • This process may be performed by a media server.
  • the system may build a new audio file using (which may be known as a mixed audio file), for example, a sequence of audio files or audio information, as shown in Table 7 below, one or more of which may be merged with an audio wallpaper.
  • a mixed audio file for example, a sequence of audio files or audio information, as shown in Table 7 below, one or more of which may be merged with an audio wallpaper.
  • the location/place may be indicators of a user's (i.e., followee) social presence while blogging and may be used to inform followers (e.g., friends) of the user's approximate whereabouts.
  • the user's location may be determined automatically using any suitable method for determining a location of, for example, a mobile station (MS) and may be indexed by the system against a user-defined (or system-defined) set of locations.
  • MS mobile station
  • geolocation is well known in the art, for the sake of clarity, it will not be discussed.
  • a message 500 may include a mixed audio file.
  • the message may include one or more time zones each of which may include a specific data entry.
  • One or more of the time zones may have a variable length and/or may have a fixed length.
  • the post time zone e.g., see, T2
  • the system may clip information (e.g., at the beginning and/or the end) so that the information may fit in a predetermined time zone.
  • the main wallpaper may have a variable level (e.g., a ramped level) that may be determined by the user and/or the system, and may be superimposed upon other audio information. It is also envisioned that the main wallpaper may be optional.
  • posts e.g., Tweets
  • Table 8 Several examples of posts which may be formed using an audio and/or text post process according to the present system are shown in Table 8 below.
  • the present system may also provide information about the origin of a post (e.g., from Tweeter).
  • the present system may also determine whether a new post has been posted on an SNS by a user, and render the post using a rendering process according to the present invention (e.g., an audio rendering) with a format, such as, for example, is shown in Table 7 above, when it is determined that a user has posted a new post.
  • a rendering process according to the present invention e.g., an audio rendering
  • the system may translate this post into an audible message. For example with respect to Robyn Andersons post "only skinny people...," the system may perform the following actions on the post: using a predetermined "Loop #30" audio wallpaper (as per the user's selection), the system may convert the audio wallpaper to an 8/8 mono, full amplitude range, reduced by 6dB; the system may also stereo sound mix a digital rendition of a post (e.g., a user's talk track) by 75% and the converted audio wallpaper soundtrack by 25%. The volume of the mixed information may then be raised by 3dB. The system may then transmit a corresponding mixed audio file to one or more selected recipients (e.g., a followee(s)).
  • a followee(s) e.g., a followee(s)
  • the mixed audio file may have other formats.
  • the mixed audio file may, only include, for example, post, a header, an origin, a place, a first trailer, a second trailer, and/or a third trailer.
  • the location of these items may be changed by the system and/or by the user. Accordingly, a user may form personalized blogs.
  • the system may insert a suitable delay (e.g., a one-second delay), between mixed audio files that are to be output to a user.
  • speech recordings may have a certain range such as, for example, from 1 to 30 seconds in length. However, other ranges or maximum values are also envisioned.
  • the system may dynamically process the recordings by clipping samples, normalizing, de-esseing, digital signal processing (DSP), etc.
  • a TTS rendering of the followee's name may not included in the sequence, if desired.
  • the system determines that a user does not have a place sound associated with the place option, no place sound is played.
  • the mixed file may have a file name which corresponds with a predetermined format.
  • This format may, for example, include one or more of the user's (ID) (e.g., user name), an underscore, the time that the file was created by the system or uploaded by the user, etc.
  • the time format may correspond with for example, a format such as a year month day, hour minute second (yyMMddHHmmssSSS) format.
  • Post method may be called with a URL which points to a storage device such as, the storage 312 (DriveHQ) and a file name of the generated mixed file (i.e., the mixed audio file (MAF)).
  • This method may be used for generating a posting on a designated SNS service (e.g., Facebook SM , Twitter SM , Orange SM BB, etc.).
  • a successful posting may in on eembodiment of the present system, generate a suitable message indicating that the posting was successful.
  • a successful posting may return a Tiny URL representation of the URL of a storage device such as, for example, storage 312 (i.e., DriveHQ URL), which may be stored in a database such as the storage 312 for later use.
  • the system may use, for example, the service function 302 (e.g., the Gigler Service) to transmit the MAF in memory to a storage device such as, for example, the Storage 312 (DriveHQ).
  • the service function 302 e.g., the Gigler Service
  • the Storage 312 DriveHQ
  • This may be accomplished using any suitable method such as, for example, an FTP.
  • the service function 302 may then save the original unmixed audio file to a location on a storage device such as, for example, a local hard drive.
  • the location of the file may be configurable via the systems web.xml.
  • the system may select a file name based upon on a post ID (e.g., a Twitter SM post ID) which may be returned by the Gigler Library 317.
  • a post ID e.g., a Twitter SM post ID
  • the present system When the present system receives a new call (e.g., from a follower which will now be referred to as a user for the listening process), it may respond to the call accordingly using, for example, the service function 302. Accordingly, for example, when the service function 302 (Gigl service) receives a new call, it may invoke the Gigler Library 314 to download for example, the last 20 posts (e.g., a Twitter SM limitation) of each of the user's followees.
  • the service function 302 Gigl service
  • Gigler Library 314 to download for example, the last 20 posts (e.g., a Twitter SM limitation) of each of the user's followees.
  • the system may also look up the user and the followees on Facebook SM to determine their gender and/or any marketplace listings or future events such as, for example, an invitation to a romantic piano concert followed by a wine reception.
  • the system may perform these acts asynchronously or synchronously, as desired.
  • the user i.e., a follower in the present example
  • the system may output these posts (e.g., tweets, etc.) in a predetermined format.
  • this predetermined format may include a sequence blended with the audio wallpaper (e.g., see, discussion of GiglMix below for details). This sequence may include any of the following elements set forth in Table 9 below. Further, the order of any of the elements may be set by a user or the system, as desired, for further personalization. Table 9
  • the TTS rendering may be performed by the TTS sen/let 306.
  • While the present system plays a post (e.g., a tweet) to a user (i.e., the follower), another post (e.g., a tweet) to be played at a later time, may be composed in a background thread and outputted to the user immediately following the first post.
  • a post e.g., a tweet
  • another post e.g., a tweet
  • the system may output a first media stream which corresponds with the post and may include the spoken update, and time, origin, and location prompts.
  • the system may also include, for example, navigation elements such as, earcons and/or placesounds at, for example, the end of the media stream. These items may be sequenced and pushed through a single audio stream (e.g., from a source to a sink). Before playing a media stream, the system may insert a silent period (e.g., one second, etc.).
  • the system may output a corresponding subsequent media stream which may have a similar format as the first media stream.
  • the system may, for example, form a sequence as shown in Table 10 below.
  • Audio Post (silence may be trimmed on both sides to, for example, 500msec.)
  • the system may output an "add the list-end" earcon for the user's convenience.
  • the subsequent media stream(s) may include one or more corresponding audio wallpapers. If the corresponding wallpaper is a loop, the loop may be repeated end-to-end until a media stream corresponding with the post has finished. When the first media stream finishes, the subsequent media stream may be faded in/out over a certain period of time.
  • the system may also balance audio streams differently from each other.
  • the system may also balance a user's post (e.g., a media stream containing voice or talk tracks) differently from a media stream containing a tune such as, for example, a media stream include a main wallpaper that is looped.
  • a user's post e.g., a media stream containing voice or talk tracks
  • a media stream containing a tune such as, for example, a media stream include a main wallpaper that is looped.
  • the following balance may be used for wallpapers which may include loops.
  • JMF amplitude mixdown audio track 20%; talk track 80%.
  • the talk track may include speech elements (e.g., the users post, time, place, etc) and the audio track may include the main wallpaper.
  • an algorithm may dynamically determine correct amplitude proportions using, for example, a wide-averaging filter window to determine the amplitudes of the audio track and talk tracks and may thereafter adjust the amplitudes correspondingly. Accordingly, the system may determine a best ratio between an audio track and the talk track in decibels and amplify these tracks according to the determined ratio.
  • the present system may provide service features via a user interface which may be used by a user to personalize and/or customize the user's account.
  • the user interface may be provided by, for example, the service function 302, and may provide a suitable user interface such as, for example, a voice-based user interface (VUI) and/or a graphical user interface (GUI).
  • VUI voice-based user interface
  • GUI graphical user interface
  • the service features may be provided by the service function 302 which may implement the VUI based on a suitable platform such as, for example, a network-based platform.
  • the service features may include one or more options which provide for a user to post voice updates (blogs), browse and/or listen one or more particular user's (or all user's) microblog entries, manage audio wallpapers, add/change/modify sound and/or account preferences.
  • the present system may present options such as those listed in Table 1 1 for a user's selection.
  • the system may direct a user automatically to a Blog (e.g., post) section first when the call is accepted by the present system.
  • a Blog e.g., post
  • the user may set a call option to direct the user to another menu, as desired, when a call is accepted.
  • the main menu may be presented to a user when a user specifically requests the main menu during the call.
  • the main menu may offer transitions to other service options in accordance with the present system, such as blog, listening (e.g., to blogs, tweets, etc.), and/or managing options associated with the user's account.
  • the user may be presented with an audible menu which may include sound effects such as, for example, "earcons” so as to present a common voice user interface (VUI).
  • the ViU may output earcons which may include, navigation commands such as (e.g., list- next, list-prev., list-end, etc.) in a VUI.
  • New voice updates may be posted through the present system and may include optional place information that may be related to a place or location of the user.
  • the place information may include an associated audio wallpaper.
  • the system may present the user with an option to select one or more audio wallpapers. Further, the user may select whether to make the wallpaper place independent. Accordingly, if the user has selected the option to make the wallpaper place independent, a default wallpaper or no wallpaper may be associated with the user's new voice update.
  • the present system may also allow a user to set one or more listening options such as, for example, those shown in Table 12 below.
  • the present system may provide one or more browsing options or navigation options such as "next" or "previous” that may be output to a user before, during, or after listening to/for updates.
  • the system may also provide the user with an option to select and/or to reply to a particular update, listen to a different friend, and/or go to main menu.
  • the present system may also include an audio wallpaper management function that may provide the user an interface to manage audio wallpapers.
  • audio wallpaper may include a main wallpaper and/or a place sound that a user may select and/or associate with a predetermined area and/or place using the present system.
  • the main wallpaper may be selected by a user from a predefined list and/or from other sources available to the user, and may be mixed with the user's audio updates that are created using the present system.
  • the user's audio updates may be uploaded to, for example, the audio file server to be extracted later by, for example, users of an SNS such as Twitter SM .
  • the user's audio update may be stored (unmixed) in, for example, the application server 307 or other database of the system.
  • the user may also select an option to loop the wallpaper. Further, the system may loop the wallpaper or select another audio wallpaper when the audio wallpaper is shorter than a user's update.
  • the system may select a downsampling speed for the audio wallpaper (e.g., in a ax-kHz, ay-bit, format) such as, for example, 16kHz, 1 obit mono stream, where ax and ay may be integers).
  • the user's audio update may be mixed with a corresponding wallpaper to create a mixed audio file.
  • the mixed audio file may included an arrangement of different elements such as, for example, the wallpaper, the audio update, a time stamp, location/place information, silent areas, and/or other information, that may be played back by, for example, the present system.
  • the system may also process updates that are created by, for example, text (e.g., via IM, SMS, Web, etc.), convert the audio update to corresponding audio information, insert an audio wallpaper in the corresponding audio information so as to form mixed audio information and/or render the mixed audio information via, for example, an audio interface to a selected recipient.
  • one or more wallpapers may be used to personalize a user's (e.g., a followee's) updates, independent of how the updates are created, when other users (e.g., followers) listen to an output of the service.
  • the system may provide a user with an option to manage a place sound.
  • a place sound may include a short sound effect like a car screech or a laugh that may be associated by the user with an area, place, etc.
  • a corresponding place sound may be rendered by the system to an audio output such that the corresponding place sound may be heard by followers such as, the user's friends, when they listen to the user's (i.e., the followee's) audio blog.
  • the place sounds may include musical files which may be recorded by a user (e.g., from an audio file, an electronic musical interface (e.g., a guitar, piano, etc.), etc., or may be selected from one or more databases of the system.
  • a user may be offered free and/or paid musical file selections. These selections may include MIDI sample musical loops for a user's selection.
  • a cost management function may be included to determine cost of available musical files. Thus, music from commercial artists may be provided free and/or at cost depending upon a system configuration. The system may trim silent areas from the beginning and/or end of the selected musical files.
  • the place sounds may range in length and/or amplitude and/or may be preprogrammed for use by the present system.
  • the place sounds may include areas, places and/or locations which may be associated with a corresponding place sound as shown in Table 13 below. Table 13
  • the predefined locations may be preselected by the system or may be selected by a user. Additionally, each location may be assigned a geophysical location such that the location may be determined using a system (e.g., GPS, triangulation, base station ID, etc.). Further, the location may also be determined by identifying transmission phone ID (e.g., phone numbers, exchange numbers, etc.). For example, when calling from a home number, the system may determine that the location corresponds with the HOME location.
  • the NOWHERE selection may be a location that is not a location. In other words, a user may choose the NOWHERE selection (or the like) in order to avoid others from knowing where they are. In a case wherein the NOWHERE location is selected, an audio update may include it (e.g., "2 hours ago from Orange
  • the service could ignore the location notification altogether and output a message without location notification (e.g. "2 hours ago from Orange Gigl").
  • the system and/or the user may select a default location that may be used when a location is not given and/or cannot be determined.
  • the user and/or system may select, add, change, and/or delete locations and associated information (e.g., associated ID, place sounds, etc.). Further, the NOWHERE selection may have an associated place sound.
  • users e.g., followees
  • a second update may then be transmitted to the user or users.
  • a silent period of, for example, one second may be placed between updates.
  • the user may also be presented with an option to select one or more main wallpapers which may include audio information such as, for example, a sound, a song, a tune, a chord, a user recording, etc.
  • main wallpapers may include audio information such as, for example, a sound, a song, a tune, a chord, a user recording, etc.
  • Table 8 Several samples of main wallpapers are shown in Table 8 below. The user has selected one of them for current use.
  • the system may also perform various processing on the audio wallpaper so that it may have a desired audio quality.
  • the audio wallpaper may be amplified, attenuated, filtered and/or de-essed, if desired. Further, the system may trim silence at the beginning and/or end of the wallpaper.
  • FIG. 6 shows a system 600 in accordance with another embodiment of the present system.
  • the system 600 includes a user device 690 that has a processor 610 operationally coupled to a memory 620, a rendering device 630, such as one or more of ⁇ display, speaker, etc., a user input device 670 and a content server 680 operationally coupled to the user device 690.
  • the memory 620 may be any type of device for storing application data as well as other data, such as places, audio wallpapers, content, reaction indications, tallied reaction indications, comments, graphing data, such as heat map data, heat line graph data, heat comment graph data, etc., play lists, recommended content, etc.
  • the application data and other data are received by the processor 610 for configuring the processor 610 to perform operation acts in accordance with the present system.
  • the operation acts include controlling at least one of the rendering device 630 to render one or more of the GUIs and/or to render content, such as a blog (audio, visual, etc.), wallpaper, etc.
  • the user input 670 may include a keyboard, mouse, trackball or other devices, including touch sensitive displays, which may be stand alone or be a part of a system, such as part of a personal computer, personal digital assistant, mobile phone, converged device, or other rendering device for communicating with the processor 610 via any type of link, such as a wired or wireless link.
  • the user input device 670 is operable for interacting with the processor 610 including interaction within a paradigm of a user interface (e.g., GUI, VUI, etc.) and/or other elements of the present system, such as to enable web browsing, content selection, such as provided by left and right clicking on a device, a mouse-over, pop-up menu, etc., such as provided by user interaction with a computer mouse, etc., as may be readily appreciated by a person of ordinary skill in the art.
  • a user interface e.g., GUI, VUI, etc.
  • other elements of the present system such as to enable web browsing, content selection, such as provided by left and right clicking on a device, a mouse-over, pop-up menu, etc., such as provided by user interaction with a computer mouse, etc.
  • the rendering device 630 may operate as a touch sensitive display for communicating with the processors 610 (e.g., providing selection of a web browser, a Uniform Resource Locator (URL), portions of web pages, etc.) and thereby, the rendering device 630 may also operate as a user input device.
  • the processors 610 e.g., providing selection of a web browser, a Uniform Resource Locator (URL), portions of web pages, etc.
  • the rendering device 630 may also operate as a user input device.
  • a user may interact with the processor 610 including interaction within a paradigm of a Ul, such as to support content selection, input of reaction indications, comments, etc.
  • the user device 690, the processor 610, memory 620, rendering device 630 and/or user input device 670 may all or partly be portions of a computer system or other device, and/or be embedded in a portable device, such as a mobile station (MS), mobile telephone, personal computer (PC), personal digital assistant (PDA), converged device such as a smart telephone, etc.
  • MS mobile station
  • PC personal computer
  • PDA personal digital assistant
  • converged device such as a smart telephone, etc.
  • the user device 690, corresponding user interfaces and other portions of the system 600 are provided for browsing content, selecting content, providing reaction indications, reaction indication palettes, etc., and for transferring the content and reaction indications, tallied reaction indications, etc., between the user device 690 and the content server 680.
  • the methods of the present system are particularly suited to be carried out by a computer software program, such program containing modules corresponding to one or more of the individual steps or acts described and/or envisioned by the present system.
  • a computer software program such program containing modules corresponding to one or more of the individual steps or acts described and/or envisioned by the present system.
  • Such program may of course be embodied in a computer-readable medium, such as an integrated chip, a peripheral device or memory, such as the memory 620 or other memory coupled to the processor 610.
  • the computer-readable medium and/or memory 620 may be any recordable medium (e.g., RAM, ROM, removable memory, CD-ROM, hard drives, DVD, floppy disks or memory cards) or may be a transmission medium utilizing one or more of radio frequency (RF) coupling, Bluetooth coupling, infrared coupling etc. Any medium known or developed that can store and/or transmit information suitable for use with a computer system may be used as the computer-readable medium and/or memory 620.
  • RF radio frequency
  • the computer-readable medium, the memory 620, and/or any other memories may be long-term, short-term, or a combination of long-term and short-term memories. These memories configure processor 610 to implement the methods, operational acts, and functions disclosed herein.
  • the operation acts may include controlling the rendering device 630 to render elements in a form of a Ul and/or controlling the rendering device 630 to render other information in accordance with the present system.
  • the memories may be distributed (e.g., such as a portion of the content server 680) or local and the processor 610, where additional processors may be provided, may also be distributed or may be singular.
  • the memories may be implemented as electrical, magnetic or optical memory, or any combination of these or other types of storage devices.
  • the term "memory" should be construed broadly enough to encompass any information able to be read from or written to an address in the addressable space accessed by a processor. With this definition, information on ⁇ network is still within memory 620, tor instance, because the processor 610 may retrieve the information from the network for operation in accordance with the present system. For example, a portion of the memory as understood herein may reside as a portion of the content server 680.
  • the content server 680 should be understood to include further network connections to other devices, systems (e.g., servers), etc. While not shown for purposes of simplifying the following description, it is readily appreciated that the content server 680 may include processors, memories, displays and user inputs similar as shown for the user device 690, as well as other networked servers, such as may host web sites, etc. Accordingly, while the description contained herein focuses on details of interaction within components of the user devices 690, it should be understood to similarly apply to interactions of components of the content server 680.
  • the processor 610 is capable of providing control signals and/or performing operations in response to input signals from the user input device 670 and executing instructions stored in the memory 620.
  • the processor 610 may be an application- specific or general-use integrated circuit(s). Further, the processor 610 may be a dedicated processor for performing in accordance with the present system or may be a general-purpose processor wherein only one of many functions operates for performing in accordance with the present system.
  • the processor 610 may operate utilizing a program portion, multiple program segments, or may be a hardware device utilizing a dedicated or multi-purpose integrated circuit.
  • the present system may be utilized to determine the whether a user has left an update such as a voice or text update and push content which corresponds with the detected update and/or corresponding information such as, for example, a corresponding information related to an associated audio wallpaper.
  • the present system may be provided in a form of a content rendering device, such as a MS.
  • a further embodiment of the present system may provide a Ul that operates as a browser extension, such as a rendered browser toolbar.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Transfer Between Computers (AREA)
  • Telephonic Communication Services (AREA)

Abstract

A system, method, device, and interface for rendering audio information, the system, method, and/or device may receive audio information; access user profile information corresponding to a user; combine predetermined sound information with the audio information so as to form composite audio information; and render the combined audio information.

Description

COMMUNICATION SYSTEM INCORPORATING COLLABORATIVE INFORMATION EXCHANGE AND METHOD OF OPERATION THEREOF
FIELD OF THE PRESENT SYSTEM: The present system relates to at least one of a system, method, user interface, and apparatus for distributing contextual information via a network and performing context-driven actions based on user-specific information.
BACKGROUND OF THE PRESENT SYSTEM: As social networking and "blogging" have gained popularity, it has become common to upload and/or download messages known as blogs throughout the day. However, as most blogging services are geared towards personal-computer-based blogging, users may not be capable of conveniently receiving and/or sending blogs when in a mobile environment in which network access and/or user interface (Ul) capabilities are limited. For example, because of limited network access, certain areas may not have Internet access, and, thus, a user may not be able to access a desired blog page via the Internet. Further, when using a mobile station (MS) such as a personal communicator, cell phone, smart phone, Palm™, personal digital assistant (PDA), and the like, which typically have a limited Ul (e.g., no display or a limited display area), a user may not be able to conveniently access a desired blog.
Further, although typical social-networking and/or micro-blogging services, such as FacebookSM and TwitterSM (hereinafter SNSs), allow users to post messages on a user's blog page, they do not provide real-time context-driven voice access to online messages such as "blogs," "microblogs," and the like. Lastly, a user may not be able to use a display to access and/or view blogs when, for example, driving a car, etc. Accordingly, there is a need for a real-time context-driven voice access to online messages such as "blogs," "microblogs," and the like.
SUMMARY OF THE PRESENT SYSTEM:
It is an object of the present system to overcome disadvantages and/or make improvements in the prior art.
Accordingly, the present system include a system, method, device, and/or interface which may provide a speech-driven service that may provide voice access to online microblogs such as those which may be found on an SNS such as, TwitterSM or other SNSs such as FacebookSM, etc. For the sake of clarity, the term microblogs may also include the blogs. The present system may integrate with one or more third-party communication services such as, for example, SNSs or the like, to obtain information related to the user when it is determined that the user is a member of two or more SNSs. For example, when it is determined that the user is a member of FacebookSM and TwitterSM, the system may query TwitterSM to obtain information such as tweets posted by a user, and/or query FacebookSM to obtain additional information corresponding to the user, such as blogs and personal information. This additional information may include gender information, age information, nationality information, personal preference information, purchase information, marketplace information, event information, acquaintance information, etc., or other information posted in connection with a user's SNS account at a corresponding SNS. This information may then be used to, for example, to select and/or send contextual information, and/or to set a user's voice. For example, if the user is determined to be a female, the system may generate a female voice when converting text to voice. Likewise, a male voice may be used if it is determined that the user is a male. This setting may also be set by the user, as desired.
According to one aspect of the present application, the system may allow a user to send updates such as, for example, spoken tweets (i.e., voice updates or voice blogs), blogs (e.g., mico-blogs, such as the kind supported by an SNS such as TwitterSM, etc., and may allow a user (i.e., a followee) to browse and/or listen to their own and/or their "followers" micro-blogs using a voice (e.g., speech) access method. As used herein, the term "followees" refers to SNS users (e.g., TwitterSM, FacebookSM, etc., users) whose updates are followed by, for example, caller(s) or "follower(s)."
The present system may "color" spoken updates or posts with predetermined sounds such as, for example, audio wallpapers which may include one or more sounds such as, for example, a main wallpaper, and/or location-dependent sounds such as "place sounds." The place sounds may correspond with predetermined sounds which are selected in accordance with a location of the user. The system may update a user's location in real time at various times such as, for example, at predetermined intervals, when a new location is detected, etc. The audio wallpapers may provide additional indication of a user's social presence while blogging in order to inform the user's friends (i.e., followers, etc.) of the user's approximate whereabouts and/or to further personalize the user's updates (e.g., posts, microblogs, blogs, etc.). Further, as utilized herein, the term blogs may also refer to microblogs.
Accordingly, the present system may provide a universal speech-driven access method which may be compatible with SNSs such as blog services and the like. Further, the present application may provide a well-defined application interface (API) for voice service development on a front end and a set of libraries, wrappers and APIs for seamless integration with external applications and services on a backend. Accordingly, the present system may provide a user with a voice access to an SNS so that the user may post a user update on the SNS using, for example, a telephone. Further, the system may retrieve user text-based user updates which were posted on an SNS.
The present system may include a system, method, device, and/or an interface for distributing and/or rendering audio information. The method may include one or more of the acts of receiving audio information; accessing user profile information corresponding to a user, combining predetermined sound information with the audio information so as to form composite audio information, and transmitting the combined audio information to one or more recipients.
The method may further include the act of selecting the predetermined sound information in accordance with the user profile information. The method may also include the act of rendering the combined audio information. The predetermined sound information may include at least one of an audio wallpaper and a sound relating to a selected location.
The method may further include the act of selecting the location based upon a geophysical location of a user or a user-selected location. The method may also include an act of distributing the combined audio information to at least one further user.
The method may also include an act of determining whether the user has entered new audio information. The combined audio information may include at least one of header, load, and footer portions.
The method may also include an act of inserting at least part of the predetermined sound information in at least one of the header or footer portions of the combined audio information. Moreover, the method may include an act of determining whether there is further audio information from the user or from a further user. The method may further include an act of transmitting a query including information related to the user.
According to another aspect of the present system, there is disclosed a computer program stored on a computer readable memory medium, the computer program may include one or more portions such as a program portion configured to receive audio information, access user profile information corresponding to a user, combine predetermined sound information with the audio information so as to form composite audio information, and/or transmit the combined audio information to one or more recipients. The computer program may further include a program portion configured to select the predetermined sound information in accordance with the user profile information. The computer program may also include a program portion to render the combined audio information. The predetermined sound information may include at least one of an audio wallpaper and a sound relating to a selected location. The computer program may also include a program portion configured to select the location based upon a geophysical location of a user or a user-selected location. The computer program may also include a program portion configured to distribute the combined audio information to at least one further user. The computer program may further include a program portion configured to determine whether the user has entered new audio information. The combined audio information may include at least one of header, load, and footer portions.
There is also disclosed a program portion configured to insert at least part of the predetermined sound information in at least one of the header or footer portions of the combined audio information. There is also disclosed a program portion which may be configured to determine whether there is further audio information from the user or from a further user. Moreover, the computer program may include a program portion configured to transmit a query including information related to the user.
According to yet another aspect of the present system, there is disclosed a communication system for distributing audio information, the communication system may include one or more controllers (hereinafter controller) which receives audio information, accesses user profile information corresponding to a user, combines predetermined sound information with the audio information so as to form composite audio information, and/or transmits the combined audio information. The controller may also select the predetermined sound information in accordance with the user profile information. Further, the communication system may include a speaker which may render the combined audio information. The predetermined sound information may include at least one of an audio wallpaper and a sound relating to a selected location. Further, the communication system may include a locator which determines a geophysical location of a mobile station (MS) of the user. Further, the controller may distribute the combined audio information to at least one further user and/or determine whether the user has entered new audio information. The combined audio information may include at least one of header, load, and footer portions. Moreover, the controller may insert at least part of the predetermined sound information in at least one of the header or footer portions of the combined audio information. The audio information may be based upon text information that has been translated. Further, the controller may transmit one or more queries which include information related to the user. According to a further aspect of the system, there is disclosed a method of distributing information. The method may include acts of receiving a call from a user, determining an identification (ID) of the user, accessing user profile information of the user, the user profile information including information related to account names and passwords for one or more social networking services (SNSs), receiving audio or textual information from the user, accessing one or more SNSs using the user profile information, and/or transmitting the at least one of audio and textual information or a link to the at least one or audio or textual information to the one or more SNSs.
According to a further aspect of the system, there is disclosed a method of distributing information. The method may include the acts of, determining whether a user has posted information on one or more social networking services (SNSs), downloading the posted information based upon the determination, translating the downloaded posted information to audio information, determining one or more recipients for the posted information, and/or transmitting the audio information or a link to the audio information to the one or more recipients.
According to yet a further aspect of the present invention the system may store audio information at a predetermined site (e.g., a database, etc.) and transmit a link to the stored data so that the audio information may be accessed by a recipient of the link. The audio information may include colored audio information, etc.
BRIEF DESCRIPTION OF THE DRAWINGS: The invention is explained in further detail, and by way of example, with reference to the accompanying drawings wherein:
FIG. 1 shows a diagram of a communication system according to an embodiment of the present system;
FIG. 2 is a flow diagram that illustrates a blog update process in accordance with an embodiment of the present system;
FIG. 3 is a diagram of a communication system according to another embodiment of the present system;
FIG. 4 is a functional schematic of a mix servlet according to the present system; FIG. 5 is a diagram of a message according to an embodiment of the present system; and
FIG. 6 shows a system in accordance with a further embodiment of the present system.
DETAILED DESCRIPTION OF THE PRESENT SYSTEM:
The following are descriptions of illustrative embodiments that when taken in conjunction with the following drawings will demonstrate the above noted features and advantages, as well as further ones. In the following description, for purposes of explanation rather than limitation, illustrative details are set forth such as architecture, interfaces, techniques, element attributes, etc. However, it will be apparent to those of ordinary skill in the art that other embodiments that depart from these details would still be understood to be within the scope of the appended claims. Moreover, for the purpose of clarity, detailed descriptions of well known devices, circuits, tools, techniques and methods are omitted so as not to obscure the description of the present system. It should be expressly understood that the drawings are included for illustrative purposes and do not represent the scope of the present system. In the accompanying drawings, like reference numbers in different drawings may designate similar elements. For purposes of simplifying α description of the present system, the terms "operαtively coupled", "coupled" and formatives thereof as utilized herein refer to a connection between devices and/or portions thereof that enables operation in accordance with the present system. For example, an operative coupling may include one or more of a wired connection and/or a wireless connection between two or more devices that enables a one and/or two-way communication path between the devices and/or portions thereof. For example, an operative coupling may include a wired and/or wireless coupling to enable communication between a content server and one or more user devices. A further operative coupling, in accordance with the present system may include one or more couplings between two or more user devices, such as via a network source, such as the content server, in accordance with an embodiment of the present system.
The term rendering and formatives thereof as utilized herein refer to providing content, such as digital media, such that it may be perceived by at least one user sense, such as a sense of sight and/or a sense of hearing. For example, the present system may render a user interface on a display device so that it may be seen and interacted with by a user. Further, the present system may render audio visual content on both of a device that renders audible output (e.g., a speaker, such as a loudspeaker) and a device that renders visual output (e.g., a display). To simplify the following discussion, the term content and formatives thereof will be utilized and should be understood to include audio content, visual content, audio visual content, textual content and/or other content types, unless a particular content type is specifically intended, as may be readily appreciated.
The system, device(s), method, user interface, etc., described herein address problems in prior art systems. In accordance with an embodiment of the present system, a device and technique is provided for receiving a user's update (e.g., a blog or post), mixing the user's update with predetermined information so as to create mixed audio information, transmitting the mixed audio information to one or more followers, and rendering the mixed audio information. The mixed audio information may be rendered via an audio and/or video device such as a speaker (SPK) and/or a display screen (e.g., a liquid crystal display). In addition, the present system may collect statistics and/or preferences related to the user and/or user device in accordance with the present system, such as a relative time of an action, geolocation, network, etc. Significantly, in accordance with the present system there is disclosed a system, method, computer program, and/or device for rendering audio information, the system, method, computer program, and/or device may receive audio information, access user profile information corresponding to a user, combine predetermined sound information with the audio information so as to form composite audio information, and render the combined audio information via a display. The combined information may be distributed to selected recipients and thereafter rendered on one or more user interfaces which may include one or more speakers.
A diagram of a communication system according to an embodiment of the present system is shown in FIG. 1. A system 100 may include one or more of base stations (BSs) 102-1 - 102-m, mobile stations (MSs) 104-2 - 104-n, one or more media servers 106, one or more networks 108, one or more web applications 1 10, and GPS transmitters 1 12.
Each base station 102-x has a corresponding service area SA-x, and may communicate with one or more MSs 104-x located in a service area of a corresponding base station 102-x using a wired and/or wireless communication method. Any suitable communication standard may be used.
Each MS 104-x may include any suitable communication device having a user interface. MSs 104-x may include a personal communicator, a cell phone, a smart phone, a Palm™, a personal digital assistant (PDA), a personal computer (e.g., a PC, a laptop, etc.). The user interface may include one or more of a speaker, a display, a keyboard, a pointing device (e.g., a mouse, a touch pad, a touch screen, a track ball, or other suitable scrolling and/or pointing device), an audio input such as, for example, a microphone, etc. Each MS 102-x may include a locator such as, for example, a global positioning system (GPS) or assisted GPS (AGPS) device or may receive signals from one or more location devices such as, for example, GPS satellites 1 12 to determine a location of the MS 102-x. Further, each MS 102-x may receive location information from the media server 106. Each MS 104-x may communicate with, a BS 102-x in which the MS is located using a suitable communication scheme (e.g., TDMA, CDMA, WiFi, Bluetooth, etc.).
The media server 106 may communicate with one or more of the MSs 104-x via the BSs 102-2, via a wired link and/or via any other available link using any suitable communication scheme. The media server 106 may receive information from one or more of the MSs 104-x and may determine the location of one or more of the MSs 104-x using this information. The location of an MS 104-x may be determined using, for example, GPS, AGPS, triangulation, base-station identification, calling number identification (CID), and/or other suitable location technique. The application server may then transmit location information to the MS 104-x or may use this information to determine a user location. The user location may also correspond with one or more places (e.g., home, at work, travelling, etc.). The location and/or palace information may be determined by the user and/or may be entered by a user.
The media server 106 may include functional components 1 14 and 1 16 and may communicate with desired Web applications 1 10 via any suitable method such as, for example, network 108, which may include one or more of a wide area network (WAN), a local area network (LAN), a proprietary network, the Internet, an intranet, etc. The media server 106 may query one or more of the Web applications to determine whether user information has been updated (e.g., by editing, adding, deleting, replacing, changing, etc) the user information. The one or more queries may be performed at predetermined intervals or at other times, as desired. The functional components 1 14 and 1 16 may include various components as will be described elsewhere. Further, the functional components 1 16 may include various components such as an audio component (Gigl Audio Comp-s) which may be used for processing and/or transmitting audio information, a digital audio library (DAL) and repository which may store various audio information in a suitable format, and a maintenance component (Gigl Man-t Comp-s) which may be used for maintenance and other housekeeping functions. The functional component 1 14 may include an audio storage site and one or more external components which may emulate an SNS such as a TwitterSM simulator (Twitter sim-r) which may be used for simulating one or more SNSs or functions thereof.
The Web applications 1 10 may include one or more web applications which may include information related to a user of the present system. For example, the Web applications may include a web page provider, a social networking service provider such as, for example, a FacebookSM, TwitterSM, etc. A user of the present system may include a user of, for example, an MS 104-x. The user may have an account with one or more social networking services. The query may include information which may be necessary to obtain information about a desired user who has an account with the one or more social networking services. For example, a query may include user identification (ID) which may be used to access the user's (social) Web page and/or other social network account information. In response to the query, the media server 106 may receive information related to the user such as, for example, a user's latest blog, a user's latest post, a user's location, party/event information, friend information, and/or other information related to the user. Accordingly, the media server 106 may store information regarding Web applications (e.g., SNSs) which should be accessed based upon a user's ID.
For the sake of clarity, the following definitions will be used hereinafter. A user who posts information such as a "blog" to a Web application such as, for example, FacebookSM, TwitterSM, etc. will be known as a "blogger" or "followee" and a user who requests a posted blog of another user will be known as a "follower." However, it is understood that a blogger may also receive the information (i.e., blogs) that were posted by the user. Likewise, a follower may also post blogs, etc. Further, for the sake of clarity, information posted by the user will be known as "blogs" or user updates. However, it is understood that blogs may also include emergency information, municipal information, and/or other information that may be posted and/or requested by users.
A flow diagram that illustrates a blog update process in accordance with an embodiment of the present system is shown in FIG. 2. A process 200 in accordance with an embodiment of the present system 200 may be performed using one more computers communicating over a network. The process 200 can include one of more of the following acts. Further, one or more of these acts may be combined and/or separated into sub-acts, if desired. In operation, the process may start during act 202 and proceed to act 204. During act 204, the process may receive user information entry (UIE) from a user such as a blogger. The UIE may be transmitted from the user's MS or other communication device (e.g., a land-line phone, a personal computer (PC), etc.) and may include, for example, one or more of a user update (e.g., a micro-blog, a post, etc.), location information corresponding with a current location of the user, user identification (ID) information, etc. However, rather than transmitting location information of the user from the user's MS, the system may determine a location of the user using any suitable method such as, for example, triangulation, base station location, GPS, AGPS, and/or other suitable methods. It is also envisioned that a user may not want location information used for various determinations or released to others. Accordingly, if it is determined that a user does not location information released or used by the system, the system may set a variable such as, a flag, to indicate that the process should not use the location information. Further, it is also envisioned that the process may set the location information to, for example, a default value (e.g., blanked out), so that the process would not use the location information unless the default value is purposefully changed by the user, for example, so that location information may be used thereafter. In either event, after completing act 204, the process may continue to act 206.
During act 206, the process may color one or more parts of the UIE with associated audio and/or visual effects in accordance with user information so as to form colored UIE information. For example, the process may "color" spoken updates included in the UIE with predetermined sounds such as, for example, audio wallpapers which may include location dependent sounds such as "place" sounds and/or a main wallpaper. The location dependent sounds may be selected by a user based upon the user's location. The associated audio and/or video effects may also include information such as, time, place, user name, etc. The main wallpaper may include an audio file, clip, and/or loop which was selected by, for example, the user. The place sounds may correspond with predetermined sounds which are selected in accordance with a location of the user. The system may update a user's location in real time such as, for example, at predetermined or other intervals, when a new location is detected, etc. The audio wallpapers may provide additional indication of a user's social presence while blogging in order to inform their followers (e.g., friends), etc., of the user's approximate whereabouts and/or to further personalize the user's updates (e.g., micro blogs). The process may determine the location of the user using any suitable method (e.g., GPS, AGPS, triangulation, base station ID, etc.). After completing act 206, the process may continue to act 208.
During act 208, the process may provide (e.g., by transmitting) the colored UIE information to one or more selected recipients (e.g., followers). These recipients (e.g., followers) may be selected by the user and/or may be selected recipients based on a certain characteristic. For example, a selected recipient may log in to colored UIEs of a selected followee. Accordingly, the information may be singlecast, multicast and/or broadcast to the selected recipients. Further, the process may transmit the associated information when requested such as, for example, when an MS requests the associated information. The process may transmit the associated information as audio and/or video information to the selected recipients. For example, a follower or other user may transmit an SMS including certain information (e.g., a user's Facebook ID number) to an address (e.g., an SMS address of the system) so as to receive one or more colored UIEs corresponding to a certain user (e.g., the user with the Facebook ID).
After completing act 208, the process may end during act 210. A diagram of a communication system according to another embodiment of the present system is shown in FIG. 3. A system 300 may implement a voice user interface and may include one or more of a voice server 309, application servers 303, 305, 307, a database server/MySQL 320, a storage device (DriveHQ) 312, a voice server 309, and an external application server 313. The system 300 may include one or more functions of the media server 106. Although the voice server 309, application servers 303, 305, 307, the database server/MySQL 320, the storage device (DriveHQ) 312, the voice server 309, and the external application server 313 are shown separate from each other, their functions and/or components, may be combined in whole or in part. Further, one or more of the voice server 309, application servers 303, 305, 307, the database server/MySQL 320, the storage device (DriveHQ) 312, the voice server 309, and the external application server 313 may be located remotely from each other and may communicate via one or more operable couplings, such as networks.
The application server 303, may include one or more of a service function (blogging service, e.g., "Gigl Sevice") 302, a library function ("Gigl Library") 314, and a database (DB) administration servlet 318. The service function 302 may provide one or more of the following features or options to a user: (a) post a blog (e.g., a posting process), (b) listen to all blogs or blogs from an individual user, and (c) manage place (location) sounds and/or audio wallpaper. These features may form at least part of a menu (e.g., a voice menu) for a user's selection. The user may select a desired feature using, for example, a voice or graphic based menu-system which may be output by the service function 302 to a Ul device such as a speaker and/or display (e.g., a speaker of a user's MS or land-line phone). The service function 302 may be compatible with a service such as, for example, a network-based service that may implement a voice user interface and may communicate with the voice server 309. The service function 302 may receive information, such as a user command (e.g., a user's voice command or key entry), processes this information accordingly, and output the processed information to the voice server 309. Likewise, the service function 302 may output voice information (e.g., the voice menu) to a user via the voice server 309.
The database (DB) administration sen/let 318 may perform one or more administration functions such as, for example, reset databases to a default state by, for example, executing *.sql scripts; reset the contents of a user's SNS account (e.g., FacebookSM, TwitterSM, etc.) and/or restart various servers or applications in the present system such as, for example, a Tomcat application server 321. The DB administration servlet 318 may output a menu to a user and/or a system administrator for their convenience.
The voice server 309 may include, a suitable voice processing application such as, for example, a Loquendo™ runtime library 319 which may include a Loquendo (text to speech (TTS)) Engine. A modified Loquendo sample application that may be included to provide support for the Loquendo TTS engine. This, sample application may be written in a suitable language such as, for example, C. The sample engine may include a command line utility that produces a number of sound files for a given number of text messages. The usage of this command line utility may be defined by: TTSFileGenerator [options] <input_file>, where <input_file> may refer to a file to process. However, if no input file is listed, a standard input or default setting may be used. One or more options of the command line utility that may be used are defined in Table 1 below. Table 1
Figure imgf000015_0001
The TTS servlet 306 may use this utility to convert text or the like (e.g., an SSML document) to a linear PCM audio tile such as, tor example, a 8kHz linear 16-bit PCM audio tile, for later use. For compatibility, a Loquendo TTS SDK (e.g., version 6.5 or 7.0 or later) may be installed on the same server as the TTS servlet 306. A TTSFileGenerator 308 command line utility may be installed in an accessible directory (e.g., .../opt/Loquendo/LTTS/Samples/). A suitable application to perform certain tasks of Runtime Library 319 may include, for example, a RealSpeak TTS engine which may include an application known as "standardex" which may process, for example, a text document and output a corresponding 8kHz linear 16-bit PCM audio file which may be referred to as, for example, "standardex.pcm". The RealSpeak™ TTS engine may be included in, for example, a RealSpeech™ SDK which may be installed on the same server where the TTS servlet 306 is deployed. A sample, install path for the RealSpeech™ SDK may include a path such as, for example, ".../usr/local/phoneweb/realspeak/".
Referring back to the application server 303, the library function 314 (i.e., Gigl Library) may include an abstraction layer that may provide a common user interface (Ul) independent of a type of social networking service (SNS) provider (e.g., FacebookSM, TwitterSM, etc.) that is used by the user (e.g., TwitterSM, FacebookSM, etc.). Further, the abstraction layer may match user interfaces with options provided by the SNS provider. The system may use the library function 314 to access a desired SNS such as, for example, TwitterSM, FacebookSM, etc. The library function 314 may access a data depository such as, for example, the Database server/MySQL 320 to obtain (e.g., by downloading) one or more of the following: (1 ) account user name (for the present system as opposed to an SNS account) and lookup by automatic number identification (ANI) digits, as well as a user's service subscriptions to an SNS (e.g., TwitterSM, FacebookSM); (2) diary information which may include a single diary entry of a user (e.g., a user of the current system a "Gigl" user) which may include a timestamped name/value pair that can be used for the user related data recordings; (3) information related to pointers (e.g., URIs) for audio wallpapers and place (i.e., location) sounds which may be preselected by, for example, the user, the system, etc.; (4) blog (e.g., micro-blog) post history which may include a URL to an accessible (e.g., publicly accessible) wav file on DriveHQ and a place sound name; (5) microblog account information for a user's SNS account such as, at TwitterSM or FαcebookSM, α users names, passwords, email addresses, infinite session keys, and other necessary information regarding a user's account at an SNS; and (6) other user settings, as desired. The library server 314 may also update and/or store information in a database such as, for example, the database server/MySQL 320. In one embodiment, the Drive HQ may be a storage service where service information is stored and may operate outside of the rest of the present system.
The application server 305 may include a mix servlet ("GiglMix") 304 that may communicate with the service function 302 and transmit and/or receive necessary information from the application server 303. For example, the service function 302 may transmit to the mix servlet 304 a list of uniform resource identifiers (URIs) (LU) to be sequenced, audio wallpaper, etc. The list of URIs (LU) to be sequenced, audio wallpaper, etc., may be referred to as a sequence information list (SIL). The mix servlet 304 may then transmit a request for information corresponding to the SIL (i.e., a SIR) using any suitable method. For example, the mix servlet 304 may transmit to the external application server 313, a SIR using a common file transfer protocol such as, for example, a HyperText Transfer Protocol (HTTP) GET to request information corresponding with the received SIL. The SIL may include URIs of audio information that are to be sequenced and/or URIs of audio wallpaper corresponding to wallpapers that are to be mixed with corresponding sequenced audio information. URIs may include file://URIs dependent upon whether the mix servlet 304 is installed in the same application server as the Gigl service.
The mix servlet 304 may cache the mixed audio in a cache such as, for example, an Apache Java Cache System (JCS). As JCS is well known in the art, a further description thereof will not be given. The mixed audio may then be streamed back to the service function 302. Before sequencing or mixing, audio files may be transcoded if need be to, for example, to a suitable format such as a linear unsigned PCM 8-bit 8kHz using, for example, Java Media Framework (JMF). These converted files may also be cached in for example, the JCS cache. During mixing, the amplitudes of the two audio streams may be decreased by, for example, 3dB (or other predetermined amount) so as to decrease the likelihood of distortion. JMF may be used by the system to transcode audio files from a linear ax-bit PCM to an ay-bit PCM (where ax and ay are integers). For example, the system may use JMF to transcode an audio file from a 16-bit PCM to, for example, an 8-bit PCM μ-law. A functional schematic of a mix servlet according to an embodiment of the present system is shown in FIG. 4. The mix servlet may be similar to the mix servlet 304 shown in FIG. 3. Accordingly, the mix servlet 304 may include a web service that may sequence input audio and/or mix the sequenced audio wallpaper so as to form mixed audio information. Inputs to the mix servlet 304 may include, for example, audio resource URLs and/or corresponding parameters. The mix servlet 304 may form mixed audio information using a mix 404 and then stream back and/or store the mixed audio information using any suitable method. For example, the mix servlet 304 may stream back the mixed audio information using an HTTP response. Thus, the mix servlet 304 may be used by a process of the present system to generate audio output information that may transmitted to, for example, the service function 302 and output to user e.g., via a speaker (SPK). The mix servlet 304 may support any suitable information transfer method to send and/or receive various information. Accordingly, the mix servlet 304 may support, for example, one or more of an HTTP GET and HTTP POST options. Further, the mix servlet 304 may be accessed using any suitable access method and may have a proprietary address (e.g., "http://server:port/GiglMix)" that may be used to communicate and/or access the mix servlet 304.
The mix servlet 304 may mix the updates with a corresponding wallpaper using the JMF to mix down two or more streams in real time. Accordingly, a media server may deliver an audio update (e.g., a blog) through an audio connection. In another embodiment, the audio update may be downloaded through a data connection from, for example, a URL available on another service such as, for example, an SMS, IM and/or a Web service. Accordingly, the system may optionally premix the audio update with a corresponding wallpaper and store the mixed audio update in a database, such as, for example, a network database and/or the JCS cache.
The mix servlet 304 may support one or more communication parameters such as, for example, those which are illustrated in Table 2 below. Table 2
Figure imgf000019_0001
When input audio information is successfully mixed, the mix servlet 304 may stream back the mixed audio information using any suitable transmission method, such as, for example, an 8-bit PCM μ-law at 8kHz. Further, the mixed audio information may include a header such as, for example, an HTTP header. This header may include one or more of status information (e.g., status code: "200" OK), content type (e.g., audio/x-wav, etc.). Further, if it is determined that there is no input audio (e.g., into the mix servlet 304) or all the input audio URLs are invalid, the HTTP header may include an empty HTTP header with a status code indicating that there is no content (e.g., status code "204" no content). Thus, with respect to errors, it the mix servlet 304 determines that an input audio URL is determined to be invalid or that certain data may exceed predetermined limits (e.g., time, space, memory, etc.), the URL or an audio resource which depends upon the URL may be ignored. Further, a suitable corresponding message may be optionally output to a user, a system administrator, a database, etc.
To improve performance, mix servlet 304 may cache an input audio stream as a file after being converted to, for example, a PCM μ-law 8-bit encoding at 8 kHz sample rate. Thereafter, if it is determine that a subsequent HTTP request includes same URL as the cached audio input stream, the cached data corresponding to the cached audio stream may be retrieved and used. The generated file may be temporarily stored in a database such as, for example, the App Server 305, for a predetermine time.
Referring back to FIG. 3, the voice server 309 may include one or more of the following a servlet such as a Tomcat application server 321 , a TTS servlet 306 (GiglTTS), an ssmLmarkup utility 316, a TTS file generator 308, and a Runtime Library 319.
The ssmLmarkup utility 316 may include a Perl-based utility (script) that may produce SSML markup from text strings that it may receive, and/or add the produced SSML markup to plain text posts (e.g., TwitterSM posts) using, for example a command such as, call tweet. The ssmLmarkup utility 316 may use natural language processing concept to further identify the contents of post such as a TwitterSM post
(e.g., a call tweet) and add corresponding SSML markup tags to generate a more expressive, natural and/or fluent sound to an audio rendition of the post. The ssmLmarkup utility 316 may be used by, for example, the TTS servlet 306 to, for example, format raw text and send this formatted raw text to the TTS File generator
308. The ssmLmarkup utility 316 may also provide functionality, such as a sentence splitter, pause/break detection and/or a translation of elements such as, Emoticon,
SMS abbreviations, and/or Technical terms. The translation may be sent to, for example, the TTS file generator 308 or other elements of the present system for further processing.
The ssmLmarkup utility 316 may be implemented using any suitable method such as, for example, a Perl script which may operate using, for example, Perl 5.8 that may be installed on the same server where the TTS servlet 306 is deployed. An installed path for Perl may include, for example, the following paths for Windows™ and Linux™ platforms as set forth in Table 3 below. Table 3
Figure imgf000021_0001
The ssmljmarkup utility 316 may be called by the TTS servlet306 to format raw text before sending off to, for example, the TTS file generator 308.
The TTS file generator 308 may include a command line program and/or may include a modified Loquendo sample application written in, a suitable language, such as, C and may receive a speech synthesis markup language (SSML) document as an input and may produce an encoded audio file such as, for example, a pcml 6 encoded audio file from this SSML document. To ensure compatibility, the TTS file generator 308 may be installed in the same server where the TTS 306 is installed. Further, SSML markup components may also be installed in this server. TTS File Generator 308 may include versions which are, for example, compatible with a Loquendo TTS engine and/or a RealSpeak(tm) TTS engine. The TTS File Generator 308 may convert input text to an audio file such as, for example, an 8 kHz linear 16-bit PCM audio file.
The Tomcat application server 321 may include the TTS servlet 306 and may receive/transmit information to the service function 302 and may communicate with other elements within the voice server 309. The Tomcat application server may operate in accordance with, for example, Tomcat 4.x or other applications. The TTS servlet 306 may be a web service and/or may be compatible with suitable applications such as, for example, the Tomcat 4.x application server operating in Tomcat application server 321. The TTS servlet 306 may render strings of text to audio files having a predetermined format such as, for example, TTS audio files. This servlet may run on the Tomcat application server 321 and/or may use different TTS engines to achieve a desire quality and/or flexibility. The TTS servlet 306 may use an SSML markup component to enrich raw text according to different context of the input text. Further, the TTS servlet 306 may use a TTS file generator and SSML markup components. The TTS servlet 306 may be located in for example, the voice server 309 and may receive a raw text string as input and return an expressive TTS as an output audio file. This output file may then be transmitted to, for example, the service function 302. Upon receiving a requested textual input from a user, this input may be written to a file by the system. The text can either be a name or a tweet (e.g., entered using TwitterSM via the Internet). The ssml_markup tool 316 may be started and/or may be passed parameters which may include, for example, a name of the file, etc. The smml_markup application may then process the file which corresponds to the received file name and output a corresponding XML file with embedded SSML tags. This XML file may then be transmitted to the TTS file generator 308.
Thus, the TTS servlet 306 may include a web service that may, for example, convert raw text input into a more expressive, natural, and/or fluent voice audio stream. This web service may use different text to speech TTS engines to achieve a desired quality. The TTS servlet 306 may use an optional SSML Markup component to further enrich raw text according to a determined context of the input text. The TTS servlet 304 may support, for example, various information transfer methods such as, for example, one or more of an HTTP GET and HTTP POST options. Further, the TTS servlet 306 may be accessed using any suitable access method and may have a proprietary address or URL such as, for example, (e.g., "http://server:port/GigllTS)" that may be used to communicate and/or access the TTS servlet 306.
The TTS servlet 306 may support one or more communication parameters such as, for example, those which are illustrated in Table 4 below.
Table 4
Figure imgf000023_0001
The TTS servlet 306 may stream back audio information that it generates using any suitable transmission method, such as, for example, an 8-bit PCM μ-law at 8kHz (i.e., 8/8 or other values). Further, this audio information may include a header such as, for example, an HTTP header. This header may include one or more of status information (e.g., status code: "200" OK), content type (e.g., audio/x-wav, etc.) which, for the sake of simplicity, may be similar to status codes used by other applications.
The TTS file generator 308 may receive the XML file and process this file and may output a corresponding audio file having a desired file format and bit rate such as, for example, a 16-bit PCM file. The PCM file may then be streamed back to the service function 302 where it may be cached locally.
The application server 307 may include management components which may include one or more of an account management sever 310 (GiglWeb), an account management library 31 7 (Gigler Library), the administration servlet 318 (aka, DBAdmin servlet) and applications for logging, configuration, and/or provisioning. The account management server 310 may include a web application that may provide basic account management functions. The account management server 310 may interface with the account management library 31 7 to access, for example, various data through a database abstraction layer (DAL). The account management server 310 may include a graphical user interface (GUI) and/or a voice interface. The account management server 310 may also access the administration servlet 318 which may perform various account and/or system functions such as, for example, a server reset.
The account management server 310 may include a separate web application that provides basic self serviced account management for one or more users of the present system (e.g., Gigl users). The account management server 310 may interface with, for example, the Gigler library 31 7 to access and/or modify account information of users of the present system, which may be currently stored in a database such as, for example the Database Server/MySQL 320. The account management server 310 may provide user account management functions which may include functions such as ( 1 ) new user account creation, (2) registered user profile update, (3) DB administration (admin), and/or other account management functions. With regard to the new user account creation function, a new user may register (e.g., using a self registration) with the present system by, for example, providing one of more of (1 ) a Gigl username/password, (2) calling telephone ID or calling ID/password and/or (3) SNS username/password. The Gigl username/password may be a unique user name that may be selected by a user or automatically selected by the system (e.g., if requested by a user). The calling telephone ID may include one or more user telephone numbers or other identification numbers that may be used to identify a user when, for example, a user calls the system. Accordingly, when a user calls the system from a telephone having a number which corresponds with, for example, the telephone ID (determined, for example, using ANI or other suitable method), the user may be automatically connected (e.g., by the system) to an SNS account (e.g, a TwitterSM, FacebookSM, or other account) using corresponding information (e.g., a username/password or other identification) that is saved by the present system. Accordingly, the user may then provide user updates (e.g., microblogs) using a voice rather than a text transmission. The present system may then translate the user's voice to a corresponding text file which may include other information such as, for example, time and place information, etc., and transmit this information to a corresponding SNS. Likewise, the present system may color the user update information (UIE) and transmit this information to predetermined followers. The present system may also recognize when a user is calling from home, work, a mobile number, etc., and use this information to determine a user's location. The calling ID may correspond with a unique identifier that a user may use to identify the user. The unique identifier may be used when, for example, a user accesses the present system using a communication means that may not correspond with a user's registered telephone number such as, for example, a telephone having a blocked caller ID setting, a public telephone, a phone on a private branch exchange (PBX) with multiple lines, or other communication means. Accordingly, after contacting the system, the user may enter (e.g., using a keyboard, a voice command, etc.) the registered calling ID (that may be unique to the user) and/or corresponding password to access the system. Then, the system may process the user's call in a similar fashion as when the user calls from a recognized phone. The system may also have a setting which requires a user to enter a predetermined password which may be desirable when a user may share a telephone with others so that a user's privacy may be ensured. Accordingly, if several users share the same phone line, privacy may be assured through use of the user entered predetermined password.
In a case wherein a user is a registered user of the present system (e.g., a registered Gigl user), the user may be able to login to, for example, the account management server 310 and modify user account setting and/or other information. Accordingly, for example, a user may add, change and/or modify information such as, an SNS username/password (e.g., a Gigl and/or TwitterSM username/password), user calling ID such as, for example, one or more user phone numbers, account preferences, etc. The present system may operate as a part of network framework under a
Tomcat™ application server. Accordingly, the present system may utilize applications and/or features provided by, for example, the network framework and/or Tomcat application server to provide logging and/or configuration operations. With respect to the network framework, the system may rely upon this framework for caching and/or logging all events associated with voice processing and other functions of the present invention. Accordingly, the present system may log all information (or select information) associated with internal processing and inter-component communication. It may also aid in the collection of relevant traffic data.
As the present system may be deployed as a separate Web Archive (WAR) file under a Tomcat server, a Java application web.xml file may used as a configuration data source for the system. Configuration attributes introduced by the present system in a network application saved as a web.xml type file are shown below in Table 5.
Table 5 web.xml-file
?xml version="l .0" encoding="UTF-8"?>
<web-app xmlns="http://java.sun.com/xml/ns/j2ee" version="2.4" xmlns:xsi="http://www .w3.org/2001 /XMLSchema-instance" xsi:schemaLocation="http://java. sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"> <display-name>Gigl</display-name> <context-pαrαm>
<pαrαm-παme>giglDbUserNαme</pαrαm-nαme>
<pαrαm-vαlue>root</pαrαm-vαlue>
</coπtext-pαrαm>
<context-pαrαm>
<pαrαm-παme>giglDbPαssword</pαrαm-nαme>
<pαrαm-vαlue></pαrαm-vαlue>
</context-pαrαm>
<context-pαrαm>
<pαrαm-nαme>giglDebugMode</pαrαm-nαme>
<pαrαm-vαlue>fαlse</pαrαm-vαlue>
</context-pαrαm>
<context-pαrαm>
<pαrαm-nαme>mediαServerAddress</pαrαm-nαme>
<pαrαm-vαlue>www.drivehq.com/web/gigl</pαrαm-vαlue>
</context-pαrαm>
<context-pαrαm>
<pαrαm-nαme>mediαServerUploαdAddress</pαrαm-nαme>
<pαrαm-vαlue>ftp.drivehq.com</pαrαm-vαlue>
</context-pαrαm>
<coπtext-pαrαm>
<pαrαm-nαme>mediαServerUploαdFolder</pαrαm-nαme>
<pαrαm-vαlue>wwwhome</pαrαm-vαlue>
</context-pαrαm>
<context-pαrαm>
<pαrαm-nαme>mediαServerUserNαme</pαrαm-nαme>
<pαrαm-vαlue>gigl</pαrαm-vαlue>
</coπtext-pαrαm>
<context-pαrαm>
<pαrαm-nαme>mediαServerPαssword</pαrαm-nαme>
<pαrαm-vαlue>orαnge</pαrαm-vαlue>
</coπtext-pαrαm>
<context-pαrαm> <pαrαm-nαme>locαlAudioTweetFolder</pαrαm-nαme>
<pαrαm-vαlue>/tweets</pαrαm-vαlue>
</context-pαrαm>
<context-pαrαm>
<pαrαm-nαme>ssmlPromptsFile</pαrαm-nαme>
<pαrαm-vαlue>/prompts/prompts.xml</pαrαm-vαlue>
</context-pαrαm>
<context-pαrαm>
<pαrαm-nαme>wαllpαperFolder</pαrαm-nαme>
<pαrαm-vαlue>/prompts/WAV/wαlipαper</pαrαm-vαlue>
</context-pαrαm>
<context-pαrαm>
<pαrαm-παme>piαcesFolder</pαrαm-nαme>
<pαrαm-vαlue>/prompts/WAV/plαces</pαrαm-vαlue>
</context-pαrαm>
<context-pαrαm>
<pαrαm-nαme>eαrconsFolder</pαrαm-nαme>
<pαrαm-vαlue>/prompts/WAV/eαrcons</pαrαm-vαlue>
</context-pαrαm>
<coπtext-pαrαm>
<pαrαm-nαme>giglTTSUrl</pαrαm-nαme>
<pαrαm-vαlue>http://nf 162. orange. us:8080/GiglTTS</pαrαm-vαlue>
</context-param>
<context-param>
<param-name>giglMixUrl</param-name>
<param-value>http://localhost:8080/GiglMix</param-value>
</context-param>
<listener>
<listener-class>us.ftrd. listeners. Listener</listener-class>
</listener>
<servlet>
<servlet-name>TweetsVirtualDirectory</servlet-name>
<servlet-class>us.ftrd.servlets.TweetsVirtualDirectory</servlet-class>
</servlet> <resource-ref>
<description>Resource reference to α factory for java.sql. Connection instances that may be used for talking to a particular database that is configured in the server.xml file.</description>
<res-ref-name>jdbc/GigiDB</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>
<env-entry>
<env-entry-name>twitterSimulator</env-entry-name>
<env-entry-value>http://trinity. orange. us:2000</env-entry-value>
<env-entry-type>java.lang.String</env-entry-type>
</env-entry>
</web-app>
Provisioning for accounts may be provided separately for front and back ends.
With regard to internal application interfaces (APIs), libraries, and/or repositories, the present system may provide these functions as needed. For example, with regard to storage, the present system may store per-user information that may not be stored and/or accessible by the SNS providers (e.g, TwitterSM, FacebookSM, blogging, micro-blogging sites, etc.) themselves. This per-user information may be necessary to support a rich audio-micro-blogging experience and/or may provide additional per-user information that the present system or components thereof (e.g., the service provider 302 or other elements/applications) may require. Accordingly, the system may include one or more repositories, such as, for example, the Database Server/MySQL 320, which may store one or more "audio wallpapers" that may serve as background for the user's (e.g., the followee's) entries such as, for example, audio blog entries, which may personalized a user's identity and/or serve as a marker of a user's identity. A user may define an arbitrary list of places that can be specified as the place (or location) from which, for example, a blog entry originates (or the user is currently located) and store this information in the one or more repositories. For the sake of clarity, the term audio wallpaper as utilized herein may be referred to simply as "wallpaper" unless context indicates otherwise. Thus, the Database Server/MySQL 320 may store user information such as, for example, one or more of audio wallpapers, corresponding user locations, and other per-user information. The Database Server/MySQL 320 may also store other local information.
The account management library 317 (i.e., Gigler Library) may include an abstraction layer that may attempt to front SNSs (e.g., TwitterSM, FacebookSM, micro- blogging services, etc.) with a common interface. The service function 302 may use the account management library 317 to gain access to an SNS such as, for example, TwitterSM, FacebookSM, etc., using a common interface. The account management library 317 may use the database server/MySQL320 as a data repository for storing data for later use.
The user information may supplement user profile information (UPI) that is stored at an external application (e.g., Twitter.com and/or Facebook.com). The database server/MySQL 320 may also store URLs referring to audio user updates (e.g., micro-blog entries which may include spoken microblog entries, etc.) and/or other audio assets. The user information may be used by the system to perform various functions such as is shown in Table 6 below.
Table 6
Figure imgf000030_0001
Figure imgf000031_0001
The system may also include External Application Wrappers (EAWs) such as, for example, Java™ wrappers which may be used to integrate communication between the present system with external applications such as, for example, SNS applications (e.g., TwitterSM, FacebookSM, etc.). The EAWs may provide a plurality of general functional layers. For example, the general function layers may include an "upper" functional layer which may be generic so as to minimize work which may be necessary for switching providers; and a "lower" functional layer may be used for actual communication with the external applications such as SNSs (e.g., TwitterSM, FacebookSM, etc.). For example, a Twitter Wrapper (or Twitter EAW) may use a 'ThinkTank Java Twitter API" to interface with Twitter.com based upon configuration information such as, for example, user name, password, SNS service (type), etc. Further, the ThinkTank Java Twitter API may be extended to communicate with, for example, a TwitterSM simulator for testing and/or other purposes based on the configuration information. Similarly, a Facebook Wrapper may use a 'ThinkTank Java Facebook API" to interface with Facebook.com in a similar fashion.
The present system may also include a front end visual user interface (VUI) API which may provide convenient access to user profile information and other information to, for example, service developers. Accordingly, these service developers may easily introduce new functionality to Service VUIs and/or introduce new voice services to the present system. The front end VUI API may be invoked using an exception mechanism and may provide general common functionality that can be used for speech-driven projects, such as uniform handling of retries and disambiguation. The present system may provide an external application which may include an SNS. For example, the external application server may provide, for example, a full-scale blog system (e.g., an SNS service) built upon Ruby on Rails or other suitable structure. This full-scale blog system may provide for the creation of traditional web blog forums, specialized microblog forums, and/or other forums or services such as, for example, an SNS simulator (e.g., a TwitterSM Simulator, etc.). With regard to the traditional Web blog forums and/or the specialized micro- blog forums, a major difference between them is in the treatment of forum topics. For example, micro-blog forums are typically user-centric. A typical micro-blog forum topic may be associated with a particular user and only this user may submit updates to his topic, although, all members of the user's community may typically have access to read them. With regard to traditional Web blog forums, these forums are typically topic-centric and allow the creation of multiple topics by users who may contribute to each topic.
The present system may also provide a simple mail service (SMS) notification that may provide blogs, posts, updates, and/or associated information to a user's (e.g., a follower's) account phone number if a user has selected this options. Accordingly, the follower may receive a followee's updates over SMS if desired.
The present system may include an audio file server which may provide online storage and sharing of audio files. These files may be accessible from a network such as, for example, the Internet so that, an SNS (e.g., TwitterSM) user may access the files via an interface (e.g., a Web, Mobile, etc. interface).
A recorded post (user update) may be uploaded to the audio file server via, for example, an FTP protocol. Then, the recorded post may be loaded from the audio file server via an HTTP protocol by a user request. An account setup/management process in accordance with an embodiment of the present system will now be described. Before a user may use the present application, it may be necessary to open a separate SNS account (e.g., a TwitterSM account that may be created through, for example, "http://twitter.com"), so that an external interface may be created for the present system to interact with, for example, the account management server 310 so that necessary information (e.g., user account information) may be downloaded by the present system. However, it is also envisioned that the present system may include an SNS server which may provide a user with an account and may provide account information to various elements of the system. Further, the present system may also provide a testing SNS server which may be used for system maintenance, testing, and/or other purposes. The system may also establish an SNS account using information related to a user which may have been provided when a user subscribed to a telephony service such as, for example, a landline (e.g., pots) telephone, cellular and/or other mobile account. As account management is known in the art, a further description will not be given. Suffice it to say that any suitable system of account management of be utilized for operation in accordance with the present system.
The storage device 312 (DriveHQ) may provide online services such as, for example, online storage and file sharing to users. The storage device 312 may be controlled so as to limit, for example, an amount of storage (e.g., I GB), a maximum download in bytes per unit time (e.g, 200MB/month), a maximum number of FTP connections (e.g., 2 max), and/or a maximum download or upload speed (e.g., 220 KB/sec). The storage device may be controlled by the account management server 310 so as to provide a desired type or quality-of-service (QoS).
The external application server 313, may include applications that may be used access any SNS such as, for example, TwitterSM, FacebookSM, etc. The application server 313 may also include applications for emulating an SNS (e.g., FacebookSM, etc.), which may be used, for example, to set up a user's account, testing, development, during network failures, and/or for other uses. The application server 313 may access SNSs using any suitable network (e.g., the Internet, an intranet, a LAN, WAN, proprietary network, a system bus, etc.).
A posting process according to an embodiment of the present system will now be described. Recorded audio may be captured by the system using, for example, the service function 302 using any suitable method. For example, the service function 302 may use a record tag such as, for example, a VXML <record> tag using an audio type of audio/x-wav (e.g., 8-bit 8kHz μ-Law) and a maximum recording time of 30000ms. However, it is also envisioned that audio type and/or maximum recording type can include other settings. The recorded audio post (e.g., blog) may be uploaded to, for example, the application server 307 encoded as, for example, multipart/form-data in any suitable file format. However, the audio may also be transmitted without encoding and/or as a live stream, as desired. An audio decoding application may be used to record decoded audio which corresponds with the coded audio file. Accordingly, an Apache.commons.fileυpload library may be used to decode the encoded audio file attachment. The system may also store the audio file in a memory as will be described below.
The system may then create a new mixed audio file by invoking, for example, the mix servlet 304, and passing the recorded post and corresponding audio wallpaper and/or place sound to the mix servlet 304. This may be done directly or by passing pointers (e.g., URI's) to the mix servlet 304 as is described herein. For example, according to another embodiment of the present system, a Java Media Framework (JMF) may be used to mix down two audio streams in real time. This process may be performed by a media server.
The system may build a new audio file using (which may be known as a mixed audio file), for example, a sequence of audio files or audio information, as shown in Table 7 below, one or more of which may be merged with an audio wallpaper.
Table 7
Figure imgf000034_0001
With reference to Table 7, the location/place may be indicators of a user's (i.e., followee) social presence while blogging and may be used to inform followers (e.g., friends) of the user's approximate whereabouts. As discussed herein, the user's location may be determined automatically using any suitable method for determining a location of, for example, a mobile station (MS) and may be indexed by the system against a user-defined (or system-defined) set of locations. As geolocation is well known in the art, for the sake of clarity, it will not be discussed.
A diagram of a message according to an embodiment of the present system is shown in FIG. 5. A message 500 may include a mixed audio file. The message may include one or more time zones each of which may include a specific data entry. One or more of the time zones may have a variable length and/or may have a fixed length. For example, the post time zone (e.g., see, T2) may have a length which is shorter than a fixed value (e.g., 3000ms) and longer than another fixed value (e.g., 100ms). Further, the system may clip information (e.g., at the beginning and/or the end) so that the information may fit in a predetermined time zone. The main wallpaper may have a variable level (e.g., a ramped level) that may be determined by the user and/or the system, and may be superimposed upon other audio information. It is also envisioned that the main wallpaper may be optional. Several examples of posts (e.g., Tweets) which may be formed using an audio and/or text post process according to the present system are shown in Table 8 below. The present system may also provide information about the origin of a post (e.g., from Tweeter). Accordingly, the present system may also determine whether a new post has been posted on an SNS by a user, and render the post using a rendering process according to the present invention (e.g., an audio rendering) with a format, such as, for example, is shown in Table 7 above, when it is determined that a user has posted a new post. Table 8
Tweets Used in Demonstrations below:
Today Supposed to be volunteering at the SL library, but got locked out. Maybe I'll go to the real library instead ;) less than 5 seconds ago from web snbeach Dinner with Will R tonight and will be attending his session tomorrow to my previous colleagues at VBCPS. less than 5 seconds ago from web tony teknision Circle of Engagement is the concept of the talks I am giving at Flashforward and MAX 13 minutes ago from Tweetr tony teknision
The only difference with Apple is that they leave it to you to water it down, instead of having the software try to do it for you. about 3 hours ago from Tweetr
RobvnAnderson
Only skinny people would FORGET to go to lunch, Jane. I've never forgotten to eat a single meal in my entire life, less than 5 seconds ago from web
RobvnAnderson
Why the hell am I sitting in front of the computer at 1 1 :30 at night when I need to be up in 6 hours? I'm going to bed. Stupid time-suck. 1 1 :21 PM August 01 , 2007 from web
RobynAnderson
I researched whether Frontline will take care of ear mites in cats (yes, when applied directly to the cat's ear). Now I'm off to bed! 10:36 PM August 06, 2007 from web
RobynAnderson
Do I want to nap, or watch TV? Think I'll do both! 03:09 PM August 06, 2007 from web
RobynAnderson
If I get arrested, will you Twitterettes bail me out? 1 1 :43 AM July 31 , 2007 from web
With respect to Table 8, upon determining that a user has made a new post, the system may translate this post into an audible message. For example with respect to Robyn Andersons post "only skinny people...," the system may perform the following actions on the post: using a predetermined "Loop #30" audio wallpaper (as per the user's selection), the system may convert the audio wallpaper to an 8/8 mono, full amplitude range, reduced by 6dB; the system may also stereo sound mix a digital rendition of a post (e.g., a user's talk track) by 75% and the converted audio wallpaper soundtrack by 25%. The volume of the mixed information may then be raised by 3dB. The system may then transmit a corresponding mixed audio file to one or more selected recipients (e.g., a followee(s)).
It is also envisioned that the mixed audio file may have other formats. For example, with reference to Table 7 and FIG. 5, the mixed audio file may, only include, for example, post, a header, an origin, a place, a first trailer, a second trailer, and/or a third trailer. Further, the location of these items may be changed by the system and/or by the user. Accordingly, a user may form personalized blogs. The system may insert a suitable delay (e.g., a one-second delay), between mixed audio files that are to be output to a user.
According to the present system, speech recordings (e.g., voice posts) may have a certain range such as, for example, from 1 to 30 seconds in length. However, other ranges or maximum values are also envisioned. As speech recordings, may vary in quality, noise, and/or amplitude, the system may dynamically process the recordings by clipping samples, normalizing, de-esseing, digital signal processing (DSP), etc.
Further, when listening to a particular user's posts, a TTS rendering of the followee's name may not included in the sequence, if desired. Moreover, if the system determines that a user does not have a place sound associated with the place option, no place sound is played.
The mixed file may have a file name which corresponds with a predetermined format. This format may, for example, include one or more of the user's (ID) (e.g., user name), an underscore, the time that the file was created by the system or uploaded by the user, etc. The time format may correspond with for example, a format such as a year month day, hour minute second (yyMMddHHmmssSSS) format.
In accordance with an embodiment of the present system, a Gigler Library
Post method may be called with a URL which points to a storage device such as, the storage 312 (DriveHQ) and a file name of the generated mixed file (i.e., the mixed audio file (MAF)). This method may be used for generating a posting on a designated SNS service (e.g., FacebookSM, TwitterSM, OrangeSMBB, etc.). A successful posting may in on eembodiment of the present system, generate a suitable message indicating that the posting was successful. For example, a successful posting may return a Tiny URL representation of the URL of a storage device such as, for example, storage 312 (i.e., DriveHQ URL), which may be stored in a database such as the storage 312 for later use.
The system according to an embodiment of the present system may use, for example, the service function 302 (e.g., the Gigler Service) to transmit the MAF in memory to a storage device such as, for example, the Storage 312 (DriveHQ). This may be accomplished using any suitable method such as, for example, an FTP.
The service function 302 (Gigl Service) may then save the original unmixed audio file to a location on a storage device such as, for example, a local hard drive. The location of the file may be configurable via the systems web.xml. The system may select a file name based upon on a post ID (e.g., a TwitterSM post ID) which may be returned by the Gigler Library 317.
A listening process according to an embodiment of the present system will now be described. When the present system receives a new call (e.g., from a follower which will now be referred to as a user for the listening process), it may respond to the call accordingly using, for example, the service function 302. Accordingly, for example, when the service function 302 (Gigl service) receives a new call, it may invoke the Gigler Library 314 to download for example, the last 20 posts (e.g., a TwitterSM limitation) of each of the user's followees. The system (e.g., through the service function 302) may also look up the user and the followees on FacebookSM to determine their gender and/or any marketplace listings or future events such as, for example, an invitation to a romantic piano concert followed by a wine reception. The system may perform these acts asynchronously or synchronously, as desired. When, the user (i.e., a follower in the present example) requests to listen to posts of selected followees (e.g., friends, etc.) the system may output these posts (e.g., tweets, etc.) in a predetermined format. For example, this predetermined format may include a sequence blended with the audio wallpaper (e.g., see, discussion of GiglMix below for details). This sequence may include any of the following elements set forth in Table 9 below. Further, the order of any of the elements may be set by a user or the system, as desired, for further personalization. Table 9
Figure imgf000038_0001
Figure imgf000039_0001
The TTS rendering may be performed by the TTS sen/let 306.
While the present system plays a post (e.g., a tweet) to a user (i.e., the follower), another post (e.g., a tweet) to be played at a later time, may be composed in a background thread and outputted to the user immediately following the first post.
When the present system renders a post for a user's convenience, the system may output a first media stream which corresponds with the post and may include the spoken update, and time, origin, and location prompts. The system may also include, for example, navigation elements such as, earcons and/or placesounds at, for example, the end of the media stream. These items may be sequenced and pushed through a single audio stream (e.g., from a source to a sink). Before playing a media stream, the system may insert a silent period (e.g., one second, etc.).
Further, if a subsequent audio post is to be played, the system may output a corresponding subsequent media stream which may have a similar format as the first media stream.
For each subsequent audio post, the system may, for example, form a sequence as shown in Table 10 below. Table 10
1 . Audio Post (silence may be trimmed on both sides to, for example, 500msec.)
2. 500 msec silence (for a total of 1 sec "silence" between msg and info header)
3. Prompts consisting of TIME+ORIGIN+LOCATION reports
4. 250ms silence
5. Location sound
6. 2.5 second silence generation
7. List-next earcon
8. 2.5 second silence.
After an audio stream plays, the system may output an "add the list-end" earcon for the user's convenience. The subsequent media stream(s) may include one or more corresponding audio wallpapers. If the corresponding wallpaper is a loop, the loop may be repeated end-to-end until a media stream corresponding with the post has finished. When the first media stream finishes, the subsequent media stream may be faded in/out over a certain period of time. The system may also balance audio streams differently from each other.
Further, the system may also balance a user's post (e.g., a media stream containing voice or talk tracks) differently from a media stream containing a tune such as, for example, a media stream include a main wallpaper that is looped. For example, the following balance may be used for wallpapers which may include loops. JMF amplitude mixdown: audio track 20%; talk track 80%. Where the talk track may include speech elements (e.g., the users post, time, place, etc) and the audio track may include the main wallpaper.
However, with songs it may become more difficult to balance the audio and talk tracks using pre-set proportions. Accordingly, an algorithm may dynamically determine correct amplitude proportions using, for example, a wide-averaging filter window to determine the amplitudes of the audio track and talk tracks and may thereafter adjust the amplitudes correspondingly. Accordingly, the system may determine a best ratio between an audio track and the talk track in decibels and amplify these tracks according to the determined ratio. The present system may provide service features via a user interface which may be used by a user to personalize and/or customize the user's account. The user interface may be provided by, for example, the service function 302, and may provide a suitable user interface such as, for example, a voice-based user interface (VUI) and/or a graphical user interface (GUI). The service features may be provided by the service function 302 which may implement the VUI based on a suitable platform such as, for example, a network-based platform.
The service features may include one or more options which provide for a user to post voice updates (blogs), browse and/or listen one or more particular user's (or all user's) microblog entries, manage audio wallpapers, add/change/modify sound and/or account preferences. Correspondingly the present system may present options such as those listed in Table 1 1 for a user's selection.
Table 1 1
Figure imgf000041_0001
The system may direct a user automatically to a Blog (e.g., post) section first when the call is accepted by the present system. However, the user may set a call option to direct the user to another menu, as desired, when a call is accepted.
The main menu may be presented to a user when a user specifically requests the main menu during the call. The main menu may offer transitions to other service options in accordance with the present system, such as blog, listening (e.g., to blogs, tweets, etc.), and/or managing options associated with the user's account.
In accordance with an embodiment of the present system, the user may be presented with an audible menu which may include sound effects such as, for example, "earcons" so as to present a common voice user interface (VUI). The ViU may output earcons which may include, navigation commands such as (e.g., list- next, list-prev., list-end, etc.) in a VUI.
New voice updates (blogs, etc.) may be posted through the present system and may include optional place information that may be related to a place or location of the user. The place information may include an associated audio wallpaper. Accordingly, the system may present the user with an option to select one or more audio wallpapers. Further, the user may select whether to make the wallpaper place independent. Accordingly, if the user has selected the option to make the wallpaper place independent, a default wallpaper or no wallpaper may be associated with the user's new voice update.
The present system may also allow a user to set one or more listening options such as, for example, those shown in Table 12 below.
Table 12
Figure imgf000042_0001
Figure imgf000043_0001
The present system may provide one or more browsing options or navigation options such as "next" or "previous" that may be output to a user before, during, or after listening to/for updates. The system may also provide the user with an option to select and/or to reply to a particular update, listen to a different friend, and/or go to main menu.
The present system may also include an audio wallpaper management function that may provide the user an interface to manage audio wallpapers. As discussed above, audio wallpaper may include a main wallpaper and/or a place sound that a user may select and/or associate with a predetermined area and/or place using the present system. The main wallpaper may be selected by a user from a predefined list and/or from other sources available to the user, and may be mixed with the user's audio updates that are created using the present system.
The user's audio updates may be uploaded to, for example, the audio file server to be extracted later by, for example, users of an SNS such as TwitterSM. The user's audio update may be stored (unmixed) in, for example, the application server 307 or other database of the system. The user may also select an option to loop the wallpaper. Further, the system may loop the wallpaper or select another audio wallpaper when the audio wallpaper is shorter than a user's update. The system may select a downsampling speed for the audio wallpaper (e.g., in a ax-kHz, ay-bit, format) such as, for example, 16kHz, 1 obit mono stream, where ax and ay may be integers).
The user's audio update may be mixed with a corresponding wallpaper to create a mixed audio file. The mixed audio file may included an arrangement of different elements such as, for example, the wallpaper, the audio update, a time stamp, location/place information, silent areas, and/or other information, that may be played back by, for example, the present system. The system may also process updates that are created by, for example, text (e.g., via IM, SMS, Web, etc.), convert the audio update to corresponding audio information, insert an audio wallpaper in the corresponding audio information so as to form mixed audio information and/or render the mixed audio information via, for example, an audio interface to a selected recipient. Accordingly, one or more wallpapers may be used to personalize a user's (e.g., a followee's) updates, independent of how the updates are created, when other users (e.g., followers) listen to an output of the service.
The system may provide a user with an option to manage a place sound. A place sound may include a short sound effect like a car screech or a laugh that may be associated by the user with an area, place, etc. A corresponding place sound may be rendered by the system to an audio output such that the corresponding place sound may be heard by followers such as, the user's friends, when they listen to the user's (i.e., the followee's) audio blog. The place sounds may include musical files which may be recorded by a user (e.g., from an audio file, an electronic musical interface (e.g., a guitar, piano, etc.), etc., or may be selected from one or more databases of the system. Accordingly, a user may be offered free and/or paid musical file selections. These selections may include MIDI sample musical loops for a user's selection. A cost management function may be included to determine cost of available musical files. Thus, music from commercial artists may be provided free and/or at cost depending upon a system configuration. The system may trim silent areas from the beginning and/or end of the selected musical files.
The place sounds may range in length and/or amplitude and/or may be preprogrammed for use by the present system. The place sounds may include areas, places and/or locations which may be associated with a corresponding place sound as shown in Table 13 below. Table 13
Figure imgf000044_0001
With reference to Table 13, the predefined locations may be preselected by the system or may be selected by a user. Additionally, each location may be assigned a geophysical location such that the location may be determined using a system (e.g., GPS, triangulation, base station ID, etc.). Further, the location may also be determined by identifying transmission phone ID (e.g., phone numbers, exchange numbers, etc.). For example, when calling from a home number, the system may determine that the location corresponds with the HOME location. With regard to the place (or location) items, the NOWHERE selection may be a location that is not a location. In other words, a user may choose the NOWHERE selection (or the like) in order to avoid others from knowing where they are. In a case wherein the NOWHERE location is selected, an audio update may include it (e.g., "2 hours ago from Orange
Gigl from NOWHERE") in the location notification without an associated place sound.
Alternatively, the service could ignore the location notification altogether and output a message without location notification (e.g. "2 hours ago from Orange Gigl"). The system and/or the user may select a default location that may be used when a location is not given and/or cannot be determined. The user and/or system may select, add, change, and/or delete locations and associated information (e.g., associated ID, place sounds, etc.). Further, the NOWHERE selection may have an associated place sound. Moreover, users (e.g., followees) may choose whether their posted updates specify a location, if desired.
After a first update is transmitted to a selected user or users (i.e., followers), a second update, if available, may then be transmitted to the user or users. A silent period of, for example, one second may be placed between updates.
The user may also be presented with an option to select one or more main wallpapers which may include audio information such as, for example, a sound, a song, a tune, a chord, a user recording, etc. Several samples of main wallpapers are shown in Table 8 below. The user has selected one of them for current use. The system may also perform various processing on the audio wallpaper so that it may have a desired audio quality. For example, the audio wallpaper may be amplified, attenuated, filtered and/or de-essed, if desired. Further, the system may trim silence at the beginning and/or end of the wallpaper.
FIG. 6 shows a system 600 in accordance with another embodiment of the present system. The system 600 includes a user device 690 that has a processor 610 operationally coupled to a memory 620, a rendering device 630, such as one or more of α display, speaker, etc., a user input device 670 and a content server 680 operationally coupled to the user device 690. The memory 620 may be any type of device for storing application data as well as other data, such as places, audio wallpapers, content, reaction indications, tallied reaction indications, comments, graphing data, such as heat map data, heat line graph data, heat comment graph data, etc., play lists, recommended content, etc. The application data and other data are received by the processor 610 for configuring the processor 610 to perform operation acts in accordance with the present system. The operation acts include controlling at least one of the rendering device 630 to render one or more of the GUIs and/or to render content, such as a blog (audio, visual, etc.), wallpaper, etc. The user input 670 may include a keyboard, mouse, trackball or other devices, including touch sensitive displays, which may be stand alone or be a part of a system, such as part of a personal computer, personal digital assistant, mobile phone, converged device, or other rendering device for communicating with the processor 610 via any type of link, such as a wired or wireless link. The user input device 670 is operable for interacting with the processor 610 including interaction within a paradigm of a user interface (e.g., GUI, VUI, etc.) and/or other elements of the present system, such as to enable web browsing, content selection, such as provided by left and right clicking on a device, a mouse-over, pop-up menu, etc., such as provided by user interaction with a computer mouse, etc., as may be readily appreciated by a person of ordinary skill in the art.
In accordance with an embodiment of the present system, the rendering device 630 may operate as a touch sensitive display for communicating with the processors 610 (e.g., providing selection of a web browser, a Uniform Resource Locator (URL), portions of web pages, etc.) and thereby, the rendering device 630 may also operate as a user input device. In this way, a user may interact with the processor 610 including interaction within a paradigm of a Ul, such as to support content selection, input of reaction indications, comments, etc. Clearly the user device 690, the processor 610, memory 620, rendering device 630 and/or user input device 670 may all or partly be portions of a computer system or other device, and/or be embedded in a portable device, such as a mobile station (MS), mobile telephone, personal computer (PC), personal digital assistant (PDA), converged device such as a smart telephone, etc. The system and method described herein addresses problems in prior art systems. In accordance with an embodiment of the present system, the user device 690, corresponding user interfaces and other portions of the system 600 are provided for browsing content, selecting content, providing reaction indications, reaction indication palettes, etc., and for transferring the content and reaction indications, tallied reaction indications, etc., between the user device 690 and the content server 680.
The methods of the present system are particularly suited to be carried out by a computer software program, such program containing modules corresponding to one or more of the individual steps or acts described and/or envisioned by the present system. Such program may of course be embodied in a computer-readable medium, such as an integrated chip, a peripheral device or memory, such as the memory 620 or other memory coupled to the processor 610.
The computer-readable medium and/or memory 620 may be any recordable medium (e.g., RAM, ROM, removable memory, CD-ROM, hard drives, DVD, floppy disks or memory cards) or may be a transmission medium utilizing one or more of radio frequency (RF) coupling, Bluetooth coupling, infrared coupling etc. Any medium known or developed that can store and/or transmit information suitable for use with a computer system may be used as the computer-readable medium and/or memory 620.
Additional memories may also be used. The computer-readable medium, the memory 620, and/or any other memories may be long-term, short-term, or a combination of long-term and short-term memories. These memories configure processor 610 to implement the methods, operational acts, and functions disclosed herein. The operation acts may include controlling the rendering device 630 to render elements in a form of a Ul and/or controlling the rendering device 630 to render other information in accordance with the present system.
The memories may be distributed (e.g., such as a portion of the content server 680) or local and the processor 610, where additional processors may be provided, may also be distributed or may be singular. The memories may be implemented as electrical, magnetic or optical memory, or any combination of these or other types of storage devices. Moreover, the term "memory" should be construed broadly enough to encompass any information able to be read from or written to an address in the addressable space accessed by a processor. With this definition, information on α network is still within memory 620, tor instance, because the processor 610 may retrieve the information from the network for operation in accordance with the present system. For example, a portion of the memory as understood herein may reside as a portion of the content server 680. Further, the content server 680 should be understood to include further network connections to other devices, systems (e.g., servers), etc. While not shown for purposes of simplifying the following description, it is readily appreciated that the content server 680 may include processors, memories, displays and user inputs similar as shown for the user device 690, as well as other networked servers, such as may host web sites, etc. Accordingly, while the description contained herein focuses on details of interaction within components of the user devices 690, it should be understood to similarly apply to interactions of components of the content server 680.
The processor 610 is capable of providing control signals and/or performing operations in response to input signals from the user input device 670 and executing instructions stored in the memory 620. The processor 610 may be an application- specific or general-use integrated circuit(s). Further, the processor 610 may be a dedicated processor for performing in accordance with the present system or may be a general-purpose processor wherein only one of many functions operates for performing in accordance with the present system. The processor 610 may operate utilizing a program portion, multiple program segments, or may be a hardware device utilizing a dedicated or multi-purpose integrated circuit.
Finally, the above discussion is intended to be merely illustrative of the present system and should not be construed as limiting the appended claims to any particular embodiment or group of embodiments. For example, the present system may be utilized to determine the whether a user has left an update such as a voice or text update and push content which corresponds with the detected update and/or corresponding information such as, for example, a corresponding information related to an associated audio wallpaper. The present system may be provided in a form of a content rendering device, such as a MS. A further embodiment of the present system, may provide a Ul that operates as a browser extension, such as a rendered browser toolbar.
Thus, while the present system has been described with reference to exemplary embodiments, including user interfaces, it should also be appreciated that numerous modifications and alternative embodiments may be devised by those having ordinary skill in the art without departing from the broader and intended spirit and scope of the present system as set forth in the claims that follow. Further, while exemplary user interfaces are provided to facilitate an understanding of the present system, other user interfaces may be provided and/or elements of one user interface may be combined with another of the user interfaces in accordance with further embodiments of the present system.
The section headings included herein are intended to facilitate a review but are not intended to limit the scope of the present system. Accordingly, the specification and drawings are to be regarded in an illustrative manner and are not intended to limit the scope of the appended claims.
In interpreting the appended claims, it should be understood that: a) the word "comprising" does not exclude the presence of other elements or acts than those listed in a given claim; b) the word "a" or "an" preceding an element does not exclude the presence of a plurality of such elements; c) any reference signs in the claims do not limit their scope; d) several "means" may be represented by the same item or hardware or software implemented structure or function; e) any of the disclosed elements may be comprised of hardware portions (e.g., including discrete and integrated electronic circuitry), software portions (e.g., computer programming), and any combination thereof; f) hardware portions may be comprised of one or both of analog and digital portions; g) any of the disclosed devices or portions thereof may be combined together or separated into further portions unless specifically stated otherwise; h) no specific sequence of acts or steps is intended to be required unless specifically indicated; and i) the term "plurality of" an element includes two or more of the claimed element, and does not imply any particular range of number of elements; that is, a plurality of elements may be as few as two elements, and may include an immeasurable number of elements.

Claims

ClaimsWhat is claimed is:
1. A method of distributing audio information comprising acts of: receiving audio information; accessing user profile information corresponding to a user; combining predetermined sound information with the audio information so as to form composite audio information; and transmitting the combined audio information to one or more recipients.
2. The method of claim 1 , further comprising an act of selecting the predetermined sound information in accordance with the user profile information.
3. The method of claim 1 , further comprising an act of rendering the combined audio information.
4. The method of claim 1 , wherein the predetermined sound information comprises at least one of an audio wallpaper and a sound relating to a selected location.
5. The method of claim 4, further comprising an act of selecting the location based upon a geophysical location of a user or a user-selected location.
6. The method of claim 1 , further comprising an act of distributing the combined audio information to at least one further user.
7. The method of claim 1, further comprising an act of determining whether the user has entered new audio information.
8. The method of claim 1 , wherein the combined audio information comprises at least one of header, load, and footer portions of the combined audio information.
9. The method of claim 8, further comprising an act of inserting at least part of the predetermined sound information in at least one of the header or footer portions of the combined audio information.
10. The method of claim 1 , further comprising an act of determining whether there is further audio information from the user or from a further user.
1 1 . The method of claim 1 , further comprising an act of transmitting a query comprising information related to the user.
12. A computer program stored on a computer readable memory medium, the computer program comprising: a program portion configured to: receive audio information; access user profile information corresponding to a user; combine predetermined sound information with the audio information so as to form composite audio information; and transmit the combined audio information to one or more recipients.
13. The computer program of claim 1 2, further comprising a program portion configured to select the predetermined sound information in accordance with the user profile information.
14. The computer program of claim 1 2, further comprising a program portion configured to render the combined audio information.
15. The computer program of claim 12, wherein the predetermined sound information comprises at least one of an audio wallpaper and a sound relating to a selected location.
16. The computer program of claim 15, further comprising a program portion configured to select the location based upon a geophysical location of a user or a user-selected location.
17. The computer program of claim 12, further comprising a program portion configured to distribute the combined audio information to at least one further user.
18. The computer program of claim 12, further comprising a program portion configured to determine whether the user has entered new audio information.
19. The computer program of claim 12, wherein the combined audio information comprises at least one of header, load, and footer portions.
20. The computer program of claim 19, further comprising a program portion configured to insert at least part of the predetermined sound information in at least one of the header or footer portions of the combined audio information.
21 . The computer program of claim 12, further comprising a program portion configured to determine whether there is further audio information from the user or from a further user.
22. The computer program of claim 12, further comprising a program portion configured to transmit a query comprising information related to the user.
23. A communication system for distributing audio information, the system comprising: α controller which: receives audio information; accesses user profile information corresponding to a user; combines predetermined sound information with the audio information so as to form composite audio information; and transmits the combined audio information.
24. The communication system claim 23, wherein the controller selects the predetermined sound information in accordance with the user profile information.
25. The communication system of claim 23, further comprising a speaker which renders the combined audio information.
26. The communication system of claim 23, wherein the predetermined sound information comprises at least one of an audio wallpaper and a sound relating to a selected location.
27. The communication system of claim 26, further comprising a locator which determines a geophysical location of a mobile station (MS) of the user.
28. The communication system of claim 23, wherein the controller distributes the combined audio information to at least one further user.
29. The communication system of claim 23, wherein the controller determines whether the user has entered new audio information.
30. The communication system of claim 23, wherein the combined audio information comprises at least one of header, load, and footer portions.
31 . The communication system of claim 30, wherein the controller inserts at least part of the predetermined sound information in at least one of the header or footer portions of the combined audio information.
32. The communication system of claim 23, wherein the audio information is based upon text information that has been translated.
33. The communication system of claim 23, wherein the controller transmits a query comprising information related to the user.
34. A method of distributing information comprising acts of: receiving a call from a user; determining an identification (ID) of the user; accessing user profile information of the user, the user profile information comprising information related to account names and passwords for one or more social networking services (SNSs); receiving audio or textual information from the user; accessing one or more SNSs using the user profile information; and transmitting the at least one of audio and textual information or a link to the at least one or audio or textual information to the one or more SNSs.
35. A method of distributing information comprising acts of: determining whether a user has posted information on one or more social networking services (SNSs); downloading the posted information based upon the determination; translating the downloaded posted information to audio information; determining one or more recipients for the posted information; and transmitting the audio information or a link to the audio information to the one or more recipients.
PCT/IB2009/056036 2008-12-31 2009-12-15 Communication system incorporating collaborative information exchange and method of operation thereof WO2010076770A2 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US14213108P 2008-12-31 2008-12-31
US61/142,131 2008-12-31

Publications (2)

Publication Number Publication Date
WO2010076770A2 true WO2010076770A2 (en) 2010-07-08
WO2010076770A3 WO2010076770A3 (en) 2010-09-30

Family

ID=42173061

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/IB2009/056036 WO2010076770A2 (en) 2008-12-31 2009-12-15 Communication system incorporating collaborative information exchange and method of operation thereof

Country Status (1)

Country Link
WO (1) WO2010076770A2 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101909281A (en) * 2010-07-15 2010-12-08 优视科技有限公司 Mobile terminal-based user social contact method, device and system
WO2013006554A2 (en) 2011-07-01 2013-01-10 Ahmed Tewfik Bouzid Voice enabled social artifacts
US9875751B2 (en) 2014-07-31 2018-01-23 Dolby Laboratories Licensing Corporation Audio processing systems and methods

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AUPR690701A0 (en) * 2001-08-10 2001-08-30 Redpoint Pty Ltd A system and method for customising call alerts
US7123696B2 (en) * 2002-10-04 2006-10-17 Frederick Lowe Method and apparatus for generating and distributing personalized media clips
US8032378B2 (en) * 2006-07-18 2011-10-04 Stephens Jr James H Content and advertising service using one server for the content, sending it to another for advertisement and text-to-speech synthesis before presenting to user
US7992171B2 (en) * 2006-09-06 2011-08-02 Qurio Holdings, Inc. System and method for controlled viral distribution of digital content in a social network

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
None

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101909281A (en) * 2010-07-15 2010-12-08 优视科技有限公司 Mobile terminal-based user social contact method, device and system
WO2013006554A2 (en) 2011-07-01 2013-01-10 Ahmed Tewfik Bouzid Voice enabled social artifacts
EP2727013A4 (en) * 2011-07-01 2015-06-03 Angel Com Voice enabled social artifacts
US9929987B2 (en) 2011-07-01 2018-03-27 Genesys Telecommunications Laboratories, Inc. Voice enabled social artifacts
US10581773B2 (en) 2011-07-01 2020-03-03 Genesys Telecommunications Laboratories, Inc. Voice enabled social artifacts
US9875751B2 (en) 2014-07-31 2018-01-23 Dolby Laboratories Licensing Corporation Audio processing systems and methods

Also Published As

Publication number Publication date
WO2010076770A3 (en) 2010-09-30

Similar Documents

Publication Publication Date Title
US11917107B2 (en) System and method for processing voicemail
JP5033756B2 (en) Method and apparatus for creating and distributing real-time interactive content on wireless communication networks and the Internet
US9262120B2 (en) Audio service graphical user interface
US7933389B2 (en) System and method generating voice sites
US20060276230A1 (en) System and method for wireless audio communication with a computer
US20110054647A1 (en) Network service for an audio interface unit
US20060136556A1 (en) Systems and methods for personalizing audio data
US20120201362A1 (en) Posting to social networks by voice
EP2649785B1 (en) Propagating user status information across computing resources including a voicemail server
JP2008529345A (en) System and method for generating and distributing personalized media
KR20140022824A (en) Audio-interactive message exchange
US20090172108A1 (en) Systems and methods for a telephone-accessible message communication system
US9538011B1 (en) Mobile microphone system portal app for meetings
US20100235443A1 (en) Method and apparatus of providing a locket service for content sharing
US20120059493A1 (en) Media playing apparatus and media processing method
WO2010076770A2 (en) Communication system incorporating collaborative information exchange and method of operation thereof
JP2005151553A (en) Voice portal
EP1388245B8 (en) Method and apparatus for creating and distributing real-time interactive media content through wireless communication networks and the internet
CN102318296A (en) Messaging system
AU2002309787A1 (en) Method and apparatus for creating and distributing real-time interactive media content through wireless communication networks and the internet
CN101461262B (en) System for generating sound corresponding to string
US20120079058A1 (en) Contextually relevant media bundle
KR100674569B1 (en) Community service apparatus for utilizing sound source and method thereof
US20220358853A1 (en) Ornament Apparatus, Systems and Methods
US20150288822A1 (en) Private Social Voice Messaging System

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: 09807471

Country of ref document: EP

Kind code of ref document: A2

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 09807471

Country of ref document: EP

Kind code of ref document: A2