Skip to content

Create gateway RpcSocket service #46

Description

@NatalieWolfe

Gateway requirements:

  • Listen for socket.io connections on /gateway.
  • Wait for client to emit registration event.
  • Limit registration wait to n seconds.
  • Close connections for any clients which fail registration.
  • On success, add client to registered pool.
  • Forward all chat messages which match registered filter to the registered pool.
  • Send chat messages whenever clients emit a message command.

Registration requirements:

  • Client must provide all details as their first message after connecting.
  • command: Must be register.
  • service.name: Name of the service the client represents.
  • filters: Array of filter definitions. May be empty to receive all messages.

Filter requirements:

  • Filter properties are combined (&&).
  • regex: Filter messages via regex.
  • room_id: Filter messages by room.
  • user_id: Filter messages by user.

Message command requirements:

  • May be sent in either direction (client -> gateway -> tg or tg -> gateway -> client).
  • Contains all information needed to process the message and reply to it.

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Fields

No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions