Как загрузить файл с помощью Slack API в качестве пользователя?Python

Программы на Python
Ответить
Anonymous
 Как загрузить файл с помощью Slack API в качестве пользователя?

Сообщение Anonymous »

Сейчас токен, используемый при загрузке файлов через files.upload, связан с моей учетной записью пользователя Slack. Таким образом, все загрузки, выполненные с использованием этого токена, похоже, были сделаны мной.

Однако я хотел бы указать что-то вроде as_user (который доступен, когда используяchat.PostMessage), в результате чего загрузка будет выглядеть так, как если бы она была загружена указанным пользователем Slack. Возможно ли это?

У меня так:

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

 upload_file(filepath='/path/to/file.jpg',
channels='#uploads',
title='my image',
initial_comment='pls give me some feedback!')
А вот вызываемая функция:

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

import os
import requests

TOKEN = your_token_here

def upload_file(
filepath,
channels,
filename=None,
content=None,
title=None,
initial_comment=None):
"""Upload file to channel

Note:
URLs can be constructed from:
https://api.slack.com/methods/files.upload/test
"""

if filename is None:
filename = os.path.basename(filepath)

data = {}
data['token'] = TOKEN
data['file'] = filepath
data['filename'] = filename
data['channels'] = channels

if content is not None:
data['content'] = content

if title is not None:
data['title'] = title

if initial_comment is not None:
data['initial_comment'] = initial_comment

filepath = data['file']
files = {
'file': (filepath, open(filepath, 'rb'), 'image/jpg', {
'Expires': '0'
})
}
data['media'] = files
response = requests.post(
url='https://slack.com/api/files.upload',
data=data,
headers={'Accept': 'application/json'},
files=files)

return response.text
Я нашел этот существующий вопрос, но мне не совсем понятен ответ о том, что можно сделать, чтобы это заработало.

Подробнее здесь: https://stackoverflow.com/questions/425 ... pi-as-user
Ответить

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

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

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

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

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