Patents by Inventor Jonathan I. Turow
Jonathan I. Turow 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: 10397303Abstract: A virtual device representation of an Internet of Things (IoT) device in a service provider environment having device state information associated with the virtual device representation may be identified to enable one or more services of the service provider environment and one or more IoT devices to communicate with the virtual representation of the IoT device. Semantic annotations associated with IoT device data for the IoT device may be identified in a device registry of the service provider environment. A request may be received for data using a URL to communicate with the virtual device representation. Canonical data may be obtained from the IoT device data in the virtual representation and the canonical data may be translated according to the semantic annotations to fulfill the request for data.Type: GrantFiled: August 29, 2016Date of Patent: August 27, 2019Assignee: Amazon Technologies, Inc.Inventors: Calvin Yue-Ren Kuo, Jonathan I. Turow, Alan Conrad Rawcliffe
-
Patent number: 10372486Abstract: Systems and methods are described for configuring a coordinator within a coordinated environment, which environment includes set of coordinated devices managed by the coordinator. The coordinated devices may include devices configured to be managed remotely, such as thin devices, devices with alternative primary functions (e.g., appliances, household objects, etc.), or devices with limited localized user interfaces. To manage the set of coordinated devices, the coordinator can execute tasks, each task corresponding to a set of portable code executable by the coordinator to implement a desired functionality. A user may generate one or more tasks, and submit them to a service provider environment for deployment to the coordinator. The service provider environment can utilize a device shadow to notify the coordinator of the obtained tasks, and thereafter deliver the tasks to the coordinator, thus modifying a configuration of the coordinator.Type: GrantFiled: November 28, 2016Date of Patent: August 6, 2019Assignee: Amazon Technologies, Inc.Inventors: Calvin Yue-Ren Kuo, Rudresh Amin, Yen-Lin Chen, Jonathan I. Turow, Cheng Pan, Dmytro Taran, Naveen Kumar Aitha, Ambuj Tandon, Kyunghwan Choi, Marc John Brooker, James Christopher Sorenson, III, Weili Zhong McClenahan, Mark Edward Rafn
-
Patent number: 10356223Abstract: Technology is described for migrating connections for Internet of Things (IoT) devices. Data packets may be received from an IoT device for forwarding to a first physical host in a computing service environment. A determination to migrate the connection for the IoT device from the first physical host to a second physical host in the computing service environment may be performed when a throughput of the data packets received from the IoT device for the first physical host exceeds a defined threshold. A connection migration procedure may be initiated to migrate the connection for the IoT device from the first physical host to the second physical host. The connection migration procedure may include an exchange of session state information for the IoT device from the first physical host to the second physical host to enable the migration of the connection to the second physical host.Type: GrantFiled: March 17, 2016Date of Patent: July 16, 2019Assignee: Amazon Technologies, Inc.Inventors: Calvin Yue-Ren Kuo, Jonathan I. Turow, Tristam Kyle MacDonald, Justin Robert Knoepfler, Yadunandan Parthasarathy, Aditya Bhalla, Sudarshan Anand Chitre
-
Patent number: 10270738Abstract: A technology is described for operating a device shadowing service that calculates an aggregated group state for a group of device representations. An example method may include receiving device states for devices represented using a group of device representations, where the devices connect over a network to a device shadowing service configured to manage the device states. In response to an event, device representations included in the group of device representations may be identified. Device states indicated by the device representations may be obtained and an aggregated group state for the group of device representations may be calculated using the device states indicated by the device representations.Type: GrantFiled: September 19, 2016Date of Patent: April 23, 2019Assignee: Amazon Technologies, Inc.Inventors: Calvin Yue-Ren Kuo, William Alexander Stevenson, James Christopher Sorenson, III, Shyam Krishnamoorthy, Jonathan I. Turow, Mark Edward Rafn
-
Patent number: 10270875Abstract: A technology is described for managing dynamic groups of devices using device representations. An example method may include receiving a request for a dynamic group of device representations. In response to the request, a membership parameter used to identify member device representations included in the dynamic group of device representations may be obtained. Device representations may be queried using the membership parameter to identify member device representations that have a state that corresponds to the membership parameter, and the dynamic group of device representations may be generated to include identifiers for the member device representations.Type: GrantFiled: September 19, 2016Date of Patent: April 23, 2019Assignee: Amazon Technologies, Inc.Inventors: Calvin Yue-Ren Kuo, Mark Edward Rafn, James Christopher Sorenson, III, Shyam Krishnamoorthy, Jonathan I. Turow, William Alexander Stevenson
-
Publication number: 20190097989Abstract: A computing environment is disclosed that receives from devices requests directed toward services accessible in the environment, and that forwards communications from services in the environment to devices registered with the environment. During a registration process at the environment, devices are assigned a device identifier that is used to identify and authenticate each particular device and requests communicated from and to the device via the environment. The computing environment maintains state information for each device that has been registered with the system. As the device interacts with the system, the state information is updated to reflect the changes in the device. When requests to perform functions are received from devices, the computing environment determines for the particular device and the particular function requested what processing needs to be performed by the environment in response to the request.Type: ApplicationFiled: August 29, 2018Publication date: March 28, 2019Inventors: Alan Conrad Rawcliffe, Samuel John Young, Shyam Krishnamoorthy, Marco Argenti, Jonathan I. Turow, Calvin Yue-Ren Kuo, James Christopher Sorenson, III
-
Patent number: 10216540Abstract: Systems and methods are described for configuring a coordinator within a coordinated environment, which environment includes set of coordinated devices managed by the coordinator. The coordinated devices may include devices configured to be managed remotely, such as thin devices, devices with alternative primary functions (e.g., appliances, household objects, etc.), or devices with limited localized user interfaces. To manage the set of coordinated devices, the coordinator can execute tasks, each task corresponding to a set of portable code executable by the coordinator to implement a desired functionality. A user may generate one or more tasks, and submit them to a service provider environment for deployment to the coordinator. The service provider environment can utilize a device shadow to notify the coordinator of the obtained tasks, and thereafter deliver the tasks to the coordinator, thus modifying a configuration of the coordinator.Type: GrantFiled: November 28, 2016Date of Patent: February 26, 2019Assignee: Amazon Technologies, Inc.Inventors: Calvin Yue-Ren Kuo, Jonathan I. Turow, Dmytro Taran, Naveen Kumar Aitha, Marc John Brooker, James Christopher Sorenson, III, Weili Zhong McClenahan, Mark Edward Rafn
-
Patent number: 10193839Abstract: Systems and methods are described for management of data transmitted between computing devices in a communication network. An administrative component can configure one or more devices in the communication path of messages to be exchanged by devices to interpret codes embedded in the communication messages. A receiving device can review incoming messages for security information. The receiving devices can then process the message based on the security information to determine how the communication message will be routed or otherwise processed.Type: GrantFiled: November 28, 2016Date of Patent: January 29, 2019Assignee: Amazon Technologies, IncInventors: Ambuj Tandon, Calvin Yue-Ren Kuo, Jonathan I. Turow, Marc John Brooker, James Christopher Sorenson, III, Weili Zhong McClenahan, Mark Edward Rafn
-
Patent number: 10091329Abstract: A computing environment is disclosed that receives from devices requests directed toward services accessible in the environment, and that forwards communications from services in the environment to devices registered with the environment. During a registration process at the environment, devices are assigned a device identifier that is used to identify and authenticate each particular device and requests communicated from and to the device via the environment. The computing environment maintains state information for each device that has been registered with the system. As the device interacts with the system, the state information is updated to reflect the changes in the device. When requests to perform functions are received from devices, the computing environment determines for the particular device and the particular function requested what processing needs to be performed by the environment in response to the request.Type: GrantFiled: June 30, 2015Date of Patent: October 2, 2018Assignee: Amazon Technologies, Inc.Inventors: Calvin Yue-Ren Kuo, James Christopher Sorenson, III, Alan Conrad Rawcliffe, Shyam Krishnamoorthy, Jonathan I. Turow, Marco Argenti
-
Patent number: 10075422Abstract: A computing environment is disclosed that receives from devices requests directed toward services accessible in the environment, and that forwards communications from services in the environment to devices registered with the environment. During a registration process at the environment, devices are assigned a device identifier that is used to identify and authenticate each particular device and requests communicated from and to the device via the environment. The computing environment maintains state information for each device that has been registered with the system. As the device interacts with the system, the state information is updated to reflect the changes in the device. When requests to perform functions are received from devices, the computing environment determines for the particular device and the particular function requested what processing needs to be performed by the environment in response to the request.Type: GrantFiled: June 30, 2015Date of Patent: September 11, 2018Assignee: Amazon Technologies, Inc.Inventors: Alan Conrad Rawcliffe, Samuel John Young, Shyam Krishnamoorthy, Marco Argenti, Jonathan I. Turow, Calvin Yue-Ren Kuo, James Christopher Sorenson, III
-
Publication number: 20180227388Abstract: A computing environment is disclosed that receives from devices requests directed toward services accessible in the environment, and that forwards communications from services in the environment to devices registered with the environment. During a registration process at the environment, devices are assigned a device identifier that is used to identify and authenticate each particular device and requests communicated from and to the device via the environment. The computing environment maintains state information for each device that has been registered with the system. As the device interacts with the system, the state information is updated to reflect the changes in the device. When requests to perform functions are received from devices, the computing environment determines for the particular device and the particular function requested what processing needs to be performed by the environment in response to the request.Type: ApplicationFiled: February 1, 2018Publication date: August 9, 2018Inventors: Calvin Yue-Ren Kuo, James Christopher Sorenson, III, Alan Conrad Rawcliffe, Shyam Krishnamoorthy, Jonathan I. Turow, Marco Argenti
-
Publication number: 20180150325Abstract: Systems and methods are described for implementing a coordinator within a coordinated environment, which environment includes set of coordinated devices managed by the coordinator. The coordinator can be provisioned with a set of tasks, each task corresponding to a segment of code that can be executed by the coordinator, such as to manage the coordinated devices. To assist in execution of the tasks, the coordinator can include a resource manager that generates execution environments corresponding to an individual task execution, which environments may be isolated from other execution environments. The coordinator can further include a scheduler to obtain calls to execute tasks, and implement a queue from which to select tasks for execution. On selecting a task, the scheduler may interact with the resource manager to generate an execution environment for the task, and cause execution of the task within the execution environment.Type: ApplicationFiled: November 28, 2016Publication date: May 31, 2018Inventors: Calvin Yue-Ren Kuo, Rudresh Amin, Yen-Lin Chen, Jonathan I. Turow, Cheng Pan, Marc John Brooker, James Christopher Sorenson, III, Weili Zhong McClenahan
-
Publication number: 20180150339Abstract: Systems and methods are described for implementing a coordinator within a coordinated environment, which environment includes set of coordinated devices managed by the coordinator. The coordinator can be provisioned with a set of tasks, each task corresponding to a segment of code that can be executed by the coordinator, such as to manage the coordinated devices. To assist in execution of the tasks, the coordinator can include a communications manager that enables communications between tasks. The communications manager can provide a language-independent interface to call for execution of tasks, pass information to a task, and obtain outputs of a task. In some embodiments, the communication manager may utilize a language-independent protocol, such as the hypertext transport protocol, and be configured to respond to requests addressed to uniform resource identifiers associated with the communications manager.Type: ApplicationFiled: November 28, 2016Publication date: May 31, 2018Inventors: Cheng Pan, Calvin Yue-Ren Kuo, Jonathan I. Turow, Marc John Brooker, James Christopher Sorenson, III, Weili Zhong McClenahan
-
Publication number: 20180150317Abstract: Systems and methods are described for configuring a coordinator within a coordinated environment, which environment includes set of coordinated devices managed by the coordinator. The coordinated devices may include devices configured to be managed remotely, such as thin devices, devices with alternative primary functions (e.g., appliances, household objects, etc.), or devices with limited localized user interfaces. To manage the set of coordinated devices, the coordinator can execute tasks, each task corresponding to a set of portable code executable by the coordinator to implement a desired functionality. A user may generate one or more tasks, and submit them to a service provider environment for deployment to the coordinator. The service provider environment can utilize a device shadow to notify the coordinator of the obtained tasks, and thereafter deliver the tasks to the coordinator, thus modifying a configuration of the coordinator.Type: ApplicationFiled: November 28, 2016Publication date: May 31, 2018Inventors: Calvin Yue-Ren KUO, Jonathan I. TUROW, Dmytro TARAN, Naveen Kumar AITHA, Marc John Brooker, James Christopher Sorenson, III, Weili Zhong McClenahan, Mark Edward Rafn
-
Publication number: 20180152405Abstract: Systems and methods are described for management of data transmitted between computing devices in a communication network. An administrative component can configure one or more devices in the communication path of messages to be exchanged by devices to interpret codes embedded in the communication messages. A receiving device can review incoming messages for one or more processing codes or instructions that are embedded in the portion of the communication typically utilized solely to identify the subject matter of the communication, generally referred to as the topic portion of the communication. The receiving devices can then process the embedded codes to determine how the communication message will be routed or otherwise processed.Type: ApplicationFiled: November 28, 2016Publication date: May 31, 2018Inventors: Calvin Yue-Ren Kuo, Jonathan I. Turow, Kyunghwan Choi, Marc John Brooker, James Christopher Sorenson, III, Weili Zhong McClenahan, Mark Edward Rafn
-
Publication number: 20180150341Abstract: Systems and methods are described for implementing a coordinator within a coordinated environment, which environment includes set of coordinated devices managed by the coordinator. The coordinator can be provisioned with a set of tasks, each task corresponding to a segment of code that can be executed by the coordinator, such as to manage the coordinated devices. To assist in execution of the tasks, the coordinator can include a remote interface that enables retrieval of task calls from an external system, such as an external on-demand code execution environment. The remote interface may periodically retrieve calls from the external system, and generate corresponding call messages on the coordinator to cause executions of called tasks. The remote interface can further obtain outputs of such executions, and report those outputs to the external system.Type: ApplicationFiled: November 28, 2016Publication date: May 31, 2018Inventors: Cheng Pan, Calvin Yue-Ren Kuo, Jonathan I. Turow, Marc John Brooker, James Christopher Sorenson, III, Weili Zhong McClenahan
-
Publication number: 20180150318Abstract: Systems and methods are described for configuring a coordinator within a coordinated environment, which environment includes set of coordinated devices managed by the coordinator. The coordinated devices may include devices configured to be managed remotely, such as thin devices, devices with alternative primary functions (e.g., appliances, household objects, etc.), or devices with limited localized user interfaces. To manage the set of coordinated devices, the coordinator can execute tasks, each task corresponding to a set of portable code executable by the coordinator to implement a desired functionality. A user may generate one or more tasks, and submit them to a service provider environment for deployment to the coordinator. The service provider environment can utilize a device shadow to notify the coordinator of the obtained tasks, and thereafter deliver the tasks to the coordinator, thus modifying a configuration of the coordinator.Type: ApplicationFiled: November 28, 2016Publication date: May 31, 2018Inventors: Calvin Yue-Ren Kuo, Rudresh Amin, Yen-Lin Chen, Jonathan I. Turow, Cheng Pan, Dmytro Taran, Naveen Kumar Aitha, Ambuj Tandon, Kyunghwan Choi, Marc John Brooker, James Christopher Sorenson, III, Weili Zhong McClenahan, Mark Edward Rafn
-
Publication number: 20180152406Abstract: Systems and methods are described for management of data transmitted between computing devices in a communication network. An administrative component can configure one or more devices in the communication path of messages to be exchanged by devices to interpret codes embedded in the communication messages. A receiving device can review incoming messages and process the message to determine how the communication message will be routed or otherwise processed according to business rules or logic.Type: ApplicationFiled: November 28, 2016Publication date: May 31, 2018Inventors: Calvin Yue-Ren Kuo, Jonathan I. Turow, Kyunghwan Choi, Marc John Brooker, James Christopher Sorenson, III, Weili Zhong McClenahan, Mark Edward Rafn
-
Publication number: 20180152401Abstract: Systems and methods are described for management of data transmitted between computing devices in a communication network. An administrative component can configure one or more devices in the communication path of messages to be exchanged by devices to interpret codes embedded in the communication messages. A receiving device can review incoming messages for security information. The receiving devices can then process the message based on the security information to determine how the communication message will be routed or otherwise processed.Type: ApplicationFiled: November 28, 2016Publication date: May 31, 2018Inventors: Ambuj Tandon, Calvin Yue-Ren Kuo, Jonathan I. Turow, Marc John Brooker, James Christopher Sorenson, III, Weili Zhong McClenahan, Mark Edward Rafn
-
Patent number: 9973593Abstract: A computing environment is disclosed that receives from devices requests directed toward services accessible in the environment, and that forwards communications from services in the environment to devices registered with the environment. During a registration process at the environment, devices are assigned a device identifier that is used to identify and authenticate each particular device and requests communicated from and to the device via the environment. The computing environment maintains state information for each device that has been registered with the system. As the device interacts with the system, the state information is updated to reflect the changes in the device. When requests to perform functions are received from devices, the computing environment determines for the particular device and the particular function requested what processing needs to be performed by the environment in response to the request.Type: GrantFiled: June 30, 2015Date of Patent: May 15, 2018Assignee: Amazon Technologies, Inc.Inventors: James Christopher Sorenson, III, Alan Conrad Rawcliffe, Shyam Krisnamoorthy, Jonathan I. Turow, Calvin Yue-Ren Kuo, Marco Argenti