{"action":"created","issue":{"url":"https://api.github.com/repos/GoogleCloudPlatform/google-cloud-ruby/issues/973","repository_url":"https://api.github.com/repos/GoogleCloudPlatform/google-cloud-ruby","labels_url":"https://api.github.com/repos/GoogleCloudPlatform/google-cloud-ruby/issues/973/labels{/name}","comments_url":"https://api.github.com/repos/GoogleCloudPlatform/google-cloud-ruby/issues/973/comments","events_url":"https://api.github.com/repos/GoogleCloudPlatform/google-cloud-ruby/issues/973/events","html_url":"https://github.com/GoogleCloudPlatform/google-cloud-ruby/pull/973","id":183124209,"number":973,"title":"Add Speech Streaming","user":{"login":"blowmage","id":730,"avatar_url":"https://avatars.githubusercontent.com/u/730?v=3","gravatar_id":"","url":"https://api.github.com/users/blowmage","html_url":"https://github.com/blowmage","followers_url":"https://api.github.com/users/blowmage/followers","following_url":"https://api.github.com/users/blowmage/following{/other_user}","gists_url":"https://api.github.com/users/blowmage/gists{/gist_id}","starred_url":"https://api.github.com/users/blowmage/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/blowmage/subscriptions","organizations_url":"https://api.github.com/users/blowmage/orgs","repos_url":"https://api.github.com/users/blowmage/repos","events_url":"https://api.github.com/users/blowmage/events{/privacy}","received_events_url":"https://api.github.com/users/blowmage/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/GoogleCloudPlatform/google-cloud-ruby/labels/cla:%20yes","name":"cla: yes","color":"009800"},{"url":"https://api.github.com/repos/GoogleCloudPlatform/google-cloud-ruby/labels/speech","name":"speech","color":"e99695"}],"state":"open","locked":false,"assignee":{"login":"quartzmo","id":205445,"avatar_url":"https://avatars.githubusercontent.com/u/205445?v=3","gravatar_id":"","url":"https://api.github.com/users/quartzmo","html_url":"https://github.com/quartzmo","followers_url":"https://api.github.com/users/quartzmo/followers","following_url":"https://api.github.com/users/quartzmo/following{/other_user}","gists_url":"https://api.github.com/users/quartzmo/gists{/gist_id}","starred_url":"https://api.github.com/users/quartzmo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/quartzmo/subscriptions","organizations_url":"https://api.github.com/users/quartzmo/orgs","repos_url":"https://api.github.com/users/quartzmo/repos","events_url":"https://api.github.com/users/quartzmo/events{/privacy}","received_events_url":"https://api.github.com/users/quartzmo/received_events","type":"User","site_admin":false},"assignees":[{"login":"quartzmo","id":205445,"avatar_url":"https://avatars.githubusercontent.com/u/205445?v=3","gravatar_id":"","url":"https://api.github.com/users/quartzmo","html_url":"https://github.com/quartzmo","followers_url":"https://api.github.com/users/quartzmo/followers","following_url":"https://api.github.com/users/quartzmo/following{/other_user}","gists_url":"https://api.github.com/users/quartzmo/gists{/gist_id}","starred_url":"https://api.github.com/users/quartzmo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/quartzmo/subscriptions","organizations_url":"https://api.github.com/users/quartzmo/orgs","repos_url":"https://api.github.com/users/quartzmo/repos","events_url":"https://api.github.com/users/quartzmo/events{/privacy}","received_events_url":"https://api.github.com/users/quartzmo/received_events","type":"User","site_admin":false}],"milestone":{"url":"https://api.github.com/repos/GoogleCloudPlatform/google-cloud-ruby/milestones/34","html_url":"https://github.com/GoogleCloudPlatform/google-cloud-ruby/milestones/v0.21","labels_url":"https://api.github.com/repos/GoogleCloudPlatform/google-cloud-ruby/milestones/34/labels","id":2060329,"number":34,"title":"v0.21","description":"","creator":{"login":"blowmage","id":730,"avatar_url":"https://avatars.githubusercontent.com/u/730?v=3","gravatar_id":"","url":"https://api.github.com/users/blowmage","html_url":"https://github.com/blowmage","followers_url":"https://api.github.com/users/blowmage/followers","following_url":"https://api.github.com/users/blowmage/following{/other_user}","gists_url":"https://api.github.com/users/blowmage/gists{/gist_id}","starred_url":"https://api.github.com/users/blowmage/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/blowmage/subscriptions","organizations_url":"https://api.github.com/users/blowmage/orgs","repos_url":"https://api.github.com/users/blowmage/repos","events_url":"https://api.github.com/users/blowmage/events{/privacy}","received_events_url":"https://api.github.com/users/blowmage/received_events","type":"User","site_admin":false},"open_issues":7,"closed_issues":13,"state":"open","created_at":"2016-10-10T19:18:09Z","updated_at":"2016-10-14T23:24:16Z","due_on":"2016-10-15T00:00:00Z","closed_at":null},"comments":6,"created_at":"2016-10-14T18:50:24Z","updated_at":"2016-10-15T16:53:09Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/GoogleCloudPlatform/google-cloud-ruby/pulls/973","html_url":"https://github.com/GoogleCloudPlatform/google-cloud-ruby/pull/973","diff_url":"https://github.com/GoogleCloudPlatform/google-cloud-ruby/pull/973.diff","patch_url":"https://github.com/GoogleCloudPlatform/google-cloud-ruby/pull/973.patch"},"body":"This PR is an implementation of Speech's Streaming support.\r\n\r\nA stream object represents the bi-directional requests and responses. Users will not need to create IO objects or pipes or Enumerators, but can simply call `Stream#send` and receive notifications using blocks. The intention here is to lower the barrier to using the streaming API.\r\n\r\n```ruby\r\nrequire \"google/cloud/speech\"\r\n\r\nspeech = Google::Cloud::Speech.new\r\n\r\nstream = audio.stream encoding: :raw, sample_rate: 16000\r\n\r\n# register callback for when a result is returned\r\nstream.on_result do |results|\r\n  result = results.first\r\n  result.transcript #=> \"how old is the Brooklyn Bridge\"\r\n  result.confidence #=> 0.8099\r\nend\r\n\r\n# Stream 5 seconds of audio from the microhone\r\n# Actual implementation of microphone input varies by platform\r\n5.times.do\r\n  stream.send MicrophoneInput.read(32000)\r\nend\r\n\r\nstream.stop\r\n```"},"comment":{"url":"https://api.github.com/repos/GoogleCloudPlatform/google-cloud-ruby/issues/comments/253996140","html_url":"https://github.com/GoogleCloudPlatform/google-cloud-ruby/pull/973#issuecomment-253996140","issue_url":"https://api.github.com/repos/GoogleCloudPlatform/google-cloud-ruby/issues/973","id":253996140,"user":{"login":"blowmage","id":730,"avatar_url":"https://avatars.githubusercontent.com/u/730?v=3","gravatar_id":"","url":"https://api.github.com/users/blowmage","html_url":"https://github.com/blowmage","followers_url":"https://api.github.com/users/blowmage/followers","following_url":"https://api.github.com/users/blowmage/following{/other_user}","gists_url":"https://api.github.com/users/blowmage/gists{/gist_id}","starred_url":"https://api.github.com/users/blowmage/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/blowmage/subscriptions","organizations_url":"https://api.github.com/users/blowmage/orgs","repos_url":"https://api.github.com/users/blowmage/repos","events_url":"https://api.github.com/users/blowmage/events{/privacy}","received_events_url":"https://api.github.com/users/blowmage/received_events","type":"User","site_admin":false},"created_at":"2016-10-15T16:53:09Z","updated_at":"2016-10-15T16:53:09Z","body":"What do you think of an `on_error` callback?"}}
{"actor":{"display_login":"blowmage"}}