Patents by Inventor Jonathan Levell

Jonathan Levell 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: 11496301
    Abstract: Some embodiments of the present invention comprise a method, system, and/or computer program product for a publish/subscribe messaging system. A processor identifies a subscriber of a pub/sub messaging system. The processor retrieves a stored encrypted key for the identified subscriber of the pub/sub messaging system. The processor communicates the retrieved encrypted key to a user selected from a group comprising a publisher of the pub/sub messaging system and the identified subscriber of the pub/sub messaging system. The processor implements end-to-end encryption of messages of the pub/sub messaging system based on key-groups.
    Type: Grant
    Filed: February 21, 2020
    Date of Patent: November 8, 2022
    Assignee: International Business Machines Corporation
    Inventors: Ian Charles Edwards, Jonathan Levell, Bernard Zdzislaw Kufluk
  • Publication number: 20210266160
    Abstract: Some embodiments of the present invention comprise a method, system, and/or computer program product for a publish/subscribe messaging system. A processor identifies a subscriber of a pub/sub messaging system. The processor retrieves a stored encrypted key for the identified subscriber of the pub/sub messaging system. The processor communicates the retrieved encrypted key to a user selected from a group comprising a publisher of the pub/sub messaging system and the identified subscriber of the pub/sub messaging system. The processor implements end-to-end encryption of messages of the pub/sub messaging system based on key-groups.
    Type: Application
    Filed: February 21, 2020
    Publication date: August 26, 2021
    Inventors: Ian Charles Edwards, Jonathan Levell, Bernard Zdzislaw Kufluk
  • Patent number: 10938769
    Abstract: A message is sent by a message tracking device to at least one device that is configured to report status of internal processing of content within the message. The reported status of the internal processing of the content within the message by the at least one device is monitored.
    Type: Grant
    Filed: August 21, 2017
    Date of Patent: March 2, 2021
    Assignee: International Business Machines Corporation
    Inventors: Anthony P. Beardsmore, Jonathan Levell
  • Patent number: 10922127
    Abstract: A method and system are provided for transactional messaging support in connected messaging networks. A first messaging network is provided which does not support transactional processing and a second messaging network is provided which does support transactional processing. A proxy application is provided between the first and second messaging networks. The proxy application receives messages from a first application on the first messaging network, the messages including instructions regarding transactional processing of the messages, and forwards the messages to the second messaging network using a transactional processing supported by the second messaging network.
    Type: Grant
    Filed: July 17, 2018
    Date of Patent: February 16, 2021
    Assignee: Snap Inc.
    Inventors: Jonathan Levell, Matthew David Peel
  • Patent number: 10608970
    Abstract: A messaging system having a cluster of receiving applications for handling received messages, and a cluster of messaging engines for receiving messages from one or more message sources and forwarding the received messages to one of the receiving applications is provided. Each messaging engine is operable to transmit load balancing information, the load balancing information comprising an indication of the current loading on the messaging engine. The receiving applications are instructed to establish a connection to receive messages from a particular messaging engine within the cluster based on the load balancing information. Accordingly, applications are able to receive messages in such a way that the messages do not build up unprocessed on a particular messaging engine for too long, and such that messages are routed to messaging engines where messages are being consumed, and so that the receiving applications receive messages from every messaging engine where messages are arriving.
    Type: Grant
    Filed: April 1, 2016
    Date of Patent: March 31, 2020
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Leo J. Davison, Ian C. Edwards, Jonathan Levell, Andrew J. Schofield
  • Patent number: 10594703
    Abstract: A method for managing a plurality of messages associated with an online messaging system is provided. The method may include receiving a message from a messaging source. The method may also include determining whether the messaging source associated with the received message is trusted. The method may further include tagging the received message or storing the received message, wherein the tagging and the storing is based on the determination that the messaging source is not trusted. The method may additionally include validating the received message.
    Type: Grant
    Filed: March 16, 2018
    Date of Patent: March 17, 2020
    Assignee: International Business Machines Corporation
    Inventors: Anthony P. Beardsmore, Jonathan Levell
  • Patent number: 10491532
    Abstract: Embodiments of the present invention provide a method, system and computer program product for configurable pacing in messaging systems. In an embodiment of the invention, a configurable message pacing method has been provided. The method includes receiving a message directed for placement in a repository of an intermediate messaging system into which messages are placed by message producing applications and from which messages are retrieved by message consuming applications. Thereafter, it can be determined if the placement of the received message into the repository will result in a breach of an associated threshold value for the repository. Consequently, a message pacing action can be triggered responsive to the determination that the placement of the received message into the repository will result in a breach of the associated threshold value for the repository.
    Type: Grant
    Filed: May 12, 2015
    Date of Patent: November 26, 2019
    Assignee: International Business Machines Corporation
    Inventors: Andrew D.J. Banks, Jonathan Isaac, Jonathan Levell, Trevor Lobban
  • Publication number: 20180321968
    Abstract: A method and system are provided for transactional messaging support in connected messaging networks. A first messaging network is provided which does not support transactional processing and a second messaging network is provided which does support transactional processing. A proxy application is provided between the first and second messaging networks. The proxy application receives messages from a first application on the first messaging network, the messages including instructions regarding transactional processing of the messages, and forwards the messages to the second messaging network using a transactional processing supported by the second messaging network.
    Type: Application
    Filed: July 17, 2018
    Publication date: November 8, 2018
    Inventors: Jonathan Levell, Matthew David Peel
  • Patent number: 10061608
    Abstract: A method and system are provided for transactional messaging support in connected messaging networks. A first messaging network is provided which does not support transactional processing and a second messaging network is provided which does support transactional processing. A proxy application is provided between the first and second messaging networks. The proxy application receives messages from a first application on the first messaging network, the messages including instructions regarding transactional processing of the messages, and forwards the messages to the second messaging network using a transactional processing supported by the second messaging network.
    Type: Grant
    Filed: March 9, 2012
    Date of Patent: August 28, 2018
    Assignee: Snap Inc.
    Inventors: Jonathan Levell, Matthew David Peel
  • Patent number: 10043223
    Abstract: In an embodiment of the invention, a method for wireless power generation for managing power distribution in a wireless environment is provided. The method includes receiving a request from a device to connect to a wireless power distribution base station, authenticating the device, determining a lease period during which time power is to be delivered wirelessly to the device in response to authenticating the device, and delivering power wirelessly from the wireless power distribution base station to the device for the duration of the lease period, but subsequent to the lease period, discontinuing delivery of power wirelessly to the device.
    Type: Grant
    Filed: December 30, 2010
    Date of Patent: August 7, 2018
    Assignee: International Business Machines Corporation
    Inventors: Anthony P. Beardsmore, Oliver Fenton, Jonathan Levell
  • Publication number: 20180205744
    Abstract: A method for managing a plurality of messages associated with an online messaging system is provided. The method may include receiving a message from a messaging source. The method may also include determining whether the messaging source associated with the received message is trusted. The method may further include tagging the received message or storing the received message, wherein the tagging and the storing is based on the determination that the messaging source is not trusted. The method may additionally include validating the received message.
    Type: Application
    Filed: March 16, 2018
    Publication date: July 19, 2018
    Inventors: Anthony P. Beardsmore, Jonathan Levell
  • Patent number: 9942243
    Abstract: A method for managing a plurality of messages associated with an online messaging system is provided. The method may include receiving a message from a messaging source. The method may also include determining whether the messaging source associated with the received message is trusted. The method may further include tagging the received message or storing the received message, wherein the tagging and the storing is based on the determination that the messaging source is not trusted. The method may additionally include validating the received message.
    Type: Grant
    Filed: May 18, 2015
    Date of Patent: April 10, 2018
    Assignee: International Business Machines Corporation
    Inventors: Anthony P. Beardsmore, Jonathan Levell
  • Publication number: 20170346782
    Abstract: A message is sent by a message tracking device to at least one device that is configured to report status of internal processing of content within the message. The reported status of the internal processing of the content within the message by the at least one device is monitored.
    Type: Application
    Filed: August 21, 2017
    Publication date: November 30, 2017
    Inventors: Anthony P. Beardsmore, Jonathan Levell
  • Publication number: 20170289084
    Abstract: A messaging system having a cluster of receiving applications for handling received messages, and a cluster of messaging engines for receiving messages from one or more message sources and forwarding the received messages to one of the receiving applications is provided. Each messaging engine is operable to transmit load balancing information, the load balancing information comprising an indication of the current loading on the messaging engine. The receiving applications are instructed to establish a connection to receive messages from a particular messaging engine within the cluster based on the load balancing information. Accordingly, applications are able to receive messages in such a way that the messages do not build up unprocessed on a particular messaging engine for too long, and such that messages are routed to messaging engines where messages are being consumed, and so that the receiving applications receive messages from every messaging engine where messages are arriving.
    Type: Application
    Filed: April 1, 2016
    Publication date: October 5, 2017
    Inventors: LEO J. DAVISON, IAN C. EDWARDS, JONATHAN LEVELL, ANDREW J. SCHOFIELD
  • Patent number: 9769109
    Abstract: A message associated with a subscription topic hosted by a publish/subscribe message tracking device is sent by the publish/subscribe message tracking device to at least one subscriber device that is registered to the subscription topic and configured to report action completion processing based upon content of the message. The action completion processing based upon content of the message by the at least one subscriber device is monitored.
    Type: Grant
    Filed: May 19, 2016
    Date of Patent: September 19, 2017
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Anthony P. Beardsmore, Jonathan Levell
  • Patent number: 9519579
    Abstract: Technique for analyzing memory areas based on local copies of a global counter by: (i) determining a plurality of currently-executing fast threads and a plurality of currently executed slow threads; (ii) intermittently incrementing a global counter variable to have a current global counter value; (iii) intermittently setting the local counter of the data set for each fast thread of the plurality of fast threads to be equal to the current global counter value; (iv) determining that no slow threads of the plurality of slow threads reference the first memory region; (v) assigning a free-after value to the first memory region; (vi) determining whether the free-after value of the first memory region is less than or equal to all of the local counters of the fast thread data sets of the plurality of fast threads; and (vii) de-allocating the first memory region.
    Type: Grant
    Filed: March 31, 2015
    Date of Patent: December 13, 2016
    Assignee: International Business Machines Corporation
    Inventors: Ian C. Edwards, Jonathan Levell, Andrew J. Schofield
  • Patent number: 9513812
    Abstract: Technique for analyzing memory areas based on local copies of a global counter by: (i) determining a plurality of currently-executing fast threads and a plurality of currently executed slow threads; (ii) intermittently incrementing a global counter variable to have a current global counter value; (iii) intermittently setting the local counter of the data set for each fast thread of the plurality of fast threads to be equal to the current global counter value; (iv) determining that no slow threads of the plurality of slow threads reference the first memory region; (v) assigning a free-after value to the first memory region; (vi) determining whether the free-after value of the first memory region is less than or equal to all of the local counters of the fast thread data sets of the plurality of fast threads; and (vii) de-allocating the first memory region.
    Type: Grant
    Filed: November 12, 2015
    Date of Patent: December 6, 2016
    Assignee: International Business Machines Corporation
    Inventors: Ian C. Edwards, Jonathan Levell, Andrew J. Schofield
  • Publication number: 20160344746
    Abstract: A method for managing a plurality of messages associated with an online messaging system is provided. The method may include receiving a message from a messaging source. The method may also include determining whether the messaging source associated with the received message is trusted. The method may further include tagging the received message or storing the received message, wherein the tagging and the storing is based on the determination that the messaging source is not trusted. The method may additionally include validating the received message.
    Type: Application
    Filed: May 18, 2015
    Publication date: November 24, 2016
    Inventors: Anthony P. Beardsmore, Jonathan Levell
  • Publication number: 20160292072
    Abstract: Technique for analyzing memory areas based on local copies of a global counter by: (i) determining a plurality of currently-executing fast threads and a plurality of currently executed slow threads; (ii) intermittently incrementing a global counter variable to have a current global counter value; (iii) intermittently setting the local counter of the data set for each fast thread of the plurality of fast threads to be equal to the current global counter value; (iv) determining that no slow threads of the plurality of slow threads reference the first memory region; (v) assigning a free-after value to the first memory region; (vi) determining whether the free-after value of the first memory region is less than or equal to all of the local counters of the fast thread data sets of the plurality of fast threads; and (vii) de-allocating the first memory region.
    Type: Application
    Filed: March 31, 2015
    Publication date: October 6, 2016
    Inventors: Ian C. Edwards, Jonathan Levell, Andrew J. Schofield
  • Publication number: 20160291880
    Abstract: Technique for analyzing memory areas based on local copies of a global counter by: (i) determining a plurality of currently-executing fast threads and a plurality of currently executed slow threads; (ii) intermittently incrementing a global counter variable to have a current global counter value; (iii) intermittently setting the local counter of the data set for each fast thread of the plurality of fast threads to be equal to the current global counter value; (iv) determining that no slow threads of the plurality of slow threads reference the first memory region; (v) assigning a free-after value to the first memory region; (vi) determining whether the free-after value of the first memory region is less than or equal to all of the local counters of the fast thread data sets of the plurality of fast threads; and (vii) de-allocating the first memory region.
    Type: Application
    Filed: November 12, 2015
    Publication date: October 6, 2016
    Inventors: Ian C. Edwards, Jonathan Levell, Andrew J. Schofield