diff --git a/server/src/main/java/ctbrec/recorder/server/ConfigServlet.java b/server/src/main/java/ctbrec/recorder/server/ConfigServlet.java
new file mode 100644
index 00000000..df3facbb
--- /dev/null
+++ b/server/src/main/java/ctbrec/recorder/server/ConfigServlet.java
@@ -0,0 +1,64 @@
+package ctbrec.recorder.server;
+
+import static javax.servlet.http.HttpServletResponse.*;
+
+import java.io.IOException;
+
+import javax.servlet.ServletException;
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+
+import org.json.JSONArray;
+import org.json.JSONObject;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import ctbrec.Config;
+import ctbrec.Settings;
+
+public class ConfigServlet extends AbstractCtbrecServlet {
+
+ private static final Logger LOG = LoggerFactory.getLogger(ConfigServlet.class);
+ private Config config;
+ private Settings settings;
+
+ public enum DataType {
+ STRING,
+ BOOLEAN,
+ INTEGER,
+ DOUBLE
+ }
+
+ public ConfigServlet(Config config) {
+ this.config = config;
+ this.settings = config.getSettings();
+ }
+
+ @Override
+ protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
+ resp.setStatus(SC_OK);
+ resp.setContentType("application/json");
+
+ JSONArray json = new JSONArray();
+ addParameter("httpPort", "HTTP port", DataType.INTEGER, settings.httpPort, json);
+
+ resp.getWriter().print(json.toString(2));
+ LOG.debug("GET {} {}", req.getRequestURI(), req.getRequestURL());
+ }
+
+ private void addParameter(String key, String name, DataType type, Object value, JSONArray json) {
+ JSONObject param = new JSONObject();
+ param.put("key", key);
+ param.put("name", name);
+ param.put("type", type);
+ param.put("value", value);
+ json.put(param);
+ }
+
+ @Override
+ protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
+ resp.setStatus(SC_OK);
+ resp.setContentType("application/json");
+ LOG.debug("POST");
+ }
+}
diff --git a/server/src/main/java/ctbrec/recorder/server/HttpServer.java b/server/src/main/java/ctbrec/recorder/server/HttpServer.java
index 95c38fbf..f97d49b2 100644
--- a/server/src/main/java/ctbrec/recorder/server/HttpServer.java
+++ b/server/src/main/java/ctbrec/recorder/server/HttpServer.java
@@ -207,6 +207,10 @@ public class HttpServer {
ServletHolder holder = new ServletHolder(recorderServlet);
defaultContext.addServlet(holder, "/rec");
+ ConfigServlet configServlet = new ConfigServlet(config);
+ holder = new ServletHolder(configServlet);
+ defaultContext.addServlet(holder, "/config");
+
HlsServlet hlsServlet = new HlsServlet(this.config);
holder = new ServletHolder(hlsServlet);
defaultContext.addServlet(holder, "/hls/*");
diff --git a/server/src/main/resources/html/static/index.html b/server/src/main/resources/html/static/index.html
index f37e7bca..0627acc8 100644
--- a/server/src/main/resources/html/static/index.html
+++ b/server/src/main/resources/html/static/index.html
@@ -197,7 +197,6 @@
-
@@ -209,12 +208,16 @@
-
+
+
+
+
+
-
+