IP Library Granted Patent US 10,877,821
Granted Patent B2
US 10,877,821 · App. 16/903,275 · Granted Dec 29, 2020

System and method for blockchain-based notification

Inventors: Rubing Shi (Hangzhou, CN); Yayang Guan (Hangzhou, CN)
Assignee: ADVANCED NEW TECHNOLOGIES CO., LTD.
G06F9/542G06F9/4868G06F9/4881H04L9/0637
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,877,821
App. No.
16/903,275
Granted
Dec 29, 2020
Kind
B2
Abstract

Methods, systems, and apparatus, including computer programs encoded on computer storage media, for blockchain-based notification are provided. One of the methods includes: obtaining, from a computing device, a notification message indicating that a current state of a workflow is one of one or more states of the workflow, wherein a blockchain contract deployed in a blockchain is executable to update the current state among the one or more states of the workflow; executing a function associated with the one state in response to the notification message; and in response to completion of the execution of the function, transmitting, to the computing device, a reply message indicating completion of the execution of the function associated with the one state.

Claims (63)

1. A computer-implemented method for blockchain-based notification, comprising:

determining, by a server, that a current state of a workflow is a first state, wherein the workflow comprises a state cycle registered in a blockchain, and a blockchain contract deployed in the blockchain is executable to update the current state among the state cycle;

updating, by the server, a local state machine to a local current state corresponding to the determined current state, wherein the server is configured to maintain the local state machine off the blockchain, and the local state machine comprises a local state cycle mapped to the state cycle registered in the blockchain;

generating, by the server, a notification message indicating the current state of the workflow is the first state;

transmitting, by the server, the notification message to a computing device, wherein the computing device is configured to execute a function corresponding to the first state in response to the notification message;

receiving, by the server, a reply message from the computing device indicating completion of the execution of the function;

in response to the reply message, generating, by the server, a blockchain transaction for updating the current state; and

transmitting, by the server, the blockchain transaction to one or more blockchain nodes of the blockchain for adding to the blockchain, wherein the blockchain transaction is configured to update the current state to a second state subsequent to the first state in the workflow by invoking the blockchain contract.

2. The method of claim 1 , wherein transmitting, by the server, the notification message to the computing device comprises placing the notification message in a message queue accessible to the computing device.

3. The method of claim 1 , wherein:

the function is customizable by a subscriber who subscribes to the first state; and

the computing device corresponds to the subscriber.

4. The method of claim 1 , wherein:

the local state cycle starts with a starting local state, passes through each of one or more local states once in one direction till an ending local state, and returns to the starting local state; and

each of the one or more local states is triggered by completion of a preceding local state in the local state cycle.

5. The method of claim 4 , wherein:

the state cycle starts with a starting state, passes through each of one or more states once in one direction till an ending state, and returns to the starting state;

each of the one or more states is triggered by completion of a preceding state in the state cycle; and

the starting local state is mapped to the starting state.

6. The method of claim 1 , wherein:

the execution of the function returns a value; and

the reply message comprises the value.

7. The method of claim 1 , wherein the execution of the function comprises automatic signing.

8. The method of claim 7 , wherein the execution of the function comprises automatically compiling an order and signing off the order.

9. The method of claim 1 , further comprising:

in response to the reply message, obtaining, by the server, information from the blockchain; and

determining, by the server, that the current state of the workflow is updated to the second state among the state cycle based on the obtained information.

10. A non-transitory computer-readable storage medium storing instructions executable by one or more processors, wherein execution of the instructions causes the one or more processors to perform operations comprising:

determining that a current state of a workflow is a first state, wherein the workflow comprises a state cycle registered in a blockchain, and a blockchain contract deployed in the blockchain is executable to update the current state among the state cycle;

updating a local state machine to a local current state corresponding to the determined current state, wherein a server is configured to maintain the local state machine off the blockchain, and the local state machine comprises a local state cycle mapped to the state cycle registered in the blockchain;

generating a notification message indicating the current state of the workflow is the first state;

transmitting the notification message to a computing device, wherein the computing device is configured to execute a function corresponding to the first state in response to the notification message;

receiving a reply message from the computing device indicating completion of the execution of the function;

in response to the reply message, generating a blockchain transaction for updating the current state; and

transmitting the blockchain transaction to one or more blockchain nodes of the blockchain for adding to the blockchain, wherein the blockchain transaction is configured to update the current state to a second state subsequent to the first state in the workflow by invoking the blockchain contract.

11. The non-transitory computer-readable storage medium of claim 10 , wherein transmitting the notification message to the computing device comprises placing the notification message in a message queue accessible to the computing device.

12. The non-transitory computer-readable storage medium of claim 10 , wherein:

the function is customizable by a subscriber who subscribes to the first state; and

the computing device corresponds to the subscriber.

13. The non-transitory computer-readable storage medium of claim 10 , wherein:

the local state cycle starts with a starting local state, passes through each of one or more local states once in one direction till an ending local state, and returns to the starting local state; and

each of the one or more local states is triggered by completion of a preceding local state in the local state cycle.

14. The non-transitory computer-readable storage medium of claim 13 , wherein:

the state cycle starts with a starting state, passes through each of one or more states once in one direction till an ending state, and returns to the starting state;

each of the one or more states is triggered by completion of a preceding state in the state cycle; and

the starting local state is mapped to the starting state.

15. The non-transitory computer-readable storage medium of claim 10 , wherein:

the execution of the function returns a value; and

the reply message comprises the value.

16. The non-transitory computer-readable storage medium of claim 10 , wherein the execution of the function comprises automatic signing.

17. The non-transitory computer-readable storage medium of claim 16 , wherein the execution of the function comprises automatically compiling an order and signing off the order.

18. The non-transitory computer-readable storage medium of claim 10 , wherein the operations further comprise:

in response to the reply message, obtaining information from the blockchain; and

determining that the current state of the workflow is updated to the second state among the state cycle based on the obtained information.

19. A system comprising one or more processors and one or more non-transitory computer-readable memories coupled to the one or more processors and configured with instructions executable by the one or more processors to cause the system to perform operations comprising:

determining that a current state of a workflow is a first state, wherein the workflow comprises a state cycle registered in a blockchain, and a blockchain contract deployed in the blockchain is executable to update the current state among the state cycle;

updating a local state machine to a local current state corresponding to the determined current state, wherein the system is configured to maintain the local state machine off the blockchain, and the local state machine comprises a local state cycle mapped to the state cycle registered in the blockchain;

generating a notification message indicating the current state of the workflow is the first state;

transmitting the notification message to a computing device, wherein the computing device is configured to execute a function corresponding to the first state in response to the notification message;

receiving a reply message from the computing device indicating completion of the execution of the function;

in response to the reply message, generating a blockchain transaction for updating the current state; and

transmitting the blockchain transaction to one or more blockchain nodes of the blockchain for adding to the blockchain, wherein the blockchain transaction is configured to update the current state to a second state subsequent to the first state in the workflow by invoking the blockchain contract.

20. The system of claim 19 , wherein transmitting the notification message to the computing device comprises placing the notification message in a message queue accessible to the computing device.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 16, 2020
From: ADVANTAGEOUS NEW TECHNOLOGIES CO., LTD.
To: ADVANCED NEW TECHNOLOGIES CO., LTD.
Reel/Frame 053796/0281 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 3, 2020
From: ALIBABA GROUP HOLDING LIMITED
To: ADVANTAGEOUS NEW TECHNOLOGIES CO., LTD.
Reel/Frame 053702/0392 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 16, 2020
From: SHI, RUBING; GUAN, YAYANG
To: ALIBABA GROUP HOLDING LIMITED
Reel/Frame 052958/0091 →