Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- require 'rubygems'
- require 'sinatra'
- require 'lib/sms'
- require 'thread'
- SECONDS_PER_MESSAGE = 1.0
- queue = Queue.new
- consumer = Thread.new do
- loop do
- t0 = Time.now
- message = queue.pop
- outgoing = SMS.new
- outgoing.send message['from'], message['to'], "#{message['message']} at #{Time.now}"
- t1 = Time.now
- diff = SECONDS_PER_MESSAGE - (t1 - t0)
- sleep(diff) if diff > 0.0
- end
- end
- post '/sms' do
- content_type :json
- puts "From:" + params['from']
- puts "To:" + params['to']
- puts "Message:" + params['message']
- queue << params
- puts "Queue Length:" + queue.length.to_s
- end
Add Comment
Please, Sign In to add comment