trait VersionMessage extends ControlPayload
The version message provides information about the transmitting node to the receiving node at the beginning of a connection. Until both peers have exchanged version messages, no other messages will be accepted. If a version message is accepted, the receiving node should send a verack message—but no node should send a verack message before initializing its half of the connection by first sending a version message. https://bitcoin.org/en/developer-reference#version
- Alphabetic
- By Inheritance
- VersionMessage
- ControlPayload
- NetworkPayload
- NetworkElement
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Abstract Value Members
- abstract def addressReceiveIpAddress: InetAddress
The IPv6 address of the receiving node as perceived by the transmitting node in big endian byte order.
The IPv6 address of the receiving node as perceived by the transmitting node in big endian byte order. IPv4 addresses can be provided as IPv4-mapped IPv6 addresses. Bitcoin Core will attempt to provide accurate information BitcoinJ will, by default, always return ::ffff:127.0.0.1 This is the network address of the node receiving this message
- abstract def addressReceivePort: Int
The port number of the receiving node as perceived by the transmitting node in big endian byte order.
- abstract def addressReceiveServices: ServiceIdentifier
The services supported by the receiving node as perceived by the transmitting node.
The services supported by the receiving node as perceived by the transmitting node. Same format as the ‘services’ field above. Bitcoin Core will attempt to provide accurate information. BitcoinJ will, by default, always send 0.
- abstract def addressTransIpAddress: InetAddress
The IPv6 address of the transmitting node in big endian byte order.
The IPv6 address of the transmitting node in big endian byte order. IPv4 addresses can be provided as IPv4-mapped IPv6 addresses. Set to ::ffff:127.0.0.1 if unknown. This is the network address of the node emitting this message
- abstract def addressTransPort: Int
The port number of the transmitting node in big endian byte order.
- abstract def addressTransServices: ServiceIdentifier
The services supported by the transmitting node.
The services supported by the transmitting node. Should be identical to the ‘services’ field above.
- abstract def nonce: UInt64
A random nonce which can help a node detect a connection to itself.
A random nonce which can help a node detect a connection to itself. If the nonce is 0, the nonce field is ignored. If the nonce is anything else, a node should terminate the connection on receipt of a version message with a nonce it previously sent.
- abstract def relay: Boolean
Transaction relay flag.
Transaction relay flag. If 0x00, no inv messages or tx messages announcing new transactions should be sent to this client until it sends a filterload message or filterclear message. If 0x01, this node wants inv messages and tx messages announcing new transactions.
- abstract def services: ServiceIdentifier
The services supported by the transmitting node encoded as a bitfield.
The services supported by the transmitting node encoded as a bitfield. See the list of service codes below.
- abstract def startHeight: Int32
The height of the transmitting node’s best block chain or, in the case of an SPV client, best block header chain.
- abstract def timestamp: Int64
The current Unix epoch time according to the transmitting node’s clock.
The current Unix epoch time according to the transmitting node’s clock. Because nodes will reject blocks with timestamps more than two hours in the future, this field can help other nodes to determine that their clock is wrong.
- abstract def userAgent: String
User agent as defined by BIP14.
User agent as defined by BIP14. Previously called subVer.
- abstract def userAgentSize: CompactSizeUInt
Number of bytes in following user_agent field.
Number of bytes in following user_agent field. If 0x00, no user agent field is sent.
- abstract def version: ProtocolVersion
The highest protocol version understood by the transmitting node.
The highest protocol version understood by the transmitting node. See the protocol version section.
Concrete Value Members
- final def !=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def ##: Int
- Definition Classes
- AnyRef → Any
- final def ==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- def byteSize: Long
The size of the NetworkElement in bytes.
The size of the NetworkElement in bytes.
- Definition Classes
- NetworkElement
- def bytes: ByteVector
The byte representation of the NetworkElement
The byte representation of the NetworkElement
- Definition Classes
- VersionMessage → NetworkElement
- def bytesLE: ByteVector
The byte representation of the NetworkElement in little endian
The byte representation of the NetworkElement in little endian
- Definition Classes
- NetworkElement
- def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @native()
- def commandName: String
ASCII string which identifies what message type is contained in the payload.
ASCII string which identifies what message type is contained in the payload. Followed by nulls (0x00) to pad out byte count; for example: version\0\0\0\0\0. Command names need to be 12 bytes long This is generally used to build a org.bitcoins.core.p2p.NetworkHeader
- Definition Classes
- VersionMessage → NetworkPayload
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef → Any
- def finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.Throwable])
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- def hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- def hex: String
The hexadecimal representation of the NetworkElement
The hexadecimal representation of the NetworkElement
- Definition Classes
- NetworkElement
- def hexLE: String
The hexadecimal representation of the NetworkElement in little endian
The hexadecimal representation of the NetworkElement in little endian
- Definition Classes
- NetworkElement
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- def toString(): String
- Definition Classes
- VersionMessage → AnyRef → Any
- final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException]) @native()