add account selection, settings, login modal

Change-Id: Ica6d38270c783de070bf1d5bb30603173dbeb0df
diff --git a/routes/jami.js b/routes/jami.js
new file mode 100644
index 0000000..90b9422
--- /dev/null
+++ b/routes/jami.js
@@ -0,0 +1,43 @@
+const express = require('express');
+
+class JamiRestApi {
+    constructor(jami) {
+        this.jami = jami
+    }
+
+    getRouter() {
+        const router = express.Router({mergeParams: true});
+
+        // Accounts
+        router.get(['/accounts'], (req, res, next) => {
+            console.log("Request account list")
+            res.json(this.jami.getAccountList().map(account => account.getSummary()))
+        });
+
+        router.get(['/accounts/:accountId'], (req, res, next) => {
+            console.log(`Request account ${req.params.accountId}`)
+            const account = this.jami.getAccount(req.params.accountId);
+            if (account)
+                res.json(account.getObject())
+            else
+                res.sendStatus(404)
+        });
+
+        // Conversations
+        const conversationRouter = express.Router({mergeParams: true});
+        conversationRouter.get('/', (req, res, next) => {
+            console.log(`Request conversations for account ${req.params.accountId}`);
+            res.json([]);
+        })
+
+        conversationRouter.get('/:conversationId', (req, res, next) => {
+            console.log(`Request conversation ${req.params.conversationId} for account ${req.params.accountId}`);
+            res.json({});
+        })
+
+        router.use('/accounts/:accountId/conversations', conversationRouter);
+        return router;
+    }
+}
+
+module.exports = JamiRestApi;