IP Library Granted Patent US 10,736,157
Granted Patent B2
US 10,736,157 · App. 16/208,783 · Granted Aug 4, 2020

Multitenancy gaming services platform

Inventors: Ajinkya Apte (San Mateo, CA); Bruce Sherrod (Oakland, CA); Matthew Leventi (San Francisco, CA); Suryaveer Singh Lodha (Berkeley, CA); Matthew John Alberts (San Francisco, CA); Tim Sullivan (Palo Alto, CA)
Assignee: Zynga Inc.
H04W76/11A63F13/00A63F13/352A63F13/71A63F13/73G06F21/6218G06Q50/01H04L63/102H04L67/104H04L67/12H04W12/08A63F13/798
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,736,157
App. No.
16/208,783
Granted
Aug 4, 2020
Kind
B2
Abstract

Systems and methods for providing multitenancy gaming platform services are presented. In one embodiment a method for providing multitenancy gaming platform services comprises receiving, at a server computer, a request from one of a plurality of applications for an operation associated with a service, the request including a token, data related to an application, and a target user identifier. The method further comprises, decoding the token to determine an application identifier and a user identifier. The method further comprises, determining which service of a plurality of multitenancy gaming platform services is requested, and sending the data related to the application to a second server computer responsible for the service, wherein the operation is authorized by the second server computer based on the user identifier and target user identifier. The method further comprises receiving a response from the second server computer responsible for the service, indicating a status of the operation.

Claims (71)

1. A method for providing multitenancy gaming platform services, comprising:

generating, by a first server computer, a new application identifier for an application for accessing a plurality of multitenancy gaming platform services;

receiving, by the first server computer from a client device running the application, a request for a service to perform an operation for the application, the request including the new application identifier, data related to the application, and a target user identifier associated with user data upon which the operation should apply the data related to the application;

determining from the request for the service, by the first server computer, which service of the plurality of multitenancy gaming platform services is requested;

sending, by the first server computer, the data related to the application to a second server computer responsible for the service to perform the service; and

receiving, by the first server computer, a response from the second server computer responsible for the service, indicating a status of the operation.

2. The method of claim 1 , wherein before generating the new application identifier, the method comprises receiving a request from a client device for the new application identifier.

3. The method of claim 1 , further comprising:

receiving a request for a new token from the client device running the application, the request including a user identifier;

generating the new token including the user identifier; and

sending the new token to the client device running the application;

wherein the new token is included in the request for the service to perform the operation for the application and expires after a predetermined amount of time.

4. The method of claim 3 , further comprising:

decoding the token included in the request for service to perform the operation for the application to determine a user identifier;

determining that the operation associated with the service requires that the user identifier and target user identifier match; and

authorizing the user identifier in response to and conditional upon determining that the user identifier matches the target user identifier.

5. The method of claim 3 , further comprising:

decoding the token included in the request for service to perform the operation for the application to determine a user identifier;

determining that the operation associated with the service does not require that the user identifier and target user identifier match; and

authorizing the user identifier regardless that the user identifier does not match the target user identifier.

6. The method of claim 1 wherein the request for the service further includes a Check and Set (CAS) value, and wherein the method further comprises:

authenticating the CAS value against a stored CAS value; and

sending the data related to the application to the second server computer responsible for the service if the CAS value matches the stored CAS value.

7. The method of claim 6 , further comprising:

receiving an updated CAS value from the server computer responsible for the service;

replacing the stored CAS value with the updated CAS value; and

sending the updated CAS value to a client device.

8. The method of claim 1 , further comprising:

returning the status of the operation to the client device.

9. The method of claim 1 , wherein the service includes one or more of a group comprising:

storage of a game state, creating a leaderboard, updating a user score, and accessing a leaderboard.

10. The method of claim 1 , further comprising storing the new application identifier and associating the new application identifier with the application.

11. A server computer comprising:

a memory that stores instructions; and

one or more processors configured by the instructions to perform operations comprising:

generating a new application identifier for an application for accessing a plurality of multitenancy gaming platform services;

receiving, from a client device running the application, a request for a service to perform an operation for the application, the request including the new application identifier, data related to the application, and a target user identifier associated with user data upon which the operation should apply the data related to the application;

determining from the request for the service which service of the plurality of multitenancy gaming platform services is requested;

sending the data related to the application to a second server computer responsible for the service to perform the service; and

receiving a response from the second server computer responsible for the service, indicating a status of the operation.

12. The server computer of claim 11 , wherein before generating the new application identifier, the method comprises receiving a request from a client device for the new application identifier.

13. The server computer of claim 11 , the operations further comprising:

receiving a request for a new token from the client device running the application, the request including a user identifier;

generating, by the first server computer, the new token including the user identifier; and

sending, by the first server computer, the new token to the client device running the application;

wherein the new token is included in the request for the service to perform the operation for the application and expires after a predetermined amount of time.

14. The server computer of claim 13 , the operations further comprising:

decoding the token included in the request for service to perform the operation for the application to determine a user identifier;

determining that the operation associated with the service requires that the user identifier and target user identifier match; and

authorizing the user identifier in response to and conditional upon determining that the user identifier matches the target user identifier.

15. The server computer of claim 13 , further comprising:

decoding the token included in the request for service to perform the operation for the application to determine a user identifier;

determining that the operation associated with the service does not require that the user identifier and target user identifier match; and

authorizing the user identifier regardless that the user identifier does not match the target user identifier.

16. The server computer of claim 11 wherein the request for the service further includes a Check and Set (CAS) value, and wherein the method further comprises:

authenticating the CAS value against a stored CAS value; and

sending the data related to the application to the second server computer responsible for the service if the CAS value matches the stored CAS value.

17. The server computer of claim 16 , further comprising:

receiving an updated CAS value from the server computer responsible for the service;

replacing the stored CAS value with the updated CAS value; and

sending the updated CAS value to a client device.

18. The server computer of claim 11 , the operations further comprising:

returning the status of the operation to the client device.

19. The server computer of claim 11 , wherein the service includes one or more of a group comprising:

storage of a game state, creating a leaderboard, updating a user score, and accessing a leaderboard.

20. A non-transitory computer readable medium comprising instructions stored thereon that are executable by one or more processors to cause a computing device to perform operations comprising:

generating a new application identifier for an application for accessing a plurality of multitenancy gaming platform services;

receiving, from a client device running the application, a request for a service to perform an operation for the application, the request including the new application identifier, data related to the application, and a target user identifier associated with user data upon which the operation should apply the data related to the application;

determining from the request for the service which service of the plurality of multitenancy gaming platform services is requested;

sending the data related to the application to a second server computer responsible for the service to perform the service; and

receiving a response from the second server computer responsible for the service, indicating a status of the operation.

Assignments (5)
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS Recorded May 23, 2022
From: BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT
To: ZYNGA INC.
Reel/Frame 060163/0437 →
NOTICE OF GRANT OF SECURITY INTEREST IN PATENTS Recorded Dec 14, 2020
From: ZYNGA INC.
To: BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 054719/0490 →
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS Recorded Dec 11, 2020
From: BANK OF AMERICA, N.A., AS LENDER
To: ZYNGA INC.
Reel/Frame 054701/0393 →
NOTICE OF GRANT OF SECURITY INTEREST IN PATENTS Recorded Dec 21, 2018
From: ZYNGA INC.
To: BANK OF AMERICA, N.A., AS LENDER
Reel/Frame 049147/0546 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 4, 2018
From: APTE, AJINKYA; SHERROD, BRUCE; LEVENTI, MATTHEW; LODHA, SURYAVEER SINGH; ALBERTS, MATTHEW JOHN; SULLIVAN, TIM
To: ZYNGA INC.
Reel/Frame 047666/0981 →