{"action":"created","issue":{"url":"https://api.github.com/repos/kokeshii/RSVPBot/issues/45","repository_url":"https://api.github.com/repos/kokeshii/RSVPBot","labels_url":"https://api.github.com/repos/kokeshii/RSVPBot/issues/45/labels{/name}","comments_url":"https://api.github.com/repos/kokeshii/RSVPBot/issues/45/comments","events_url":"https://api.github.com/repos/kokeshii/RSVPBot/issues/45/events","html_url":"https://github.com/kokeshii/RSVPBot/pull/45","id":161281237,"number":45,"title":"Store name:email mapping","user":{"login":"alexandrinaw","id":4393302,"avatar_url":"https://avatars.githubusercontent.com/u/4393302?v=3","gravatar_id":"","url":"https://api.github.com/users/alexandrinaw","html_url":"https://github.com/alexandrinaw","followers_url":"https://api.github.com/users/alexandrinaw/followers","following_url":"https://api.github.com/users/alexandrinaw/following{/other_user}","gists_url":"https://api.github.com/users/alexandrinaw/gists{/gist_id}","starred_url":"https://api.github.com/users/alexandrinaw/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/alexandrinaw/subscriptions","organizations_url":"https://api.github.com/users/alexandrinaw/orgs","repos_url":"https://api.github.com/users/alexandrinaw/repos","events_url":"https://api.github.com/users/alexandrinaw/events{/privacy}","received_events_url":"https://api.github.com/users/alexandrinaw/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":1,"created_at":"2016-06-20T20:03:15Z","updated_at":"2016-06-20T20:23:40Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/kokeshii/RSVPBot/pulls/45","html_url":"https://github.com/kokeshii/RSVPBot/pull/45","diff_url":"https://github.com/kokeshii/RSVPBot/pull/45.diff","patch_url":"https://github.com/kokeshii/RSVPBot/pull/45.patch"},"body":"Fixes #25 \r\n\r\nStores a mapping of email addresses to \"pingable\" names in a file called `zulip_users.json`. During `rsvp summary` and `rsvp ping` commands, it'll open the file and get the list of pingable names from there instead of making a request to the Zulip API.\r\n\r\nThe file will look something like:\r\n```\r\n{\r\n    \"hamlet@zulip.com\": \"Princess\",\r\n    \"notification-bot@zulip.com\": \"Notification Bot\",\r\n    \"error-bot@zulip.com\": \"Zulip Error Bot\",\r\n}\r\n```\r\nso it'll be quick to look up users by email address.\r\n\r\nThe bot is now listening for both events of type `message` (which it was doing before) and `realm_user` (which is new). `realm_user` updates happen whenever anything about the users in a realm change. This includes things like name changes and new users being added. Upon getting a `realm_user` event, the `zulip_users.json` file will be updated. \r\n\r\nRight after this is deployed, you can run the script with `python zulip_users.py`, which will make a request to get all the users from the Zulip API and store them in the file."},"comment":{"url":"https://api.github.com/repos/kokeshii/RSVPBot/issues/comments/227258102","html_url":"https://github.com/kokeshii/RSVPBot/pull/45#issuecomment-227258102","issue_url":"https://api.github.com/repos/kokeshii/RSVPBot/issues/45","id":227258102,"user":{"login":"kokeshii","id":218754,"avatar_url":"https://avatars.githubusercontent.com/u/218754?v=3","gravatar_id":"","url":"https://api.github.com/users/kokeshii","html_url":"https://github.com/kokeshii","followers_url":"https://api.github.com/users/kokeshii/followers","following_url":"https://api.github.com/users/kokeshii/following{/other_user}","gists_url":"https://api.github.com/users/kokeshii/gists{/gist_id}","starred_url":"https://api.github.com/users/kokeshii/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kokeshii/subscriptions","organizations_url":"https://api.github.com/users/kokeshii/orgs","repos_url":"https://api.github.com/users/kokeshii/repos","events_url":"https://api.github.com/users/kokeshii/events{/privacy}","received_events_url":"https://api.github.com/users/kokeshii/received_events","type":"User","site_admin":false},"created_at":"2016-06-20T20:23:40Z","updated_at":"2016-06-20T20:23:40Z","body":"@alexandrinaw: Can we look into why the build is failing? 😱 "}}
{"actor":{"display_login":"kokeshii"}}