line-bot-api 0.1.5 → 0.1.6

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: b41e29013d616c2fecb76ddb866b0289b6c7a84c
4
- data.tar.gz: 395a71ae0ff3bd8e181c946476a804a8d8988bfb
3
+ metadata.gz: 161279afee5cb107987d9f247df54fa7a09cdee5
4
+ data.tar.gz: 0d00ed7883c0445d4b1fc7b3ca5fe99cb02ec6f9
5
5
  SHA512:
6
- metadata.gz: feeed8fecc5ccbc5edd61439b14c5651c611de434a8b21458e828e69ae92371eb5e41adda9b836d0a914870fa003b43e69fe01a65333a00840777dba995e3c63
7
- data.tar.gz: 888d5eb50735c6f644cc3c2b55fdeff2604d38c39d62f5738ed7f8d480bd6d03fe3daf0a1d3741f48c61dbe147c595ac9f23796c37a35b84d280f145279df982
6
+ metadata.gz: 943f09b22add1864399a8225708316e2cadd6a9c88754d1171537228ef32bf10e030e653c30c39193247349c069133f333668471318badde9e8d17b25711f45d
7
+ data.tar.gz: cae6f3adfff0aeb94cf1dd2337073097a9b9ab6331985294c6eab40938242feb585f92b89b111fe78f1638aea8a9b44af70f42034cdecb612d8461e11cdd5061
data/README.md CHANGED
@@ -5,7 +5,7 @@
5
5
 
6
6
  Line::Bot::API - SDK of the LINE BOT API Trial for Ruby
7
7
 
8
- ```
8
+ ```ruby
9
9
  # app.rb
10
10
  require 'sinatra'
11
11
  require 'line/bot'
@@ -58,7 +58,7 @@ Or install it yourself as:
58
58
 
59
59
  ## Configuration
60
60
 
61
- ```
61
+ ```ruby
62
62
  client = Line::Bot::Client.new do |config|
63
63
  config.channel_id = 'YOUR LINE BOT Channel ID'
64
64
  config.channel_secret = 'YOUR LINE BOT Channel Secret'
@@ -77,7 +77,7 @@ After configuring a client, you can start sending messages as the following refe
77
77
  Sending message APIs requires the following parameter.
78
78
  - `:to_mid` String or Array
79
79
 
80
- ```
80
+ ```ruby
81
81
  client.send_text(
82
82
  to_mid: '12345678',
83
83
  )
@@ -88,7 +88,7 @@ client.send_text(
88
88
 
89
89
  #### send_text
90
90
 
91
- ```
91
+ ```ruby
92
92
  client.send_text(
93
93
  to_mid: to_mid,
94
94
  text: 'Hello',
@@ -97,7 +97,7 @@ client.send_text(
97
97
 
98
98
  #### send_image
99
99
 
100
- ```
100
+ ```ruby
101
101
  client.send_image(
102
102
  to_mid: to_mid,
103
103
  image_url: 'http://example.com/image.jpg', # originalContentUrl
@@ -107,7 +107,7 @@ client.send_image(
107
107
 
108
108
  #### send_video
109
109
 
110
- ```
110
+ ```ruby
111
111
  client.send_video(
112
112
  to_mid: to_mid,
113
113
  video_url: 'http://example.com/video.mp4', # originalContentUrl
@@ -117,7 +117,7 @@ client.send_video(
117
117
 
118
118
  #### send_audio
119
119
 
120
- ```
120
+ ```ruby
121
121
  client.send_audio(
122
122
  to_mid: to_mid,
123
123
  audio_url: 'http://example.com/audio.mp3', # originalContentUrl
@@ -127,7 +127,7 @@ client.send_audio(
127
127
 
128
128
  #### send_location
129
129
 
130
- ```
130
+ ```ruby
131
131
  client.send_location(
132
132
  to_mid: to_mid,
133
133
  title: 'LINE Corporation.',
@@ -143,7 +143,7 @@ See online documentation to find which sticker's you can send.
143
143
 
144
144
  - [https://developers.line.me/bot-api/api-reference#sending_message_sticker](https://developers.line.me/bot-api/api-reference#sending_message_sticker)
145
145
 
146
- ```
146
+ ```ruby
147
147
  client.send_sticker(
148
148
  to_mid: to_mid,
149
149
  stkpkgid: 2, # contentMetadata.STKPKGID
@@ -157,7 +157,7 @@ client.send_sticker(
157
157
  Support on sending multiple message.
158
158
  - [https://developers.line.me/bot-api/api-reference#sending_multiple_messages](https://developers.line.me/bot-api/api-reference#sending_multiple_messages)
159
159
 
160
- ```
160
+ ```ruby
161
161
  client.multiple_message.add_text(
162
162
  text: text,
163
163
  ).add_image(
@@ -189,7 +189,7 @@ Support on sending rich message.
189
189
  See also a online document.
190
190
  - [https://developers.line.me/bot-api/api-reference#sending_rich_content_message](https://developers.line.me/bot-api/api-reference#sending_rich_content_message)
191
191
 
192
- ```
192
+ ```ruby
193
193
  client.rich_message.set_action(
194
194
  MANGA: {
195
195
  text: 'manga',
@@ -210,7 +210,7 @@ client.rich_message.set_action(
210
210
 
211
211
  ### Signature validation
212
212
 
213
- ```
213
+ ```ruby
214
214
  request = Rack::Request.new( .. )
215
215
  signature = request.env['HTTP_X_LINE_CHANNELSIGNATURE']
216
216
  unless client.validate_signature(request.body.read, signature)
@@ -220,7 +220,7 @@ end
220
220
 
221
221
  ### Receiving request
222
222
 
223
- ```
223
+ ```ruby
224
224
  request = Rack::Request.new( .. )
225
225
 
226
226
  receive_request = Line::Bot::Receive::Request.new(request.env)
@@ -252,7 +252,7 @@ Get the preview image file which was sent by user.
252
252
 
253
253
  ### Getting user profile information
254
254
 
255
- ```
255
+ ```ruby
256
256
  user_profile = client.get_user_profile("1234567")
257
257
  user_profile #=> [Line::Bot::Response::User::Profile]
258
258
  user_profile.contacts #=> [Array<Line::Bot::Response::User::Contact>]
data/lib/line/bot.rb CHANGED
@@ -9,4 +9,6 @@ require 'line/bot/receive/operation'
9
9
  require 'line/bot/receive/request'
10
10
  require 'line/bot/response/user/profile'
11
11
  require 'line/bot/request'
12
+ require 'line/bot/httpclient'
13
+ require 'line/bot/utils'
12
14
  require 'line/bot/api/version'
data/lib/line/bot/api.rb CHANGED
@@ -1,7 +1,7 @@
1
1
  module Line
2
2
  module Bot
3
3
  module API
4
- DEFAULT_ENDPOINT = "https://trialbot-api.line.me"
4
+ DEFAULT_ENDPOINT = "https://trialbot-api.line.me/v1"
5
5
  DEFAULT_SENDING_MESSAGE_CHANNEL_ID = 1383378250
6
6
  end
7
7
  end
@@ -1,7 +1,7 @@
1
1
  module Line
2
2
  module Bot
3
3
  module API
4
- VERSION = "0.1.5"
4
+ VERSION = "0.1.6"
5
5
  end
6
6
  end
7
7
  end
@@ -77,8 +77,7 @@ module Line
77
77
  end
78
78
 
79
79
  def send(attrs = {})
80
- to_mid = attrs.instance_of?(Hash) ? attrs[:to_mid] : attrs
81
- @client.send_message(to_mid, self)
80
+ @client.send_message(attrs[:to_mid], self)
82
81
  end
83
82
 
84
83
  def event_type
@@ -17,7 +17,6 @@ module Line
17
17
  attrs.each { |key, value|
18
18
  raise ArgumentError, 'Invalid arguments, :text, :link_url keys.' unless validate_action_attributes(value)
19
19
 
20
- @actions[key.to_s] ||= {}
21
20
  @actions[key.to_s] = {
22
21
  type: 'web',
23
22
  text: value[:text].to_s,
@@ -35,23 +34,23 @@ module Line
35
34
 
36
35
  def add_listener(attrs = {})
37
36
  tap {
38
- raise ArgumentError, 'Invalid arguments, :x [Fixnum], :y [Fixnum], :width [Fixnum], :height [Fixnum] keys.' unless validate_listener_attributes(attrs)
37
+ raise ArgumentError, 'Invalid arguments, :x, :y, :width, :height keys.' unless validate_listener_attributes(attrs)
39
38
 
40
39
  listener = {
41
40
  type: 'touch', # Fixed "touch".
42
- params: [attrs[:x], attrs[:y], attrs[:width], attrs[:height]],
43
- action: attrs[:action],
41
+ params: [attrs[:x].to_i, attrs[:y].to_i, attrs[:width].to_i, attrs[:height].to_i],
42
+ action: attrs[:action].to_s,
44
43
  }
45
44
  @listeners << listener
46
45
  }
47
46
  end
48
47
 
49
48
  def validate_listener_attributes(attrs = {})
50
- attrs[:action].instance_of?(String) &&
51
- attrs[:x].instance_of?(Fixnum) &&
52
- attrs[:y].instance_of?(Fixnum) &&
53
- attrs[:width].instance_of?(Fixnum) &&
54
- attrs[:height].instance_of?(Fixnum)
49
+ attrs[:action] &&
50
+ attrs[:x] &&
51
+ attrs[:y] &&
52
+ attrs[:width] &&
53
+ attrs[:height]
55
54
  end
56
55
 
57
56
  # send rich message to line server and to users
@@ -87,12 +86,12 @@ module Line
87
86
  def content
88
87
  {
89
88
  contentType: Line::Bot::Message::ContentType::RICH_MESSAGE,
90
- toType: 1,
89
+ toType: Line::Bot::Message::RecipientType::USER,
91
90
  contentMetadata: {
92
91
  DOWNLOAD_URL: @image_url,
93
92
  SPEC_REV: "1", # Fixed "1".
94
93
  ALT_TEXT: @alt_text,
95
- MARKUP_JSON: markup_json,
94
+ MARKUP_JSON: markup.to_json,
96
95
  },
97
96
  }
98
97
  end
@@ -101,7 +100,7 @@ module Line
101
100
  @image_url && @alt_text
102
101
  end
103
102
 
104
- def markup_json
103
+ def markup
105
104
  {
106
105
  canvas: {
107
106
  height: height,
@@ -131,7 +130,7 @@ module Line
131
130
  listeners: @listeners
132
131
  }
133
132
  }
134
- }.to_json
133
+ }
135
134
  end
136
135
 
137
136
  end
@@ -10,19 +10,23 @@ module Line
10
10
  module Bot
11
11
  class Client
12
12
 
13
+ include Line::Bot::Utils
14
+
13
15
  # @return [String]
14
- attr_accessor :channel_id, :channel_secret, :channel_mid, :endpoint, :to_channel_id
16
+ attr_accessor :channel_id, :channel_secret, :channel_mid, :endpoint, :to_channel_id, :httpclient
15
17
 
16
18
  # Initialize a new Bot Client.
17
19
  #
18
20
  # @param options [Hash]
19
21
  #
20
- # @return [LINE::Bot::Client]
22
+ # @return [Line::Bot::Client]
21
23
  def initialize(options = {})
22
24
  options.each do |key, value|
23
25
  instance_variable_set("@#{key}", value)
24
26
  end
25
27
  yield(self) if block_given?
28
+
29
+ @httpclient ||= Line::Bot::HTTPClient.new
26
30
  end
27
31
 
28
32
  def endpoint
@@ -171,8 +175,9 @@ module Line
171
175
 
172
176
  request = Request.new do |config|
173
177
  config.to_channel_id = to_channel_id
178
+ config.httpclient = httpclient
174
179
  config.endpoint = endpoint
175
- config.endpoint_path = '/v1/events'
180
+ config.endpoint_path = '/events'
176
181
  config.credentials = credentials
177
182
  config.to_mid = to_mid
178
183
  config.message = message
@@ -189,7 +194,7 @@ module Line
189
194
  #
190
195
  # @return [Net::HTTPResponse]
191
196
  def get_message_content(identifier)
192
- endpoint_path = "/v1/bot/message/#{identifier}/content"
197
+ endpoint_path = "/bot/message/#{identifier}/content"
193
198
  get(endpoint_path)
194
199
  end
195
200
 
@@ -201,7 +206,7 @@ module Line
201
206
  #
202
207
  # @return [Net::HTTPResponse]
203
208
  def get_message_content_preview(identifier)
204
- endpoint_path = "/v1/bot/message/#{identifier}/content/preview"
209
+ endpoint_path = "/bot/message/#{identifier}/content/preview"
205
210
  get(endpoint_path)
206
211
  end
207
212
 
@@ -214,13 +219,10 @@ module Line
214
219
  #
215
220
  # @return [Line::Bot::Response::User::Profile]
216
221
  def get_user_profile(mids)
217
- raise ArgumentError, 'Wrong argument type `mids`' unless mids.instance_of?(String) || mids.instance_of?(Array)
218
-
219
- mids = mids.instance_of?(String) ? [mids] : mids
220
-
221
- raise ArgumentError, 'Wrong argument type `mids`' unless mids.size > 0 && mids.reject {|item| item.instance_of?(String) }
222
+ raise ArgumentError, 'Wrong argument type `mids`' unless validate_mids(mids)
222
223
 
223
- endpoint_path = "/v1/profiles?mids=#{mids.join(',')}"
224
+ query = mids.is_a?(Array) ? mids.join(',') : mids
225
+ endpoint_path = "/profiles?mids=#{query}"
224
226
 
225
227
  response = get(endpoint_path)
226
228
 
@@ -237,6 +239,7 @@ module Line
237
239
 
238
240
  request = Request.new do |config|
239
241
  config.to_channel_id = to_channel_id
242
+ config.httpclient = httpclient
240
243
  config.endpoint = endpoint
241
244
  config.endpoint_path = endpoint_path
242
245
  config.credentials = credentials
@@ -0,0 +1,31 @@
1
+ require 'line/bot/api/version'
2
+ require 'json'
3
+ require 'net/http'
4
+ require 'uri'
5
+
6
+ module Line
7
+ module Bot
8
+ class HTTPClient
9
+
10
+ # @return [Net::HTTP]
11
+ def http(uri)
12
+ http = Net::HTTP.new(uri.host, uri.port)
13
+ if uri.scheme == "https"
14
+ http.use_ssl = true
15
+ end
16
+
17
+ http
18
+ end
19
+
20
+ def get(url, header = {})
21
+ uri = URI(url)
22
+ http(uri).get(uri.request_uri, header)
23
+ end
24
+
25
+ def post(url, payload, header = {})
26
+ uri = URI(url)
27
+ http(uri).post(uri.request_uri, payload, header)
28
+ end
29
+ end
30
+ end
31
+ end
@@ -1,4 +1,5 @@
1
1
  require 'line/bot/api/version'
2
+ require 'line/bot/utils'
2
3
  require 'json'
3
4
  require 'net/http'
4
5
  require 'uri'
@@ -6,34 +7,20 @@ require 'uri'
6
7
  module Line
7
8
  module Bot
8
9
  class Request
9
- attr_accessor :endpoint, :endpoint_path, :credentials, :to_mid, :message, :to_channel_id
10
+ attr_accessor :endpoint, :endpoint_path, :credentials, :to_mid, :message, :to_channel_id, :httpclient
11
+
12
+ include Line::Bot::Utils
10
13
 
11
14
  # Initializes a new Request
12
15
  #
13
- # @return [LINE::Bot::Request]
16
+ # @return [Line::Bot::Request]
14
17
  def initialize
15
18
  yield(self) if block_given?
16
19
  end
17
20
 
18
- # @return [Net::HTTP]
19
- def https
20
- uri = URI(endpoint)
21
- https = Net::HTTP.new(uri.host, uri.port)
22
- if uri.scheme == "https"
23
- https.use_ssl = true
24
- end
25
-
26
- https
27
- end
28
-
29
21
  # @return [Array]
30
22
  def to
31
- raise ArgumentError, 'Wrong argument type `to_mid`' unless to_mid.instance_of?(String) || to_mid.instance_of?(Array)
32
- to = to_mid.instance_of?(String) ? [to_mid] : to_mid
33
-
34
- raise ArgumentError, 'Wrong argument type `to_mid`' unless to.size > 0 && to.reject {|item| item.instance_of?(String) }
35
-
36
- to
23
+ to_mid.is_a?(String) ? [to_mid] : to_mid
37
24
  end
38
25
 
39
26
  # @return [Line::Bot::Message::Base#content]
@@ -70,8 +57,8 @@ module Line
70
57
  #
71
58
  # @return [Net::HTTPResponse]
72
59
  def get
73
- validate_for_getting_message
74
- https.get(endpoint_path, header)
60
+ assert_for_getting_message
61
+ httpclient.get(endpoint + endpoint_path, header)
75
62
  end
76
63
 
77
64
  # Post content of specified URL.
@@ -80,17 +67,18 @@ module Line
80
67
  #
81
68
  # @return [Net::HTTPResponse]
82
69
  def post
83
- validate_for_posting_message
84
- https.post(endpoint_path, payload, header)
70
+ assert_for_posting_message
71
+ httpclient.post(endpoint + endpoint_path, payload, header)
85
72
  end
86
73
 
87
- def validate_for_getting_message
88
- raise ArgumentError, 'Wrong argument type `endpoint_path`' unless endpoint_path.instance_of?(String)
74
+ def assert_for_getting_message
75
+ raise ArgumentError, 'Wrong argument type `endpoint_path`' unless endpoint_path.is_a?(String)
89
76
  end
90
77
 
91
- def validate_for_posting_message
78
+ def assert_for_posting_message
79
+ raise ArgumentError, 'Wrong argument type `to_mid`' unless validate_mids(to)
92
80
  raise ArgumentError, 'Invalid argument `message`' unless message.valid?
93
- raise ArgumentError, 'Wrong argument type `endpoint_path`' unless endpoint_path.instance_of?(String)
81
+ raise ArgumentError, 'Wrong argument type `endpoint_path`' unless endpoint_path.is_a?(String)
94
82
  end
95
83
 
96
84
  end
@@ -0,0 +1,16 @@
1
+ module Line
2
+ module Bot
3
+ module Utils
4
+
5
+ # @return [Boolean]
6
+ def validate_mids(mids)
7
+ return false unless mids.is_a?(String) || mids.is_a?(Array)
8
+ mids = [mids] if mids.is_a?(String)
9
+
10
+ return false unless mids.size > 0
11
+
12
+ true
13
+ end
14
+ end
15
+ end
16
+ end
data/line-bot-api.gemspec CHANGED
@@ -20,11 +20,13 @@ Gem::Specification.new do |spec|
20
20
 
21
21
  spec.required_ruby_version = '>= 2.0.0'
22
22
 
23
- spec.add_dependency 'rack', '~> 1.6'
23
+ spec.add_dependency 'rack', '>= 1.6'
24
24
 
25
25
  spec.add_development_dependency "bundler", "~> 1.11"
26
26
  spec.add_development_dependency "rake", "~> 10.0"
27
27
  spec.add_development_dependency "webmock", "~> 1.24"
28
+ spec.add_development_dependency "rest-client", "~> 1.8"
29
+ spec.add_development_dependency "httpclient", "~> 2.8"
28
30
  spec.add_development_dependency "addressable", "~> 2.3"
29
31
  spec.add_development_dependency "rspec", "~> 3.0"
30
32
  end
metadata CHANGED
@@ -1,97 +1,125 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: line-bot-api
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.5
4
+ version: 0.1.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - LINE Corporation
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-04-27 00:00:00.000000000 Z
11
+ date: 2016-05-03 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rack
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - ~>
17
+ - - ">="
18
18
  - !ruby/object:Gem::Version
19
19
  version: '1.6'
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
- - - ~>
24
+ - - ">="
25
25
  - !ruby/object:Gem::Version
26
26
  version: '1.6'
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: bundler
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
- - - ~>
31
+ - - "~>"
32
32
  - !ruby/object:Gem::Version
33
33
  version: '1.11'
34
34
  type: :development
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
- - - ~>
38
+ - - "~>"
39
39
  - !ruby/object:Gem::Version
40
40
  version: '1.11'
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: rake
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
- - - ~>
45
+ - - "~>"
46
46
  - !ruby/object:Gem::Version
47
47
  version: '10.0'
48
48
  type: :development
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
- - - ~>
52
+ - - "~>"
53
53
  - !ruby/object:Gem::Version
54
54
  version: '10.0'
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: webmock
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
- - - ~>
59
+ - - "~>"
60
60
  - !ruby/object:Gem::Version
61
61
  version: '1.24'
62
62
  type: :development
63
63
  prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
- - - ~>
66
+ - - "~>"
67
67
  - !ruby/object:Gem::Version
68
68
  version: '1.24'
69
+ - !ruby/object:Gem::Dependency
70
+ name: rest-client
71
+ requirement: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - "~>"
74
+ - !ruby/object:Gem::Version
75
+ version: '1.8'
76
+ type: :development
77
+ prerelease: false
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - "~>"
81
+ - !ruby/object:Gem::Version
82
+ version: '1.8'
83
+ - !ruby/object:Gem::Dependency
84
+ name: httpclient
85
+ requirement: !ruby/object:Gem::Requirement
86
+ requirements:
87
+ - - "~>"
88
+ - !ruby/object:Gem::Version
89
+ version: '2.8'
90
+ type: :development
91
+ prerelease: false
92
+ version_requirements: !ruby/object:Gem::Requirement
93
+ requirements:
94
+ - - "~>"
95
+ - !ruby/object:Gem::Version
96
+ version: '2.8'
69
97
  - !ruby/object:Gem::Dependency
70
98
  name: addressable
71
99
  requirement: !ruby/object:Gem::Requirement
72
100
  requirements:
73
- - - ~>
101
+ - - "~>"
74
102
  - !ruby/object:Gem::Version
75
103
  version: '2.3'
76
104
  type: :development
77
105
  prerelease: false
78
106
  version_requirements: !ruby/object:Gem::Requirement
79
107
  requirements:
80
- - - ~>
108
+ - - "~>"
81
109
  - !ruby/object:Gem::Version
82
110
  version: '2.3'
83
111
  - !ruby/object:Gem::Dependency
84
112
  name: rspec
85
113
  requirement: !ruby/object:Gem::Requirement
86
114
  requirements:
87
- - - ~>
115
+ - - "~>"
88
116
  - !ruby/object:Gem::Version
89
117
  version: '3.0'
90
118
  type: :development
91
119
  prerelease: false
92
120
  version_requirements: !ruby/object:Gem::Requirement
93
121
  requirements:
94
- - - ~>
122
+ - - "~>"
95
123
  - !ruby/object:Gem::Version
96
124
  version: '3.0'
97
125
  description: Line::Bot::API - SDK of the LINE BOT API
@@ -112,6 +140,7 @@ files:
112
140
  - lib/line/bot/builder/rich_message.rb
113
141
  - lib/line/bot/client.rb
114
142
  - lib/line/bot/event_type.rb
143
+ - lib/line/bot/httpclient.rb
115
144
  - lib/line/bot/message.rb
116
145
  - lib/line/bot/message/audio.rb
117
146
  - lib/line/bot/message/base.rb
@@ -134,6 +163,7 @@ files:
134
163
  - lib/line/bot/request.rb
135
164
  - lib/line/bot/response/user/contact.rb
136
165
  - lib/line/bot/response/user/profile.rb
166
+ - lib/line/bot/utils.rb
137
167
  - line-bot-api.gemspec
138
168
  homepage: https://github.com/line/line-bot-sdk-ruby
139
169
  licenses:
@@ -145,17 +175,17 @@ require_paths:
145
175
  - lib
146
176
  required_ruby_version: !ruby/object:Gem::Requirement
147
177
  requirements:
148
- - - '>='
178
+ - - ">="
149
179
  - !ruby/object:Gem::Version
150
180
  version: 2.0.0
151
181
  required_rubygems_version: !ruby/object:Gem::Requirement
152
182
  requirements:
153
- - - '>='
183
+ - - ">="
154
184
  - !ruby/object:Gem::Version
155
185
  version: '0'
156
186
  requirements: []
157
187
  rubyforge_project:
158
- rubygems_version: 2.4.8
188
+ rubygems_version: 2.5.1
159
189
  signing_key:
160
190
  specification_version: 4
161
191
  summary: Line::Bot::API - SDK of the LINE BOT API