Sha256: 19dc74d3bc061625a5ef8263b1df7435be41d276ca3b5fd756462297d96b66e5

Contents?: true

Size: 1.73 KB

Versions: 15

Compression:

Stored size: 1.73 KB

Contents

module Octokit
  class Client
    module PubSubHubbub
      # Subscribe to a pubsub topic
      #
      # @param topic [String] A recoginized and supported pubsub topic
      # @param callback [String] A callback url to be posted to when the topic event is fired
      # @return [boolean] true if the subscribe was successful, otherwise an error is raised
      # @example Subscribe to push events from one of your repositories, having an email sent when fired
      #   client = Octokit::Client.new(:oauth_token = "token")
      #   client.subscribe("https://github.com/joshk/devise_imapable/events/push", "github://Email?address=josh.kalderimis@gmail.com")
      def subscribe(topic, callback)
        options = {
          :"hub.mode" => "subscribe",
          :"hub.topic" => topic,
          :"hub.callback" => callback,
        }
        post("hub", options, 3, true, true, true)
        true
      end

      # Unsubscribe from a pubsub topic
      #
      # @param topic [String] A recoginized pubsub topic
      # @param callback [String] A callback url to be unsubscribed from
      # @return [boolean] true if the unsubscribe was successful, otherwise an error is raised
      # @example Unsubscribe to push events from one of your repositories, no longer having an email sent when fired
      #   client = Octokit::Client.new(:oauth_token = "token")
      #   client.unsubscribe("https://github.com/joshk/devise_imapable/events/push", "github://Email?address=josh.kalderimis@gmail.com")
      def unsubscribe(topic, callback)
        options = {
          :"hub.mode" => "unsubscribe",
          :"hub.topic" => topic,
          :"hub.callback" => callback,
        }
        post("hub", options, 3, true, true, true)
        true
      end
    end
  end
end

Version data entries

15 entries across 15 versions & 1 rubygems

Version Path
octokit-1.18.0 lib/octokit/client/pub_sub_hubbub.rb
octokit-1.17.1 lib/octokit/client/pub_sub_hubbub.rb
octokit-1.17.0 lib/octokit/client/pub_sub_hubbub.rb
octokit-1.15.1 lib/octokit/client/pub_sub_hubbub.rb
octokit-1.15.0 lib/octokit/client/pub_sub_hubbub.rb
octokit-1.14.0 lib/octokit/client/pub_sub_hubbub.rb
octokit-1.13.0 lib/octokit/client/pub_sub_hubbub.rb
octokit-1.12.0 lib/octokit/client/pub_sub_hubbub.rb
octokit-1.11.0 lib/octokit/client/pub_sub_hubbub.rb
octokit-1.10.0 lib/octokit/client/pub_sub_hubbub.rb
octokit-1.9.4 lib/octokit/client/pub_sub_hubbub.rb
octokit-1.9.3 lib/octokit/client/pub_sub_hubbub.rb
octokit-1.9.2 lib/octokit/client/pub_sub_hubbub.rb
octokit-1.9.1 lib/octokit/client/pub_sub_hubbub.rb
octokit-1.8.1 lib/octokit/client/pub_sub_hubbub.rb