Class: HangoutsChatService
Constant Summary
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/hangouts_chat_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
14
15
16
|
# File 'app/models/project_services/hangouts_chat_service.rb', line 14
def self.to_param
'hangouts_chat'
end
|
Instance Method Details
#default_channel_placeholder ⇒ Object
31
32
|
# File 'app/models/project_services/hangouts_chat_service.rb', line 31
def default_channel_placeholder
end
|
#default_fields ⇒ Object
43
44
45
46
47
48
49
|
# File 'app/models/project_services/hangouts_chat_service.rb', line 43
def default_fields
[
{ type: 'text', name: 'webhook', placeholder: "e.g. #{webhook_placeholder}" },
{ type: 'checkbox', name: 'notify_only_broken_pipelines' },
{ type: 'select', name: 'branches_to_be_notified', choices: branch_choices }
]
end
|
#description ⇒ Object
10
11
12
|
# File 'app/models/project_services/hangouts_chat_service.rb', line 10
def description
'Receive event notifications in Google Hangouts Chat'
end
|
#event_field(event) ⇒ Object
28
29
|
# File 'app/models/project_services/hangouts_chat_service.rb', line 28
def event_field(event)
end
|
#help ⇒ Object
18
19
20
21
22
23
24
25
26
|
# File 'app/models/project_services/hangouts_chat_service.rb', line 18
def help
'This service sends notifications about projects events to Google Hangouts Chat room.<br />
To set up this service:
<ol>
<li><a href="https://developers.google.com/hangouts/chat/how-tos/webhooks">Set up an incoming webhook for your room</a>. All notifications will come to this room.</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
6
7
8
|
# File 'app/models/project_services/hangouts_chat_service.rb', line 6
def title
'Hangouts Chat'
end
|
#webhook_placeholder ⇒ Object
34
35
36
|
# File 'app/models/project_services/hangouts_chat_service.rb', line 34
def webhook_placeholder
'https://chat.googleapis.com/v1/spaces…'
end
|