From 69c00c5b8999f66f27475342c78cc4488959e8bb Mon Sep 17 00:00:00 2001 From: aunsane Date: Thu, 16 Mar 2017 00:52:31 +0300 Subject: Slack: some improvements --- protocols/Slack/src/api/api_oauth.h | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) create mode 100644 protocols/Slack/src/api/api_oauth.h (limited to 'protocols/Slack/src/api') diff --git a/protocols/Slack/src/api/api_oauth.h b/protocols/Slack/src/api/api_oauth.h new file mode 100644 index 0000000000..cc1c35ae3e --- /dev/null +++ b/protocols/Slack/src/api/api_oauth.h @@ -0,0 +1,35 @@ +#ifndef _SLACK_API_OAUTH_H_ +#define _SLACK_API_OAUTH_H_ + +class OAuhtAccessRequest : public HttpRequest +{ +public: + OAuhtAccessRequest(const char *code, const char *state = NULL) : + HttpRequest(HttpMethod::HttpPost, SLACK_API_URL "/oauth.access") + { + Headers + << CHAR_VALUE("Content-Type", "application/x-www-form-urlencoded;charset=utf-8"); + Content + << CHAR_VALUE("client_id", SLACK_CLIENT_ID) + << CHAR_VALUE("client_secret", SLACK_CLIENT_SECRET) + << ENCODED_VALUE("code", code) + << ENCODED_VALUE("state", state) + << ENCODED_VALUE("redirect_uri", SLACK_REDIRECT_URL); + } +}; + +class AuthRevokeRequest : public HttpRequest +{ +public: + AuthRevokeRequest(const char *token) : + HttpRequest(HttpMethod::HttpPost, SLACK_API_URL "/auth.revoke") + { + timeout = 1; // in seconds? + Headers + << CHAR_VALUE("Content-Type", "application/x-www-form-urlencoded;charset=utf-8"); + Content + << CHAR_VALUE("token", token); + } +}; + +#endif //_SLACK_API_OAUTH_H_ \ No newline at end of file -- cgit v1.2.3