Skip to content

[rtgg] Failing to join a race due to a racetime restriction is treated as a success #150

@cjs8487

Description

@cjs8487

When the racetime.gg integration attempts to a join a player into a racetime.gg room and connect their their accounts between the two rooms, the response from the racetime websocket is ignored, which means that if racetime refuses to let the player join the room for any reason, we do not give the user any feedback on our end. There are several normal reasons that this may happen - a race streaming requirement if the user hasn't linked their twitch and racetime accounts or the global one race limit. As a result of this, a 200 response code is sent if the join action was triggered via the HTTP action endpoint, which while technically correct (the action request was properly dispatched and is being processed asynchronously and the consumer should be watching the room websocket for further updates)is definitely misleading.

Instead, we should see if we can synchronously listen for the response to the join message - either next race.data message or the next error message. Waiting for a nondescript message (especially race.data) is always going to be tricky, as anything can trigger that to be sent out, but we know what the change in state we're watching for is. It's a tricky situation

Metadata

Metadata

Assignees

No one assigned

    Labels

    integration: racetime.ggIssue relates to the integration between PlayBingo and racetime.gg

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions