diff --git a/lib/kiss.rb b/lib/kiss.rb index ae4224f57b5bab63d30f65638412442cdad7a5c9..63443f1c05319591cbd56c791ae181311643d1af 100644 --- a/lib/kiss.rb +++ b/lib/kiss.rb @@ -1,3 +1,5 @@ require 'kiss/app_info' require 'kiss/kiss_serial' -require 'kiss/constants' \ No newline at end of file +require 'kiss/constants' +require 'kiss/kiss_abstract' +require 'kiss/kiss' diff --git a/lib/kiss/kiss.rb b/lib/kiss/kiss.rb new file mode 100644 index 0000000000000000000000000000000000000000..9bc83728d9f2f513d012ec7b77e0bc437780f1a1 --- /dev/null +++ b/lib/kiss/kiss.rb @@ -0,0 +1,9 @@ +require 'abstractify' + +module Kiss + class Kiss + include Abstractify::Abstract + + abstract :write_interface, :read_interface, :connect, :close + end +end diff --git a/lib/kiss/kiss_abstract.rb b/lib/kiss/kiss_abstract.rb index 8cbcb643cfa5fc25517b0f4780dcff0c0de8544c..3e4cd31d5bd238be307966ba34a7cd4ce2aafdf4 100644 --- a/lib/kiss/kiss_abstract.rb +++ b/lib/kiss/kiss_abstract.rb @@ -1,9 +1,10 @@ require 'thread' require 'abstractify' require 'kiss/constants' +require 'kiss/kiss' module Kiss - class KissAbstract + class KissAbstract < Kiss include Abstractify::Abstract abstract :write_interface, :read_interface, :connect, :close @@ -132,7 +133,7 @@ module Kiss enc_frame += encode_callsign(parse_identity_string(hop.to_s)) end - return enc_frame[0...-1] + [enc_frame[-1] | 0x01] + [Kiss::SLOT_TIME] + [0xf0] + frame[:payload].chars.map { |c| c.ord } + return enc_frame[0...-1] + [enc_frame[-1] | 0x01] + [SLOT_TIME] + [0xf0] + frame[:payload].chars.map { |c| c.ord } end private