官方包 · 自动化与基础设施

在你自己的页面上实时显示 Jira 工单更新

一个 Jira Cloud 应用,工单变更和新评论一发生就推送到你的频道,客户门户、App 或看板墙无需轮询 Jira API 即可更新。

  • issue-created、带有变更字段的 issue-updated、issue-deleted 与 comment-added,发送到 jira-{projectKey} 与 jira-issue-{issueKey}。
  • 支持私有频道、指定要发送的项目,人名默认不发送,需要时再开启。
  • 基于 Atlassian Forge:设置与 secret 存在 Jira 中,应用只连接 Jira 和你的 Hibira 集群。
  • 只需要一条规则的话不必安装应用:把应用设置中的传入 webhook 网址粘贴到 Jira Automation 的 Send web request 操作即可。

登录后,示例代码会自动填入您的集群主机。 登录

  1. 安装

    git clone https://github.com/hibira-io/jira && cd jira
    npm install
    forge register && forge deploy
    forge install --product jira --site your-site.atlassian.net
  2. 配置

    Jira → Settings → Apps → Hibira Realtime
      App ID:  YOUR_APP_ID
      Key:     YOUR_APP_KEY
      Secret:  YOUR_APP_SECRET
      → Save → Send test event
  3. 使用

    const pusher = new Pusher('YOUR_APP_KEY', {
      cluster: 'hkg',
      wsHost: 'ws.hibira.io',
    });
    pusher.subscribe('jira-issue-SUP-42').bind('issue-updated', ({ issue, changes }) => {
      document.querySelector('#status').textContent = issue.status;
    });
  4. 或使用 Jira Automation

    Hibira portal → your app → Settings → Incoming webhook URL
      Channel: jira-SUP   Event: issue-updated   → Create URL
    
    Jira → Project settings → Automation → Create rule
      When: Issue transitioned
      Then: Send web request
        URL:    the incoming webhook URL
                 (add ?pick=issue.key,issue.fields.status.name to send less)
        Method: POST    Body: Issue data

开始之前

  • 应用密钥只会在创建应用或轮换密钥时显示一次。请只放在服务器上,不要放进浏览器或游戏的构建包。
  • Free 套餐需要把页面加载的每个来源都加入应用的“允许的来源”(开发时是 http://localhost:3000,之后是您的域名)。"*" 需要付费套餐。
  • Forge 需要免费的 Atlassian 开发者账号和 Forge CLI(npm install -g @forge/cli)。

请使用控制台中应用的 Key;Secret 只放在你的服务器上。频道、事件与授权端点的用法与 Pusher 完全相同。 免费创建账号 →