Class: IletiMerkezi::Message

Inherits:
Object
  • Object
show all
Defined in:
lib/ileti_merkezi/message.rb

Overview

Message

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(phones, text) ⇒ Message

Returns a new instance of Message.



8
9
10
11
# File 'lib/ileti_merkezi/message.rb', line 8

def initialize(phones, text)
  @phones = phones.is_a?(Array) ? phones : [phones]
  @text   = text.to_s
end

Instance Attribute Details

#phonesObject (readonly)

Returns the value of attribute phones.



6
7
8
# File 'lib/ileti_merkezi/message.rb', line 6

def phones
  @phones
end

#textObject (readonly)

Returns the value of attribute text.



6
7
8
# File 'lib/ileti_merkezi/message.rb', line 6

def text
  @text
end

Instance Method Details

#contentObject



13
14
15
16
17
18
19
20
21
22
23
# File 'lib/ileti_merkezi/message.rb', line 13

def content
  raise InvalidMessageError, to_s unless valid?
  "  <message>\n    <text>\#{text}</text>\n    <receipents>\n      \#{phones.compact.map { |phone| phone_xmlify(phone) }.join(\"\\n\")}\n    </receipents>\n  </message>\n  XML\nend\n".gsub(/^[ ]+/, '').strip

#summaryObject



25
26
27
28
29
30
31
32
# File 'lib/ileti_merkezi/message.rb', line 25

def summary
  {
    text: text,
    phones: phones,
    receipents_count: phones.count,
    valid: valid?
  }
end

#to_sObject



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

def to_s
  "Text: #{text}, Phones: #{phones}"
end

#valid?Boolean

Returns:

  • (Boolean)


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

def valid?
  phones.any? && !text.empty?
end