'use strict'; var Message = require('../message'); var inherits = require('util').inherits; var bitcore = require('bitcore'); var utils = require('../utils'); var BufferReader = bitcore.encoding.BufferReader; /** * A message to confirm that a connection is still valid. * @param {Number} arg - A nonce for the Ping message * @param {Object=} options * @param {Number} options.magicNumber * @extends Message * @constructor */ function PingMessage(arg, options) { Message.call(this, arg, options); this.command = 'ping'; this.magicNumber = options.magicNumber; this.nonce = arg || utils.getNonce(); } inherits(PingMessage, Message); PingMessage.prototype.setPayload = function(payload) { var parser = new BufferReader(payload); this.nonce = parser.read(8); utils.checkFinished(parser); }; PingMessage.prototype.getPayload = function() { return this.nonce; }; module.exports = PingMessage;