Я использую два слабых API, users.list () и users.getPresence (). Я использую users.list () для получения имен и идентификаторов пользователя.
API users.getPresence () принимает идентификатор пользователя в качестве параметра и выводит только свое присутствие «активный» или «отсутствующий», как показано здесь: https://api.slack.com/methods/users.getPresence
Я пыталсявзяв имена, которые я извлек из users_list (), и вернув их вместе с API users_getPresence (), но затем я получил список имен, повторяющихся для каждого статуса.
client = slack.WebClient(API_KEY)
def users_list():
users_call = client.users_list()
users = users_call['members']
result = []
# loops for each user
for user in users:
uid = user['id']
name = user['profile']['real_name']
info = {"id": None, "name": None}
if users_call['ok']:
info['id'] = uid
info['name'] = name
result.append(info)
else:
return None
return result
def users_getPresence():
info = users_list()
users = []
for value in info:
uid = value['id']
users.append(uid)
presence = []
for user in users:
presence_call = client.users_getPresence(user = user)
if presence_call['ok']:
presence.append(presence_call['presence'])
else:
return None
return presence
В настоящее время два API имеют отдельные выходы, где users.list () возвращает идентификатор и имя, а users.getPresence () возвращает присутствие.
Как я могу вернуть имя пользователя и его статус вместе?