Sha256: 6620feec6a63088002ef61e8f0bf51009354c7a200bd5b2e029298ec539009a6

Contents?: true

Size: 516 Bytes

Versions: 24

Compression:

Stored size: 516 Bytes

Contents

module Bitcoin
  module Message

    # ping message class
    # https://bitcoin.org/en/developer-reference#ping
    class Ping < Base

      COMMAND = 'ping'

      attr_accessor :nonce

      def initialize(nonce = SecureRandom.random_number(0xffffffff))
        @nonce = nonce
      end

      def self.parse_from_payload(payload)
        new(payload.unpack('Q').first)
      end

      def to_payload
        [nonce].pack('Q')
      end

      def to_response
        Pong.new(nonce)
      end

    end
  end
end

Version data entries

24 entries across 24 versions & 1 rubygems

Version Path
bitcoinrb-0.5.0 lib/bitcoin/message/ping.rb
bitcoinrb-0.4.0 lib/bitcoin/message/ping.rb
bitcoinrb-0.3.2 lib/bitcoin/message/ping.rb
bitcoinrb-0.3.1 lib/bitcoin/message/ping.rb
bitcoinrb-0.3.0 lib/bitcoin/message/ping.rb
bitcoinrb-0.2.9 lib/bitcoin/message/ping.rb
bitcoinrb-0.2.8 lib/bitcoin/message/ping.rb
bitcoinrb-0.2.7 lib/bitcoin/message/ping.rb
bitcoinrb-0.2.6 lib/bitcoin/message/ping.rb
bitcoinrb-0.2.5 lib/bitcoin/message/ping.rb
bitcoinrb-0.2.4 lib/bitcoin/message/ping.rb
bitcoinrb-0.2.2 lib/bitcoin/message/ping.rb
bitcoinrb-0.2.1 lib/bitcoin/message/ping.rb
bitcoinrb-0.2.0 lib/bitcoin/message/ping.rb
bitcoinrb-0.1.9 lib/bitcoin/message/ping.rb
bitcoinrb-0.1.8 lib/bitcoin/message/ping.rb
bitcoinrb-0.1.7 lib/bitcoin/message/ping.rb
bitcoinrb-0.1.6 lib/bitcoin/message/ping.rb
bitcoinrb-0.1.5 lib/bitcoin/message/ping.rb
bitcoinrb-0.1.4 lib/bitcoin/message/ping.rb