System and method for processing media requests during telephony sessions
원문보기
IPC분류정보
국가/구분
United States(US) Patent
등록
국제특허분류(IPC7판)
H04L-012/66
H04L-029/06
H04M-007/00
H04M-001/247
출원번호
US-0103632
(2013-12-11)
등록번호
US-9306982
(2016-04-05)
발명자
/ 주소
Lawson, Jeff
Wolthuis, John
Cooke, Evan
출원인 / 주소
Twilio, Inc.
대리인 / 주소
Schox, Jeffrey
인용정보
피인용 횟수 :
48인용 특허 :
204
초록▼
In a preferred embodiment, the method of caching media used in a telephony application includes: receiving a media request; sending the media request to a media layer using HTTP; the a media layer performing the steps of checking in a cache for the media resource; processing the media request within
In a preferred embodiment, the method of caching media used in a telephony application includes: receiving a media request; sending the media request to a media layer using HTTP; the a media layer performing the steps of checking in a cache for the media resource; processing the media request within a media processing server; and storing the processed media in the cache as a telephony compatible resource specified by a persistent address. The system of the preferred embodiment includes a call router and a media layer composed of a cache and media processing server.
대표청구항▼
1. A method of caching media for use in a telephony application comprising: at a call router, generating a media request initiated by a telephony application session, the media request specifying a requested media resource through a persistent Universal Resource Identifier (URI);sending the media re
1. A method of caching media for use in a telephony application comprising: at a call router, generating a media request initiated by a telephony application session, the media request specifying a requested media resource through a persistent Universal Resource Identifier (URI);sending the media request to a media layer;where the media layer performs the following steps: checking in a cache for a telephony compatible audio media resource specified by the media request and identified by the persistent URI;if a telephony compatible audio media resource is identified in the cache by the persistent URI, forwarding the cached audio media resource to the call router,if a telephony compatible audio media resource is not identified in the cache by the persistent URI, processing the media request at a media processing server according to the persistent URI of the media request to generate a first telephony compatible audio media resource, storing the first telephony compatible audio media resource in the cache as a resource specified by the persistent URI, and forwarding the first telephony compatible audio media resource to the call router,wherein the persistent URI is used by the media layer to identify the telephony compatible audio media resource in the cache, and used by the media processing server to generate the first telephony compatible audio media resource,wherein the first telephony compatible audio media resource is generated by converting a media resource retrieved at the persistent URI,wherein the first telephony compatible audio media resource is stored in the cache in association with the persistent URI,wherein the persistent URI specifies a location of the media resource at an external server, andwherein the media layer uses the persistent URI of the media resource to check in the cache for the first telephony compatible audio media resource for the media resource of the media request. 2. The method of claim 1, wherein the persistent URI has embedded media parameters that uniquely identify contents of the media resource. 3. The method of claim 1, wherein the media request is sent through a media layer application programming interface (API) from the call router to the media layer. 4. The method of claim 1, further comprising generating a second media request through a media layer application programming interface (API) prior to sending the media request generated by the call router; and sending the media request to a media layer; wherein, prior to the telephony session initiating the media resource and at the media layer, further comprising: checking in the cache for a telephony compatible audio media resource specified by the second media request and identified by a persistent Universal Resource Identifier (URI) of the second media request; if a telephony compatible audio media resource is not identified in the cache by the persistent URI of the second media request, processing the second media request within a media processing server to form a telephony compatible audio media resource; and storing in the cache the telephony compatible audio media resource specified by a persistent address. 5. The method of claim 1, wherein processing the media request comprises retrieving media from an external server at the persistent URI and converting the retrieved media to a telephony compatible media format with a transcoding proxy server of the media processing server. 6. The method of claim 1, further comprising writing the telephony compatible media resource to a disk at the call router, and in a second media request initiated at the call router and specifying the persistent URI, mapping the persistent URI specified by the persistent URI to a local telephony compatible media resource written to a disk of the call router; and returning the local telephony compatible media resource. 7. The method of claim 1, wherein the persistent URI includes media parameters used by the media layer to identify the telephony compatible audio media resource in the cache, and used by the media processing server to generate the first telephony compatible audio media resource. 8. The method of claim 1, wherein the persistent URI comprises information enabling the telephony compatible audio media resource to be persistent, queryable, and recoverable. 9. The method of claim 1, wherein the media request is a second media request sent to the media layer after a first media request, the first media request specifying the requested media resource through the persistent URI, andwherein checking in the cache for the telephony compatible audio media resource specified by the second media request comprises: checking in the cache for a telephony compatible audio media resource of the media resource specified by the first media request and identified by the persistent URI; and if a telephony compatible audio media resource of the media resource specified by the first media request is not identified in the cache by the persistent URI, processing the second media request within a media processing server to form a telephony compatible audio media resource and storing the telephony compatible audio media resource in the cache in association with the persistent URI. 10. A method for communication media handling comprising: at a call router, generating a media request initiated by a telephony application, the media request specifying a requested media resource through a persistent Universal Resource Identifier (URI);sending the media request to a media layer;at the media layer, processing the media request which comprises: checking in a cache for a telephony compatible media resource specified by the persistent URI;if a telephony compatible media resource is not identified in the cache, retrieving a first format of the media resource at the persistent URI, converting the first format of the media resource into a telephony compatible media resource of the persistent URI, and storing in the cache the telephony compatible audio media resource specified by the persistent URI; andmaking the telephony compatible media resource available to the call router,wherein the persistent URI is used by the media layer to identify the telephony compatible media resource in the cache, and used to convert the first format of the media resource into the telephony compatible media resource,wherein the telephony compatible media resource generated from the media resource retrieved at the persistent URI is stored in the cache in association with the persistent URI,wherein the persistent URI specifies a location of the media resource at an external server, andwherein the media layer uses the persistent URI of the media resource to check in the cache for the telephony compatible media resource for the media resource of the media request. 11. The method of claim 10, wherein the first format of the media resource defines an original content type of the media, and the original content type is different from the telephony compatible media resource. 12. The method of claim 11, wherein the telephony compatible media resource is an audio resource. 13. The method of claim 12, wherein the original content type of the media resource is a first audio file media format and the telephony compatible media resource is an 8 KHz mono channel audio format. 14. The method of claim 10, wherein the media request is media messaging request by the telephony application. 15. The method of claim 14, wherein the media request is a multimedia messaging service application request. 16. The method of claim 14, wherein the telephony compatible media resource is an image compatible with the multimedia messaging service of the telephony device. 17. The method of claim 14, wherein the original content type of the media resource is a video media resource. 18. The method of claim 10, further comprising caching an instruction document that contains instructions specifying at least one persistent URI of a media request. 19. The method of claim 10, wherein the persistent URI includes media parameters used by the media layer to identify the telephony compatible media resource in the cache, and used to convert the first format of the media resource into the telephony compatible media resource. 20. The method of claim 10, wherein the persistent URI comprises information enabling the telephony compatible media resource to be persistent, queryable, and recoverable. 21. A system for caching media used in telephony applications comprising: a call router, that resides on hardware, that receives media requests, and handles application communication between a telephony device and an application server;a media layer that is an intermediary layer between the call router and application resources, that uses an application layer messaging protocol, the media layer comprising: a cache server that stores telephony compatible audio media and is communicatively intermediary between the call router and media processing servers of the media layer and configured to cache telephony compatible audio media of a media processing server and referenced by a persistent Universal Resource Identifier (URI); anda media processing server that is a Text-To-Speech server that processes the media request to convert text to speech audio that is telephony compatible audio media cached by the cache server;a media processing server that is a transcoding proxy server that processes the media request to convert media types to a telephony compatible audio media that is cached by the cache server,wherein the persistent URI is used to identify the telephony compatible audio media in the cache server, and used by at least one of the Text-to-Speech server and the transcoding proxy server to generate a telephony compatible audio media that is cached by the cache server,wherein each of the Text-To-Speech-Server and the transcoding proxy server is constructed to process a media request by retrieving a media resource from an external server at a persistent URI specified by the media request and converting the retrieved media resource into a telephony compatible audio media,wherein the cache server is constructed to store the telephony compatible audio media in association with the persistent URI used by at least one of the Text-To-Speech-Server and the transcoding proxy server to retrieve the media resource, the telephony compatible audio media being generated from the retrieved media resource by at least one of the Text-To-Speech-Server and the transcoding proxy server,wherein each media resource is stored by the external server in a first format and in association with the persistent URI, and the corresponding telephony compatible audio media is stored by the cache sever in a telephony compatible audio format in association with the persistent URI, the first format being different from the telephony compatible audio format, andwherein the media layer is constructed to check in the cache server for a telephony compatible audio media for a media resource specified by a media request by using persistent URI of the media request that specifies a location of the media resource at an external server. 22. The system of claim 21, wherein the media layer further comprising a media processing server that is a transcoding proxy server that processes the media request to convert media types from an original media format to a telephony compatible image media format. 23. The system of claim 21, wherein the media layer further comprising a media processing server that is a transcoding proxy server that processes the media request to convert media types from an original video media format to a telephony compatible media format. 24. The system of claim 21, further comprising a Media Layer application programming interface (API) that provides programmatic access of the media layer from an external service. 25. The system of claim 21, wherein the media layer independently scales cache servers, Text-To-Speech servers, and transcoding proxy servers, and the media layer includes a load balancer that automatically manages the capacity of the servers of the media layer. 26. The system of claim 21, wherein the persistent URI includes media parameters used to identify the telephony compatible audio media in the cache server, and used by at least one of the Text-to-Speech server and the transcoding proxy server to generate a telephony compatible audio media that is cached by the cache server. 27. The system of claim 21, wherein the persistent URI comprises information enabling the telephony compatible audio media to be persistent, queryable, and recoverable.
연구과제 타임라인
LOADING...
LOADING...
LOADING...
LOADING...
LOADING...
이 특허에 인용된 특허 (204)
Charles Kevin Shank ; R. Alberto Villarica, Abstract interface for media and telephony services.
Baldwin,Christopher David; Bernardini,David A.; Chavez,David L.; Gentile Polese,Luigi; Pessot,Albert D.; Roehrich,Rod; Dorato,Karen, Alternate routing of media connections within a single communications system across public or private network facilities.
Vladimir N. Deryugin ; Dmitry A. Torba ; Igor Neyman, Apparatus and methods in routing internet protocol network telephony calls in a centrally-managed call center system.
Dezonno Anthony J. (2225 Midhurst Rd. Downers Grove IL 60516) Surma Richard S. (5216 Pennywood Dr. Lisle IL 60532) Holtaway Thomas S. (245 Spring Ave. Glen Ellyn IL 60137), Automatic call distribution system with an ISDN compatible call connection system and method.
Toba Francis, Brian Alejandro; Gereda Pico, Reymarx; Cuevas, Renee Mauricio; Rallo, Christopher Lee; Figueroa, Javier; Cabrera, Alejandro E., Bi-directional sharing of a document object model.
Porter, Brandon W.; Stifelman, Lisa Joy; Bodell, Michael; Marx, Matthew Talin; Sutton, Bill, Handling of speech recognition in a declarative markup language.
Connelly,Jon Christopher; Hansen,Dian; Shurtleff, III,Robert Glenn, Method and apparatus and program for scheduling and executing events in real time over a network.
Dobner, Edward Joseph; Kuehr-McLaren, David Gerard; Nadalin, Anthony Joseph; Zhang, Xiaoyan, Method and apparatus for establishing a secure communication connection between a java application and secure server.
Grunsted David P. ; Krebs Christopher C. ; Botkin Bruce A. ; Kemp Daniel L. ; Dohrmann Kevin, Method and apparatus for initiating telephone calls using a data network.
Jreij Elie A. (Austin TX) Dunn Tave P. (Austin TX) Horowitz Michael J. (Ann Arbor MI) Gersing Peter E. (Cupertino CA) Whittington Robert D. (Pflugerville TX) Huber Werner (Munich DEX), Method and apparatus for masking the reporting of network telephony events to a computer.
Kochanski, Gregory P.; Olive, Joseph Philip; Shih, Chi-Lin, Method and apparatus for performing text-to-speech conversion in a client/server environment.
Andhare, Shirish; Haakenson, Erik; Adeeb, Ramy; McKinnon, Beth; Vernooy, Matt; Kunins, Jeff, Method and system for design for run-time control of voice XML applications.
Drosset, Joseph St-John; Kim, Michael; Bottorf, Christopher J.; McMillan, Juan C., Method and system for subscriber-based audio service over a communication network.
Ball, Thomas J.; Danielsen, Peter John; Mataga, Peter Andrew; Rehor, Kenneth G., Method of providing transfer capability on web-based interactive voice response services.
Gechter Jerry (Lincoln MA) Fried Jeffrey A. (Somerville MA) Pokress Robert L. (Andover MA) Andrews G. Wayne (Nashua NH), Methods of automatically rerouting an incoming telephone call placed over a network.
Mellen-Garnett, Katrina A.; Gupta, Prashant, Modular application collaboration including filtering at the source and proxy execution of compensating transactions to conserve server resources.
Hill, Deborah Jeanne; Kiefhaber, Sarah Hildebrandt; Kohler, Joylee E.; Paddock, Henry R.; Sobus, Katherine A.; Thomson, Rodney A., Multi-service request within a contact center.
Saylor, Michael J.; Trundle, Stephen S.; Patnaik, Anurag; Garr, David A.; Lindsey, Benjamin M.; Mahowald, Josh; Inanoglu, Zeynep, Multiple voice network access provider system and method.
Lee,Sung Won; Yoon,Soon Young; Maeng,Seung Joo; Kim,Woo June; Chang,Hong Seong; Chang,Hoon, Power control apparatus and method in a wireless communication system using scheduled packet data service channel.
Stifelman, Lisa J.; Partovi, Hadi; Partovi, Haleh; Alpert, David Bryan; Marx, Matthew Talin; Bailey, Scott James; Sims, Kyle D.; Bailey, Darby McDonough; Brathwaite, Roderick Steven; Koh, Eugene; Davis, Angus Macdonald, Providing menu and other services for an information processing system using a telephone or other audio interface.
Stifelman,Lisa Joy; Partovi,Hadi; Partovi,Haleh; Alpert,David Bryan; Marx,Matthew Talin; Bailey,Scott James; Sims,Kyle D.; Bailey,Darby McDonough; Brathwaite,Roderick Steven; Koh,Eugene; Davis,Angus , Providing menu and other services for an information processing system using a telephone or other audio interface.
Stifelman,Lisa Joy; Partovi,Hadi; Partovi,Haleh; Alpert,David Bryan; Marx,Matthew Talin; Bailey,Scott James; Sims,Kyle D.; Bailey,Darby McDonough; Brathwaite,Roderick Steven; Koh,Eugene; Davis,Angus Macdonald, Providing services for an information processing system using an audio interface.
Saylor, Michael J.; Trundle, Stephen S.; Patnaik, Anurag; Garr, David A.; Lindsey, Benjamin M.; Mahowald, Josh; Inanoglu, Zeynep, Revenue generation method for use with voice network access provider system and method.
Schuster, Guido M.; Sidhu, Ikhlaq S.; Mahler, Jerry J.; Dean, Frederick D.; Grabiec, Jacek A., System and method for advertising using data network telephone connections.
Meubus Charles J.,CAX ; Jodoin Sylvain,CAX ; Nadeau Raymond,CAX, System and method for communication session disposition responsive to events in a telecommunications network and the internet.
Nick Nance ; Steve Johnson ; Mathew Porter ; Tracy Boehrer, System and method for controlling telephone calls through a cross platform enabled internet browser.
Taylor, Jonathan Robert; Campbell, Ryan Stephen; Auburn, RJ; Agranovsky, Alexander S.; Green, Robbie A., System and method for dynamic call-progress analysis and call processing.
Taylor, Jonathan Robert; Campbell, Ryan Stephen; Auburn, RJ; Agranovsky, Alexander S., System and method for dynamic telephony resource allocation between premise and hosted facilities.
Saylor, Michael J.; Trundle, Steven S; Zirngibl, Michael X.; Brown, Steven R.; Patnaik, Anurag; Garr, David A.; Lindsey, Benjamin M.; Mahowald, Josh; Inanoglu, Zeynap, System and method for generating voice pages with included audio files for use in a voice page delivery system.
Schuster, Guido M.; Sidhu, Ikhlaq S.; Bezaitis, Andrew; Gentles, Thomas, System and method for performing messaging services using a data communications channel in a data network telephone system.
Saylor,Michael J.; Richards, III,Frederick; Trundle,Steven S; Rolincik,Mark J.; Gardner,Douglas F., System and method for personalizing an interactive voice broadcast of a voice service based on automatic number identification.
Saylor, Michael J.; Richards, III, Frederick; Patnaik, Anurag; Zirngibl, Michael, System and method for real-time, personalized, dynamic, interactive voice services for book-related information.
Saylor,Michael J.; Richards, III,Frederick; Patnaik,Anurag; Zirngibl,Michael, System and method for real-time, personalized, dynamic, interactive voice services for corporate-analysis related information.
Zirngibl, Michael; Patnaik, Anurag; Saylor, Michael J.; Richards, III, Frederick, System and method for real-time, personalized, dynamic, interactive voice services for information related to existing travel schedule.
Zirngibl,Michael; Anurag,Patnaik; Saylor,Michael J.; Richards, III,Frederick, System and method for real-time, personalized, dynamic, interactive voice services for information related to existing travel schedule.
Langseth, Justin; Orolin, Nicolas J.; Patnaik, Anurag; Zirngibl, Michael; Saylor, Michael J.; Richards, III, Frederick, System and method for real-time, personalized, dynamic, interactive voice services for property-related information.
Eberle, Hannes; Leon, Christopher S.; Maass, Bodo; Patnaik, Anurag; Santa Ana, Alberto; Zirngibl, Michael; Reyes, Benjamin; Mosle, Wolf, System and method for the creation and automatic deployment of personalized dynamic and interactive voice services.
Zirngibl,Michael; Patnaik,Anurag, System and method for the creation and automatic deployment of personalized dynamic and interactive voice services with integrated inbound and outbound voice services.
Eberle,Hannes; Leon,Christopher S.; Maass,Bodo; Patnaik,Anurag; Santa Ana,Alberto; Zirngibl,Michael; Reyes,Benjamin; Mosle,Wolf, System and method for the creation and automatic deployment of personalized, dynamic and interactive voice services.
Eberle, Hannes; Leon, Christopher S.; Maass, Bodo; Patnaik, Anurag; Santa Ana, Alberto; Zirngibl, Michael, System and method for the creation and automatic deployment of personalized, dynamic and interactive voice services including module for generating and formatting voice services.
Zirngibl, Michael; Patnaik, Anurag; Maass, Bodo; Eberle, Hannes, System and method for the creation and automatic deployment of personalized, dynamic and interactive voice services, including deployment through digital sound files.
Zirngibl, Michael; Patnaik, Anurag; Maass, Bodo; Eberle, Hannes; Langseth, Justin, System and method for the creation and automatic deployment of personalized, dynamic and interactive voice services, including deployment through personalized broadcasts.
Zirngibl, Michael; Patnaik, Anurag; Maass, Bodo; Leon, Christopher S., System and method for the creation and automatic deployment of personalized, dynamic and interactive voice services, with real-time database queries.
Zirngibl, Michael; Patnaik, Anurag; Maass, Bodo; Leon, Christopher S., System and method for the creation and automatic deployment of personalized, dynamic and interactive voice services, with real-time database queries.
Eberle,Hannes; Leon,Christopher S.; Maass,Bodo; Patnaik,Anurag; Santa Ana,Alberto; Zirngibl,Michael, System and method for the creation and automatic deployment of personalized, dynamic and interactive voice services, with system and method that enable on-the-fly content and speech generation.
Zirngibl, Michael; Patnaik, Anurag; Maass, Bodo; Eberle, Hannes, System and method for the creation and automatic deployment of personalized, dynamic and interactive voice services, with telephone-based service utilization and control.
Zirngibl,Michael; Patnaik,Anurag; Maass,Bodo; Eberle,Hannes, System and method for the creation and automatic deployment of personalized, dynamic and interactive voice services, with telephone-based service utilization and control.
Zirngibl, Michael; Patnaik, Anurag, System and method for the creation and automatic deployment of personalized, dynamic and interactive voice services, with the direct delivery of voice services to networked voice messaging systems.
Eberle,Hannes; Leon,Christopher S.; Maass,Bodo; Patnaik,Anurag; Santa Ana,Alberto; Zirngibl,Michael, System and method for voice-enabled input for use in the creation and automatic deployment of personalized, dynamic, and interactive voice services.
Partovi,Hadi; Brathwaite,Roderick Steven; Davis,Angus Macdonald; McCue,Michael S.; Porter,Brandon William; Giannandrea,John; Walther,Eckart; Accardi,Anthony; Li,Zhe, System for providing personalized content over a telephone interface to a user according to the corresponding personalization profile including the record of user actions or the record of user behavior.
Cafarella,Michael J.; Porter,Brandon W.; Scullin,Will H., System verifying if an email request passed a policy check before initiating an interactive telephony session.
Ramanathan, Subramanian; Basu, Prithwish; Hansen, Richard Earl; Jones, Christine Elaine; Krishnan, Rajesh; Hain, Regina Rosales, Systems and methods for adaptive routing in mobile ad-hoc networks and disruption tolerant networks.
Ezerzer, Ran; Aljane, Ali; St-Cyr, Pierre; Yahmadi, Imed; Borodow, Eli B.; Margulies, Edwin Kenneth; Rodriguez, Pablo M., Systems and methods for handling a plurality of communications.
Foladare Mark J. (Kendall Park NJ) Goldman Shelley B. (East Brunswick NJ) Khan Aslam Y. (Holmdel NJ) Pan Lyndon M. (Little Silver NJ) Silverman David P. (Somerville NJ) Tsao Yao-Chung (Middletown NJ), Technique for providing redundant capability in a personal mobile communication system.
Tao, Tao; Sandstrom, Harold M.; Raizen, Helen S.; Bappe, Michael E.; Epstein, Edith; West, Eric I.; Kudva, Santhosh Venkatesh, Techniques for non-disruptive upgrade.
Partovi,Hadi; Brathwaite,Roderick Steven; Alpert,David Bryan; Belldina,Jeremy; Arons,Barry, Voice and telephone keypad based data entry for interacting with voice information services.
Michael J. Saylor ; Stephen S. Trundle ; Anurag Patnaik ; David A. Garr ; Benjamin M. Lindsey ; Josh Mahowald ; Zeynep Inanoglu, Voice code registration system and method for registering voice codes for voice pages in a voice network access provider system.
Saylor, Michael J.; Trundle, Stephen S.; Patnaik, Anurag; Garr, David A.; Lindsey, Benjamin M.; Mahowald, Josh; Inanoglu, Zeynep, Voice network access provider system and method.
Shrader Theodore Jack London ; Ault Michael Bradford ; Plassmann Ernst Robert ; Rich Bruce Arland ; Rosiles Mickella Ann ; Shi Shaw-Ben, Web server account manager plug-in for monitoring resources.
Lawson, Jeffrey Gordon; Wolthuis, John Robert; Cooke, Evan Mansfield; Boerjesson, Jonas Mikael, System and method for connecting a communication to a client.
Lawson, Jeff; Cooke, Evan; Simutis, Robert J.; Malatack, Patrick; Conroy, Kyle, System and method for determining and communicating presence information.
Lawson, Jeff; Cooke, Evan; Simutis, Robert J.; Malatack, Patrick; Conroy, Kyle, System and method for determining and communicating presence information.
Lawson, Jeff; Cooke, Evan; Simutis, Robert J.; Malatack, Patrick; Conroy, Kyle, System and method for determining and communicating presence information.
Boerjesson, Jonas; Wolthuis, John; Lawson, Jeffrey; Cooke, Evan, System and method for integrating session initiation protocol communication in a telecommunications platform.
Lawson, Jeffrey; Wolthuis, John; Cooke, Evan; Borjesson, Jonas; Simutis, Rob; Tarricone, Brian; Kim, Edward; Lokare, Ameya, System and method for real-time communication by using a client application communication protocol.
※ AI-Helper는 부적절한 답변을 할 수 있습니다.