app.services.user_actions_service module

class app.services.user_actions_service.UserActionsService(user_actions_repository, users_repository, game_repository, task_repository)[source]

Bases: BaseService

Service class for managing user points.

Parameters:
user_points_repository

Repository instance for user points.

Type:

UserPointsRepository

users_repository

Repository instance for users.

Type:

UserRepository

game_repository

Repository instance for games.

Type:

GameRepository

task_repository

Repository instance for tasks.

Type:

TaskRepository

wallet_repository

Repository instance for wallets.

Type:

WalletRepository

wallet_transaction_repository

Repository instance for wallet transactions.

Type:

WalletTransactionRepository

strategy_service

Service instance for strategies.

Type:

StrategyService

__init__(user_actions_repository, users_repository, game_repository, task_repository)[source]
Initializes the UserPointsService with the provided repositories and

services.

Parameters:
Return type:

None

async user_add_action_in_task(gameId, externalTaskId, action, api_key=None, *, oauth_user_id=None, is_admin=False, enforce_scope=False)[source]

Add action in task for user.

Parameters:
  • user_id (UUID) – The user ID.

  • task_id (UUID) – The task ID.

  • action (str) – The action.

  • gameId (str)

  • externalTaskId (str)

  • api_key (str)

  • oauth_user_id (str)

  • is_admin (bool)

  • enforce_scope (bool)

Returns:

object – The added action in task for user.

Raises:
  • NotFoundError – If the user or task is not found.

  • GoneError – If the task is not active.

Return type:

ResponseAddActionDidByUserInTask

async user_add_action_default(externalUserId, schema, api_key=None)[source]

Add action for user.

Parameters:
  • externalUserId (str) – The external user ID.

  • schema (CreateUserActions) – The action schema.

  • api_key (str) – The API key.

Returns:

object – The added action for user.

Return type:

CreatedUserActions