igni 0.0.6 → 0.0.7

Sign up to get free protection for your applications and to get access to all the features.
Files changed (4) hide show
  1. checksums.yaml +4 -4
  2. data/lib/igni/bot.rb +29 -20
  3. data/lib/igni/version.rb +1 -1
  4. metadata +1 -1
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 843264648dc792ad20a6b324a1da6ede4cc0ad07
4
- data.tar.gz: 3764ceb79f7f0f79133867048dddbefc1f933811
3
+ metadata.gz: 7329ee527ec39d70a3fabdfb288865bdd17e60a5
4
+ data.tar.gz: e3459319fa520cb9ee3b9853485e27ef4fc83fce
5
5
  SHA512:
6
- metadata.gz: 6423b0f08f6134ab628dd9261baac78d282321996ce095b0b61bd751d69404e2f88b43ebb2f3d8c1f5ff7955bbc75daa2914c5d3523f011d5816ecfed1e3d418
7
- data.tar.gz: 2eba1b3822559fb5f2958818f059bd8bdddf8a22283952f9c8d931c8b37c9c8df5e767bdab92562ab99095d9af0a40932b52fe405f4b9c86057e9479f839d3be
6
+ metadata.gz: c4f6a812af237e58c098952e364c6f1bb66e6438a97214d37d99330393e681f97f0445ed9e5aa07b04dbace912585eb10a09dca25e9324b5d47df1d98779c580
7
+ data.tar.gz: bd9e01d53448d1eabb0e2353ecc31aca70d6f51378d600459347e1f4af3b8dd85409115ff549264d5accb11519ffe08b49191f1fa6af318b90d685e0ef6c9ce8
data/lib/igni/bot.rb CHANGED
@@ -1,16 +1,18 @@
1
- require 'sinatra'
1
+ require 'sinatra/base'
2
2
  require 'json'
3
3
  require 'igni/api'
4
+ require 'igni/version'
4
5
 
5
6
  module Igni
6
- class Bot < Sinatra::Base
7
+ class Bot
7
8
  include Igni::API
8
9
 
9
10
  attr_reader :token
10
11
  attr_reader :hook
11
- attr_reader :API
12
12
 
13
13
  def initialize(hash)
14
+ puts "Igni version " + Igni::VERSION
15
+
14
16
  abort 'No token specified' if hash[:token] == nil
15
17
  abort 'No domain specified' if hash[:domain] == nil
16
18
 
@@ -25,33 +27,40 @@ module Igni
25
27
  abort 'Error while registering webhook!'
26
28
  end
27
29
 
28
- abort 'Wrong token' if @API.getMe['ok'] != true
29
- end
30
+ abort 'Wrong token' if self.getMe['ok'] != true
30
31
 
31
- def handle(&block)
32
- @handler = proc { |message| block.call(message) }
33
- end
32
+ app = Sinatra.new do
33
+ get '/' do
34
+ "Hello from Igni on #{@hook}!"
35
+ end
34
36
 
35
- def handler
36
- @handler
37
- end
37
+ post "/webhook/#{ENV['IGNI_TOKEN']}" do
38
+ raw = request.env["rack.input"].read
39
+
40
+ data = JSON.parse(raw)
41
+ data["raw"] = raw
38
42
 
39
- get '/' do
40
- "Hello from Igni on #{@hook}!"
43
+ Thread.new { @handler.call(data) } if @handler != nil
44
+ end
45
+ end
46
+
47
+ app.run!
41
48
  end
42
49
 
43
- post "/webhook/#{ENV['IGNI_TOKEN']}" do
44
- raw = request.env["rack.input"].read
50
+ def on(&block)
51
+ @handler = proc { |message| block.call(message) }
52
+ end
45
53
 
46
- data = JSON.parse(raw)
47
- data["raw"] = raw
54
+ def greet
55
+ puts "hello"
56
+ end
48
57
 
49
- Thread.new { @handler.call(data) } if @handler != nil
58
+ def handler
59
+ @handler
50
60
  end
51
61
 
52
62
  def register_webhook
53
- @API = Igni::API.new(@token)
54
- @API.setWebhook(@hook)
63
+ self.setWebhook(@hook)
55
64
  end
56
65
  end
57
66
  end
data/lib/igni/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module Igni
2
- VERSION = "0.0.6"
2
+ VERSION = "0.0.7"
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: igni
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.6
4
+ version: 0.0.7
5
5
  platform: ruby
6
6
  authors:
7
7
  - Andrey Viktorov