From c01ecd06ed656e3fd2c5230c67875fd9f6bffa0c Mon Sep 17 00:00:00 2001 From: Pshentsov Vadim Date: Sat, 4 Nov 2017 12:45:48 +0500 Subject: [PATCH 1/5] Added properties to the response payload for required and provided application's scopes. Added explanation for error 'missing_scope'. --- src/CL/Slack/Payload/AbstractPayloadResponse.php | 6 ++++++ .../serializer/CL.Slack.Payload.AbstractPayloadResponse.yml | 4 ++++ 2 files changed, 10 insertions(+) diff --git a/src/CL/Slack/Payload/AbstractPayloadResponse.php b/src/CL/Slack/Payload/AbstractPayloadResponse.php index 7987feaf..ec945135 100644 --- a/src/CL/Slack/Payload/AbstractPayloadResponse.php +++ b/src/CL/Slack/Payload/AbstractPayloadResponse.php @@ -17,6 +17,10 @@ abstract class AbstractPayloadResponse implements PayloadResponseInterface */ private $error; + private $needed; + + private $provided; + /** * @inheritdoc */ @@ -79,6 +83,8 @@ protected function getPossibleErrors() 'user_is_bot' => 'This method cannot be called by a bot user', 'user_is_ultra_restricted' => 'This method cannot be called by a single channel guest', 'user_not_found' => 'User could not be found', + 'missing_scope' => sprintf("The application's permissions is not enough to complete this request. Needed scope is '%s', provided - [%s].", + $this->needed, $this->provided), ]; } } diff --git a/src/CL/Slack/Resources/config/serializer/CL.Slack.Payload.AbstractPayloadResponse.yml b/src/CL/Slack/Resources/config/serializer/CL.Slack.Payload.AbstractPayloadResponse.yml index f35c27fd..3d37f5a2 100644 --- a/src/CL/Slack/Resources/config/serializer/CL.Slack.Payload.AbstractPayloadResponse.yml +++ b/src/CL/Slack/Resources/config/serializer/CL.Slack.Payload.AbstractPayloadResponse.yml @@ -4,3 +4,7 @@ CL\Slack\Payload\AbstractPayloadResponse: type: boolean error: type: string + needed: + type: string + provided: + type: string From 9524b9734108c00479bf06a61b4b00c2259e2633 Mon Sep 17 00:00:00 2001 From: Pshentsov Vadim Date: Sat, 4 Nov 2017 13:35:23 +0500 Subject: [PATCH 2/5] Added descriptions to the new properties. --- src/CL/Slack/Payload/AbstractPayloadResponse.php | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/CL/Slack/Payload/AbstractPayloadResponse.php b/src/CL/Slack/Payload/AbstractPayloadResponse.php index ec945135..c2e6bc16 100644 --- a/src/CL/Slack/Payload/AbstractPayloadResponse.php +++ b/src/CL/Slack/Payload/AbstractPayloadResponse.php @@ -17,8 +17,14 @@ abstract class AbstractPayloadResponse implements PayloadResponseInterface */ private $error; + /** + * @var string + */ private $needed; + /** + * @var string + */ private $provided; /** From a4359a8ecde76d474279ea446c44d096466ddc05 Mon Sep 17 00:00:00 2001 From: Pshentsov Vadim Date: Sat, 4 Nov 2017 14:00:17 +0500 Subject: [PATCH 3/5] 'token_revoked' error explanation. --- src/CL/Slack/Payload/AbstractPayloadResponse.php | 1 + 1 file changed, 1 insertion(+) diff --git a/src/CL/Slack/Payload/AbstractPayloadResponse.php b/src/CL/Slack/Payload/AbstractPayloadResponse.php index c2e6bc16..7af5e8e5 100644 --- a/src/CL/Slack/Payload/AbstractPayloadResponse.php +++ b/src/CL/Slack/Payload/AbstractPayloadResponse.php @@ -91,6 +91,7 @@ protected function getPossibleErrors() 'user_not_found' => 'User could not be found', 'missing_scope' => sprintf("The application's permissions is not enough to complete this request. Needed scope is '%s', provided - [%s].", $this->needed, $this->provided), + 'token_revoked'=>'Token was revoked. Try to reinstall the application to get a new one.', ]; } } From 2e98404e01190cfbe5fd09eea81d0be98e6a95f5 Mon Sep 17 00:00:00 2001 From: Pshentsov Vadim Date: Thu, 9 Nov 2017 13:42:15 +0500 Subject: [PATCH 4/5] Channels list: excludes fixed and added. --- src/CL/Slack/Payload/ChannelsListPayload.php | 53 +++++++++++++++++-- .../CL.Slack.Payload.ChannelsListPayload.yml | 6 ++- 2 files changed, 53 insertions(+), 6 deletions(-) diff --git a/src/CL/Slack/Payload/ChannelsListPayload.php b/src/CL/Slack/Payload/ChannelsListPayload.php index e6854078..62dfb156 100644 --- a/src/CL/Slack/Payload/ChannelsListPayload.php +++ b/src/CL/Slack/Payload/ChannelsListPayload.php @@ -21,7 +21,17 @@ class ChannelsListPayload extends AbstractPayload /** * @var bool */ - private $excludeArchived; + private $exclude_archived; + + /** + * @var bool + */ + private $exclude_members; + + /** + * @var int + */ + private $limit; /** * @inheritdoc @@ -32,11 +42,11 @@ public function getMethod() } /** - * @param bool $excludeArchived + * @param bool $exclude_archived */ - public function setExcludeArchived($excludeArchived) + public function setExcludeArchived($exclude_archived) { - $this->excludeArchived = $excludeArchived; + $this->exclude_archived = $exclude_archived; } /** @@ -44,6 +54,39 @@ public function setExcludeArchived($excludeArchived) */ public function isExcludeArchived() { - return $this->excludeArchived; + return $this->exclude_archived; } + + /** + * @return bool + */ + public function isExcludeMembers() + { + return $this->exclude_members; + } + + /** + * @param bool $exclude_members + */ + public function setExcludeMembers( bool $exclude_members ) + { + $this->exclude_members = $exclude_members; + } + + /** + * @return int + */ + public function getLimit() + { + return $this->limit; + } + + /** + * @param int $limit + */ + public function setLimit( $limit ) + { + $this->limit = $limit; + } + } diff --git a/src/CL/Slack/Resources/config/serializer/CL.Slack.Payload.ChannelsListPayload.yml b/src/CL/Slack/Resources/config/serializer/CL.Slack.Payload.ChannelsListPayload.yml index adf2e457..b4f8fb34 100644 --- a/src/CL/Slack/Resources/config/serializer/CL.Slack.Payload.ChannelsListPayload.yml +++ b/src/CL/Slack/Resources/config/serializer/CL.Slack.Payload.ChannelsListPayload.yml @@ -1,4 +1,8 @@ CL\Slack\Payload\ChannelsListPayload: properties: - alreadyArchived: + exclude_archived: type: boolean + exclude_members: + type: boolean + limit: + type: integer From bb96ec26825fa6b46b3bab28d379c59c9a69df4e Mon Sep 17 00:00:00 2001 From: Pshentsov Vadim Date: Thu, 9 Nov 2017 14:20:32 +0500 Subject: [PATCH 5/5] Added team_id --- src/CL/Slack/Model/User.php | 13 +++++++++++++ .../config/serializer/CL.Slack.Model.User.yml | 2 ++ 2 files changed, 15 insertions(+) diff --git a/src/CL/Slack/Model/User.php b/src/CL/Slack/Model/User.php index 61995dfc..d434f0ae 100644 --- a/src/CL/Slack/Model/User.php +++ b/src/CL/Slack/Model/User.php @@ -23,6 +23,11 @@ class User extends AbstractModel */ private $id; + /** + * @var string|null + */ + private $team_id; + /** * @var string */ @@ -76,6 +81,14 @@ public function getId() return $this->id; } + /** + * @return null|string + */ + public function getTeamId() + { + return $this->team_id; + } + /** * @return string The (user)name of this member */ diff --git a/src/CL/Slack/Resources/config/serializer/CL.Slack.Model.User.yml b/src/CL/Slack/Resources/config/serializer/CL.Slack.Model.User.yml index 7ecff57e..2ef93b25 100644 --- a/src/CL/Slack/Resources/config/serializer/CL.Slack.Model.User.yml +++ b/src/CL/Slack/Resources/config/serializer/CL.Slack.Model.User.yml @@ -2,6 +2,8 @@ CL\Slack\Model\User: properties: id: type: string + team_id: + type: string name: type: string color: