Patents by Inventor John Wolthuis

John Wolthuis has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).

  • Patent number: 10320983
    Abstract: A system and method including receiving a request to enqueue a communication session; adding the communication session to the queue of a plurality of communication sessions; upon adding the communication to the queue, transferring control logic to the configured wait-state application; receiving a dequeue request initiated by a second entity; in response to the dequeue request, managing the procession of communication sessions in the queue; and dequeuing a communication session from the queue.
    Type: Grant
    Filed: December 11, 2015
    Date of Patent: June 11, 2019
    Assignee: Twilio Inc.
    Inventors: Christer Fahlgren, John Wolthuis, Peter Shafton, Thomas Schiavone
  • Publication number: 20190149582
    Abstract: In one embodiment, the method of processing telephony sessions includes: communicating with an application server using an application layer protocol; processing telephony instructions with a call router; and creating call router resources accessible through a call router Application Programming Interface (API). In another embodiment, the system for processing telephony sessions includes: a call router, a URI for an application server, a telephony instruction executed by the call router, and a call router API resource.
    Type: Application
    Filed: January 14, 2019
    Publication date: May 16, 2019
    Inventors: Jeff Lawson, John Wolthuis, Evan Cooke
  • Patent number: 10291782
    Abstract: Systems and methods for a work distribution service. At a multi-tenant platform that provides a work distribution service for a plurality of external systems, a priority is assigned to a first work item of a first external system. The work item is received via a RESTful work item API call request. The priority is assigned based on work item attributes of the work item and a workflow instruction corresponding to workflow information specified by the work item. The workflow instruction is provided by the external system via a RESTful Workflow API. A worker is assigned to the work item based on: the priority of the work item, the workflow information, and worker state managed by the first external system via a RESTful Worker API. The worker state includes worker attributes. The work item is generated by the external system, and the workflow instruction is managed by the external system.
    Type: Grant
    Filed: May 14, 2018
    Date of Patent: May 14, 2019
    Assignee: Twilio, Inc.
    Inventors: John Wolthuis, Robert Brazier
  • Patent number: 10270734
    Abstract: A method and system for real-time eventing including interacting with at least one configuration attribute according to instructions specified through an application programming interface (API); adding subscribers for an event channel; generating an event from operation of an application; publishing the event message to the event channel on an event router; processing the event message according to the at least one configuration attribute; identifying a subscriber to the event channel; and sending the event from the event router to the subscriber.
    Type: Grant
    Filed: March 27, 2018
    Date of Patent: April 23, 2019
    Assignee: Twilio, Inc.
    Inventors: Jeffrey Lawson, John Wolthuis, Evan Cooke, Jeffrey Comer
  • Patent number: 10230772
    Abstract: A method for processing telephony sessions of a network including at least one application server and a call router, the method including the steps of assigning a primary Uniform Resource Identifier (URI) and at least a secondary URI to an application; mapping a telephony session to the primary URI; communicating with the application server designated by the primary URI using an application layer protocol; receiving telephony instructions from the application server and processing the telephony instructions with the call router; detecting an application event; and upon detecting the application event, communicating with the application server designated by the secondary URI.
    Type: Grant
    Filed: December 14, 2017
    Date of Patent: March 12, 2019
    Assignee: Twilio, Inc.
    Inventors: Jeffrey Lawson, John Wolthuis, Evan Cooke
  • Patent number: 10200458
    Abstract: A system and method for processing communication media in a regionally distributed communication platform that includes at a first platform region, establishing a communication session comprising establishing a media communication to at least one endpoint from the first region and establishing signaling communication to a second platform region; selecting a media resource in response to a change in media processing requirements of the communication session; when the selected media resource is outside the first region, routing media communication through a media resource outside of the first region; when the media resource is available in the first region, routing media communication through the media resource of the first region; and when the media resource is outside of the second region, storing the media communication in the first region at least temporarily and tunneling a branch of the media communication to a central media service in the second region.
    Type: Grant
    Filed: February 7, 2017
    Date of Patent: February 5, 2019
    Assignee: Twilio, Inc.
    Inventors: Brian Tarricone, John Wolthuis, Jonas Boerjesson
  • Patent number: 10187530
    Abstract: An embodiment of the system for publishing events of a telephony application to a client includes a call router that generates events from the telephony application and an event router that manages the publication of events generated by the call router and that manages the subscription to events by clients. The system can be used with a telephony application that interfaces with a telephony device and an application server.
    Type: Grant
    Filed: September 20, 2017
    Date of Patent: January 22, 2019
    Assignee: Twilio, Inc.
    Inventors: Jeffrey Lawson, John Wolthuis, Evan Cooke
  • Patent number: 10165015
    Abstract: A system and method for communicating with a client application that can include establishing a client signaling communication channel with a first client application; receiving a communication request from the first client application through the client signaling communication channel, wherein the communication request contains at least an authentication token and a specified communication destination; verifying the authentication token; if the authentication token is verified, at the system bridge, establishing a signaling communication channel with the communication destination and a second media communication channel with the specified communication destination; at the system bridge, establishing a first media communication channel with the client application; and merging the first media communication channel with the second media communication channel.
    Type: Grant
    Filed: January 12, 2017
    Date of Patent: December 25, 2018
    Assignee: Twilio Inc.
    Inventors: Jeffrey Lawson, John Wolthuis, Evan Cooke, Jonas Borjesson, Rob Simutis, Brian Tarricone, Edward Kim, Ameya Lokare
  • Publication number: 20180262620
    Abstract: Systems and methods for a work distribution service. At a multi-tenant platform that provides a work distribution service for a plurality of external systems, a priority is assigned to a first work item of a first external system. The work item is received via a RESTful work item API call request. The priority is assigned based on work item attributes of the work item and a workflow instruction corresponding to workflow information specified by the work item. The workflow instruction is provided by the external system via a RESTful Workflow API. A worker is assigned to the work item based on: the priority of the work item, the workflow information, and worker state managed by the first external system via a RESTful Worker API. The worker state includes worker attributes. The work item is generated by the external system, and the workflow instruction is managed by the external system.
    Type: Application
    Filed: May 14, 2018
    Publication date: September 13, 2018
    Inventors: John Wolthuis, Robert Brazier
  • Patent number: 10051011
    Abstract: A system and method for facilitating signaling and media communication at a communication platform that includes receiving a communication request to a resource, wherein the communication request specifies a destination endpoint; establishing signaling and media communication in a session with the destination endpoint of the communication request; registering a callback resource to a signaling event of the session; monitoring signaling messages of the session; detecting the signaling event in the signaling messages of the session; and triggering the callback resource upon detecting the signaling event.
    Type: Grant
    Filed: January 25, 2016
    Date of Patent: August 14, 2018
    Inventors: Jonas Boerjesson, John Wolthuis, Jeffrey Lawson, Evan Cooke
  • Publication number: 20180212919
    Abstract: A method and system for real-time eventing including interacting with at least one configuration attribute according to instructions specified through an application programming interface (API); adding subscribers for an event channel; generating an event from operation of an application; publishing the event message to the event channel on an event router; processing the event message according to the at least one configuration attribute; identifying a subscriber to the event channel; and sending the event from the event router to the subscriber.
    Type: Application
    Filed: March 27, 2018
    Publication date: July 26, 2018
    Inventors: Jeffrey Lawson, John Wolthuis, Evan Cooke, Jeffrey Comer
  • Patent number: 10003693
    Abstract: Systems and methods for a work distribution service. At a multi-tenant platform that provides a work distribution service for a plurality of external systems, a priority is assigned to a first work item of a first external system. The work item is received via a RESTful work item API call request. The priority is assigned based on work item attributes of the work item and a workflow instruction corresponding to workflow information specified by the work item. The workflow instruction is provided by the external system via a RESTful Workflow API. A worker is assigned to the work item based on: the priority of the work item, the workflow information, and worker state managed by the first external system via a RESTful Worker API. The worker state includes worker attributes. The work item is generated by the external system, and the workflow instruction is managed by the external system.
    Type: Grant
    Filed: March 6, 2017
    Date of Patent: June 19, 2018
    Assignee: Twilio, Inc.
    Inventors: John Wolthuis, Robert Brazier
  • Publication number: 20180139248
    Abstract: In one embodiment, the method of processing telephony sessions includes: communicating with an application server using an application layer protocol; processing telephony instructions with a call router; and creating call router resources accessible through a call router Application Programming Interface (API). In another embodiment, the system for processing telephony sessions includes: a call router, a URI for an application server, a telephony instruction executed by the call router, and a call router API resource.
    Type: Application
    Filed: January 15, 2018
    Publication date: May 17, 2018
    Inventors: Jeff Lawson, John Wolthuis, Evan Cooke
  • Publication number: 20180131813
    Abstract: 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.
    Type: Application
    Filed: January 11, 2018
    Publication date: May 10, 2018
    Inventors: Jeff Lawson, John Wolthuis, Evan Cooke
  • Patent number: 9967224
    Abstract: A method and system for real-time eventing including interacting with at least one configuration attribute according to instructions specified through an application programming interface (API); adding subscribers for an event channel; generating an event from operation of an application; publishing the event message to the event channel on an event router; processing the event message according to the at least one configuration attribute; identifying a subscriber to the event channel; and sending the event from the event router to the subscriber.
    Type: Grant
    Filed: August 5, 2014
    Date of Patent: May 8, 2018
    Assignee: Twilio, Inc.
    Inventors: Jeffrey Lawson, John Wolthuis, Evan Cooke, Jeffrey Comer
  • Publication number: 20180124250
    Abstract: A method and system for operating a multitenancy telephony system including a call queue that stores call requests received from a plurality of users; an expandable and contractible telephony resource duster that establishes call sessions for call requests; a analysis system that calculates capacity requirements of the system; a resource allocator that manages the scaling and operation of the telephony resource cluster; and a plurality of telephony network channels that are used as telephony communication channels for call sessions.
    Type: Application
    Filed: January 3, 2018
    Publication date: May 3, 2018
    Inventors: Jeff Lawson, John Wolthuis, Evan Cooke
  • Publication number: 20180109569
    Abstract: A method for processing telephony sessions of a network including at least one application server and a call router, the method including the steps of assigning a primary Uniform Resource Identifier (URI) and at least a secondary URI to an application; mapping a telephony session to the primary URI; communicating with the application server designated by the primary URI using an application layer protocol; receiving telephony instructions from the application server and processing the telephony instructions with the call router; detecting an application event; and upon detecting the application event, communicating with the application server designated by the secondary URI.
    Type: Application
    Filed: December 14, 2017
    Publication date: April 19, 2018
    Inventors: Jeffrey Lawson, John Wolthuis, Evan Cooke
  • Patent number: 9906651
    Abstract: 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.
    Type: Grant
    Filed: January 24, 2017
    Date of Patent: February 27, 2018
    Assignee: Twilio, Inc.
    Inventors: Jeff Lawson, John Wolthuis, Evan Cooke
  • Patent number: 9906571
    Abstract: In one embodiment, the method of processing telephony sessions includes: communicating with an application server using an application layer protocol; processing telephony instructions with a call router; and creating call router resources accessible through a call router Application Programming Interface (API). In another embodiment, the system for processing telephony sessions includes: a call router, a URI for an application server, a telephony instruction executed by the call router, and a call router API resource.
    Type: Grant
    Filed: January 23, 2017
    Date of Patent: February 27, 2018
    Assignee: Twilio, Inc.
    Inventors: Jeff Lawson, John Wolthuis, Evan Cooke
  • Patent number: 9894212
    Abstract: A method and system for operating a multitenancy telephony system including a call queue that stores call requests received from a plurality of users; an expandable and contractible telephony resource cluster that establishes call sessions for call requests; a analysis system that calculates capacity requirements of the system; a resource allocator that manages the scaling and operation of the telephony resource cluster; and a plurality of telephony network channels that are used as telephony communication channels for call sessions.
    Type: Grant
    Filed: February 28, 2017
    Date of Patent: February 13, 2018
    Assignee: Twilio, Inc.
    Inventors: Jeff Lawson, John Wolthuis, Evan Cooke