Получить уведомление в моем клиентском коде

Я хочу получать уведомления о любых изменениях в любых проблемах на моем сервере jira.

У меня есть базовый код для подключения jira из java-кода с использованием библиотеки jira-rest-java-client, которую они предоставили.

Я искал их javadocs, а также просмотрел некоторые классы в этой библиотеке API, но не смог найти какие-либо методы/классы, которые были бы мне полезны.

Кто-нибудь знает, можно ли получать уведомления об изменениях в jira в моем java-коде (может быть, через опрос или что-то в этом роде).


person Abubakkar    schedule 02.03.2015    source источник


Ответы (1)


Чего вы хотите достичь?

  1. Хотите получать push-уведомления? Их нет, ИМХО. ОБНОВЛЕНИЕ: однако есть такая штука WebHook: https://confluence.atlassian.com/display/JIRA/Managing+Webhooks. У меня нет опыта в этом, но это многообещающе, прочтите также это краткое введение: http://blogs.atlassian.com/2012/10/jira-5-2-remote-integration-webhooks/.
  2. Вы ищете что-то, что возвращает вам то, что изменилось за последние N минут, что-то вроде ленты активности? Вы можете получить RSS-канал потоков активности для проектов и для пользователей.

Как

Базовый URL-адрес: https://jira.contoso.com/activity. Затем вы можете добавить параметры строки запроса, например maxResults для разбиения на страницы.

Выбор источника данных осуществляется через фильтры, указанные в параметре streams. Похоже, что это JQL, но это не так.

Примеры:

  • Перечислите мероприятия проекта: ?streams=key+IS+SOMEPROJ.
  • Список действий пользователя: ?streams=user+IS+foobar.
  • Список событий между двумя датами: ?streams=update-date+BETWEEN+1425300236000+1425300264999. (Примечание: эпоха — это эпоха с точностью до миллисекунды.)
  • Список действий пользователей в одном проекте: ?streams=user+IS+JohnDoe&streams=key+IS+PROJECTKEY.
  • Более сложные: ?streams=user+IS+JohnDoe&streams=key+IS+PROJECTKEY&streams=activity+IS+issue:close

Осторожно, это чувствительно к регистру, в моей JIRA 6.1.9, если я напишу Is вместо IS, я получу страницу с ошибкой (но не в том случае, если AFTER не все в верхнем регистре oO).

Также обратите внимание, что пробелы должны быть закодированы как знаки плюса (+), не в кодировке URL (%20 для пробелов).

Если вы перейдете к своей JIRA и получите следующий URL-адрес: https://jira.yourserver.com/rest/activity-stream/1.0/config, он отобразит все комбинации, которые он принимает.

Что

Вызов возвращает стандартный фид Atom. Затем вы можете обработать его с помощью инструментов XML-запросов или с помощью других инструментов на основе Java. Библиотеки для чтения RSS/ATOM.

Примечательный документ по этой теме: https://developer.atlassian.com/docs/atlassian-platform-common-components/activity-streams/using-an-activity-streams-feed

person Koshinae    schedule 02.03.2015
comment
Я рад это слышать :-) - person Koshinae; 11.03.2015