{"action":"created","issue":{"url":"https://api.github.com/repos/hreinhardt/amqp/issues/57","labels_url":"https://api.github.com/repos/hreinhardt/amqp/issues/57/labels{/name}","comments_url":"https://api.github.com/repos/hreinhardt/amqp/issues/57/comments","events_url":"https://api.github.com/repos/hreinhardt/amqp/issues/57/events","html_url":"https://github.com/hreinhardt/amqp/pull/57","id":94813172,"number":57,"title":"Implement support for RabbitMQ's publisher confirms","user":{"login":"moysesb","id":3748237,"avatar_url":"https://avatars.githubusercontent.com/u/3748237?v=3","gravatar_id":"","url":"https://api.github.com/users/moysesb","html_url":"https://github.com/moysesb","followers_url":"https://api.github.com/users/moysesb/followers","following_url":"https://api.github.com/users/moysesb/following{/other_user}","gists_url":"https://api.github.com/users/moysesb/gists{/gist_id}","starred_url":"https://api.github.com/users/moysesb/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/moysesb/subscriptions","organizations_url":"https://api.github.com/users/moysesb/orgs","repos_url":"https://api.github.com/users/moysesb/repos","events_url":"https://api.github.com/users/moysesb/events{/privacy}","received_events_url":"https://api.github.com/users/moysesb/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":5,"created_at":"2015-07-13T21:13:21Z","updated_at":"2015-07-14T12:33:47Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/hreinhardt/amqp/pulls/57","html_url":"https://github.com/hreinhardt/amqp/pull/57","diff_url":"https://github.com/hreinhardt/amqp/pull/57.diff","patch_url":"https://github.com/hreinhardt/amqp/pull/57.patch"},"body":"The implementation follows in general lines the behaviour of the rabbitmq java client. There's an `addConfirmationListener` function, which registers a callback to be invoked each time the channel receives a confirmation from the server (either `Basic_ack` or `Basic_nack`). There's also a pair of functions: `waitForConfirms` (waits forever) and `waitForConfirms'` (waits with a timeout)."},"comment":{"url":"https://api.github.com/repos/hreinhardt/amqp/issues/comments/121225928","html_url":"https://github.com/hreinhardt/amqp/pull/57#issuecomment-121225928","issue_url":"https://api.github.com/repos/hreinhardt/amqp/issues/57","id":121225928,"user":{"login":"moysesb","id":3748237,"avatar_url":"https://avatars.githubusercontent.com/u/3748237?v=3","gravatar_id":"","url":"https://api.github.com/users/moysesb","html_url":"https://github.com/moysesb","followers_url":"https://api.github.com/users/moysesb/followers","following_url":"https://api.github.com/users/moysesb/following{/other_user}","gists_url":"https://api.github.com/users/moysesb/gists{/gist_id}","starred_url":"https://api.github.com/users/moysesb/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/moysesb/subscriptions","organizations_url":"https://api.github.com/users/moysesb/orgs","repos_url":"https://api.github.com/users/moysesb/repos","events_url":"https://api.github.com/users/moysesb/events{/privacy}","received_events_url":"https://api.github.com/users/moysesb/received_events","type":"User","site_admin":false},"created_at":"2015-07-14T12:33:47Z","updated_at":"2015-07-14T12:33:47Z","body":"Oh right, that's not what I intended, `nacksReceived` should revert to False when all pending messages have been confirmed (this assumes that no one has published messages on this channel in the meantime)."}}