Подтвердить что ты не робот

Как указать пользователя в slack.client

Это может быть простой вопрос, но я не могу заставить его работать.

Я использую Slack Python Api, чтобы упомянуть пользователя в канале, и я имею в виду документ здесь https://api.slack.com/methods/chat.postMessage и мой код прост как,

from slackclient import SlackClient
sc = SlackClient(token)
message = sc.api_call(
  'chat.postMessage',
  channel='#channelname',
  text='This is a test.'
  )

Это отправит сообщение на канал, но я не могу найти какой-либо вариант упомянуть пользователей. И я попытался поставить @someone внутри сообщения, например

 text='@someone This is a test.'

Сообщение будет опубликовано, но в обычном тексте, но действительно упоминается кто-то. BTW, я использую тестовый токен. (Или, может быть, эта функция доступна только для авторизованного токена?)

Есть ли какой-либо вариант или метод для этого?
Заранее благодарю вас.

4b9b3361

Ответ 1

После небольшого исследования я получил решение, которое довольно простое. Я не знаю, как я мог это пропустить.

message = sc.api_call(
  'chat.postMessage',
  link_names=1,
  channel='#channelname',
  text='@someone This is a test.'
  )

используйте параметр link_names=1, чтобы автоматически связывать каналы или имена пользователей в текстовом сообщении. Это сделает трюк.

Спасибо всем.