#node.js #slack #slack-api
#node.js #slack #slack-api
Вопрос:
Мы пытаемся установить статус пользователя через API, и иногда требуется установить статус на завтра. Я видел, что в поле профиля нет времени начала в users.profile.установите метод. У вас, ребята, есть какие-либо предложения. Это было бы отличной помощью.
POST /api/users.profile.set
Host: slack.com
Content-type: application/json; charset=utf-8
Authorization: Bearer xoxp_secret_token
{
"profile": {
"status_text": "riding a train",
"status_emoji": ":mountain_railway:",
"status_expiration": 1532627506
}
}
Ответ №1:
AFAIK в API нет опции для отображения нового статуса для пользователя в будущем. Вы можете установить только дату истечения срока действия.
Чтобы получить эту функциональность, вам нужно разработать ее самостоятельно с помощью приложения Slack и некоторого механизма планирования, например CRON.
Вот основная схема того, как это приложение может работать:
-
Приложение Slack
- Пользовательская команда slash для установки запланированного статуса для пользователя
- Приложение сохраняет будущую дату статуса пользователя в собственной базе данных
-
Пакет
- Запускается на регулярной основе (например, каждую минуту) для проверки состояния для обновления (например, с помощью задания CRON / веб-планировщика CRON)
- Проверяет, есть ли какие-либо текущие обновления статуса для публикации
- Если да: публикует новые обновления статуса и помечает их как опубликованные / удаляет их в своей базе данных