class Qiita::Team::Services::Hooks::ChatworkV1
Public Class Methods
@note Override {Services::Base.service_name}.
# File lib/qiita/team/services/hooks/chatwork_v1.rb, line 18 def self.service_name "ChatWork" end
Public Instance Methods
@param event [Qiita::Team::Services::Events::ItemBecameCoediting] @return [void] @raise [Qiita::Team::Services::DeliveryError]
# File lib/qiita/team/services/hooks/chatwork_v1.rb, line 52 def item_became_coediting(event) send_message <<-EOM.strip_heredoc #{event.user.name} changed #{event.item.title} to coedit mode. #{event.item.url} EOM end
@param event [Qiita::Team::Services::Events::ItemCommentCreated] @return [void] @raise [Qiita::Team::Services::DeliveryError]
# File lib/qiita/team/services/hooks/chatwork_v1.rb, line 62 def item_comment_created(event) send_message <<-EOM.strip_heredoc #{event.user.name} commented on #{event.item.title}. #{event.item.url}[info]#{event.comment.body.truncate(100)}[/info] EOM end
@param event [Qiita::Team::Services::Events::ItemCreated] @return [void] @raise [Qiita::Team::Services::DeliveryError]
# File lib/qiita/team/services/hooks/chatwork_v1.rb, line 32 def item_created(event) send_message <<-EOM.strip_heredoc #{event.user.name} created #{event.item.title}. #{event.item.url} EOM end
@param event [Qiita::Team::Services::Events::ItemUpdated] @return [void] @raise [Qiita::Team::Services::DeliveryError]
# File lib/qiita/team/services/hooks/chatwork_v1.rb, line 42 def item_updated(event) send_message <<-EOM.strip_heredoc #{event.user.name} updated #{event.item.title}. #{event.item.url} EOM end
@return [void]
# File lib/qiita/team/services/hooks/chatwork_v1.rb, line 23 def ping send_message "Test message sent from Qiita:Team" rescue DeliveryError nil end
@param event [Qiita::Team::Services::Events::ProjectActivated] @return [void] @raise [Qiita::Team::Services::DeliveryError]
# File lib/qiita/team/services/hooks/chatwork_v1.rb, line 119 def project_activated(event) send_message <<-EOM.strip_heredoc #{event.user.name} activated #{event.project.name} project. #{event.project.url} EOM end
@param event [Qiita::Team::Services::Events::ProjectArchived] @return [void] @raise [Qiita::Team::Services::DeliveryError]
# File lib/qiita/team/services/hooks/chatwork_v1.rb, line 109 def project_archived(event) send_message <<-EOM.strip_heredoc #{event.user.name} archived #{event.project.name} project. #{event.project.url} EOM end
@param event [Qiita::Team::Services::Events::ProjectCommentCreated] @return [void] @raise [Qiita::Team::Services::DeliveryError]
# File lib/qiita/team/services/hooks/chatwork_v1.rb, line 72 def project_comment_created(event) send_message <<-EOM.strip_heredoc #{event.user.name} commented on #{event.project.name} project. #{event.project.url}[info]#{event.comment.body.truncate(100)}[/info] EOM end
@param event [Qiita::Team::Services::Events::ProjectCreated] @return [void] @raise [Qiita::Team::Services::DeliveryError]
# File lib/qiita/team/services/hooks/chatwork_v1.rb, line 89 def project_created(event) send_message <<-EOM.strip_heredoc #{event.user.name} created #{event.project.name} project. #{event.project.url} EOM end
@param event [Qiita::Team::Services::Events::ProjectUpdated] @return [void] @raise [Qiita::Team::Services::DeliveryError]
# File lib/qiita/team/services/hooks/chatwork_v1.rb, line 99 def project_updated(event) send_message <<-EOM.strip_heredoc #{event.user.name} updated #{event.project.name} project. #{event.project.url} EOM end
@param event [Qiita::Team::Services::Events::MemberAdded] @return [void] @raise [Qiita::Team::Services::DeliveryError]
# File lib/qiita/team/services/hooks/chatwork_v1.rb, line 82 def team_member_added(event) send_message("#{event.member.name} is added to #{event.team.name} team.") end
Private Instance Methods
@note Override Concerns::HttpClient#request_format
.
# File lib/qiita/team/services/hooks/chatwork_v1.rb, line 139 def request_format :url_encoded end
@note Override Concerns::HttpClient#request_headers
.
# File lib/qiita/team/services/hooks/chatwork_v1.rb, line 144 def request_headers { "X-ChatWorkToken" => token } end
@param message [String]
# File lib/qiita/team/services/hooks/chatwork_v1.rb, line 129 def send_message(message) http_post({ body: message }.to_query) end
@note Override Concerns::HttpClient#url
.
# File lib/qiita/team/services/hooks/chatwork_v1.rb, line 134 def url "https://api.chatwork.com/v1/rooms/#{room_id}/messages" end