|
@@ -9,9 +9,9 @@ from flask_cors import CORS
|
|
from flask_restful import abort
|
|
from flask_restful import abort
|
|
from werkzeug.utils import secure_filename
|
|
from werkzeug.utils import secure_filename
|
|
|
|
|
|
-from kalliope import SignalLauncher
|
|
|
|
|
|
+from kalliope.core.SignalLauncher import SignalLauncher
|
|
from kalliope._version import version_str
|
|
from kalliope._version import version_str
|
|
-from kalliope.core.ConfigurationManager import SettingLoader, BrainLoader
|
|
|
|
|
|
+from kalliope.core.ConfigurationManager import SettingLoader, BrainLoader, SettingEditor
|
|
from kalliope.core.Lifo.LifoManager import LifoManager
|
|
from kalliope.core.Lifo.LifoManager import LifoManager
|
|
from kalliope.core.Models.MatchedSynapse import MatchedSynapse
|
|
from kalliope.core.Models.MatchedSynapse import MatchedSynapse
|
|
from kalliope.core.OrderListener import OrderListener
|
|
from kalliope.core.OrderListener import OrderListener
|
|
@@ -162,7 +162,7 @@ class FlaskAPI(threading.Thread):
|
|
old_mute_value = self.settings.options["mute"]
|
|
old_mute_value = self.settings.options["mute"]
|
|
mute = self.get_boolean_flag_from_request(request, boolean_flag_to_find="mute")
|
|
mute = self.get_boolean_flag_from_request(request, boolean_flag_to_find="mute")
|
|
if mute is not None:
|
|
if mute is not None:
|
|
- self.settings.options["mute"] = mute
|
|
|
|
|
|
+ SettingEditor.set_mute_status(mute=mute)
|
|
|
|
|
|
# get parameters
|
|
# get parameters
|
|
parameters = self.get_parameters_from_request(request)
|
|
parameters = self.get_parameters_from_request(request)
|
|
@@ -171,7 +171,8 @@ class FlaskAPI(threading.Thread):
|
|
data = {
|
|
data = {
|
|
"synapse name not found": "%s" % synapse_name
|
|
"synapse name not found": "%s" % synapse_name
|
|
}
|
|
}
|
|
- self.settings.options["mute"] = old_mute_value
|
|
|
|
|
|
+ if mute is not None:
|
|
|
|
+ SettingEditor.set_mute_status(mute=old_mute_value)
|
|
return jsonify(error=data), 404
|
|
return jsonify(error=data), 404
|
|
else:
|
|
else:
|
|
# generate a MatchedSynapse from the synapse
|
|
# generate a MatchedSynapse from the synapse
|
|
@@ -181,7 +182,8 @@ class FlaskAPI(threading.Thread):
|
|
lifo_buffer.add_synapse_list_to_lifo([matched_synapse])
|
|
lifo_buffer.add_synapse_list_to_lifo([matched_synapse])
|
|
response = lifo_buffer.execute(is_api_call=True)
|
|
response = lifo_buffer.execute(is_api_call=True)
|
|
data = jsonify(response)
|
|
data = jsonify(response)
|
|
- self.settings.options["mute"] = old_mute_value
|
|
|
|
|
|
+ if mute is not None:
|
|
|
|
+ SettingEditor.set_mute_status(mute=old_mute_value)
|
|
return data, 201
|
|
return data, 201
|
|
|
|
|
|
@requires_auth
|
|
@requires_auth
|
|
@@ -213,7 +215,7 @@ class FlaskAPI(threading.Thread):
|
|
old_mute_value = self.settings.options["mute"]
|
|
old_mute_value = self.settings.options["mute"]
|
|
mute = self.get_boolean_flag_from_request(request, boolean_flag_to_find="mute")
|
|
mute = self.get_boolean_flag_from_request(request, boolean_flag_to_find="mute")
|
|
if mute is not None:
|
|
if mute is not None:
|
|
- self.settings.options["mute"] = mute
|
|
|
|
|
|
+ SettingEditor.set_mute_status(mute=mute)
|
|
|
|
|
|
if order is not None:
|
|
if order is not None:
|
|
# get the order
|
|
# get the order
|
|
@@ -225,13 +227,15 @@ class FlaskAPI(threading.Thread):
|
|
is_api_call=True)
|
|
is_api_call=True)
|
|
|
|
|
|
data = jsonify(api_response)
|
|
data = jsonify(api_response)
|
|
- self.settings.options["mute"] = old_mute_value
|
|
|
|
|
|
+ if mute is not None:
|
|
|
|
+ SettingEditor.set_mute_status(mute=old_mute_value)
|
|
return data, 201
|
|
return data, 201
|
|
else:
|
|
else:
|
|
data = {
|
|
data = {
|
|
"error": "order cannot be null"
|
|
"error": "order cannot be null"
|
|
}
|
|
}
|
|
- self.settings.options["mute"] = old_mute_value
|
|
|
|
|
|
+ if mute is not None:
|
|
|
|
+ SettingEditor.set_mute_status(mute=old_mute_value)
|
|
return jsonify(error=data), 400
|
|
return jsonify(error=data), 400
|
|
|
|
|
|
@requires_auth
|
|
@requires_auth
|
|
@@ -265,7 +269,7 @@ class FlaskAPI(threading.Thread):
|
|
# Store the mute value, then apply depending of the request parameters
|
|
# Store the mute value, then apply depending of the request parameters
|
|
old_mute_value = self.settings.options["mute"]
|
|
old_mute_value = self.settings.options["mute"]
|
|
if request.form.get("mute"):
|
|
if request.form.get("mute"):
|
|
- self.settings.options["mute"] = self.str_to_bool(request.form.get("mute"))
|
|
|
|
|
|
+ SettingEditor.set_mute_status(mute=self.str_to_bool(request.form.get("mute")))
|
|
|
|
|
|
# save the file
|
|
# save the file
|
|
filename = secure_filename(uploaded_file.filename)
|
|
filename = secure_filename(uploaded_file.filename)
|
|
@@ -288,13 +292,15 @@ class FlaskAPI(threading.Thread):
|
|
data = jsonify(self.api_response)
|
|
data = jsonify(self.api_response)
|
|
self.api_response = None
|
|
self.api_response = None
|
|
logger.debug("[FlaskAPI] run_synapse_by_audio: data %s" % data)
|
|
logger.debug("[FlaskAPI] run_synapse_by_audio: data %s" % data)
|
|
- self.settings.options["mute"] = old_mute_value
|
|
|
|
|
|
+ if request.form.get("mute"):
|
|
|
|
+ SettingEditor.set_mute_status(mute=old_mute_value)
|
|
return data, 201
|
|
return data, 201
|
|
else:
|
|
else:
|
|
data = {
|
|
data = {
|
|
"error": "The given order doesn't match any synapses"
|
|
"error": "The given order doesn't match any synapses"
|
|
}
|
|
}
|
|
- self.settings.options["mute"] = old_mute_value
|
|
|
|
|
|
+ if request.form.get("mute"):
|
|
|
|
+ SettingEditor.set_mute_status(mute=old_mute_value)
|
|
return jsonify(error=data), 400
|
|
return jsonify(error=data), 400
|
|
|
|
|
|
@staticmethod
|
|
@staticmethod
|
|
@@ -332,11 +338,10 @@ class FlaskAPI(threading.Thread):
|
|
curl -i --user admin:secret -X GET http://127.0.0.1:5000/deaf
|
|
curl -i --user admin:secret -X GET http://127.0.0.1:5000/deaf
|
|
"""
|
|
"""
|
|
|
|
|
|
- # find the order signal and call the deaf method
|
|
|
|
- signal_order = SignalLauncher.get_order_instance()
|
|
|
|
- if signal_order is not None:
|
|
|
|
|
|
+ # find the order signal and call the deaf settings
|
|
|
|
+ if self.settings.options["deaf"] is not None:
|
|
data = {
|
|
data = {
|
|
- "deaf": signal_order.get_deaf_status()
|
|
|
|
|
|
+ "deaf": self.settings.options["deaf"]
|
|
}
|
|
}
|
|
return jsonify(data), 200
|
|
return jsonify(data), 200
|
|
|
|
|
|
@@ -362,12 +367,11 @@ class FlaskAPI(threading.Thread):
|
|
# get deaf if present
|
|
# get deaf if present
|
|
deaf = self.get_boolean_flag_from_request(request, boolean_flag_to_find="deaf")
|
|
deaf = self.get_boolean_flag_from_request(request, boolean_flag_to_find="deaf")
|
|
|
|
|
|
- # find the order signal and call the deaf method
|
|
|
|
signal_order = SignalLauncher.get_order_instance()
|
|
signal_order = SignalLauncher.get_order_instance()
|
|
- if signal_order is not None and deaf is not None:
|
|
|
|
- signal_order.set_deaf_status(deaf)
|
|
|
|
|
|
+ if signal_order is not None and deaf is not None and self.settings.options["deaf"] is not None:
|
|
|
|
+ SettingEditor.set_deaf_status(signal_order.trigger_instance, deaf)
|
|
data = {
|
|
data = {
|
|
- "deaf": signal_order.get_deaf_status()
|
|
|
|
|
|
+ "deaf": self.settings.options["deaf"]
|
|
}
|
|
}
|
|
return jsonify(data), 200
|
|
return jsonify(data), 200
|
|
|
|
|
|
@@ -385,7 +389,7 @@ class FlaskAPI(threading.Thread):
|
|
curl -i --user admin:secret -X GET http://127.0.0.1:5000/mute
|
|
curl -i --user admin:secret -X GET http://127.0.0.1:5000/mute
|
|
"""
|
|
"""
|
|
|
|
|
|
- # find the order signal and call the deaf method
|
|
|
|
|
|
+ # find the order signal and call the mute settings
|
|
if self.settings.options["mute"] is not None:
|
|
if self.settings.options["mute"] is not None:
|
|
data = {
|
|
data = {
|
|
"mute": self.settings.options["mute"]
|
|
"mute": self.settings.options["mute"]
|
|
@@ -413,8 +417,8 @@ class FlaskAPI(threading.Thread):
|
|
|
|
|
|
# get mute if present
|
|
# get mute if present
|
|
mute = self.get_boolean_flag_from_request(request, boolean_flag_to_find="mute")
|
|
mute = self.get_boolean_flag_from_request(request, boolean_flag_to_find="mute")
|
|
|
|
+ SettingEditor.set_mute_status(mute=mute)
|
|
|
|
|
|
- self.settings.options["mute"] = mute
|
|
|
|
data = {
|
|
data = {
|
|
"mute": mute
|
|
"mute": mute
|
|
}
|
|
}
|