Class: DiscordService
Constant Summary
collapse
- ATTACHMENT_REGEX =
/: (?<entry>.*?)\n - (?<name>.*)\n*/.freeze
ChatNotificationService::EVENT_CHANNEL, ChatNotificationService::SUPPORTED_EVENTS
Constants inherited
from Service
Service::DEV_SERVICE_NAMES, Service::SERVICE_NAMES
Instance Attribute Summary
Attributes included from Importable
#imported, #importing
Class Method Summary
collapse
Instance Method Summary
collapse
#confidential_issue_channel, #confidential_note_channel, #event_channel_names, #execute, #fields, #global_fields, #initialize_properties
#branch_choices, #notify_for_branch?
Methods inherited from Service
#activated?, #api_field_names, #async_execute, available_services_names, available_services_types, boolean_accessor, build_from_integration, #can_test?, #category, #configurable_event_actions, #configurable_events, default_integration, dev_services_names, #editable?, #event_channel_names, event_description, #event_names, event_names, #execute, #fields, find_or_create_templates, find_or_initialize_all, find_or_initialize_integration, #global_fields, #initialize_properties, instance_exists_for?, #issue_tracker?, #json_fields, #operating?, prop_accessor, #reset_updated_properties, services_names, services_types, #show_active_box?, supported_event_actions, #supported_events, #supports_data_fields?, #test, #to_data_fields_hash, #to_param, #to_service_hash, #updated_properties
#build_message, #log_error, #log_info, #logger
at_most, id_in, id_not_in, iid_in, pluck_primary_key, primary_key_in, safe_ensure_unique, safe_find_or_create_by, safe_find_or_create_by!, underscore, without_order
Class Method Details
.supported_events ⇒ Object
38
39
40
41
|
# File 'app/models/project_services/discord_service.rb', line 38
def self.supported_events
%w[push issue confidential_issue merge_request note confidential_note tag_push
pipeline wiki_page]
end
|
.to_param ⇒ Object
16
17
18
|
# File 'app/models/project_services/discord_service.rb', line 16
def self.to_param
"discord"
end
|
Instance Method Details
#default_channel_placeholder ⇒ Object
34
35
36
|
# File 'app/models/project_services/discord_service.rb', line 34
def default_channel_placeholder
end
|
#default_fields ⇒ Object
43
44
45
46
47
48
49
|
# File 'app/models/project_services/discord_service.rb', line 43
def default_fields
[
{ type: "text", name: "webhook", placeholder: "e.g. https://discordapp.com/api/webhooks/…" },
{ type: "checkbox", name: "notify_only_broken_pipelines" },
{ type: 'select', name: 'branches_to_be_notified', choices: branch_choices }
]
end
|
#description ⇒ Object
12
13
14
|
# File 'app/models/project_services/discord_service.rb', line 12
def description
s_("DiscordService|Receive event notifications in Discord")
end
|
#event_field(event) ⇒ Object
30
31
32
|
# File 'app/models/project_services/discord_service.rb', line 30
def event_field(event)
end
|
#help ⇒ Object
20
21
22
23
24
25
26
27
28
|
# File 'app/models/project_services/discord_service.rb', line 20
def help
"This service sends notifications about project events to Discord channels.<br />
To set up this service:
<ol>
<li><a href='https://support.discordapp.com/hc/en-us/articles/228383668-Intro-to-Webhooks'>Setup a custom Incoming Webhook</a>.</li>
<li>Paste the <strong>Webhook URL</strong> into the field below.</li>
<li>Select events below to enable notifications.</li>
</ol>"
end
|
#title ⇒ Object
8
9
10
|
# File 'app/models/project_services/discord_service.rb', line 8
def title
s_("DiscordService|Discord Notifications")
end
|