Class: Cloudflare::V3
- Inherits:
-
Integration
- Object
- Integration
- Cloudflare::V3
- Defined in:
- app/models/pager_tree/integrations/cloudflare/v3.rb
Constant Summary collapse
- OPTIONS =
[ {key: :webhook_secret, type: :string, default: nil} ]
Instance Method Summary collapse
- #adapter_action ⇒ Object
- #adapter_incoming_can_defer? ⇒ Boolean
- #adapter_process_create ⇒ Object
- #adapter_should_block_incoming?(request) ⇒ Boolean
- #adapter_supports_incoming? ⇒ Boolean
- #adapter_supports_outgoing? ⇒ Boolean
- #adapter_thirdparty_id ⇒ Object
Instance Method Details
#adapter_action ⇒ Object
32 33 34 |
# File 'app/models/pager_tree/integrations/cloudflare/v3.rb', line 32 def adapter_action :create end |
#adapter_incoming_can_defer? ⇒ Boolean
24 25 26 |
# File 'app/models/pager_tree/integrations/cloudflare/v3.rb', line 24 def adapter_incoming_can_defer? true end |
#adapter_process_create ⇒ Object
36 37 38 39 40 41 42 43 44 |
# File 'app/models/pager_tree/integrations/cloudflare/v3.rb', line 36 def adapter_process_create Alert.new( title: _title, description: _description, thirdparty_id: adapter_thirdparty_id, dedup_keys: [], additional_data: _additional_datums ) end |
#adapter_should_block_incoming?(request) ⇒ Boolean
12 13 14 |
# File 'app/models/pager_tree/integrations/cloudflare/v3.rb', line 12 def adapter_should_block_incoming?(request) option_webhook_secret.present? && (request.headers["cf-webhook-auth"] != option_webhook_secret) end |
#adapter_supports_incoming? ⇒ Boolean
16 17 18 |
# File 'app/models/pager_tree/integrations/cloudflare/v3.rb', line 16 def adapter_supports_incoming? true end |
#adapter_supports_outgoing? ⇒ Boolean
20 21 22 |
# File 'app/models/pager_tree/integrations/cloudflare/v3.rb', line 20 def adapter_supports_outgoing? false end |
#adapter_thirdparty_id ⇒ Object
28 29 30 |
# File 'app/models/pager_tree/integrations/cloudflare/v3.rb', line 28 def adapter_thirdparty_id @adapter_thirdparty_id ||= SecureRandom.uuid end |