summaryrefslogtreecommitdiff
path: root/Omni/Ava.hs
diff options
context:
space:
mode:
Diffstat (limited to 'Omni/Ava.hs')
-rwxr-xr-xOmni/Ava.hs11
1 files changed, 11 insertions, 0 deletions
diff --git a/Omni/Ava.hs b/Omni/Ava.hs
index 3640fc2..6058425 100755
--- a/Omni/Ava.hs
+++ b/Omni/Ava.hs
@@ -14,22 +14,29 @@
-- : out ava
-- : dep aeson
-- : dep http-conduit
+-- : dep http-types
+-- : dep mustache
-- : dep stm
-- : dep time
-- : dep uuid
+-- : dep wai
+-- : dep warp
module Omni.Ava where
import Alpha
+import qualified Control.Concurrent as Concurrent
import qualified Data.Aeson as Aeson
import qualified Data.Text as Text
import qualified Data.Text.IO as TextIO
import qualified Data.Time as Time
import qualified Omni.Agent.AuditLog as AuditLog
import qualified Omni.Agent.Telegram as Telegram
+import qualified Omni.Ava.Web as Web
import qualified Omni.Cli as Cli
import qualified Omni.Test as Test
import qualified System.Console.Docopt as Docopt
import qualified System.Directory as Dir
+import qualified System.Environment as Environment
import qualified System.IO as IO
main :: IO ()
@@ -70,6 +77,10 @@ move args = do
if args `Cli.has` Cli.command "logs"
then showLogs args
else do
+ webPort <- Environment.lookupEnv "AVA_WEB_PORT" /> maybe Web.defaultPort (fromMaybe Web.defaultPort <. readMaybe)
+ dataRoot <- Environment.getEnv "AVA_DATA_ROOT"
+ let dbPath = dataRoot <> "/ava.db"
+ _ <- Concurrent.forkIO <| Web.startWebServer webPort dbPath
let maybeToken = fmap Text.pack (Cli.getArg args (Cli.longOption "token"))
Telegram.startBot maybeToken