Argument validation fails initializing client
irb
2.2.0 :001 > require 'coap'
=> true
2.2.0 :002 > client = CoAP::Client.new
=> #<CoRE::CoAP::Client:0x00000001583260 @max_payload=256, @host=nil, @port=5683, @options={}, @logger=#<Logger:0x000000015831c0 @progname=nil, @level=2, @default_formatter=#<Logger::Formatter:0x00000001583148 @datetime_format=nil>, @formatter=nil, @logdev=#<Logger::LogDevice:0x000000015830d0 @shift_size=nil, @shift_age=nil, @filename=nil, @dev=#<IO:<STDOUT>>, @mutex=#<Logger::LogDevice::LogDeviceMutex:0x000000015830a8 @mon_owner=nil, @mon_count=0, @mon_mutex=#Mutex:0x00000001582fb8>>>>
2.2.0 :003 > answer = client.get('coap.me', 5683, '/hello')
NoMethodError: undefined method empty?' for 5683:Fixnum from /home/rajesh/.rvm/gems/ruby-2.2.0/gems/coap-0.1.1/lib/core/coap/client.rb:298:invalidate_arguments!'
from /home/rajesh/.rvm/gems/ruby-2.2.0/gems/coap-0.1.1/lib/core/coap/client.rb:167:in client' from /home/rajesh/.rvm/gems/ruby-2.2.0/gems/coap-0.1.1/lib/core/coap/client.rb:43:inget'
from (irb):3
from /home/rajesh/.rvm/rubies/ruby-2.2.0/bin/irb:11:in `
First, please note that the code from the fork (at nning/coap) is online as coap gem since version 0.1.0.
Between 0.0.16 and 0.1.0 the order of arguments for #get and other client methods changed to enable omiting unnecessary arguments.
http://www.rubydoc.info/gems/coap/0.1.1/CoRE/CoAP/Client:get
Your code should therefore read as follows:
answer = client.get('/hello', 'coap.me')