require "ipc"
require "http/server"

port = ARGV[0].to_i rescue 8080
addr = ARGV[1]      rescue "127.0.0.1"

# TODO: connect to `dnsmanagerd`.

server = HTTP::Server.new do |context|
	pp! context.request.remote_address

	case context.request.path
	when /^\/token-update\/(?<token>[a-z-]+)/
		token = $~["token"]
		if token.nil?
			context.response.status_code = 404
			context.response.print "invalid token"
		else
			context.response.content_type = "text/html"
			context.response.print "coucou, token: #{token}"
			# TODO: send update to `dnsmanagerd`.
		end
	else
		context.response.status_code = 404
		context.response.print "Not found"
	end
end

address = server.bind_tcp addr, port
puts "Receiving tokens on http://#{address}/token-update/<token>"
server.listen