your own: •#to_pling_device ... are simply data containers, too Pling::Device.new :identifier => "...", :type => :iphone class DeviceLikeThing # your implementation def to_pling_device ::Pling::Device.new( :identifier => "...", :type => :iphone ) end end