From 43f268269d94793e76d942ce9809124fd5769e84 Mon Sep 17 00:00:00 2001
From: 11tuvork28 <zofi@xamh.de>
Date: Sun, 24 Oct 2021 11:49:07 +0200
Subject: [PATCH 01/21] renamed src/jarvis/jarvis to src/jarvis/server

---
 src/jarvis/{jarvis => server}/__init__.py           |   0
 src/jarvis/{jarvis => server}/_version.py           |   0
 src/jarvis/{jarvis => server}/core/__init__.py      |   0
 src/jarvis/{jarvis => server}/core/console.py       |   0
 src/jarvis/{jarvis => server}/core/nlp.py           |   0
 src/jarvis/{jarvis => server}/core/processor.py     |   0
 src/jarvis/{jarvis => server}/engines/__init__.py   |   0
 src/jarvis/{jarvis => server}/engines/stt.py        |   0
 src/jarvis/{jarvis => server}/engines/tts.py        |   0
 src/jarvis/{jarvis => server}/engines/ttt.py        |   0
 src/jarvis/{jarvis => server}/enumerations.py       |   0
 .../{jarvis => server}/files/activation_sound.wav   | Bin
 .../{jarvis => server}/files/analog_watch_alarm.wav | Bin
 src/jarvis/{jarvis => server}/settings.py           |   0
 src/jarvis/{jarvis => server}/skills/__init__.py    |   0
 src/jarvis/{jarvis => server}/skills/analyzer.py    |   0
 .../skills/collection/__init__.py                   |   0
 .../skills/collection/activation.py                 |   0
 .../{jarvis => server}/skills/collection/browser.py |   0
 .../skills/collection/configuration.py              |   0
 .../skills/collection/datetime.py                   |   0
 .../{jarvis => server}/skills/collection/general.py |   0
 .../{jarvis => server}/skills/collection/history.py |   0
 .../{jarvis => server}/skills/collection/info.py    |   0
 .../skills/collection/internet.py                   |   0
 .../skills/collection/libreoffice.py                |   0
 .../{jarvis => server}/skills/collection/linux.py   |   0
 .../skills/collection/location.py                   |   0
 .../{jarvis => server}/skills/collection/math.py    |   0
 .../skills/collection/remember.py                   |   0
 .../skills/collection/reminder.py                   |   0
 .../skills/collection/system_health.py              |   0
 .../{jarvis => server}/skills/collection/text.py    |   0
 .../{jarvis => server}/skills/collection/weather.py |   0
 .../skills/collection/wolframalpha.py               |   0
 src/jarvis/{jarvis => server}/skills/registry.py    |   0
 src/jarvis/{jarvis => server}/skills/skill.py       |   0
 src/jarvis/{jarvis => server}/utils/__init__.py     |   0
 src/jarvis/{jarvis => server}/utils/console.py      |   0
 src/jarvis/{jarvis => server}/utils/input.py        |   0
 src/jarvis/{jarvis => server}/utils/mapping.py      |   0
 src/jarvis/{jarvis => server}/utils/mongoDB.py      |   0
 src/jarvis/{jarvis => server}/utils/startup.py      |   0
 43 files changed, 0 insertions(+), 0 deletions(-)
 rename src/jarvis/{jarvis => server}/__init__.py (100%)
 rename src/jarvis/{jarvis => server}/_version.py (100%)
 rename src/jarvis/{jarvis => server}/core/__init__.py (100%)
 rename src/jarvis/{jarvis => server}/core/console.py (100%)
 rename src/jarvis/{jarvis => server}/core/nlp.py (100%)
 rename src/jarvis/{jarvis => server}/core/processor.py (100%)
 rename src/jarvis/{jarvis => server}/engines/__init__.py (100%)
 rename src/jarvis/{jarvis => server}/engines/stt.py (100%)
 rename src/jarvis/{jarvis => server}/engines/tts.py (100%)
 rename src/jarvis/{jarvis => server}/engines/ttt.py (100%)
 rename src/jarvis/{jarvis => server}/enumerations.py (100%)
 rename src/jarvis/{jarvis => server}/files/activation_sound.wav (100%)
 rename src/jarvis/{jarvis => server}/files/analog_watch_alarm.wav (100%)
 rename src/jarvis/{jarvis => server}/settings.py (100%)
 rename src/jarvis/{jarvis => server}/skills/__init__.py (100%)
 rename src/jarvis/{jarvis => server}/skills/analyzer.py (100%)
 rename src/jarvis/{jarvis => server}/skills/collection/__init__.py (100%)
 rename src/jarvis/{jarvis => server}/skills/collection/activation.py (100%)
 rename src/jarvis/{jarvis => server}/skills/collection/browser.py (100%)
 rename src/jarvis/{jarvis => server}/skills/collection/configuration.py (100%)
 rename src/jarvis/{jarvis => server}/skills/collection/datetime.py (100%)
 rename src/jarvis/{jarvis => server}/skills/collection/general.py (100%)
 rename src/jarvis/{jarvis => server}/skills/collection/history.py (100%)
 rename src/jarvis/{jarvis => server}/skills/collection/info.py (100%)
 rename src/jarvis/{jarvis => server}/skills/collection/internet.py (100%)
 rename src/jarvis/{jarvis => server}/skills/collection/libreoffice.py (100%)
 rename src/jarvis/{jarvis => server}/skills/collection/linux.py (100%)
 rename src/jarvis/{jarvis => server}/skills/collection/location.py (100%)
 rename src/jarvis/{jarvis => server}/skills/collection/math.py (100%)
 rename src/jarvis/{jarvis => server}/skills/collection/remember.py (100%)
 rename src/jarvis/{jarvis => server}/skills/collection/reminder.py (100%)
 rename src/jarvis/{jarvis => server}/skills/collection/system_health.py (100%)
 rename src/jarvis/{jarvis => server}/skills/collection/text.py (100%)
 rename src/jarvis/{jarvis => server}/skills/collection/weather.py (100%)
 rename src/jarvis/{jarvis => server}/skills/collection/wolframalpha.py (100%)
 rename src/jarvis/{jarvis => server}/skills/registry.py (100%)
 rename src/jarvis/{jarvis => server}/skills/skill.py (100%)
 rename src/jarvis/{jarvis => server}/utils/__init__.py (100%)
 rename src/jarvis/{jarvis => server}/utils/console.py (100%)
 rename src/jarvis/{jarvis => server}/utils/input.py (100%)
 rename src/jarvis/{jarvis => server}/utils/mapping.py (100%)
 rename src/jarvis/{jarvis => server}/utils/mongoDB.py (100%)
 rename src/jarvis/{jarvis => server}/utils/startup.py (100%)

diff --git a/src/jarvis/jarvis/__init__.py b/src/jarvis/server/__init__.py
similarity index 100%
rename from src/jarvis/jarvis/__init__.py
rename to src/jarvis/server/__init__.py
diff --git a/src/jarvis/jarvis/_version.py b/src/jarvis/server/_version.py
similarity index 100%
rename from src/jarvis/jarvis/_version.py
rename to src/jarvis/server/_version.py
diff --git a/src/jarvis/jarvis/core/__init__.py b/src/jarvis/server/core/__init__.py
similarity index 100%
rename from src/jarvis/jarvis/core/__init__.py
rename to src/jarvis/server/core/__init__.py
diff --git a/src/jarvis/jarvis/core/console.py b/src/jarvis/server/core/console.py
similarity index 100%
rename from src/jarvis/jarvis/core/console.py
rename to src/jarvis/server/core/console.py
diff --git a/src/jarvis/jarvis/core/nlp.py b/src/jarvis/server/core/nlp.py
similarity index 100%
rename from src/jarvis/jarvis/core/nlp.py
rename to src/jarvis/server/core/nlp.py
diff --git a/src/jarvis/jarvis/core/processor.py b/src/jarvis/server/core/processor.py
similarity index 100%
rename from src/jarvis/jarvis/core/processor.py
rename to src/jarvis/server/core/processor.py
diff --git a/src/jarvis/jarvis/engines/__init__.py b/src/jarvis/server/engines/__init__.py
similarity index 100%
rename from src/jarvis/jarvis/engines/__init__.py
rename to src/jarvis/server/engines/__init__.py
diff --git a/src/jarvis/jarvis/engines/stt.py b/src/jarvis/server/engines/stt.py
similarity index 100%
rename from src/jarvis/jarvis/engines/stt.py
rename to src/jarvis/server/engines/stt.py
diff --git a/src/jarvis/jarvis/engines/tts.py b/src/jarvis/server/engines/tts.py
similarity index 100%
rename from src/jarvis/jarvis/engines/tts.py
rename to src/jarvis/server/engines/tts.py
diff --git a/src/jarvis/jarvis/engines/ttt.py b/src/jarvis/server/engines/ttt.py
similarity index 100%
rename from src/jarvis/jarvis/engines/ttt.py
rename to src/jarvis/server/engines/ttt.py
diff --git a/src/jarvis/jarvis/enumerations.py b/src/jarvis/server/enumerations.py
similarity index 100%
rename from src/jarvis/jarvis/enumerations.py
rename to src/jarvis/server/enumerations.py
diff --git a/src/jarvis/jarvis/files/activation_sound.wav b/src/jarvis/server/files/activation_sound.wav
similarity index 100%
rename from src/jarvis/jarvis/files/activation_sound.wav
rename to src/jarvis/server/files/activation_sound.wav
diff --git a/src/jarvis/jarvis/files/analog_watch_alarm.wav b/src/jarvis/server/files/analog_watch_alarm.wav
similarity index 100%
rename from src/jarvis/jarvis/files/analog_watch_alarm.wav
rename to src/jarvis/server/files/analog_watch_alarm.wav
diff --git a/src/jarvis/jarvis/settings.py b/src/jarvis/server/settings.py
similarity index 100%
rename from src/jarvis/jarvis/settings.py
rename to src/jarvis/server/settings.py
diff --git a/src/jarvis/jarvis/skills/__init__.py b/src/jarvis/server/skills/__init__.py
similarity index 100%
rename from src/jarvis/jarvis/skills/__init__.py
rename to src/jarvis/server/skills/__init__.py
diff --git a/src/jarvis/jarvis/skills/analyzer.py b/src/jarvis/server/skills/analyzer.py
similarity index 100%
rename from src/jarvis/jarvis/skills/analyzer.py
rename to src/jarvis/server/skills/analyzer.py
diff --git a/src/jarvis/jarvis/skills/collection/__init__.py b/src/jarvis/server/skills/collection/__init__.py
similarity index 100%
rename from src/jarvis/jarvis/skills/collection/__init__.py
rename to src/jarvis/server/skills/collection/__init__.py
diff --git a/src/jarvis/jarvis/skills/collection/activation.py b/src/jarvis/server/skills/collection/activation.py
similarity index 100%
rename from src/jarvis/jarvis/skills/collection/activation.py
rename to src/jarvis/server/skills/collection/activation.py
diff --git a/src/jarvis/jarvis/skills/collection/browser.py b/src/jarvis/server/skills/collection/browser.py
similarity index 100%
rename from src/jarvis/jarvis/skills/collection/browser.py
rename to src/jarvis/server/skills/collection/browser.py
diff --git a/src/jarvis/jarvis/skills/collection/configuration.py b/src/jarvis/server/skills/collection/configuration.py
similarity index 100%
rename from src/jarvis/jarvis/skills/collection/configuration.py
rename to src/jarvis/server/skills/collection/configuration.py
diff --git a/src/jarvis/jarvis/skills/collection/datetime.py b/src/jarvis/server/skills/collection/datetime.py
similarity index 100%
rename from src/jarvis/jarvis/skills/collection/datetime.py
rename to src/jarvis/server/skills/collection/datetime.py
diff --git a/src/jarvis/jarvis/skills/collection/general.py b/src/jarvis/server/skills/collection/general.py
similarity index 100%
rename from src/jarvis/jarvis/skills/collection/general.py
rename to src/jarvis/server/skills/collection/general.py
diff --git a/src/jarvis/jarvis/skills/collection/history.py b/src/jarvis/server/skills/collection/history.py
similarity index 100%
rename from src/jarvis/jarvis/skills/collection/history.py
rename to src/jarvis/server/skills/collection/history.py
diff --git a/src/jarvis/jarvis/skills/collection/info.py b/src/jarvis/server/skills/collection/info.py
similarity index 100%
rename from src/jarvis/jarvis/skills/collection/info.py
rename to src/jarvis/server/skills/collection/info.py
diff --git a/src/jarvis/jarvis/skills/collection/internet.py b/src/jarvis/server/skills/collection/internet.py
similarity index 100%
rename from src/jarvis/jarvis/skills/collection/internet.py
rename to src/jarvis/server/skills/collection/internet.py
diff --git a/src/jarvis/jarvis/skills/collection/libreoffice.py b/src/jarvis/server/skills/collection/libreoffice.py
similarity index 100%
rename from src/jarvis/jarvis/skills/collection/libreoffice.py
rename to src/jarvis/server/skills/collection/libreoffice.py
diff --git a/src/jarvis/jarvis/skills/collection/linux.py b/src/jarvis/server/skills/collection/linux.py
similarity index 100%
rename from src/jarvis/jarvis/skills/collection/linux.py
rename to src/jarvis/server/skills/collection/linux.py
diff --git a/src/jarvis/jarvis/skills/collection/location.py b/src/jarvis/server/skills/collection/location.py
similarity index 100%
rename from src/jarvis/jarvis/skills/collection/location.py
rename to src/jarvis/server/skills/collection/location.py
diff --git a/src/jarvis/jarvis/skills/collection/math.py b/src/jarvis/server/skills/collection/math.py
similarity index 100%
rename from src/jarvis/jarvis/skills/collection/math.py
rename to src/jarvis/server/skills/collection/math.py
diff --git a/src/jarvis/jarvis/skills/collection/remember.py b/src/jarvis/server/skills/collection/remember.py
similarity index 100%
rename from src/jarvis/jarvis/skills/collection/remember.py
rename to src/jarvis/server/skills/collection/remember.py
diff --git a/src/jarvis/jarvis/skills/collection/reminder.py b/src/jarvis/server/skills/collection/reminder.py
similarity index 100%
rename from src/jarvis/jarvis/skills/collection/reminder.py
rename to src/jarvis/server/skills/collection/reminder.py
diff --git a/src/jarvis/jarvis/skills/collection/system_health.py b/src/jarvis/server/skills/collection/system_health.py
similarity index 100%
rename from src/jarvis/jarvis/skills/collection/system_health.py
rename to src/jarvis/server/skills/collection/system_health.py
diff --git a/src/jarvis/jarvis/skills/collection/text.py b/src/jarvis/server/skills/collection/text.py
similarity index 100%
rename from src/jarvis/jarvis/skills/collection/text.py
rename to src/jarvis/server/skills/collection/text.py
diff --git a/src/jarvis/jarvis/skills/collection/weather.py b/src/jarvis/server/skills/collection/weather.py
similarity index 100%
rename from src/jarvis/jarvis/skills/collection/weather.py
rename to src/jarvis/server/skills/collection/weather.py
diff --git a/src/jarvis/jarvis/skills/collection/wolframalpha.py b/src/jarvis/server/skills/collection/wolframalpha.py
similarity index 100%
rename from src/jarvis/jarvis/skills/collection/wolframalpha.py
rename to src/jarvis/server/skills/collection/wolframalpha.py
diff --git a/src/jarvis/jarvis/skills/registry.py b/src/jarvis/server/skills/registry.py
similarity index 100%
rename from src/jarvis/jarvis/skills/registry.py
rename to src/jarvis/server/skills/registry.py
diff --git a/src/jarvis/jarvis/skills/skill.py b/src/jarvis/server/skills/skill.py
similarity index 100%
rename from src/jarvis/jarvis/skills/skill.py
rename to src/jarvis/server/skills/skill.py
diff --git a/src/jarvis/jarvis/utils/__init__.py b/src/jarvis/server/utils/__init__.py
similarity index 100%
rename from src/jarvis/jarvis/utils/__init__.py
rename to src/jarvis/server/utils/__init__.py
diff --git a/src/jarvis/jarvis/utils/console.py b/src/jarvis/server/utils/console.py
similarity index 100%
rename from src/jarvis/jarvis/utils/console.py
rename to src/jarvis/server/utils/console.py
diff --git a/src/jarvis/jarvis/utils/input.py b/src/jarvis/server/utils/input.py
similarity index 100%
rename from src/jarvis/jarvis/utils/input.py
rename to src/jarvis/server/utils/input.py
diff --git a/src/jarvis/jarvis/utils/mapping.py b/src/jarvis/server/utils/mapping.py
similarity index 100%
rename from src/jarvis/jarvis/utils/mapping.py
rename to src/jarvis/server/utils/mapping.py
diff --git a/src/jarvis/jarvis/utils/mongoDB.py b/src/jarvis/server/utils/mongoDB.py
similarity index 100%
rename from src/jarvis/jarvis/utils/mongoDB.py
rename to src/jarvis/server/utils/mongoDB.py
diff --git a/src/jarvis/jarvis/utils/startup.py b/src/jarvis/server/utils/startup.py
similarity index 100%
rename from src/jarvis/jarvis/utils/startup.py
rename to src/jarvis/server/utils/startup.py

From c04e6f02f2769b136d92f3db690507502678bd42 Mon Sep 17 00:00:00 2001
From: 11tuvork28 <zofi@xamh.de>
Date: Sun, 24 Oct 2021 11:49:59 +0200
Subject: [PATCH 02/21] created directory src/jarvis/client

---
 src/jarvis/client/__init__.py | 0
 1 file changed, 0 insertions(+), 0 deletions(-)
 create mode 100644 src/jarvis/client/__init__.py

diff --git a/src/jarvis/client/__init__.py b/src/jarvis/client/__init__.py
new file mode 100644
index 00000000..e69de29b

From e6cd4522f591995b2bb7b73bed707c16f6d78f87 Mon Sep 17 00:00:00 2001
From: 11tuvork28 <zofi@xamh.de>
Date: Sun, 24 Oct 2021 11:53:17 +0200
Subject: [PATCH 03/21] Fixed jarvis import for tests

---
 src/tests/skill_analyzer_tests.py        | 10 +++++-----
 src/tests/test_settings/test_settings.py |  2 +-
 2 files changed, 6 insertions(+), 6 deletions(-)

diff --git a/src/tests/skill_analyzer_tests.py b/src/tests/skill_analyzer_tests.py
index f252590e..a0033d6f 100644
--- a/src/tests/skill_analyzer_tests.py
+++ b/src/tests/skill_analyzer_tests.py
@@ -24,11 +24,11 @@
 from sklearn.feature_extraction.text import TfidfVectorizer
 from sklearn.metrics.pairwise import cosine_similarity
 
-from jarvis import settings
-from jarvis.skills.registry import CONTROL_SKILLS, BASIC_SKILLS, ENABLED_BASIC_SKILLS
-from jarvis.enumerations import MongoCollections
-from jarvis.skills.analyzer import SkillAnalyzer
-from jarvis.utils.mongoDB import db
+from jarvis.server import settings
+from jarvis.server.skills.registry import CONTROL_SKILLS, BASIC_SKILLS, ENABLED_BASIC_SKILLS
+from jarvis.server.enumerations import MongoCollections
+from jarvis.server.skills.analyzer import SkillAnalyzer
+from jarvis.server.utils.mongoDB import db
 
 
 class TestSkillMatching(unittest.TestCase):
diff --git a/src/tests/test_settings/test_settings.py b/src/tests/test_settings/test_settings.py
index 83c07133..95f744a7 100644
--- a/src/tests/test_settings/test_settings.py
+++ b/src/tests/test_settings/test_settings.py
@@ -20,7 +20,7 @@
 # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
 # SOFTWARE.
 
-from jarvis.settings import *
+from jarvis.server.settings import *
 
 ROOT_LOG_CONF = {
     'version': 1,

From 51723f82055e36ea56d9e05472f53e6ba5e3373f Mon Sep 17 00:00:00 2001
From: 11tuvork28 <zofi@xamh.de>
Date: Sun, 24 Oct 2021 12:05:16 +0200
Subject: [PATCH 04/21] Fixed imports due to renaming

---
 src/jarvis/server/__init__.py                 | 10 +++---
 src/jarvis/server/core/console.py             |  8 ++---
 src/jarvis/server/core/processor.py           | 12 +++----
 src/jarvis/server/engines/stt.py              |  4 +--
 src/jarvis/server/engines/tts.py              |  2 +-
 src/jarvis/server/engines/ttt.py              |  4 +--
 src/jarvis/server/settings.py                 |  2 +-
 src/jarvis/server/skills/analyzer.py          |  4 +--
 .../server/skills/collection/activation.py    |  8 ++---
 .../server/skills/collection/browser.py       |  2 +-
 .../server/skills/collection/configuration.py | 12 +++----
 .../server/skills/collection/datetime.py      |  2 +-
 .../server/skills/collection/general.py       |  2 +-
 .../server/skills/collection/history.py       |  4 +--
 src/jarvis/server/skills/collection/info.py   |  6 ++--
 .../server/skills/collection/internet.py      |  4 +--
 .../server/skills/collection/libreoffice.py   |  2 +-
 src/jarvis/server/skills/collection/linux.py  |  2 +-
 .../server/skills/collection/location.py      |  6 ++--
 src/jarvis/server/skills/collection/math.py   |  4 +--
 .../server/skills/collection/remember.py      |  6 ++--
 .../server/skills/collection/reminder.py      |  6 ++--
 .../server/skills/collection/system_health.py |  2 +-
 src/jarvis/server/skills/collection/text.py   |  2 +-
 .../server/skills/collection/weather.py       |  8 ++---
 .../server/skills/collection/wolframalpha.py  |  6 ++--
 src/jarvis/server/skills/registry.py          | 36 +++++++++----------
 src/jarvis/server/skills/skill.py             |  4 +--
 src/jarvis/server/utils/console.py            |  2 +-
 src/jarvis/server/utils/input.py              |  2 +-
 src/jarvis/server/utils/startup.py            |  6 ++--
 src/jarvis/start.py                           |  8 ++---
 32 files changed, 94 insertions(+), 94 deletions(-)

diff --git a/src/jarvis/server/__init__.py b/src/jarvis/server/__init__.py
index b77fb60c..496ca3df 100644
--- a/src/jarvis/server/__init__.py
+++ b/src/jarvis/server/__init__.py
@@ -23,11 +23,11 @@
 from logging import config
 
 from jarvis import settings
-from jarvis.settings import ROOT_LOG_CONF
-from jarvis.utils.mongoDB import db
-from jarvis.utils.startup import configure_MongoDB
-from jarvis.enumerations import InputMode
-import jarvis.engines as engines
+from server.settings import ROOT_LOG_CONF
+from server.utils.mongoDB import db
+from server.utils.startup import configure_MongoDB
+from server.enumerations import InputMode
+import server.engines as engines
 
 # ----------------------------------------------------------------------------------------------------------------------
 # Create a Console & Rotating file logger
diff --git a/src/jarvis/server/core/console.py b/src/jarvis/server/core/console.py
index d138af86..725a4dea 100644
--- a/src/jarvis/server/core/console.py
+++ b/src/jarvis/server/core/console.py
@@ -25,10 +25,10 @@
 import psutil
 import logging
 
-from jarvis import settings
-from jarvis.utils.mongoDB import db
-from jarvis.utils.console import jarvis_logo, start_text, OutputStyler, headerize
-from jarvis.enumerations import MongoCollections, InputMode
+from server import settings
+from server.utils.mongoDB import db
+from server.utils.console import jarvis_logo, start_text, OutputStyler, headerize
+from server.enumerations import MongoCollections, InputMode
 
 
 class ConsoleManager:
diff --git a/src/jarvis/server/core/processor.py b/src/jarvis/server/core/processor.py
index 6d54f13f..5d384b29 100644
--- a/src/jarvis/server/core/processor.py
+++ b/src/jarvis/server/core/processor.py
@@ -25,12 +25,12 @@
 from sklearn.feature_extraction.text import TfidfVectorizer
 from sklearn.metrics.pairwise import cosine_similarity
 
-from jarvis.skills.analyzer import SkillAnalyzer
-from jarvis.skills.registry import skill_objects
-from jarvis.core.nlp import ResponseCreator
-from jarvis.skills.collection.activation import ActivationSkills
-from jarvis.utils.mongoDB import db
-from jarvis.skills.collection.wolframalpha import WolframSkills
+from server.skills.analyzer import SkillAnalyzer
+from server.skills.registry import skill_objects
+from server.core.nlp import ResponseCreator
+from server.skills.collection.activation import ActivationSkills
+from server.utils.mongoDB import db
+from server.skills.collection.wolframalpha import WolframSkills
 
 
 class Processor:
diff --git a/src/jarvis/server/engines/stt.py b/src/jarvis/server/engines/stt.py
index 1bb9de88..df6d5f00 100644
--- a/src/jarvis/server/engines/stt.py
+++ b/src/jarvis/server/engines/stt.py
@@ -23,8 +23,8 @@
 import logging
 import speech_recognition as sr
 
-import jarvis
-from jarvis.core.console import ConsoleManager
+import server
+from server.core.console import ConsoleManager
 
 
 class STTEngine:
diff --git a/src/jarvis/server/engines/tts.py b/src/jarvis/server/engines/tts.py
index fa0b608d..7204c247 100644
--- a/src/jarvis/server/engines/tts.py
+++ b/src/jarvis/server/engines/tts.py
@@ -25,7 +25,7 @@
 import pyttsx3
 import queue
 
-from jarvis.core.console import ConsoleManager
+from server.core.console import ConsoleManager
 
 
 class TTS:
diff --git a/src/jarvis/server/engines/ttt.py b/src/jarvis/server/engines/ttt.py
index 1b19de1b..355fe243 100644
--- a/src/jarvis/server/engines/ttt.py
+++ b/src/jarvis/server/engines/ttt.py
@@ -21,8 +21,8 @@
 # SOFTWARE.
 
 import logging
-from jarvis.core.console import ConsoleManager
-from jarvis.utils.console import user_input
+from server.core.console import ConsoleManager
+from server.utils.console import user_input
 
 
 class TTTEngine:
diff --git a/src/jarvis/server/settings.py b/src/jarvis/server/settings.py
index 98f5a0c6..ef7ca05d 100644
--- a/src/jarvis/server/settings.py
+++ b/src/jarvis/server/settings.py
@@ -20,7 +20,7 @@
 # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
 # SOFTWARE.
 
-from jarvis.enumerations import InputMode
+from server.enumerations import InputMode
 
 ROOT_LOG_CONF = {
     'version': 1,
diff --git a/src/jarvis/server/skills/analyzer.py b/src/jarvis/server/skills/analyzer.py
index 943330b3..e385824e 100644
--- a/src/jarvis/server/skills/analyzer.py
+++ b/src/jarvis/server/skills/analyzer.py
@@ -20,8 +20,8 @@
 # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
 # SOFTWARE.
 import logging
-from jarvis.utils.mapping import math_symbols_mapping
-from jarvis.utils.mongoDB import db
+from server.utils.mapping import math_symbols_mapping
+from server.utils.mongoDB import db
 
 
 class SkillAnalyzer:
diff --git a/src/jarvis/server/skills/collection/activation.py b/src/jarvis/server/skills/collection/activation.py
index 27f413dc..de559880 100644
--- a/src/jarvis/server/skills/collection/activation.py
+++ b/src/jarvis/server/skills/collection/activation.py
@@ -24,10 +24,10 @@
 import time
 from datetime import datetime
 
-from jarvis.skills.skill import AssistantSkill
-from jarvis.utils.startup import play_activation_sound
-from jarvis.utils.mongoDB import db
-from jarvis.enumerations import InputMode, MongoCollections
+from server.utils.startup import play_activation_sound
+from server.skills.skill import AssistantSkill
+from server.utils.mongoDB import db
+from server.enumerations import InputMode, MongoCollections
 
 
 class ActivationSkills(AssistantSkill):
diff --git a/src/jarvis/server/skills/collection/browser.py b/src/jarvis/server/skills/collection/browser.py
index 11d35677..1e7c9f0c 100644
--- a/src/jarvis/server/skills/collection/browser.py
+++ b/src/jarvis/server/skills/collection/browser.py
@@ -30,7 +30,7 @@
 
 from bs4 import BeautifulSoup as bs
 
-from jarvis.skills.skill import AssistantSkill
+from server.skills.skill import AssistantSkill
 
 
 class BrowserSkills(AssistantSkill):
diff --git a/src/jarvis/server/skills/collection/configuration.py b/src/jarvis/server/skills/collection/configuration.py
index 211aa0e7..f1be84fb 100644
--- a/src/jarvis/server/skills/collection/configuration.py
+++ b/src/jarvis/server/skills/collection/configuration.py
@@ -22,12 +22,12 @@
 import importlib
 
 
-from jarvis.skills.skill import AssistantSkill
-from jarvis import settings
-from jarvis.utils.mongoDB import db
-from jarvis.enumerations import InputMode, MongoCollections
-from jarvis.utils import console
-from jarvis.utils import input
+from server.skills.skill import AssistantSkill
+from server import settings
+from server.utils.mongoDB import db
+from server.enumerations import InputMode, MongoCollections
+from server.utils import console
+from server.utils import input
 
 input_mode = db.get_documents(collection='general_settings')[0]['input_mode']
 response_in_speech = db.get_documents(collection='general_settings')[0]['response_in_speech']
diff --git a/src/jarvis/server/skills/collection/datetime.py b/src/jarvis/server/skills/collection/datetime.py
index 67a0ce07..d80e6066 100644
--- a/src/jarvis/server/skills/collection/datetime.py
+++ b/src/jarvis/server/skills/collection/datetime.py
@@ -21,7 +21,7 @@
 # SOFTWARE.
 
 from datetime import datetime, date
-from jarvis.skills.skill import AssistantSkill
+from server.skills.skill import AssistantSkill
 
 hour_mapping = {'0': 'twelve',
                 '1': 'one',
diff --git a/src/jarvis/server/skills/collection/general.py b/src/jarvis/server/skills/collection/general.py
index 9eda62a1..162f0485 100644
--- a/src/jarvis/server/skills/collection/general.py
+++ b/src/jarvis/server/skills/collection/general.py
@@ -22,7 +22,7 @@
 
 import subprocess
 
-from jarvis.skills.skill import AssistantSkill
+from server.skills.skill import AssistantSkill
 import jarvis
 
 
diff --git a/src/jarvis/server/skills/collection/history.py b/src/jarvis/server/skills/collection/history.py
index ef4d1a43..10260c94 100644
--- a/src/jarvis/server/skills/collection/history.py
+++ b/src/jarvis/server/skills/collection/history.py
@@ -22,8 +22,8 @@
 
 import re
 
-from jarvis.skills.skill import AssistantSkill
-from jarvis.utils.mongoDB import db
+from server.skills.skill import AssistantSkill
+from server.utils.mongoDB import db
 
 header = """
 -----------------------------------------------------------------------------------------------
diff --git a/src/jarvis/server/skills/collection/info.py b/src/jarvis/server/skills/collection/info.py
index 8a208ffd..a2bb068b 100644
--- a/src/jarvis/server/skills/collection/info.py
+++ b/src/jarvis/server/skills/collection/info.py
@@ -20,9 +20,9 @@
 # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
 # SOFTWARE.
 
-from jarvis.skills.skill import AssistantSkill
-from jarvis.utils.mongoDB import db
-from jarvis.utils.console import headerize
+from server.skills.skill import AssistantSkill
+from server.utils.mongoDB import db
+from server.utils.console import headerize
 
 basic_skills_format = """
 -----------------------------------------------------------------------
diff --git a/src/jarvis/server/skills/collection/internet.py b/src/jarvis/server/skills/collection/internet.py
index 1902f97d..a29cc70c 100644
--- a/src/jarvis/server/skills/collection/internet.py
+++ b/src/jarvis/server/skills/collection/internet.py
@@ -24,8 +24,8 @@
 import logging
 import speedtest
 
-from jarvis.skills.skill import AssistantSkill
-from jarvis.utils.startup import internet_connectivity_check
+from server.skills.skill import AssistantSkill
+from server.utils.startup import internet_connectivity_check
 
 
 class InternetSkills(AssistantSkill):
diff --git a/src/jarvis/server/skills/collection/libreoffice.py b/src/jarvis/server/skills/collection/libreoffice.py
index 6a76b72b..09450a37 100644
--- a/src/jarvis/server/skills/collection/libreoffice.py
+++ b/src/jarvis/server/skills/collection/libreoffice.py
@@ -22,7 +22,7 @@
 
 import subprocess
 
-from jarvis.skills.skill import AssistantSkill
+from server.skills.skill import AssistantSkill
 
 
 class LibreofficeSkills(AssistantSkill):
diff --git a/src/jarvis/server/skills/collection/linux.py b/src/jarvis/server/skills/collection/linux.py
index 88528f9b..ff54cd73 100644
--- a/src/jarvis/server/skills/collection/linux.py
+++ b/src/jarvis/server/skills/collection/linux.py
@@ -24,7 +24,7 @@
 import logging
 import time
 
-from jarvis.skills.skill import AssistantSkill
+from server.skills.skill import AssistantSkill
 
 
 class LinuxAppSkills(AssistantSkill):
diff --git a/src/jarvis/server/skills/collection/location.py b/src/jarvis/server/skills/collection/location.py
index c8dc34c6..616da410 100644
--- a/src/jarvis/server/skills/collection/location.py
+++ b/src/jarvis/server/skills/collection/location.py
@@ -24,9 +24,9 @@
 import json
 import logging
 
-from jarvis.settings import IPSTACK_API
-from jarvis.skills.collection.internet import InternetSkills
-from jarvis.skills.skill import AssistantSkill
+from server.settings import IPSTACK_API
+from server.skills.collection.internet import InternetSkills
+from server.skills.skill import AssistantSkill
 
 
 class LocationSkill(AssistantSkill):
diff --git a/src/jarvis/server/skills/collection/math.py b/src/jarvis/server/skills/collection/math.py
index e5e5957e..a9566f4a 100644
--- a/src/jarvis/server/skills/collection/math.py
+++ b/src/jarvis/server/skills/collection/math.py
@@ -22,8 +22,8 @@
 
 from word2number import w2n
 
-from jarvis.skills.skill import AssistantSkill
-from jarvis.utils.mapping import math_symbols_mapping
+from server.skills.skill import AssistantSkill
+from server.utils.mapping import math_symbols_mapping
 
 
 class MathSkills(AssistantSkill):
diff --git a/src/jarvis/server/skills/collection/remember.py b/src/jarvis/server/skills/collection/remember.py
index a8e9cca9..008a5a18 100644
--- a/src/jarvis/server/skills/collection/remember.py
+++ b/src/jarvis/server/skills/collection/remember.py
@@ -21,9 +21,9 @@
 # SOFTWARE.
 
 
-from jarvis.skills.skill import AssistantSkill
-from jarvis.utils.mongoDB import db
-from jarvis.utils import input
+from server.skills.skill import AssistantSkill
+from server.utils.mongoDB import db
+from server.utils import input
 
 header = """
 -----------------------------------------------------------------------------------------------
diff --git a/src/jarvis/server/skills/collection/reminder.py b/src/jarvis/server/skills/collection/reminder.py
index a9aad14e..8ed6f79a 100644
--- a/src/jarvis/server/skills/collection/reminder.py
+++ b/src/jarvis/server/skills/collection/reminder.py
@@ -29,9 +29,9 @@
 from playsound import playsound
 from apscheduler.schedulers.background import BackgroundScheduler
 
-from jarvis.utils.input import validate_digits_input
-from jarvis.skills.skill import AssistantSkill
-from jarvis.utils.console import OutputStyler
+from server.utils.input import validate_digits_input
+from server.skills.skill import AssistantSkill
+from server.utils.console import OutputStyler
 
 time_intervals = {
     'seconds': {'variations': ['sec', 'second', 'seconds'],
diff --git a/src/jarvis/server/skills/collection/system_health.py b/src/jarvis/server/skills/collection/system_health.py
index 440a0f46..239fac8b 100644
--- a/src/jarvis/server/skills/collection/system_health.py
+++ b/src/jarvis/server/skills/collection/system_health.py
@@ -23,7 +23,7 @@
 import os
 import psutil
 
-from jarvis.skills.skill import AssistantSkill
+from server.skills.skill import AssistantSkill
 
 
 class SystemHealthSkills(AssistantSkill):
diff --git a/src/jarvis/server/skills/collection/text.py b/src/jarvis/server/skills/collection/text.py
index 9cf0eefb..8c8c0673 100644
--- a/src/jarvis/server/skills/collection/text.py
+++ b/src/jarvis/server/skills/collection/text.py
@@ -23,7 +23,7 @@
 import re
 import time
 
-from jarvis.skills.skill import AssistantSkill
+from server.skills.skill import AssistantSkill
 
 
 class WordSkills(AssistantSkill):
diff --git a/src/jarvis/server/skills/collection/weather.py b/src/jarvis/server/skills/collection/weather.py
index ed89438d..3dea321a 100644
--- a/src/jarvis/server/skills/collection/weather.py
+++ b/src/jarvis/server/skills/collection/weather.py
@@ -24,10 +24,10 @@
 
 from pyowm import OWM
 
-from jarvis.settings import WEATHER_API
-from jarvis.skills.collection.location import LocationSkill
-from jarvis.skills.collection.internet import InternetSkills
-from jarvis.skills.skill import AssistantSkill
+from server.settings import WEATHER_API
+from server.skills.collection.location import LocationSkill
+from server.skills.collection.internet import InternetSkills
+from server.skills.skill import AssistantSkill
 
 
 class WeatherSkills(AssistantSkill):
diff --git a/src/jarvis/server/skills/collection/wolframalpha.py b/src/jarvis/server/skills/collection/wolframalpha.py
index d264d4b1..907b1dd9 100644
--- a/src/jarvis/server/skills/collection/wolframalpha.py
+++ b/src/jarvis/server/skills/collection/wolframalpha.py
@@ -22,9 +22,9 @@
 
 import wolframalpha
 
-from jarvis.settings import WOLFRAMALPHA_API
-from jarvis.skills.collection.internet import InternetSkills
-from jarvis.skills.skill import AssistantSkill
+from server.settings import WOLFRAMALPHA_API
+from server.skills.collection.internet import InternetSkills
+from server.skills.skill import AssistantSkill
 
 
 class WolframSkills(AssistantSkill):
diff --git a/src/jarvis/server/skills/registry.py b/src/jarvis/server/skills/registry.py
index a96a476d..b56d4330 100644
--- a/src/jarvis/server/skills/registry.py
+++ b/src/jarvis/server/skills/registry.py
@@ -20,24 +20,24 @@
 # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
 # SOFTWARE.
 
-from jarvis.skills.collection.activation import ActivationSkills
-from jarvis.skills.collection.info import AssistantInfoSkills
-from jarvis.skills.collection.datetime import DatetimeSkills
-from jarvis.skills.collection.browser import BrowserSkills
-from jarvis.skills.collection.general import UtilSkills
-from jarvis.skills.collection.internet import InternetSkills
-from jarvis.skills.collection.libreoffice import LibreofficeSkills
-from jarvis.skills.collection.linux import LinuxAppSkills
-from jarvis.skills.collection.location import LocationSkill
-from jarvis.skills.collection.reminder import ReminderSkills
-from jarvis.skills.collection.system_health import SystemHealthSkills
-from jarvis.skills.collection.weather import WeatherSkills
-from jarvis.skills.collection.text import WordSkills
-from jarvis.skills.collection.history import HistorySkills
-from jarvis.skills.collection.remember import RememberSkills
-from jarvis.skills.collection.math import MathSkills
-from jarvis.utils.mapping import math_tags
-from jarvis.skills.collection.configuration import ConfigurationSkills
+from server.skills.collection.activation import ActivationSkills
+from server.skills.collection.info import AssistantInfoSkills
+from server.skills.collection.datetime import DatetimeSkills
+from server.skills.collection.browser import BrowserSkills
+from server.skills.collection.general import UtilSkills
+from server.skills.collection.internet import InternetSkills
+from server.skills.collection.libreoffice import LibreofficeSkills
+from server.skills.collection.linux import LinuxAppSkills
+from server.skills.collection.location import LocationSkill
+from server.skills.collection.reminder import ReminderSkills
+from server.skills.collection.system_health import SystemHealthSkills
+from server.skills.collection.weather import WeatherSkills
+from server.skills.collection.text import WordSkills
+from server.skills.collection.history import HistorySkills
+from server.skills.collection.remember import RememberSkills
+from server.skills.collection.math import MathSkills
+from server.utils.mapping import math_tags
+from server.skills.collection.configuration import ConfigurationSkills
 
 # All available assistant skills
 # Keys description:
diff --git a/src/jarvis/server/skills/skill.py b/src/jarvis/server/skills/skill.py
index dd993dad..10906115 100644
--- a/src/jarvis/server/skills/skill.py
+++ b/src/jarvis/server/skills/skill.py
@@ -20,8 +20,8 @@
 # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
 # SOFTWARE.
 
-from jarvis.core.console import ConsoleManager
-import jarvis
+from server.core.console import ConsoleManager
+import server
 
 
 class AssistantSkill:
diff --git a/src/jarvis/server/utils/console.py b/src/jarvis/server/utils/console.py
index fe8f563f..19f6d0c2 100644
--- a/src/jarvis/server/utils/console.py
+++ b/src/jarvis/server/utils/console.py
@@ -22,7 +22,7 @@
 
 import os
 
-from jarvis._version import __version__
+from server._version import __version__
 
 
 class OutputStyler:
diff --git a/src/jarvis/server/utils/input.py b/src/jarvis/server/utils/input.py
index 7b0cefa2..9c203022 100644
--- a/src/jarvis/server/utils/input.py
+++ b/src/jarvis/server/utils/input.py
@@ -21,7 +21,7 @@
 # SOFTWARE.
 
 import jarvis
-from jarvis.core.console import ConsoleManager
+from server.core.console import ConsoleManager
 
 console_manager = ConsoleManager()
 
diff --git a/src/jarvis/server/utils/startup.py b/src/jarvis/server/utils/startup.py
index 61f9f834..a5973730 100644
--- a/src/jarvis/server/utils/startup.py
+++ b/src/jarvis/server/utils/startup.py
@@ -26,9 +26,9 @@
 import logging
 from playsound import playsound
 
-from jarvis.utils import console
-from jarvis.enumerations import MongoCollections
-from jarvis.core.console import ConsoleManager
+from server.utils import console
+from server.enumerations import MongoCollections
+from server.core.console import ConsoleManager
 
 
 def play_activation_sound():
diff --git a/src/jarvis/start.py b/src/jarvis/start.py
index 86d0aead..ea174955 100644
--- a/src/jarvis/start.py
+++ b/src/jarvis/start.py
@@ -20,10 +20,10 @@
 # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
 # SOFTWARE.
 
-from jarvis import settings
-from jarvis.utils.startup import internet_connectivity_check
-from jarvis.core.processor import Processor
-from jarvis.core.console import ConsoleManager
+from server import settings
+from server.utils.startup import internet_connectivity_check
+from server.core.processor import Processor
+from server.core.console import ConsoleManager
 
 
 def main():

From b4f05f9c142ae1c42e7451997ba9f29a6ae79ba0 Mon Sep 17 00:00:00 2001
From: Zofia <zofi@xamh.de>
Date: Thu, 28 Oct 2021 12:37:54 +0200
Subject: [PATCH 05/21] Fixed an Import I missed last time

---
 src/jarvis/server/core/processor.py | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/jarvis/server/core/processor.py b/src/jarvis/server/core/processor.py
index 5d384b29..5fbef3dd 100644
--- a/src/jarvis/server/core/processor.py
+++ b/src/jarvis/server/core/processor.py
@@ -20,7 +20,7 @@
 # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
 # SOFTWARE.
 
-import jarvis
+import server
 
 from sklearn.feature_extraction.text import TfidfVectorizer
 from sklearn.metrics.pairwise import cosine_similarity

From f568be61ae8fe933f870aecf29a144efc709ae11 Mon Sep 17 00:00:00 2001
From: Zofia <zofi@xamh.de>
Date: Thu, 28 Oct 2021 12:47:32 +0200
Subject: [PATCH 06/21] Moved engines to client/engines

---
 src/jarvis/{server => client}/engines/__init__.py | 0
 src/jarvis/{server => client}/engines/stt.py      | 0
 src/jarvis/{server => client}/engines/tts.py      | 0
 src/jarvis/{server => client}/engines/ttt.py      | 0
 4 files changed, 0 insertions(+), 0 deletions(-)
 rename src/jarvis/{server => client}/engines/__init__.py (100%)
 rename src/jarvis/{server => client}/engines/stt.py (100%)
 rename src/jarvis/{server => client}/engines/tts.py (100%)
 rename src/jarvis/{server => client}/engines/ttt.py (100%)

diff --git a/src/jarvis/server/engines/__init__.py b/src/jarvis/client/engines/__init__.py
similarity index 100%
rename from src/jarvis/server/engines/__init__.py
rename to src/jarvis/client/engines/__init__.py
diff --git a/src/jarvis/server/engines/stt.py b/src/jarvis/client/engines/stt.py
similarity index 100%
rename from src/jarvis/server/engines/stt.py
rename to src/jarvis/client/engines/stt.py
diff --git a/src/jarvis/server/engines/tts.py b/src/jarvis/client/engines/tts.py
similarity index 100%
rename from src/jarvis/server/engines/tts.py
rename to src/jarvis/client/engines/tts.py
diff --git a/src/jarvis/server/engines/ttt.py b/src/jarvis/client/engines/ttt.py
similarity index 100%
rename from src/jarvis/server/engines/ttt.py
rename to src/jarvis/client/engines/ttt.py

From a3d822f0e1f418606a6fb6d93f8f3cde5a5d4c2c Mon Sep 17 00:00:00 2001
From: Zofia <zofi@xamh.de>
Date: Thu, 28 Oct 2021 12:58:12 +0200
Subject: [PATCH 07/21] Moved console.py into client

---
 src/jarvis/{server/core => client}/console.py | 0
 1 file changed, 0 insertions(+), 0 deletions(-)
 rename src/jarvis/{server/core => client}/console.py (100%)

diff --git a/src/jarvis/server/core/console.py b/src/jarvis/client/console.py
similarity index 100%
rename from src/jarvis/server/core/console.py
rename to src/jarvis/client/console.py

From 28b0247957229a40942f4cbde0425ae9fa35b191 Mon Sep 17 00:00:00 2001
From: Zofia <zofi@xamh.de>
Date: Thu, 28 Oct 2021 13:05:53 +0200
Subject: [PATCH 08/21] Created bare bone api manager

---
 src/jarvis/client/api.py | 17 +++++++++++++++++
 1 file changed, 17 insertions(+)
 create mode 100644 src/jarvis/client/api.py

diff --git a/src/jarvis/client/api.py b/src/jarvis/client/api.py
new file mode 100644
index 00000000..ba93cfe3
--- /dev/null
+++ b/src/jarvis/client/api.py
@@ -0,0 +1,17 @@
+import enum
+
+
+from enum import Enum
+
+class Status_code(Enum):
+    Success = 200
+    Server_Error = 500
+    Client_Error = 400
+
+
+class api_manager:
+    def __init__(self) -> None:
+        pass
+    
+    def post_user_input(transcript: str) -> Status_code:
+        pass
\ No newline at end of file

From 1b4c85f1e7b8843a7df7f60f85885e15e9c3c529 Mon Sep 17 00:00:00 2001
From: Zofia <zofi@xamh.de>
Date: Thu, 28 Oct 2021 13:06:58 +0200
Subject: [PATCH 09/21] Created Client class with bare bone structure

---
 src/jarvis/client/main.py | 19 +++++++++++++++++++
 1 file changed, 19 insertions(+)
 create mode 100644 src/jarvis/client/main.py

diff --git a/src/jarvis/client/main.py b/src/jarvis/client/main.py
new file mode 100644
index 00000000..44a2d5e8
--- /dev/null
+++ b/src/jarvis/client/main.py
@@ -0,0 +1,19 @@
+import engines
+from api import api_manager
+
+class Client:
+    def __init__(self, console_manager) -> None:
+        self.console_manager = console_manager
+        self.api_manger = api_manager()
+    
+    def run() -> None:
+        """
+         Assistant starting point.
+
+        - STEP 1: Get user input based on the input mode (voice or text)
+        - STEP 2: Send the user input to the api
+        - STEP 3: Get api response and either execute a local skill or give the user a respone
+
+        """
+        transcript = engines.input_engine.recognize_input()
+        self.api_manger.post_user_input(transcript)

From fbc6d2535d4579f53ecb591292ff547b3716a922 Mon Sep 17 00:00:00 2001
From: Zofia <zofi@xamh.de>
Date: Thu, 28 Oct 2021 13:10:57 +0200
Subject: [PATCH 10/21] refactored imports

---
 src/jarvis/client/api.py | 3 ---
 1 file changed, 3 deletions(-)

diff --git a/src/jarvis/client/api.py b/src/jarvis/client/api.py
index ba93cfe3..138cd6df 100644
--- a/src/jarvis/client/api.py
+++ b/src/jarvis/client/api.py
@@ -1,6 +1,3 @@
-import enum
-
-
 from enum import Enum
 
 class Status_code(Enum):

From 75715a292ac180c23906903099c401ebc27d831a Mon Sep 17 00:00:00 2001
From: 11tuvork28 <zofi@xamh.de>
Date: Wed, 24 Nov 2021 19:25:26 +0100
Subject: [PATCH 11/21] added docker support for the server part with mongodb

---
 docker-compose.yml | 24 ++++++++++++++++++++++++
 docker/dockerfile  | 21 +++++++++++++++++++++
 2 files changed, 45 insertions(+)
 create mode 100644 docker-compose.yml
 create mode 100644 docker/dockerfile

diff --git a/docker-compose.yml b/docker-compose.yml
new file mode 100644
index 00000000..93c9b368
--- /dev/null
+++ b/docker-compose.yml
@@ -0,0 +1,24 @@
+version: "3.8"
+
+services:
+  web:
+    build:
+      context: .
+      dockerfile: ./docker/dockerfile
+    command: uvicorn server.core.processor:app --reload --host 0.0.0.0
+    volumes:
+      - .:/app
+    ports:
+      - 8008:8000
+
+  mongodb_container:
+    image: mongo:latest
+    environment:
+      MONGO_INITDB_ROOT_USERNAME: root
+      MONGO_INITDB_ROOT_PASSWORD: rootpassword
+    ports:
+      - 27017:27017
+    volumes:
+      - mongodb_data_container:/data/db
+volumes:
+  mongodb_data_container:
diff --git a/docker/dockerfile b/docker/dockerfile
new file mode 100644
index 00000000..32cc9a99
--- /dev/null
+++ b/docker/dockerfile
@@ -0,0 +1,21 @@
+# Dockerfile
+
+# pull the official docker image
+FROM python:3.9.4
+
+# set work directory
+WORKDIR /app
+
+# set env variables
+ENV PYTHONDONTWRITEBYTECODE 1
+ENV PYTHONUNBUFFERED 1
+
+# install dependencies
+COPY requirements.txt .
+RUN pip install -r requirements.txt
+RUN pip install --no-cache-dir numpy scikit-learn 
+RUN python3 -c "import nltk; nltk.download('punkt'); nltk.download('averaged_perceptron_tagger')"
+# copy project
+COPY . .
+
+WORKDIR /app/src/jarvis

From f08a913d262f2d8f42f4f4fd41c2b7dda6a3281d Mon Sep 17 00:00:00 2001
From: 11tuvork28 <zofi@xamh.de>
Date: Wed, 24 Nov 2021 19:26:10 +0100
Subject: [PATCH 12/21] edited requirements to make it work in docker

---
 requirements.txt | 18 +++---------------
 1 file changed, 3 insertions(+), 15 deletions(-)

diff --git a/requirements.txt b/requirements.txt
index a9327dd4..5d6a465b 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -1,4 +1,3 @@
-appdirs==1.4.3
 APScheduler==3.6.0
 backports.entry-points-selectable==1.1.0
 beautifulsoup4==4.7.1
@@ -6,13 +5,8 @@ bs4==0.0.1
 certifi==2019.3.9
 chardet==3.0.4
 Click==7.0
-colorize==1.1.0
-Cython==0.29.24
-distlib==0.3.3
 filelock==3.3.0
 geojson==2.4.1
-google==2.0.2
-gTTS-token==1.1.3
 idna==2.8
 inflect==2.1.0
 jaraco.itertools==4.4.2
@@ -20,32 +14,26 @@ joblib==0.14.0
 lxml==4.6.3
 mock==3.0.5
 more-itertools==7.0.0
-nltk==3.4.5
-numpy==1.16.4
 patch==1.16
 platformdirs==2.4.0
 playsound==1.2.2
-psutil==5.6.6
 PTable==0.9.2
-PyAudio==0.2.11
-pycairo==1.20.1
-PyGObject==3.42.0
 pymongo==3.10.1
 pyowm==2.10.0
 pyttsx3==2.71
 pytz==2019.1
 requests==2.21.0
 scipy==1.5.4
+nltk
 six==1.12.0
 soupsieve==1.9.1
-SpeechRecognition==3.8.1
-speedtest-cli==2.1.1
 textblob==0.15.3
 tzlocal==1.5.1
 urllib3==1.24.3
-virtualenv==20.8.1
 web-cache==1.1.0
 wikipedia==1.4.0
 wolframalpha==3.0.1
 word2number==1.1
 xmltodict==0.12.0
+fastapi
+uvicorn
\ No newline at end of file

From faa82c666d9e208194085726c969362fe77db0ab Mon Sep 17 00:00:00 2001
From: 11tuvork28 <zofi@xamh.de>
Date: Wed, 24 Nov 2021 19:27:02 +0100
Subject: [PATCH 13/21] changed connection string

---
 src/jarvis/server/utils/mongoDB.py | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

diff --git a/src/jarvis/server/utils/mongoDB.py b/src/jarvis/server/utils/mongoDB.py
index 0f78940a..a4c29762 100644
--- a/src/jarvis/server/utils/mongoDB.py
+++ b/src/jarvis/server/utils/mongoDB.py
@@ -22,6 +22,7 @@
 
 import logging
 from pymongo import MongoClient, DESCENDING
+from bson.objectid import ObjectId
 
 
 class MongoDB:
@@ -29,8 +30,8 @@ class MongoDB:
     This class encapsulates methods related to MongoDB 
     """
 
-    def __init__(self, host='localhost', port=27017):
-        self.client = MongoClient(host, port)
+    def __init__(self, host='mongodb_container', port=27017):
+        self.client = MongoClient(f'mongodb://root:rootpassword@{host}:{port}')
         self.database = self.client['jarvis']
 
     def get_documents(self, collection, key=None, limit=None):
@@ -72,7 +73,10 @@ def is_collection_empty(self, collection):
             return collection_obj.estimated_document_count() == 0
         except Exception as e:
             logging.error(e)
-
+    def findOne(self, collection, obj_id):
+        print(collection)
+        collection_obj = self.database[collection]
+        return collection_obj.find_one({'_id':ObjectId(obj_id)})
 
 # ----------------------------------------------------------------------------------------------------------------------
 # Create MongoDB connection instance

From 8d5406e229c01d8e0222e5077b2723d2749aaa85 Mon Sep 17 00:00:00 2001
From: 11tuvork28 <zofi@xamh.de>
Date: Wed, 24 Nov 2021 19:29:52 +0100
Subject: [PATCH 14/21] removed tts/ttt engine import

---
 src/jarvis/server/__init__.py | 8 +++-----
 1 file changed, 3 insertions(+), 5 deletions(-)

diff --git a/src/jarvis/server/__init__.py b/src/jarvis/server/__init__.py
index 496ca3df..5cd22715 100644
--- a/src/jarvis/server/__init__.py
+++ b/src/jarvis/server/__init__.py
@@ -22,12 +22,10 @@
 
 from logging import config
 
-from jarvis import settings
+import server.settings
 from server.settings import ROOT_LOG_CONF
 from server.utils.mongoDB import db
 from server.utils.startup import configure_MongoDB
-from server.enumerations import InputMode
-import server.engines as engines
 
 # ----------------------------------------------------------------------------------------------------------------------
 # Create a Console & Rotating file logger
@@ -55,5 +53,5 @@
 # ----------------------------------------------------------------------------------------------------------------------
 # Create assistant input and output engine instances
 # ----------------------------------------------------------------------------------------------------------------------
-input_engine = engines.STTEngine() if input_mode == InputMode.VOICE.value else engines.TTTEngine()
-output_engine = engines.TTSEngine() if response_in_speech else engines.TTTEngine()
+#input_engine = engines.STTEngine() if input_mode == InputMode.VOICE.value else engines.TTTEngine()
+#output_engine = engines.TTSEngine() if response_in_speech else engines.TTTEngine()

From 39c2699c6c01f68662ad11f78df095763a362b71 Mon Sep 17 00:00:00 2001
From: 11tuvork28 <zofi@xamh.de>
Date: Wed, 24 Nov 2021 19:30:12 +0100
Subject: [PATCH 15/21] changed log location

---
 src/jarvis/server/settings.py | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/jarvis/server/settings.py b/src/jarvis/server/settings.py
index ef7ca05d..d3f00d94 100644
--- a/src/jarvis/server/settings.py
+++ b/src/jarvis/server/settings.py
@@ -33,7 +33,7 @@
             'class': 'logging.handlers.RotatingFileHandler',
             'level': 'DEBUG',
             'formatter': 'detailed',
-            'filename': '/var/log/jarvis.log',
+            'filename': 'jarvis.log',
             'mode': 'a',
             'maxBytes': 10000000,
             'backupCount': 3,

From 858770f5773c7a4e36b56d9cb5245b2a94f2747d Mon Sep 17 00:00:00 2001
From: 11tuvork28 <zofi@xamh.de>
Date: Wed, 24 Nov 2021 19:31:03 +0100
Subject: [PATCH 16/21] rewrote processor and included baisc endpoints

---
 src/jarvis/server/core/processor.py | 137 +++++++++++++---------------
 1 file changed, 61 insertions(+), 76 deletions(-)

diff --git a/src/jarvis/server/core/processor.py b/src/jarvis/server/core/processor.py
index 5fbef3dd..36bfd1e4 100644
--- a/src/jarvis/server/core/processor.py
+++ b/src/jarvis/server/core/processor.py
@@ -20,103 +20,88 @@
 # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
 # SOFTWARE.
 
-import server
-
+from typing import Optional
+from fastapi import FastAPI
+from server.core.nlp import ResponseCreator
+from server.settings import SKILL_ANALYZER
+from server.skills.registry import BASIC_SKILLS
+from server.skills.analyzer import SkillAnalyzer
 from sklearn.feature_extraction.text import TfidfVectorizer
 from sklearn.metrics.pairwise import cosine_similarity
-
-from server.skills.analyzer import SkillAnalyzer
-from server.skills.registry import skill_objects
-from server.core.nlp import ResponseCreator
-from server.skills.collection.activation import ActivationSkills
+import json
+from bson import ObjectId
 from server.utils.mongoDB import db
-from server.skills.collection.wolframalpha import WolframSkills
-
 
+from server import settings
 class Processor:
-    def __init__(self, console_manager, settings_):
-        self.console_manager = console_manager
-        self.settings = settings_
+    def __init__(self):
         self.response_creator = ResponseCreator()
         self.skill_analyzer = SkillAnalyzer(
             weight_measure=TfidfVectorizer,
             similarity_measure=cosine_similarity,
-            args=self.settings.SKILL_ANALYZER.get('args'),
-            sensitivity=self.settings.SKILL_ANALYZER.get('sensitivity'),
+            args=settings.SKILL_ANALYZER.get('args'),
+            sensitivity=settings.SKILL_ANALYZER.get('sensitivity'),
         )
-
-    def run(self):
-        """
-         Assistant starting point.
-
-        - STEP 1: Get user input based on the input mode (voice or text)
-        - STEP 2: Matches the input with a skill
-        - STEP 3: Create a response
-        - STEP 4: Execute matched skill
-        - STEP 5: Insert user transcript and response in history collection (in MongoDB)
-
-        """
-
-        transcript = jarvis.input_engine.recognize_input()
+        self.skill = {}
+        self.response = {}
+    def all_skills(self):
+        return len(BASIC_SKILLS)
+    def extract_command(self, transcript):
         skill = self.skill_analyzer.extract(transcript)
-
+        print(skill)
         if skill:
-            # ----------------------------------------------------------------------------------------------------------
-            # Successfully extracted skill
-            # ----------------------------------------------------------------------------------------------------------
-
-            # ---------------
-            # Positive answer
-            # ---------------
-            response = self.response_creator.create_positive_response(transcript)
-            jarvis.output_engine.assistant_response(response)
-
-            # ---------------
-            # Skill execution
-            # ---------------
-            skill_to_execute = {'voice_transcript': transcript, 'skill': skill}
-            self._execute_skill(skill_to_execute)
+            return {'voice_transcript': transcript, 'skill': skill, 'response' :self.response_creator.create_positive_response(transcript)}
 
         else:
-            # ----------------------------------------------------------------------------------------------------------
-            # No skill extracted
-            # ----------------------------------------------------------------------------------------------------------
-
-            # ---------------
-            # Negative answer
-            # ---------------
-            response = self.response_creator.create_negative_response(transcript)
-            jarvis.output_engine.assistant_response(response)
-
-            # ---------------
-            # WolframAlpha API Call
-            # ---------------
-            skill_to_execute = {'voice_transcript': transcript,
-                                'skill': {'name': WolframSkills.call_wolframalpha.__name__}
+            return {'voice_transcript': transcript,
+                                'skill': {'name': WolframSkills.call_wolframalpha.__name__},
+                                'response': self.response_creator.create_negative_response(transcript)
                                 }
-
-            response = WolframSkills.call_wolframalpha(transcript)
-
-        # --------------------------------------------------------------------------------------------------------------
-        # Add new record to history
-        # --------------------------------------------------------------------------------------------------------------
-
-        record = {'user_transcript': transcript,
-                  'response': response if response else '--',
-                  'executed_skill': skill_to_execute if skill_to_execute else '--'
-                  }
-
-        db.insert_many_documents('history', [record])
-
     def _execute_skill(self, skill):
         if skill:
             skill_func_name = skill.get('skill').get('func')
-            self.console_manager.console_output(info_log='Executing skill {0}'.format(skill_func_name))
             try:
                 ActivationSkills.enable_assistant()
                 skill_func_name = skill.get('skill').get('func')
                 skill_func = skill_objects[skill_func_name]
                 skill_func(**skill)
             except Exception as e:
-                self.console_manager.console_output(error_log="Failed to execute skill {0} with message: {1}"
-                                                    .format(skill_func_name, e))
+                return "Failed to execute skill {0} with message: {1}".format(skill_func_name, e)
+    def query_wolfram(self, query):
+        WolframSkills.call_wolframalpha(query)
+    def write_to_db(self,transcript):
+        record = {'user_transcript': transcript,
+                  'response': self.response if self.response else '--',
+                  'executed_skill': self.skill  if self.skill else '--'
+                  }
+
+        db.insert_many_documents('history', [record])
+
+class JSONEncoder(json.JSONEncoder):
+    def default(self, o):
+        if isinstance(o, ObjectId):
+            return str(o)
+        return json.JSONEncoder.default(self, o)
+
+app = FastAPI()
+processor = Processor()
+
+@app.get("/")
+def read_root():
+    return {"Hello": "World"}
+
+
+@app.get("/commands")
+def list_skills():
+    return {'skills':processor.all_skills()}
+
+@app.post("/commands")
+def extract_skill(transcript: str):
+    skill = processor.extract_command(transcript)
+    return JSONEncoder().encode(skill)
+@app.get("/execute/{skill_id}")
+def extract_skill(skill_id: str):
+    skill= db.findOne('control_skills', skill_id)
+    print(skill_id)
+    response = processor._execute_skill(skill)
+    return response
\ No newline at end of file

From df57e3c28d25c6ea5afee833e3a6db6a8725c9a9 Mon Sep 17 00:00:00 2001
From: 11tuvork28 <zofi@xamh.de>
Date: Wed, 24 Nov 2021 19:32:25 +0100
Subject: [PATCH 17/21] commented out some skills for now

---
 src/jarvis/server/skills/registry.py | 176 +++++++++++++--------------
 1 file changed, 88 insertions(+), 88 deletions(-)

diff --git a/src/jarvis/server/skills/registry.py b/src/jarvis/server/skills/registry.py
index b56d4330..28dec1a6 100644
--- a/src/jarvis/server/skills/registry.py
+++ b/src/jarvis/server/skills/registry.py
@@ -22,22 +22,22 @@
 
 from server.skills.collection.activation import ActivationSkills
 from server.skills.collection.info import AssistantInfoSkills
-from server.skills.collection.datetime import DatetimeSkills
+#from server.skills.collection.datetime import DatetimeSkills
 from server.skills.collection.browser import BrowserSkills
 from server.skills.collection.general import UtilSkills
-from server.skills.collection.internet import InternetSkills
+#from server.skills.collection.internet import InternetSkills
 from server.skills.collection.libreoffice import LibreofficeSkills
 from server.skills.collection.linux import LinuxAppSkills
-from server.skills.collection.location import LocationSkill
-from server.skills.collection.reminder import ReminderSkills
-from server.skills.collection.system_health import SystemHealthSkills
-from server.skills.collection.weather import WeatherSkills
+# from server.skills.collection.location import LocationSkill
+#from server.skills.collection.reminder import ReminderSkills
+#from server.skills.collection.system_health import SystemHealthSkills
+#from server.skills.collection.weather import WeatherSkills
 from server.skills.collection.text import WordSkills
 from server.skills.collection.history import HistorySkills
-from server.skills.collection.remember import RememberSkills
+#from server.skills.collection.remember import RememberSkills
 from server.skills.collection.math import MathSkills
 from server.utils.mapping import math_tags
-from server.skills.collection.configuration import ConfigurationSkills
+#from server.skills.collection.configuration import ConfigurationSkills
 
 # All available assistant skills
 # Keys description:
@@ -76,19 +76,19 @@
         'description': 'Tells the daily news (find on Google newsfeed)'
     },
 
-    {
-        'enable': True,
-        'func': DatetimeSkills.tell_the_time,
-        'tags': 'time, hour',
-        'description': 'Tells the current time'
-    },
+    # {
+    #     'enable': True,
+    #     'func': DatetimeSkills.tell_the_time,
+    #     'tags': 'time, hour',
+    #     'description': 'Tells the current time'
+    # },
 
-    {
-        'enable': True,
-        'func': DatetimeSkills.tell_the_date,
-        'tags': 'date',
-        'description': 'Tells the current date'
-    },
+    # {
+    #     'enable': True,
+    #     'func': DatetimeSkills.tell_the_date,
+    #     'tags': 'date',
+    #     'description': 'Tells the current date'
+    # },
 
     {
         'enable': True,
@@ -111,12 +111,12 @@
         'description': 'A list with all the available skills'
     },
 
-    {
-        'enable': True,
-        'func': WeatherSkills.tell_the_weather,
-        'tags': 'weather, temperature, weather prediction',
-        'description': 'Tells the weather for a location (default in current location)'
-    },
+    # {
+    #     'enable': True,
+    #     'func': WeatherSkills.tell_the_weather,
+    #     'tags': 'weather, temperature, weather prediction',
+    #     'description': 'Tells the weather for a location (default in current location)'
+    # },
 
     {
         'enable': True,
@@ -146,13 +146,13 @@
         'description': 'Opens impress application'
     },
 
-    {
-        'enable': True,
-        'func': SystemHealthSkills.tell_memory_consumption,
-        'tags': 'ram, ram usage, memory, memory consumption',
-        'description': 'The assistant current memory consumption, '
+    # {
+    #     'enable': True,
+    #     'func': SystemHealthSkills.tell_memory_consumption,
+    #     'tags': 'ram, ram usage, memory, memory consumption',
+    #     'description': 'The assistant current memory consumption, '
 
-    },
+    # },
 
     {
         'enable': True,
@@ -161,19 +161,20 @@
         'description': 'Plays music in Youtube'
     },
 
-    {
-        'enable': True,
-        'func': InternetSkills.run_speedtest,
-        'tags': 'speedtest, internet speed, ping',
-        'description': 'Checks internet speed'
-    },
+    #{
+      #  'enable': True,
+     #   'func': InternetSkills.run_speedtest,
+     #   'tags': 'speedtest, internet speed, ping',
+     #   'description': 'Checks internet speed'
+    #
+    # },
 
-    {
-        'enable': True,
-        'func': InternetSkills.internet_availability,
-        'tags': 'internet conection',
-        'description': 'Checks for internet availability'
-    },
+    #{
+    #    'enable': True,
+    #    'func': InternetSkills.internet_availability,
+    #    'tags': 'internet conection',
+    #    'description': 'Checks for internet availability'
+    #},
 
     {
         'enable': True,
@@ -182,12 +183,12 @@
         'description': 'Spells a word'
     },
 
-    {
-        'enable': True,
-        'func': ReminderSkills.create_reminder,
-        'tags': 'reminder',
-        'description': 'Create a time reminder'
-    },
+    # {
+    #     'enable': True,
+    #     'func': ReminderSkills.create_reminder,
+    #     'tags': 'reminder',
+    #     'description': 'Create a time reminder'
+    # },
 
     {
         'enable': True,
@@ -217,12 +218,12 @@
         'description': 'Ask to open new bash'
     },
 
-    {
-        'enable': True,
-        'func': LocationSkill.get_current_location,
-        'tags': 'my location, current location',
-        'description': 'Ask to tell you your current location'
-    },
+    # {
+    #     'enable': True,
+    #     'func': LocationSkill.get_current_location,
+    #     'tags': 'my location, current location',
+    #     'description': 'Ask to tell you your current location'
+    # },
 
     {
         'enable': True,
@@ -231,26 +232,26 @@
         'description': 'Ask to tell you asked commands'
     },
 
-    {
-        'enable': True,
-        'func': RememberSkills.remember,
-        'tags': 'remember',
-        'description': 'Remember question - answer pairs'
-    },
+    # {
+    #     'enable': True,
+    #     'func': RememberSkills.remember,
+    #     'tags': 'remember',
+    #     'description': 'Remember question - answer pairs'
+    # },
 
-    {
-        'enable': True,
-        'func': RememberSkills.tell_response,
-        'tags': '',
-        'description': 'Util skill, there is no tags to call it'
-    },
+    # {
+    #     'enable': True,
+    #     'func': RememberSkills.tell_response,
+    #     'tags': '',
+    #     'description': 'Util skill, there is no tags to call it'
+    # },
 
-    {
-        'enable': True,
-        'func': RememberSkills.clear_learned_skills,
-        'tags': 'clear learned skills, drop learned skills, remove learned skills',
-        'description': 'Clear the learned skills'
-    },
+    # {
+    #     'enable': True,
+    #     'func': RememberSkills.clear_learned_skills,
+    #     'tags': 'clear learned skills, drop learned skills, remove learned skills',
+    #     'description': 'Clear the learned skills'
+    # },
 
     {
         'enable': True,
@@ -259,12 +260,12 @@
         'description': 'Clears bash console'
     },
 
-    {
-        'enable': True,
-        'func': ReminderSkills.set_alarm,
-        'tags': 'alarm, set alarm',
-        'description': 'Set daily alarm (the assistant service should be running)'
-    },
+    # {
+    #     'enable': True,
+    #     'func': ReminderSkills.set_alarm,
+    #     'tags': 'alarm, set alarm',
+    #     'description': 'Set daily alarm (the assistant service should be running)'
+    # },
 
     {
         'enable': True,
@@ -273,12 +274,12 @@
         'description': 'Do basic math calculations in bash terminal e.g " (5+5) ^ 2"'
     },
 
-    {
-        'enable': True,
-        'func': ConfigurationSkills.configure_assistant,
-        'tags': 'configure, change settings',
-        'description': 'Change the assistant setting values'
-    },
+    # {
+    #     'enable': True,
+    #     'func': ConfigurationSkills.configure_assistant,
+    #     'tags': 'configure, change settings',
+    #     'description': 'Change the assistant setting values'
+    # },
 
     {
         'enable': True,
@@ -307,10 +308,9 @@
         'tags': 'volume max',
         'description': 'Set max the speakers master volume'
     },
-
 ]
 
-# Add name key in both BASIC_SKILLS and CONTROL_SKILLS
+#Add name key in both BASIC_SKILLS and CONTROL_SKILLS
 for skill in BASIC_SKILLS + CONTROL_SKILLS:
     skill['name'] = skill['func'].__name__
 

From 6388511f47bf774badb2d7722596b2238df7a706 Mon Sep 17 00:00:00 2001
From: 11tuvork28 <zofi@xamh.de>
Date: Wed, 24 Nov 2021 19:32:45 +0100
Subject: [PATCH 18/21] removed printing statements

---
 src/jarvis/server/skills/skill.py | 6 ++----
 1 file changed, 2 insertions(+), 4 deletions(-)

diff --git a/src/jarvis/server/skills/skill.py b/src/jarvis/server/skills/skill.py
index 10906115..501443f5 100644
--- a/src/jarvis/server/skills/skill.py
+++ b/src/jarvis/server/skills/skill.py
@@ -20,7 +20,6 @@
 # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
 # SOFTWARE.
 
-from server.core.console import ConsoleManager
 import server
 
 
@@ -30,7 +29,6 @@ class AssistantSkill:
     """
 
     first_activation = True
-    console_manager = ConsoleManager()
 
     @classmethod
     def console(cls, text='', debug_log=None, info_log=None, warn_log=None, error_log=None, refresh_console=True):
@@ -52,11 +50,11 @@ def response(cls, text, refresh_console=True):
             - TTT Engine: The response is only in text
             - TTS Engine: The response is in voice and text
         """
-        jarvis.output_engine.assistant_response(text, refresh_console=refresh_console)
+        print(text, refresh_console)
 
     @classmethod
     def user_input(cls):
-        user_input = jarvis.input_engine.recognize_input(already_activated=True)
+        user_input = "voice"
         return user_input
 
     @classmethod

From e7f76d5a1fd4533028f9c93aa9068a4bf2b5a598 Mon Sep 17 00:00:00 2001
From: 11tuvork28 <zofi@xamh.de>
Date: Wed, 24 Nov 2021 19:33:02 +0100
Subject: [PATCH 19/21] fixed import

---
 src/jarvis/server/skills/collection/general.py | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/jarvis/server/skills/collection/general.py b/src/jarvis/server/skills/collection/general.py
index 162f0485..2bb03230 100644
--- a/src/jarvis/server/skills/collection/general.py
+++ b/src/jarvis/server/skills/collection/general.py
@@ -23,7 +23,7 @@
 import subprocess
 
 from server.skills.skill import AssistantSkill
-import jarvis
+import server
 
 
 def get_master_volume():

From 78836a7658904bb8869f4c956aecc7dcf6e87e66 Mon Sep 17 00:00:00 2001
From: 11tuvork28 <zofi@xamh.de>
Date: Wed, 24 Nov 2021 19:33:32 +0100
Subject: [PATCH 20/21] removed functions that belong in the client

---
 src/jarvis/server/skills/collection/activation.py | 13 -------------
 1 file changed, 13 deletions(-)

diff --git a/src/jarvis/server/skills/collection/activation.py b/src/jarvis/server/skills/collection/activation.py
index de559880..577fb0bd 100644
--- a/src/jarvis/server/skills/collection/activation.py
+++ b/src/jarvis/server/skills/collection/activation.py
@@ -24,24 +24,11 @@
 import time
 from datetime import datetime
 
-from server.utils.startup import play_activation_sound
 from server.skills.skill import AssistantSkill
-from server.utils.mongoDB import db
-from server.enumerations import InputMode, MongoCollections
 
 
 class ActivationSkills(AssistantSkill):
 
-    @classmethod
-    def enable_assistant(cls, **kwargs):
-        """
-        Plays activation sound and creates the assistant response according to the day hour.
-        """
-
-        input_mode = db.get_documents(collection=MongoCollections.GENERAL_SETTINGS.value)[0]['input_mode']
-        if input_mode == InputMode.VOICE.value:
-            play_activation_sound()
-
     @classmethod
     def disable_assistant(cls, **kwargs):
         """

From 92accd8ec6020dc084713dd9343afead8361f028 Mon Sep 17 00:00:00 2001
From: 11tuvork28 <zofi@xamh.de>
Date: Wed, 24 Nov 2021 19:34:53 +0100
Subject: [PATCH 21/21] removed print statements and removed unecessary import

---
 src/jarvis/server/utils/input.py   |  1 -
 src/jarvis/server/utils/startup.py | 45 +-----------------------------
 2 files changed, 1 insertion(+), 45 deletions(-)

diff --git a/src/jarvis/server/utils/input.py b/src/jarvis/server/utils/input.py
index 9c203022..3d723845 100644
--- a/src/jarvis/server/utils/input.py
+++ b/src/jarvis/server/utils/input.py
@@ -20,7 +20,6 @@
 # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
 # SOFTWARE.
 
-import jarvis
 from server.core.console import ConsoleManager
 
 console_manager = ConsoleManager()
diff --git a/src/jarvis/server/utils/startup.py b/src/jarvis/server/utils/startup.py
index a5973730..4507e39a 100644
--- a/src/jarvis/server/utils/startup.py
+++ b/src/jarvis/server/utils/startup.py
@@ -20,40 +20,8 @@
 # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
 # SOFTWARE.
 
-import os
-import time
-import requests
 import logging
-from playsound import playsound
-
-from server.utils import console
 from server.enumerations import MongoCollections
-from server.core.console import ConsoleManager
-
-
-def play_activation_sound():
-    """
-    Plays a sound when the assistant enables.
-    """
-    utils_dir = os.path.dirname(__file__)
-    activation_soundfile = os.path.join(utils_dir, '..', 'files', 'activation_sound.wav')
-    playsound(activation_soundfile)
-
-
-def internet_connectivity_check(url='http://www.google.com/', timeout=2):
-    """
-    Checks for internet connection availability based on google page.
-    """
-    console_manager = ConsoleManager()
-    try:
-        console_manager.console_output(info_log='Checking internet connection..')
-        _ = requests.get(url, timeout=timeout)
-        console_manager.console_output(info_log='Internet connection passed!')
-        return True
-    except requests.ConnectionError:
-        console_manager.console_output(warn_log="No internet connection.")
-        console_manager.console_output(warn_log="Skills with internet connection will not work")
-        return False
 
 
 def configure_MongoDB(db, settings):
@@ -64,11 +32,6 @@ def configure_MongoDB(db, settings):
 
     # Only in first time or if 'general_settings' collection is deleted
     if db.is_collection_empty(collection=MongoCollections.GENERAL_SETTINGS.value):
-        console.print_console_header()
-        print('First time configuration..')
-        console.print_console_header()
-        time.sleep(1)
-
         default_assistant_name = settings.DEFAULT_GENERAL_SETTINGS['assistant_name']
         default_input_mode = settings.DEFAULT_GENERAL_SETTINGS['input_mode']
         default_response_in_speech = settings.DEFAULT_GENERAL_SETTINGS['response_in_speech']
@@ -81,12 +44,6 @@ def configure_MongoDB(db, settings):
 
         try:
             db.update_collection(collection=MongoCollections.GENERAL_SETTINGS.value, documents=[new_settings])
-            console.print_console_header('Assistant Name')
-            print('Assistant name- {0} configured successfully!'.format(default_assistant_name.lower()))
-            print('Input mode - {0} configured successfully!'.format(default_input_mode))
-            print('Speech response output- {0} configured successfully!'.format(default_response_in_speech))
-            time.sleep(2)
-
         except Exception as e:
             logging.error('Failed to configure assistant settings with error message {0}'.format(e))
 
@@ -94,7 +51,7 @@ def configure_MongoDB(db, settings):
     # Load skills
     # ------------------------------------------------------------------------------------------------------------------
 
-    from jarvis.skills.registry import CONTROL_SKILLS, ENABLED_BASIC_SKILLS
+    from server.skills.registry import CONTROL_SKILLS, ENABLED_BASIC_SKILLS
 
     all_skills = {
         MongoCollections.CONTROL_SKILLS.value: CONTROL_SKILLS,