incognito 0.1.0 → 0.1.1

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
  SHA256:
3
- metadata.gz: e2ea7bf04ac46223a0d8cc202f68eaf913b8394eff1b9bfdcd38c65322fa88a4
4
- data.tar.gz: ea68f5552c7d13b1ed2400d3ee2407f59f81aa5a55203a8a2574215413497b9b
3
+ metadata.gz: db7541b418b1f7e1fbba7a9088706262401c230f1c7760ba5a09ff0d4c6df740
4
+ data.tar.gz: f9a4be2962acdf559888849e5623c9467a08af76e0a07daab4a2ce9ffddf89a9
5
5
  SHA512:
6
- metadata.gz: c0aecbe9642b907caffcbb1b874cbd112729d28f376c0f7d707ebd70125ec88d2cd17d6ae15585c2f2f153b31278d8fda790dc7e2217f265916157bb85ddb08d
7
- data.tar.gz: 6e5198e7919b0cba9049ef87b67718e0bed2974bd2798430f594c60944d089c31a3e9c86bf1414b078c256c1b392228ab974cb0b865163847049062fd58b1989
6
+ metadata.gz: f70dbd602484855f39264f7b9c8cb147da41a759ab367af6fd3b2fea9a3cca8d26d9c1b0b2c7ae2911dc449e493905f33ff2f0044e2738d5936b746f777ed859
7
+ data.tar.gz: d3765feda16de44dd8c042ccc09a215c602a2c927a08c96a7754341d926ad03f7a6f403fe7693633bd73425ebdaa72cbe4697ec8030aa65ceb2731dc6d803e3e
@@ -1,8 +1,9 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- incognito (0.1.0)
4
+ incognito (0.1.1)
5
5
  dotenv (~> 2.2)
6
+ sinatra (~> 2.0)
6
7
  thor (~> 0.20)
7
8
  twilio-ruby (~> 5.8)
8
9
 
@@ -16,10 +17,20 @@ GEM
16
17
  mini_portile2 (2.3.0)
17
18
  minitest (5.11.3)
18
19
  multipart-post (2.0.0)
20
+ mustermann (1.0.2)
19
21
  nokogiri (1.8.2)
20
22
  mini_portile2 (~> 2.3.0)
23
+ rack (2.0.4)
24
+ rack-protection (2.0.1)
25
+ rack
21
26
  rake (10.5.0)
27
+ sinatra (2.0.1)
28
+ mustermann (~> 1.0)
29
+ rack (~> 2.0)
30
+ rack-protection (= 2.0.1)
31
+ tilt (~> 2.0)
22
32
  thor (0.20.0)
33
+ tilt (2.0.8)
23
34
  twilio-ruby (5.8.0)
24
35
  faraday (~> 0.9)
25
36
  jwt (>= 1.5, <= 2.5)
@@ -24,6 +24,7 @@ Gem::Specification.new do |spec|
24
24
  spec.add_dependency "dotenv", "~> 2.2"
25
25
  spec.add_dependency "twilio-ruby", "~> 5.8"
26
26
  spec.add_dependency "thor", "~> 0.20"
27
+ spec.add_dependency "sinatra", "~> 2.0"
27
28
  spec.add_development_dependency "bundler", "~> 1.16"
28
29
  spec.add_development_dependency "rake", "~> 10.0"
29
30
  spec.add_development_dependency "minitest", "~> 5.0"
@@ -1,4 +1,5 @@
1
1
  require 'dotenv'
2
+ require 'logger'
2
3
  require 'pathname'
3
4
  require 'twilio-ruby'
4
5
 
@@ -8,4 +9,7 @@ require "incognito/version"
8
9
  Dotenv.load(".env.local", Pathname.new(Dir.home).join(".incognitorc").to_s)
9
10
 
10
11
  module Incognito
12
+ def self.logger
13
+ @logger ||= Logger.new(STDOUT)
14
+ end
11
15
  end
@@ -13,6 +13,15 @@ module Incognito
13
13
  [:price, "#{result.price} #{result.price_unit}"],
14
14
  [:uri, result.uri],
15
15
  ]
16
+ rescue Twilio::REST::TwilioError => error
17
+ say error.message, :red
18
+ end
19
+
20
+ desc 'server', "Start a server"
21
+ def server
22
+ require 'incognito/sms_server'
23
+ $shell = self
24
+ SmsServer.run!
16
25
  end
17
26
 
18
27
  private
@@ -0,0 +1,26 @@
1
+ require 'sinatra'
2
+ require 'sinatra/base'
3
+
4
+ class SmsServer < Sinatra::Base
5
+ configure do
6
+ disable :logging
7
+ set quiet: true, b: 2
8
+ end
9
+
10
+ get '/' do
11
+ content_type 'text/xml'
12
+ Incognito.logger.debug(params.inspect)
13
+
14
+ $shell.say "To: #{params["To"]}", :green
15
+ $shell.say "From: #{params["From"]}", :green
16
+ $shell.say "Message: #{params["Body"]}", :green
17
+ if $shell.yes? "Reply?"
18
+ Twilio::TwiML::MessagingResponse.new do |response|
19
+ response.message(body: $shell.ask("What is your response?"))
20
+ end.to_s
21
+ else
22
+ Twilio::TwiML::MessagingResponse.new do |response|
23
+ end.to_s
24
+ end
25
+ end
26
+ end
@@ -1,3 +1,3 @@
1
1
  module Incognito
2
- VERSION = "0.1.0"
2
+ VERSION = "0.1.1"
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: incognito
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.1.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - mokha
@@ -52,6 +52,20 @@ dependencies:
52
52
  - - "~>"
53
53
  - !ruby/object:Gem::Version
54
54
  version: '0.20'
55
+ - !ruby/object:Gem::Dependency
56
+ name: sinatra
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - "~>"
60
+ - !ruby/object:Gem::Version
61
+ version: '2.0'
62
+ type: :runtime
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - "~>"
67
+ - !ruby/object:Gem::Version
68
+ version: '2.0'
55
69
  - !ruby/object:Gem::Dependency
56
70
  name: bundler
57
71
  requirement: !ruby/object:Gem::Requirement
@@ -118,6 +132,7 @@ files:
118
132
  - lib/incognito/cli/application.rb
119
133
  - lib/incognito/cli/sms_command.rb
120
134
  - lib/incognito/sms.rb
135
+ - lib/incognito/sms_server.rb
121
136
  - lib/incognito/version.rb
122
137
  homepage: https://www.mokhan.ca
123
138
  licenses: