Class: Firering::Message

Inherits:
Struct
  • Object
show all
Extended by:
Instantiator
Defined in:
lib/firering/data/message.rb,
lib/firering/data/message.rb

Constant Summary

MESSAGE_TYPES =
%w[
TextMessage PasteMessage SoundMessage AdvertisementMessage
AllowGuestsMessage DisallowGuestsMessage IdleMessage KickMessage
LeaveMessage SystemMessage TimestampMessage TopicChangeMessage
UnidleMessage UnlockMessage UploadMessage

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods included from Instantiator

instantiate

Instance Attribute Details

#bodyObject Also known as: to_s

Returns the value of attribute body



2
3
4
# File 'lib/firering/data/message.rb', line 2

def body
  @body
end

#connectionObject

Returns the value of attribute connection



2
3
4
# File 'lib/firering/data/message.rb', line 2

def connection
  @connection
end

#created_atObject

Returns the value of attribute created_at



2
3
4
# File 'lib/firering/data/message.rb', line 2

def created_at
  @created_at
end

#descriptionObject

Returns the value of attribute description



2
3
4
# File 'lib/firering/data/message.rb', line 2

def description
  @description
end

#idObject

Returns the value of attribute id



2
3
4
# File 'lib/firering/data/message.rb', line 2

def id
  @id
end

#room_idObject

Returns the value of attribute room_id



2
3
4
# File 'lib/firering/data/message.rb', line 2

def room_id
  @room_id
end

#starredObject

Returns the value of attribute starred



2
3
4
# File 'lib/firering/data/message.rb', line 2

def starred
  @starred
end

#tweetObject

Returns the value of attribute tweet



2
3
4
# File 'lib/firering/data/message.rb', line 2

def tweet
  @tweet
end

#typeObject

Returns the value of attribute type



2
3
4
# File 'lib/firering/data/message.rb', line 2

def type
  @type
end

#urlObject

Returns the value of attribute url



2
3
4
# File 'lib/firering/data/message.rb', line 2

def url
  @url
end

#user_idObject

Returns the value of attribute user_id



2
3
4
# File 'lib/firering/data/message.rb', line 2

def user_id
  @user_id
end

Instance Method Details

#from_user?Boolean



29
30
31
# File 'lib/firering/data/message.rb', line 29

def from_user?
  !user_id.nil? && (!user_id.instance_of?(String) || user_id !~ /^\s*$/)
end

#room(&callback) ⇒ Object



38
39
40
# File 'lib/firering/data/message.rb', line 38

def room(&callback)
  connection.room(room_id, &callback)
end

#star(id, yes_or_no = true, &callback) ⇒ Object

Highlights a message / Removes a message highlight.



34
35
36
# File 'lib/firering/data/message.rb', line 34

def star(id, yes_or_no = true, &callback)
  connection.star_message(id, yes_or_no, &callback)
end

#user(&callback) ⇒ Object



42
43
44
45
46
47
48
# File 'lib/firering/data/message.rb', line 42

def user(&callback)
  if from_user?
    connection.user(user_id, &callback)
  else
    callback.call(nil, connection)
  end
end