Список каналов, участником которых является SlackbotPython

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Список каналов, участником которых является Slackbot

Сообщение Anonymous »

У меня есть небольшой скрипт, который использует Slack API для создания групповых чатов с пользователями и отправки вступительного сообщения. Я создал около 100 таких групповых чатов, но, к сожалению, я записал идентификаторы каналов только для двух из них. Мне нужно найти идентификаторы остальных 98 каналов.
У меня есть следующий скрипт для определения идентификаторов 98 каналов на основе поля is_member, возвращаемого в ответе:

Код: Выделить всё

# Imports
from slack_sdk import WebClient
import config

# Slack Client
slack_client = WebClient(config.OAUTH_TOKEN)

api_call = slack_client.conversations_list(type='private', limit=10000)

channels = api_call['channels']

for channel in channels:
if channel['is_member']:
print(channel['id'])

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

Код: Выделить всё

api_call = slack_client.conversations_info(channel=)
Это возвращает следующее:

Код: Выделить всё

{'ok': True, 'channel': {'id': , 'name': , 'is_channel': True,
'is_group': False, 'is_im': False, 'is_mpim': True, 'is_private': True, 'created': 1721671251,
'is_archived': False, 'is_general': False, 'unlinked': 0, 'name_normalized': ,
'is_shared': True, 'is_org_shared': True, 'is_pending_ext_shared': False, 'pending_shared': [],
'context_team_id':  , 'updated': 1721671251297, 'parent_conversation': None,
'creator': , 'is_read_only': False, 'is_thread_only': False, 'is_non_threadable':
False, 'is_moved': 0, 'is_ext_shared': False, 'enterprise_id': , 'is_global_shared':
False, 'is_org_default': False, 'is_org_mandatory': False, 'shared_team_ids': [],
'internal_team_ids': [], 'connected_team_ids': [], 'connected_limited_team_ids': [],
'pending_connected_team_ids': [], 'is_member': True, 'last_read': '0000000000.000000',
'is_open': True, 'topic': {'value': '', 'creator': '', 'last_set': 0}, 'purpose': {'value':
, 'creator': , 'last_set': 1721671251}}}
Главное, что я здесь заметил, это то, что для поля is_private установлено значение True. Однако когда я вызываю slack_client.conversations_list(type='private', limit=10000), я получаю только те каналы, где для параметра is_private установлено значение False. Возможно, это проблема с областями, но у меня есть следующие области: каналы: история, каналы: чтение, чат: запись, группы: история, группы: чтение, группы: запись, im: история, mpim: история, mpim: чтение. , mpim:write. Будем очень признательны за любую помощь!
`

Подробнее здесь: https://stackoverflow.com/questions/787 ... -member-of
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Python»