Files
herolib/lib/ui/telegram
2025-10-12 12:30:19 +03:00
..
2024-12-25 08:40:56 +01:00
2024-12-25 08:40:56 +01:00
2024-12-25 08:40:56 +01:00

spawn:

  • processor
  • telegramclient
  • flowsupervisor

guest -> tbot -> tclient(through telegram) tclient -> ui.telegram.forward ui.telegram.forward -> flow_supervisor if chat_id initializes new flow flow_supervisor creates newflow flow_supervisor -> newflow else if chat_id in existing flow flow_supervisor -> existingflow

flow parses message and creates response flow -> ui.telegram.out ui.telegram.out -> tclient -> tbot -> guest

Questions:

  • is flow_supervisor telegram specific?
    • if not then shouldn't the telegram client parse the update into a standard format ie action, params

Flow Supervisor:

  • receives messages requesting new flows
  • forwards messages into existing flows

Entities:

  • TelegramClient
    • receives messages from users and sends them to FlowSupervisor
    • receives messages from UIChannels and send them to users
  • Processor
    • acts as messaging bus
  • FlowSupervisor - agnostic
    • receives messages from TelegramClient and creates flows
  • Flows - agnostic
    • receives messages from FlowSupervisor and
  • UIChannels
  • Questions

New Plan

struct TelegramClient {

}

Contents

  • 1 processor
  • 1 actionrunner
  • 1 telegram client
  • 1 actor
    • many flows
    • many questions
    • flow supervisor