summaryrefslogtreecommitdiff
path: root/domestic/session/session_message.py
diff options
context:
space:
mode:
Diffstat (limited to 'domestic/session/session_message.py')
-rw-r--r--domestic/session/session_message.py35
1 files changed, 35 insertions, 0 deletions
diff --git a/domestic/session/session_message.py b/domestic/session/session_message.py
new file mode 100644
index 0000000..485bfbb
--- /dev/null
+++ b/domestic/session/session_message.py
@@ -0,0 +1,35 @@
+from domestic.utility.validate_dict_key import *
+from domestic.utility.status_message import *
+from binary.data_handling.send_data import *
+from binary.data_handling.recv_data import *
+from domestic.utility.delete_client import *
+from domestic.utility.text_to_image import *
+from domestic.session.session_wait import *
+from domestic.utility.write_error import *
+from domestic.make.make_image import *
+from domestic.make.make_file import *
+from domestic.global_state import *
+
+
+def session_message(message, piped_data=True, loading_text='loading...'):
+ data = session_wait((state['session']['socket'], message, True), loading_text)
+
+ text_mode = validate_dict_key(data, 'text_mode')
+ text_extras = validate_dict_key(data, 'text_extras')
+
+ if state['options']['information-gathering']['backup']['text']:
+ make_file(['backup', 'backup/text'], 'txt', bytes(data['message'], state['settings']['encoding']))
+
+ if state['options']['information-gathering']['backup']['image']:
+ make_image(['backup', 'backup/image'], text_to_image(data['message']), False)
+
+ if piped_data:
+ if text_mode is None:
+ status_message(data['message'], 'pure')
+ else:
+ if text_extras:
+ status_message(data['message'], text_mode, text_extras)
+ else:
+ status_message(data['message'], text_mode)
+ else:
+ return data \ No newline at end of file