Module: ModBus::TCP
Instance Attribute Summary collapse
-
#ipaddr ⇒ Object
readonly
Returns the value of attribute ipaddr.
-
#port ⇒ Object
readonly
Returns the value of attribute port.
Instance Method Summary collapse
-
#open_tcp_connection(ipaddr, port, opts = {}) ⇒ Socket
Open TCP socket.
Instance Attribute Details
#ipaddr ⇒ Object (readonly)
Returns the value of attribute ipaddr.
6 7 8 |
# File 'lib/rmodbus/tcp.rb', line 6 def ipaddr @ipaddr end |
#port ⇒ Object (readonly)
Returns the value of attribute port.
6 7 8 |
# File 'lib/rmodbus/tcp.rb', line 6 def port @port end |
Instance Method Details
#open_tcp_connection(ipaddr, port, opts = {}) ⇒ Socket
Open TCP socket
16 17 18 19 20 21 22 23 24 25 26 27 28 29 |
# File 'lib/rmodbus/tcp.rb', line 16 def open_tcp_connection(ipaddr, port, opts = {}) @ipaddr, @port = ipaddr, port timeout = opts[:connect_timeout] ||= 1 io = nil begin io = Socket.tcp(@ipaddr, @port, nil, nil, connect_timeout: timeout) rescue Errno::ECONNREFUSED, Errno::ETIMEDOUT raise ModBusTimeout.new, 'Timed out attempting to create connection' end io end |