{"action":"created","issue":{"url":"https://api.github.com/repos/crossbario/autobahn-js/issues/165","labels_url":"https://api.github.com/repos/crossbario/autobahn-js/issues/165/labels{/name}","comments_url":"https://api.github.com/repos/crossbario/autobahn-js/issues/165/comments","events_url":"https://api.github.com/repos/crossbario/autobahn-js/issues/165/events","html_url":"https://github.com/crossbario/autobahn-js/pull/165","id":113461864,"number":165,"title":"Allow Asynchronous RPC endpoints.","user":{"login":"travist","id":130052,"avatar_url":"https://avatars.githubusercontent.com/u/130052?v=3","gravatar_id":"","url":"https://api.github.com/users/travist","html_url":"https://github.com/travist","followers_url":"https://api.github.com/users/travist/followers","following_url":"https://api.github.com/users/travist/following{/other_user}","gists_url":"https://api.github.com/users/travist/gists{/gist_id}","starred_url":"https://api.github.com/users/travist/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/travist/subscriptions","organizations_url":"https://api.github.com/users/travist/orgs","repos_url":"https://api.github.com/users/travist/repos","events_url":"https://api.github.com/users/travist/events{/privacy}","received_events_url":"https://api.github.com/users/travist/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":1,"created_at":"2015-10-26T22:09:44Z","updated_at":"2015-10-26T22:23:34Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/crossbario/autobahn-js/pulls/165","html_url":"https://github.com/crossbario/autobahn-js/pull/165","diff_url":"https://github.com/crossbario/autobahn-js/pull/165.diff","patch_url":"https://github.com/crossbario/autobahn-js/pull/165.patch"},"body":"Currently this library does not allow for asynchronous RPC endpoints, where the endpoint needs to perform something asynchronously before returning the results. Here is an example of what I am referring to...\r\n\r\n```\r\nvar authenticate = function(username, password, done) {\r\n   // Perform an asynchronous authentication.\r\n};\r\n        \r\nsession.register('authenticate', function(args, kwars, cd, done) {\r\n  authenticate(kwars.username, kwars.password, done);\r\n}, {\r\n  async: true  /** Option added to let the library know this is async. **/\r\n});\r\n```\r\n\r\nThis pull requests adds this ability."},"comment":{"url":"https://api.github.com/repos/crossbario/autobahn-js/issues/comments/151301796","html_url":"https://github.com/crossbario/autobahn-js/pull/165#issuecomment-151301796","issue_url":"https://api.github.com/repos/crossbario/autobahn-js/issues/165","id":151301796,"user":{"login":"davidwdan","id":4969183,"avatar_url":"https://avatars.githubusercontent.com/u/4969183?v=3","gravatar_id":"","url":"https://api.github.com/users/davidwdan","html_url":"https://github.com/davidwdan","followers_url":"https://api.github.com/users/davidwdan/followers","following_url":"https://api.github.com/users/davidwdan/following{/other_user}","gists_url":"https://api.github.com/users/davidwdan/gists{/gist_id}","starred_url":"https://api.github.com/users/davidwdan/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/davidwdan/subscriptions","organizations_url":"https://api.github.com/users/davidwdan/orgs","repos_url":"https://api.github.com/users/davidwdan/repos","events_url":"https://api.github.com/users/davidwdan/events{/privacy}","received_events_url":"https://api.github.com/users/davidwdan/received_events","type":"User","site_admin":false},"created_at":"2015-10-26T22:23:34Z","updated_at":"2015-10-26T22:23:34Z","body":"@travist I'm pretty sure that you can just return a promise. "}}