不清楚如何使用Github Notifications API

时间:2017-11-05 03:23:39

标签: android github github-api

https://developer.github.com/v3/activity/notifications/

我正在尝试使用Github Notifications API来显示

之类的通知
"someone followed my repo", "someone followed me", "someone commented on my repo", etc. 

在我的Android应用程序上。

在使用它之前,我试图了解它是如何工作的。

当我尝试

GET https://api.github.com/notifications?access_token="mytoken"
邮递员看看如果给出了什么,它只是给了我

[]

当我让我的朋友在Github上关注我的时候,我期待在回复中出现一些内容,但它仍然给了我

[]

在我的朋友试图跟随我之后。

在什么情况下我会得到回复,我应该怎样用它来实现我的目的?

1 个答案:

答案 0 :(得分:0)

Axibase开发了一套方便的工具,使用GitHub API根据您描述的事件创建和发送Webhooks。

这里显示了Repo Watch通知的工作流程,根据警报事件,每种工具的工作流程都是相同的:

workflow-image

整个设置过程花费不到10分钟,遵循此guide并在Docker容器中运行,该容器在启动命令中预先配置。程序是这样的:

  1. 从Linux命令行,使用以下命令启动ATSD: docker run -d -p 8443:8443 -p 9443:9443 \ --name=atsd-sandbox \ --env SERVER_URL=https://atsd.company_name.com:8443 \ --env WEBHOOK=github \ --env SLACK_CONFIG="slack.properties \ --volume /home/user/slack.properties:/slack.properties \ --env ATSD_IMPORT_PATH='https://raw.githubusercontent.com/axibase/atsd-use-cases/master/how-to/github/resources/github-watch.xml' \ axibase/atsd-sandbox:latest
  2. (删除SO代码所需的可怕间距)

    SERVER_NAME参数替换为将运行沙箱容器的Docker主机的公有DNS名称

    您在这里得到的是一个带有生成Webhook的本地ATSD实例。该命令是为Slack引导的,因此您需要使用以下参数在本地计算机或URL上创建.xml目录,然后使用适当的路径替换slack.properties模板变量:

    token=xoxb-************-************************ channels=general

    1. 观看Docker日志,然后复制Webhook。它看起来像这样:
    2. Webhook URL: https://github:PdWnC1jF@atsd.company.com:8443/api/v1/messages/webhook/github?exclude=organization.*;repository.*;*.signature;*.payload;*.sha;*.ref;*_at;*.id&include=repository.name;repository.full_name&header.tag.event=X-GitHub-Event&excludeValues=http*&debug=true

      1. 打开您要为其创建通知的仓库的GitHub设置菜单:
      2. repo-settings

        1. 通过将运行时生成的Webeck粘贴到相应的字段并配置其余设置来配置Webhook:
        2. webhook-config

          1. 确认连接(GitHub将自动执行此操作),您已准备就绪。
          2. 根据您要触发通知的事件,使用其中一个guides。他们真正的好处是,他们可以通过第三方信使提醒,以便通知直接发送到您的智能手机,而不仅仅是通过电子邮件。

            免责声明:我曾为编写ATSD的开发团队工作,ATSD是负责底层数据处理和管理任务的数据库。

            祝你好运!