Commit f187cc59 authored by Z.J. van de Weg's avatar Z.J. van de Weg

Small update to the Mattermost API

These changes make it possible to wrap multiple API requests in one
session.
parent b60de9c0
......@@ -8,21 +8,31 @@ module Mattermost
@user = user
end
private
def with_session(&blk)
Mattermost::Session.new(user).with_session(&blk)
end
def json_get(path, options = {})
private
# Should be used in a session manually
def get(session, path, options = {})
json_response session.get(path, options)
end
# Should be used in a session manually
def post(session, path, options = {})
json_response session.post(path, options)
end
def session_get(path, options = {})
with_session do |session|
json_response session.get(path, options)
get(session, path, options)
end
end
def json_post(path, options = {})
def session_post(path, options = {})
with_session do |session|
json_response session.post(path, options)
post(session, path, options)
end
end
......
module Mattermost
class Command < Client
def create(params)
response = json_post("/api/v3/teams/#{params[:team_id]}/commands/create",
response = session_post("/api/v3/teams/#{params[:team_id]}/commands/create",
body: params.to_json)
response['token']
......
module Mattermost
class Team < Client
def all
json_get('/api/v3/teams/all')
session_get('/api/v3/teams/all')
end
end
end
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment