Sha256: b3fd0b45452c0cacc9129b5df902b7eb3b30f65547c4055a70eceb0f61a8bfce

Contents?: true

Size: 461 Bytes

Versions: 3

Compression:

Stored size: 461 Bytes

Contents

# frozen_string_literal: true

module Del
  # This represents the source of a chat message.
  class Source
    attr_reader :user, :room

    def initialize(user:, room: nil)
      @user = user
      @room = room
    end

    def from?(robot)
      user.jid == robot.jid.to_s
    end

    def reply(robot, message)
      robot.send_message(room || user.jid, message)
    end

    def to_s
      "#{user.mention_name}#{room ? ":#{room}" : nil}"
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
del-0.1.19 lib/del/source.rb
del-0.1.18 lib/del/source.rb
del-0.1.17 lib/del/source.rb