Module: Legion::Extensions::MicrosoftTeams::Runners::Channels
- Extended by:
- Definitions
- Includes:
- Helpers::Lex, Helpers::Client
- Included in:
- Client
- Defined in:
- lib/legion/extensions/microsoft_teams/runners/channels.rb
Class Method Summary
collapse
Instance Method Summary
collapse
-
#create_channel(team_id:, display_name:, description: nil, membership_type: 'standard') ⇒ Object
-
#delete_channel(team_id:, channel_id:) ⇒ Object
-
#get_channel(team_id:, channel_id:) ⇒ Object
-
#list_channel_members(team_id:, channel_id:) ⇒ Object
-
#list_channels(team_id:, filter: nil, select: nil) ⇒ Object
-
#update_channel(team_id:, channel_id:, display_name: nil, description: nil) ⇒ Object
#bot_connection, #graph_connection, #oauth_connection, #user_path
Class Method Details
.trigger_words ⇒ Object
13
14
15
|
# File 'lib/legion/extensions/microsoft_teams/runners/channels.rb', line 13
def self.trigger_words
%w[channel channels post posts feed]
end
|
Instance Method Details
#create_channel(team_id:, display_name:, description: nil, membership_type: 'standard') ⇒ Object
66
67
68
69
70
71
|
# File 'lib/legion/extensions/microsoft_teams/runners/channels.rb', line 66
def create_channel(team_id:, display_name:, description: nil, membership_type: 'standard', **)
payload = { displayName: display_name, membershipType: membership_type }
payload[:description] = description if description
response = graph_connection(**).post("teams/#{team_id}/channels", payload)
{ result: response.body }
end
|
#delete_channel(team_id:, channel_id:) ⇒ Object
103
104
105
106
|
# File 'lib/legion/extensions/microsoft_teams/runners/channels.rb', line 103
def delete_channel(team_id:, channel_id:, **)
response = graph_connection(**).delete("teams/#{team_id}/channels/#{channel_id}")
{ result: response.body }
end
|
#get_channel(team_id:, channel_id:) ⇒ Object
50
51
52
53
|
# File 'lib/legion/extensions/microsoft_teams/runners/channels.rb', line 50
def get_channel(team_id:, channel_id:, **)
response = graph_connection(**).get("teams/#{team_id}/channels/#{channel_id}")
{ result: response.body }
end
|
#list_channel_members(team_id:, channel_id:) ⇒ Object
119
120
121
122
|
# File 'lib/legion/extensions/microsoft_teams/runners/channels.rb', line 119
def list_channel_members(team_id:, channel_id:, **)
response = graph_connection(**).get("teams/#{team_id}/channels/#{channel_id}/members")
{ result: response.body }
end
|
#list_channels(team_id:, filter: nil, select: nil) ⇒ Object
31
32
33
34
35
36
37
|
# File 'lib/legion/extensions/microsoft_teams/runners/channels.rb', line 31
def list_channels(team_id:, filter: nil, select: nil, **)
params = {}
params['$filter'] = filter if filter
params['$select'] = select if select
response = graph_connection(**).get("teams/#{team_id}/channels", params)
{ result: response.body }
end
|
#update_channel(team_id:, channel_id:, display_name: nil, description: nil) ⇒ Object
84
85
86
87
88
89
90
|
# File 'lib/legion/extensions/microsoft_teams/runners/channels.rb', line 84
def update_channel(team_id:, channel_id:, display_name: nil, description: nil, **)
payload = {}
payload[:displayName] = display_name if display_name
payload[:description] = description if description
response = graph_connection(**).patch("teams/#{team_id}/channels/#{channel_id}", payload)
{ result: response.body }
end
|