Module: FlowChat

Defined in:
lib/flow_chat/telegram.rb,
lib/flow_chat.rb,
lib/flow_chat/app.rb,
lib/flow_chat/flow.rb,
lib/flow_chat/config.rb,
lib/flow_chat/prompt.rb,
lib/flow_chat/context.rb,
lib/flow_chat/factory.rb,
lib/flow_chat/version.rb,
lib/flow_chat/executor.rb,
lib/flow_chat/async_job.rb,
lib/flow_chat/interrupt.rb,
lib/flow_chat/processor.rb,
lib/flow_chat/http/renderer.rb,
lib/flow_chat/ussd/renderer.rb,
lib/flow_chat/instrumentation.rb,
lib/flow_chat/intercom/client.rb,
lib/flow_chat/telegram/client.rb,
lib/flow_chat/whatsapp/client.rb,
lib/flow_chat/generic_async_job.rb,
lib/flow_chat/intercom/renderer.rb,
lib/flow_chat/phone_number_util.rb,
lib/flow_chat/telegram/renderer.rb,
lib/flow_chat/ussd/gateway/nalo.rb,
lib/flow_chat/whatsapp/renderer.rb,
lib/flow_chat/session/middleware.rb,
lib/flow_chat/http/gateway/simple.rb,
lib/flow_chat/simulator/controller.rb,
lib/flow_chat/gateway_async_support.rb,
lib/flow_chat/instrumentation/setup.rb,
lib/flow_chat/whatsapp/id_generator.rb,
lib/flow_chat/intercom/configuration.rb,
lib/flow_chat/telegram/configuration.rb,
lib/flow_chat/whatsapp/configuration.rb,
lib/flow_chat/telegram/gateway/bot_api.rb,
lib/flow_chat/whatsapp/template_manager.rb,
lib/flow_chat/renderers/markdown_support.rb,
lib/flow_chat/ussd/middleware/pagination.rb,
lib/flow_chat/whatsapp/gateway/cloud_api.rb,
lib/flow_chat/session/cache_session_store.rb,
lib/flow_chat/intercom/gateway/intercom_api.rb,
lib/flow_chat/ussd/middleware/choice_mapper.rb,
lib/flow_chat/instrumentation/log_subscriber.rb,
lib/flow_chat/instrumentation/metrics_collector.rb,
lib/flow_chat/telegram/middleware/choice_mapper.rb,
lib/flow_chat/whatsapp/middleware/choice_mapper.rb

Overview

Telegram integration for FlowChat All files are autoloaded by Zeitwerk based on file path conventions

Defined Under Namespace

Modules: Config, GatewayAsyncSupport, Http, Input, Instrumentation, Intercom, Interrupt, PhoneNumberUtil, Renderers, Session, Simulator, Telegram, Ussd, Whatsapp Classes: App, AsyncJob, BackgroundController, BackgroundRequest, BackgroundRequestBody, Context, Executor, Factory, Flow, GenericAsyncJob, Processor, Prompt

Constant Summary collapse

VERSION =
"0.9.0"

Class Method Summary collapse

Class Method Details

.instrument(event_name, payload = {}, &block) ⇒ Object

Access to instrumentation



32
33
34
# File 'lib/flow_chat.rb', line 32

def self.instrument(event_name, payload = {}, &block)
  FlowChat::Instrumentation.instrument(event_name, payload, &block)
end

.loggerObject

Shorthand for accessing the logger throughout the application



89
90
91
# File 'lib/flow_chat/config.rb', line 89

def self.logger
  Config.logger
end

.metricsObject



36
37
38
# File 'lib/flow_chat.rb', line 36

def self.metrics
  FlowChat::Instrumentation::Setup.metrics_collector
end

.rootObject



23
24
25
# File 'lib/flow_chat.rb', line 23

def self.root
  Pathname.new __dir__
end

.setup_instrumentation!Object



27
28
29
# File 'lib/flow_chat.rb', line 27

def self.setup_instrumentation!
  FlowChat::Instrumentation::Setup.setup_instrumentation!
end