Module: FantasticRobot
- Defined in:
- lib/fantastic_robot.rb,
lib/fantastic_robot/version.rb,
lib/fantastic_robot/connection.rb,
lib/fantastic_robot/model/base.rb,
lib/fantastic_robot/model/chat.rb,
lib/fantastic_robot/model/file.rb,
lib/fantastic_robot/model/user.rb,
lib/fantastic_robot/model/update.rb,
lib/fantastic_robot/request/base.rb,
lib/fantastic_robot/configuration.rb,
lib/fantastic_robot/model/message.rb,
lib/fantastic_robot/request/get_me.rb,
lib/fantastic_robot/request/send_audio.rb,
lib/fantastic_robot/request/send_photo.rb,
lib/fantastic_robot/request/send_video.rb,
lib/fantastic_robot/request/send_voice.rb,
lib/fantastic_robot/request/set_webhook.rb,
lib/fantastic_robot/request/send_message.rb,
lib/fantastic_robot/request/send_sticker.rb,
lib/fantastic_robot/model/attachment/base.rb,
lib/fantastic_robot/request/send_document.rb,
lib/fantastic_robot/request/send_location.rb,
lib/fantastic_robot/model/attachment/audio.rb,
lib/fantastic_robot/model/attachment/video.rb,
lib/fantastic_robot/model/attachment/voice.rb,
lib/fantastic_robot/request/forward_message.rb,
lib/fantastic_robot/model/attachment/contact.rb,
lib/fantastic_robot/model/attachment/sticker.rb,
lib/fantastic_robot/request/send_chat_action.rb,
lib/fantastic_robot/model/attachment/document.rb,
lib/fantastic_robot/model/attachment/location.rb,
lib/fantastic_robot/model/attachment/photo_size.rb,
lib/generators/fantastic_robot/install_generator.rb
Defined Under Namespace
Modules: Generators, Model, Request Classes: Configuration, Connection
Constant Summary collapse
- VERSION =
"0.1.2"
Class Attribute Summary collapse
-
.configuration ⇒ Object
Returns the value of attribute configuration.
-
.connection ⇒ Object
readonly
Returns the value of attribute connection.
Class Method Summary collapse
- .configure {|configuration| ... } ⇒ Object
- .initialize! ⇒ Object
-
.register_webhook ⇒ Object
Function to register the configured webhook against the Telegram API.
-
.response_json(request) ⇒ Object
Method to respond to an update with a request.
Class Attribute Details
.configuration ⇒ Object
Returns the value of attribute configuration.
11 12 13 |
# File 'lib/fantastic_robot.rb', line 11 def configuration @configuration end |
.connection ⇒ Object (readonly)
Returns the value of attribute connection.
12 13 14 |
# File 'lib/fantastic_robot.rb', line 12 def connection @connection end |
Class Method Details
.configure {|configuration| ... } ⇒ Object
28 29 30 31 |
# File 'lib/fantastic_robot.rb', line 28 def self.configure self.configuration ||= Configuration.new yield(configuration) end |
.initialize! ⇒ Object
15 16 17 18 19 20 21 22 23 24 25 26 |
# File 'lib/fantastic_robot.rb', line 15 def self.initialize! raise ArgumentError, "API Key is needed." if (self.configuration.api_key.blank?) if (self.configuration.delivery_method == :webhook) unless (self.configuration.callback_url.blank?) # Register the webhook against Telegram register_webhook else raise ArgumentError, 'Webhook method requires a callback URL' end end end |
.register_webhook ⇒ Object
Function to register the configured webhook against the Telegram API.
44 45 46 |
# File 'lib/fantastic_robot.rb', line 44 def self.register_webhook FantasticRobot::Request::SetWebhook.new(url: self.configuration.callback_url).send_request end |
.response_json(request) ⇒ Object
Method to respond to an update with a request. It can manage a Request object or a hash.
52 53 54 55 |
# File 'lib/fantastic_robot.rb', line 52 def self.response_json(request) return nil unless request.is_a?(Hash) || request.is_a?(FantasticRobot::Request::Base) request.to_h end |