IP Library Granted Patent US 12,474,957
Granted Patent B2
US 12,474,957 · App. 18/313,038 · Granted Nov 18, 2025

Distributed actor-based information system and method

Inventors: James A. Harding (Issaquah, WA); Scott Thibault (Colchester, VT); Jason A. Boatman (Georgetown, TX); Phillip A. Quinn (Seattle, WA)
Assignee: GROKIT DATA, INC.
G06F9/4881G06F9/44G06F9/5044G06F9/505G06F9/5055G06F9/5072G06F40/143H04L63/10
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 12,474,957
App. No.
18/313,038
Granted
Nov 18, 2025
Kind
B2
Abstract

A computer-implemented method, executed on a computing device, comprising: enabling a browsing session between a distributed actor and a web-browser; performing a code-driven replication of the browsing session for a third party, thus generating a replicated browsing session; and rendering the replicated browsing session for the third party.

Claims (63)

1 . A computer-implemented method, executed on a computing device, comprising:

enabling a browsing session between a distributed actor and a web-browser;

performing a code-driven replication of the browsing session for a third party, thus generating a replicated browsing session, performing the code-drive replication of the browsing session for the third party includes:

defining one or more portions of a document object model associated with the browsing session to replicate to the replicated browsing session, thus defining one or more replicated portions of the document object model, wherein defining the one or more portions of the document object model associated with the browsing session to replicate to the replicated browsing session includes:

tagging each node of the document object model with a unique identifier and a unique identifier associated with a parent node of the document object model as defined in a document object model tree for the document object model; and

attaching a listener to the one or more replicated portions of the document object model that track changes of content in the document object model tree and send events corresponding to the changes;

defining one or more portions of the document object model associated with the browsing session not to replicate to the replicated browsing session, thus defining one or more non-replicated portions of the document object model; and

defining one or more permissible inputs for interacting with the one or more replicated portions of the document object model by limiting at least one input performed on the one or more replication portions of the document object model;

rendering the replicated browsing session for the third party; and

enabling the third party to interact with the one or more replicated portions of the document object model within the replicated browsing session, thus defining one or more third party interactions with the replicated browsing session, wherein enabling the third party to interact with the one or more replicated portions of the document object model within the replicated browsing session includes modifying a replicated document object model tree in real-time using the unique identifier of each node and the unique identifier associated with each parent node of the document object model.

2 . The computer-implemented method of claim 1 wherein the browsing session is initiated by the distributed actor.

3 . The computer-implemented method of claim 1 wherein the distributed actor is a human distributed actor.

4 . The computer-implemented method of claim 1 wherein the distributed actor is a non-human distributed actor.

5 . The computer-implemented method of claim 1 wherein performing a code-driven replication of the browsing session for a third party includes:

copying at least a portion of the code associated with the browsing session to generate at least a portion of the replicated browsing session.

6 . The computer-implemented method of claim 5 wherein the code associated with the browsing session includes at least a portion of the document object model associated with the browsing session.

7 . The computer-implemented method of claim 5 wherein the code associated with the browsing session includes at least a portion of webpage structure associated with the browsing session.

8 . The computer-implemented method of claim 1 wherein the third party is a human distributed actor.

9 . The computer-implemented method of claim 1 wherein the third party is a non-human distributed actor.

10 . The computer-implemented method of claim 1 further comprising:

limiting the one or more third party interactions with the replicated browsing session.

11 . The computer-implemented method of claim 1 further comprising:

providing the one or more third party interactions with the replicated browsing session to the browsing session.

12 . The computer-implemented method of claim 11 further comprising:

managing the replicated browsing session by the distributed actor in response to receiving the one or more third party interactions with the replicated browsing session.

13 . The computer-implemented method of claim 1 wherein the browsing session is an active browsing session.

14 . A computer program product residing on a non-transitory computer readable medium having a plurality of instructions stored thereon which, when executed by a processor, cause the processor to perform operations comprising:

enabling a browsing session between a distributed actor and a web-browser;

performing a code-driven replication of the browsing session for a third party, thus generating a replicated browsing session, performing the code-drive replication of the browsing session for the third party includes:

defining one or more portions of a document object model associated with the browsing session to replicate to the replicated browsing session, thus defining one or more replicated portions of the document object model, wherein defining the one or more portions of the document object model associated with the browsing session to replicate to the replicated browsing session includes:

tagging each node of the document object model with a unique identifier and a unique identifier associated with a parent node of the document object model as defined in a document object model tree for the document object model; and

attaching a listener to the one or more replicated portions of the document object model that track changes of content in the document object model tree and send events corresponding to the changes;

defining one or more portions of the document object model associated with the browsing session not to replicate to the replicated browsing session, thus defining one or more non-replicated portions of the document object model; and

defining one or more permissible inputs for interacting with the one or more replicated portions of the document object model by limiting at least one input performed on the one or more replication portions of the document object model;

rendering the replicated browsing session for the third party; and

enabling the third party to interact with the one or more replicated portions of the document object model within the replicated browsing session, thus defining one or more third party interactions with the replicated browsing session, wherein enabling the third party to interact with the one or more replicated portions of the document object model within the replicated browsing session includes modifying a replicated document object model tree in real-time using the unique identifier of each node and the unique identifier associated with each parent node of the document object model.

15 . The computer program product of claim 14 wherein the browsing session is initiated by the distributed actor.

16 . The computer program product of claim 14 wherein the distributed actor is a human distributed actor.

17 . The computer program product of claim 14 wherein the distributed actor is a non-human distributed actor.

18 . The computer program product of claim 14 wherein performing a code-driven replication of the browsing session for a third party includes:

copying at least a portion of the code associated with the browsing session to generate at least a portion of the replicated browsing session.

19 . The computer program product of claim 18 wherein the code associated with the browsing session includes at least a portion of the document object model associated with the browsing session.

20 . The computer program product of claim 18 wherein the code associated with the browsing session includes at least a portion of webpage structure associated with the browsing session.

21 . The computer program product of claim 14 wherein the third party is a human distributed actor.

22 . The computer program product of claim 14 wherein the third party is a non-human distributed actor.

23 . The computer program product of claim 14 further comprising:

limiting the one or more third party interactions with the replicated browsing session.

24 . The computer program product of claim 15 further comprising:

providing the one or more third party interactions with the replicated browsing session to the browsing session.

25 . The computer program product of claim 24 further comprising:

managing the replicated browsing session by the distributed actor in response to receiving the one or more third party interactions with the replicated browsing session.

26 . The computer program product of claim 14 wherein the browsing session is an active browsing session.

27 . A computing system including a processor and memory configured to perform operations comprising:

enabling a browsing session between a distributed actor and a web-browser;

performing a code-driven replication of the browsing session for a third party, thus generating a replicated browsing session, performing the code-drive replication of the browsing session for the third party includes:

defining one or more portions of a document object model associated with the browsing session to replicate to the replicated browsing session, thus defining one or more replicated portions of the document object model, wherein defining the one or more portions of the document object model associated with the browsing session to replicate to the replicated browsing session includes:

tagging each node of the document object model with a unique identifier and a unique identifier associated with a parent node of the document object model as defined in a document object model tree for the document object model; and

attaching a listener to the one or more replicated portions of the document object model that track changes of content in the document object model tree and send events corresponding to the changes;

defining one or more portions of the document object model associated with the browsing session not to replicate to the replicated browsing session, thus defining one or more non-replicated portions of the document object model; and

defining one or more permissible inputs for interacting with the one or more replicated portions of the document object model by limiting at least one input performed on the one or more replication portions of the document object model;

rendering the replicated browsing session for the third party;

enabling the third party to interact with the one or more replicated portions of the document object model within the replicated browsing session, thus defining one or more third party interactions with the replicated browsing session, wherein enabling the third party to interact with the one or more replicated portions of the document object model within the replicated browsing session includes modifying a replicated document object model tree in real-time using the unique identifier of each node and the unique identifier associated with each parent node of the document object model.

28 . The computing system of claim 27 wherein the browsing session is initiated by the distributed actor.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 5, 2023
From: HARDING, JAMES A.; THIBAULT, SCOTT; BOATMAN, JASON A.; QUINN, PHILLIP A.
To: GROKIT DATA, INC.
Reel/Frame 063856/0725 →
Continuity (2)
Provisional Application 63338717 · May 5, 2022
Related Publication 20230359808A1 · Nov 9, 2023
References Cited (86)
US 6845390B1 · Jorgenson et al. · 2005 [cited by applicant]
US 10311360B1 · Ares · 2019 [cited by applicant]
US 10353720B1 · Wich-Vila · 2019 [cited by applicant]
US 11272056B2 · Shwartz et al. · 2022 [cited by applicant]
US 20020107914A1 · Charisius et al. · 2002 [cited by applicant]
US 20030195853A1 · Mitchell · 2003 [cited by applicant]
US 20050124320A1 · Ernst et al. · 2005 [cited by applicant]
US 20060061806A1 · King et al. · 2006 [cited by applicant]
US 20070118538A1 · Ahern · 2007 [cited by examiner]
US 20080183585A1 · Vianello · 2008 [cited by applicant]
US 20080208907A1 · Tolve et al. · 2008 [cited by applicant]
US 20120173966A1 · Powell · 2012 [cited by examiner]
US 20120331375A1 · Fanning · 2012 [cited by examiner]
US 20140108079A1 · Wright et al. · 2014 [cited by applicant]
US 20140122362A1 · Vianello · 2014 [cited by applicant]
US 20140164317A1 · Lynch et al. · 2014 [cited by applicant]
US 20140214503A1 · Chircorian · 2014 [cited by applicant]
US 20140278634A1 · Horvitz et al. · 2014 [cited by applicant]
US 20150006214A1 · Lavoie et al. · 2015 [cited by applicant]
US 20160085738A1 · Briggs · 2016 [cited by applicant]
US 20170063965A1 · Grenader · 2017 [cited by applicant]
US 20170064079A1 · Skiba et al. · 2017 [cited by applicant]
US 20170111507A1 · Mcgann et al. · 2017 [cited by applicant]
US 20170111509A1 · McGann et al. · 2017 [cited by applicant]
US 20170264634A1 · Carter et al. · 2017 [cited by applicant]
US 20170323026A1 · Le Bras · 2017 [cited by examiner]
US 20180046731A1 · Peretz · 2018 [cited by examiner]
US 20180198917A1 · Ristock et al. · 2018 [cited by applicant]
US 20180260481A1 · Rathod · 2018 [cited by applicant]
US 20190215424A1 · Adato et al. · 2019 [cited by applicant]
US 20200019616A1 · Sukhija et al. · 2020 [cited by applicant]
US 20200039071A1 · Sarkar et al. · 2020 [cited by applicant]
US 20200050996A1 · Generes, Jr. et al. · 2020 [cited by applicant]
US 20200073644A1 · Shankar et al. · 2020 [cited by applicant]
US 20200073654A1 · Jeong et al. · 2020 [cited by applicant]
US 20210042368A1 · Liu et al. · 2021 [cited by applicant]
US 20210092161A1 · Crabtree et al. · 2021 [cited by applicant]
US 20210209563A1 · Skiba et al. · 2021 [cited by applicant]
US 20210216349A1 · Munro · 2021 [cited by examiner]
US 20210279305A1 · Goldston et al. · 2021 [cited by applicant]
US 20220004576A1 · Harding et al. · 2022 [cited by applicant]
US 20220005087A1 · Harding et al. · 2022 [cited by applicant]
US 20220006787A1 · Bursell et al. · 2022 [cited by applicant]
US 20230026599A1 · Galtsev · 2023 [cited by applicant]
US 20230342202A1 · Radha et al. · 2023 [cited by applicant]
CA 3216776A1 · 2022 [cited by applicant]
CN 115373831A · 2022 [cited by applicant]
WO 2023038381A1 · 2023 [cited by applicant]
WO 2023191968A1 · 2023 [cited by applicant]
Non-Final Office Action is issued in related U.S. Appl. No. 18/313,011, filed Jul. 17, 2023. [cited by applicant]
Non-Final Office Action is issued in related U.S. Appl. No. 18/312,988, filed Jul. 25, 2023. [cited by applicant]
Byrd, R.J., Smith, S.E.& deJong, S.P. (1982, June). An actor-based programming systems. In Proceedings of the SIGOA conference on Office information systems (pp. 67-78). (Year: 1982). [cited by applicant]
International Search Report and Written Opinion issued in related Application Serial No. PCT/US2023/066702 on Aug. 15, 2023. [cited by applicant]
International Search Report and Written Opinion issued in related Application Serial No. PCT/US2023/066704 on Jul. 27, 2023. [cited by applicant]
International Search Report and Written Opinion issued in related Application Serial No. PCT/US2023/066689 on Agust 9, 2023. [cited by applicant]
International Search Report and Written Opinion issued in related Application Serial No. PCT/US2023/066691 on Sep. 28, 2023. [cited by applicant]
International Search Report and Written Opinion issued in related Application Serial No. PCT/US2023/066695 on Sep. 21, 2023. [cited by applicant]
International Search Report and Written Opinion issued in related Application Serial No. PCT/US2023/066698 on Oct. 5, 2023. [cited by applicant]
Non-Final Office Action issued in related U.S. Appl. No. 18/313,011, filed Oct. 30, 2024. [cited by applicant]
Final Office Action issued in related U.S. Appl. No. 18/312,988 on issue Date; May 7, 2024. [cited by applicant]
Non-Final Office Action issued in related U.S. Appl. No. 18/312,988, filed Dec. 11, 2024. [cited by applicant]
Final Office Action issued in related U.S. Appl. No. 18/312,961, filed Aug. 27, 2024. [cited by applicant]
A. Campos, P. Pina and R. Neves-Silva, “Supporting Distributed Collaborative Work in Manufacturing Industry,” 2006 International Conference on Collaborative Computing: Networking, Applications and Worksharing, Atlanta, … [cited by applicant]
C. Hill, R. Yates, C. Jones and S. L. Kogan, “Beyond predictable workflows: Enhancing productivity in artful business processes,” in IBM Systems Journal, vol. 45, No. 4, pp. 663-682, 2006 (Year: 2006). [cited by applicant]
Final Office Action issued in related U.S. Appl. No. 18/312,988, filed Apr. 17, 2025. [cited by applicant]
Final Office Action issued in related U.S. Appl. No. 18/313,011, filed Mar. 31, 2025. [cited by applicant]
I. Djordjevic and C. Phillips, “Architecture for secure work of dynamic distributed groups,” First IEEE Consumer Communications and Networking Conference, 2004. CCNC 2004., Las Vegas, NV, USA, 2004, pp. 495-500. (Year: … [cited by applicant]
L. Trappeniers, M. Roelands, M. Godon, J. Criel and P. Dobbelaere, “Towards abundant DiY service creativity,” 2009 13th International Conference on Intelligence in Next Generation Networks, Bordeaux, France, 2009, pp. 1… [cited by applicant]
Non-Final Office Action issued in related U.S. Appl. No. 18/143,953, filed Apr. 2, 2025. [cited by applicant]
Non-Final Office Action issued in related U.S. Appl. No. 18/143,994, filed Apr. 15, 2025. [cited by applicant]
Non-Final Office Action issued in related U.S. Appl. No. 18/144,018, filed Apr. 15, 2025. [cited by applicant]
Non-Final Office Action issued in related U.S. Appl. No. 18/144,041, filed Mar. 21, 2025. [cited by applicant]
Non-Final Office Action issued in related U.S. Appl. No. 18/312,892, filed Apr. 2, 2025. [cited by applicant]
Non-Final Office Action issued in related U.S. Appl. No. 18/312,917, filed May 9, 2025. [cited by applicant]
Non-Final Office Action issued in related U.S. Appl. No. 18/312,946, filed May 9, 2025. [cited by applicant]
Non-Final Office Action issued in related U.S. Appl. No. 18/312,961, filed Jun. 3, 2025. [cited by applicant]
Non-Final Office Action issued in related U.S. Appl. No. 18/313,007, filed Apr. 15, 2025. [cited by applicant]
Non-Final Office Action issued in related U.S. Appl. No. 18/313,096, filed May 15, 2025. [cited by applicant]
Non-Final Office Action issued in the related U.S. Appl. No. 18/312,961, filed Dec. 20, 2023. [cited by applicant]
Final Office Action issued in related U.S. Appl. No. 18/313,011 on issue Date; Jan. 29, 2024. [cited by applicant]
Extended European Search Report and Search Opinion issued in related Application Serial No. 23800274.5 on Jul. 14, 2025. [cited by applicant]
Final Office Action issued in related U.S. Appl. No. 18/144,018 on Aug. 18, 2025. [cited by applicant]
Final Office Action issued in related U.S. Appl. No. 18/144,041, on Jul. 31, 2025. [cited by applicant]
Non-Final Office Action issued in related U.S. Appl. No. 18/312,988 on Jul. 31, 2025. [cited by applicant]
Final Office Action issued in related U.S. Appl. No. 18/143,953 on Oct. 3, 2025. [cited by applicant]
Final Office Action issued in related U.S. Appl. No. 18/312,892 on Oct. 1, 2025. [cited by applicant]