Commit 128c432

mo <mo.khan@gmail.com>
2018-04-15 20:03:05
add a sinatra server command.
1 parent 5ce6d75
lib/incognito/cli/sms_command.rb
@@ -17,6 +17,12 @@ module Incognito
         say error.message, :red
       end
 
+      desc 'server', "Start a server"
+      def server
+        require 'incognito/sms_server'
+        SmsServer.run!
+      end
+
       private
 
       def sms
lib/incognito/sms_server.rb
@@ -0,0 +1,12 @@
+require 'sinatra'
+require 'sinatra/base'
+
+class SmsServer < Sinatra::Base
+  get '/' do
+    content_type 'text/xml'
+
+    Twilio::TwiML::VoiceResponse.new do |response|
+      response.say("hello?")
+    end.to_s
+  end
+end
Gemfile.lock
@@ -3,6 +3,7 @@ PATH
   specs:
     incognito (0.1.0)
       dotenv (~> 2.2)
+      sinatra (~> 2.0)
       thor (~> 0.20)
       twilio-ruby (~> 5.8)
 
@@ -16,10 +17,20 @@ GEM
     mini_portile2 (2.3.0)
     minitest (5.11.3)
     multipart-post (2.0.0)
+    mustermann (1.0.2)
     nokogiri (1.8.2)
       mini_portile2 (~> 2.3.0)
+    rack (2.0.4)
+    rack-protection (2.0.1)
+      rack
     rake (10.5.0)
+    sinatra (2.0.1)
+      mustermann (~> 1.0)
+      rack (~> 2.0)
+      rack-protection (= 2.0.1)
+      tilt (~> 2.0)
     thor (0.20.0)
+    tilt (2.0.8)
     twilio-ruby (5.8.0)
       faraday (~> 0.9)
       jwt (>= 1.5, <= 2.5)
incognito.gemspec
@@ -24,6 +24,7 @@ Gem::Specification.new do |spec|
   spec.add_dependency "dotenv", "~> 2.2"
   spec.add_dependency "twilio-ruby", "~> 5.8"
   spec.add_dependency "thor", "~> 0.20"
+  spec.add_dependency "sinatra", "~> 2.0"
   spec.add_development_dependency "bundler", "~> 1.16"
   spec.add_development_dependency "rake", "~> 10.0"
   spec.add_development_dependency "minitest", "~> 5.0"