From f0649f5c20e5715257f89f6fddd4e5ec69c1b3e2 Mon Sep 17 00:00:00 2001 From: Japh Date: Thu, 12 Nov 2015 08:55:07 +1100 Subject: [PATCH] Add support for Multi Party Instant Messaging endpoints --- src/api/mpim.coffee | 34 ++++++++++++++++++++++++++++++++++ src/slack.coffee | 1 + 2 files changed, 35 insertions(+) create mode 100644 src/api/mpim.coffee diff --git a/src/api/mpim.coffee b/src/api/mpim.coffee new file mode 100644 index 0000000..27ee822 --- /dev/null +++ b/src/api/mpim.coffee @@ -0,0 +1,34 @@ +BaseClass = require './common/base_class' + +class MPIM extends BaseClass + + endpoints: + close: '/api/mpim.close' + history: '/api/mpim.history' + list: '/api/mpim.list' + mark: '/api/mpim.mark' + open: '/api/mpim.open' + + # + # Official API Methods + # + close: (opts = {}, callback) -> + @validate.obj opts, [ 'channel' ] + @request 'POST', @endpoints.close, opts, callback + + history: (opts = {}, callback) -> + @validate.obj opts, [ 'channel' ] + @request 'GET', @endpoints.history, opts, callback + + list: (callback) -> + @request 'GET', @endpoints.list, {}, callback + + mark: (opts = {}, callback) -> + @validate.obj opts, [ 'channel', 'ts' ] + @request 'POST', @endpoints.mark, opts, callback + + open: (opts = {}, callback) -> + @validate.obj opts, [ 'users' ] + @request 'POST', @endpoints.open, opts, callback + +module.exports = MPIM diff --git a/src/slack.coffee b/src/slack.coffee index d0772bd..6d202b7 100644 --- a/src/slack.coffee +++ b/src/slack.coffee @@ -12,6 +12,7 @@ class Slack 'emoji': require './api/emoji' 'groups': require './api/groups' 'im': require './api/im' + 'mpim': require './api/mpim' 'oauth': require './api/oauth' 'rtm': require './api/rtm' 'search': require './api/search'