2016-10-13 3 views
2

В настоящее время я пытаюсь разработать приложение на C#, используя библиотеку SlackConnector. SlackConnectorSlack API и OAuth 2.0

Приложение получит и отправит сообщения на слабые каналы и DM. (Я успешно могу отправлять и получать сообщения из моего провисания, используя генератор тестовых токенов.) TEST TOKEN GENERATOR

Я не понимаю, как это возможно для пользователя, который будет использовать приложение, чтобы дать полную авторизацию для доступа к их Слабая учетная запись, и поэтому оттуда они могут отправлять и получать сообщения аналогичным образом.

OAuth 2.0 Что-то, что мне нужно использовать? Я создал слабое приложение и выполнил шаги, чтобы получить токен доступа от пользователей, но токены доступа по какой-то причине не устанавливают соединение, как это делают тестовые маркеры? Я полагаю, что с этим токеном вы можете публиковать сообщения от имени пользователя, только не получать сообщения имеют ограниченный доступ, не уверен !!

Есть ли способ программно получить подписанный пользователем тестовый токен? или способ, которым пользователь может предоставить моему настольному приложению полный доступ к незаполненной учетной записи без необходимости генерировать тестовый токен вручную?

Даже если бы я должен был заниматься производством только у меня в качестве пользователя, какой токен доступа я бы использовал один и тот же тестовый токен? Разве это не только для тестирования, где фактический токен?

ответ

3

Чтобы ответить на некоторые из ваших вопросов здесь:

Да, вам нужно использовать OAuth 2.0 и провисание приложение, чтобы предложить свою интеграцию для установки на других гаче команд.

Да, тестовые жетоны предназначены только для развития против одной команды. Они представляют собой полные возможности того, что создала его учетная запись, в контексте команды, в которую она была создана.

Для подключения к RTM API и для чтения и записи DM вам необходимо будет принять несколько решений, о которых вы хотите запросить OAuth scopes, и хотите ли вы работать с точки зрения своего приложения как своего рода «бот-пользователь» в канале или с точки зрения пользователя, использующего ваше приложение. Как правило, приложения работают с их собственной точки зрения.

Наиболее распространенным способом создания такого приложения является запрос bot OAuth scope, который предоставляет пакет разрешений. Сложная часть заключается в том, что бот-разрешения не предоставляются верхнему уровню token в конце потока OAuth - они предоставлены bot_user_token, которые вы можете найти в части ответа на хэш-код ответа bot. Использование этого токена позволит вам подключиться к RTM API и взаимодействовать через прямые сообщения с членами команды. (См. Документы bot user для получения информации о «Токенах и прицелах».

Если вы намерены действовать непосредственно от имени пользователя (отправляя сообщения и отвечая на сообщения, как если бы вы были авторизованы пользователем), вам необходимо чтобы запросить очень четкие области OAuth, которые будут применены к пользователю верхнего уровня token в окончательном ответе OAuth.

+0

Спасибо за ваш ответ. Вы упоминаете другие команды, все, кто использует мое приложение, будут в одной команде. Я хочу работать с точки зрения пользователя, а не ботов.Есть ли какая-либо документация, где я могу найти дополнительную информацию о OAuth Scopes, кроме слабой документации? – hamadkh

+0

Документы, вероятно, все же лучше всего. Лучший подход - перейти к каждому методу API который выполняет t действия, которые вы хотите предпринять, и обратите внимание, какая область видимости OAuth требуется. Затем попросите те, кого назвали OAuth, как пользователи в вашей команде, установите приложение.Если вы не возражаете, и ваша команда не обладает более широким набором возможностей (может быть, даже слишком много), вы можете запросить область «клиент» как своего рода ярлык. –

+0

Спасибо, я уже понял это. «Клиент» решил все мои проблемы. Это то, что имеет смысл для моего использования. – hamadkh

Смежные вопросы