SliceInfo: Adding all containers as serialized data

This commit is contained in:
Thomas Karl Pietrowski 2016-06-22 14:01:23 +02:00
parent eb6abdf773
commit e78bd92b7f

View file

@ -26,8 +26,8 @@ catalog = i18nCatalog("cura")
# The data is only sent when the user in question gave permission to do so. All data is anonymous and # The data is only sent when the user in question gave permission to do so. All data is anonymous and
# no model files are being sent (Just a SHA256 hash of the model). # no model files are being sent (Just a SHA256 hash of the model).
class SliceInfo(Extension): class SliceInfo(Extension):
info_url = "https://stats.youmagine.com/curastats/slice" info_url = "https://stats.youmagine.com/curastats/slice"
def __init__(self): def __init__(self):
super().__init__() super().__init__()
Application.getInstance().getOutputDeviceManager().writeStarted.connect(self._onWriteStarted) Application.getInstance().getOutputDeviceManager().writeStarted.connect(self._onWriteStarted)
@ -82,7 +82,7 @@ class SliceInfo(Extension):
"processor": platform.processor(), "processor": platform.processor(),
"machine": platform.machine(), "machine": platform.machine(),
"platform": platform.platform(), "platform": platform.platform(),
"global_settings": global_container_stack.serialize(), "settings": global_container_stack.serialize(), # global_container with references on used containers
"version": Application.getInstance().getVersion(), "version": Application.getInstance().getVersion(),
"modelhash": "None", "modelhash": "None",
"printtime": str(print_information.currentPrintTime), "printtime": str(print_information.currentPrintTime),
@ -90,6 +90,8 @@ class SliceInfo(Extension):
"language": Preferences.getInstance().getValue("general/language"), "language": Preferences.getInstance().getValue("general/language"),
"materials_profiles ": {} "materials_profiles ": {}
} }
for container in global_container_stack.getContainers():
submitted_data["settings_%s" %(container.getId())] = container.serialize() # This can be anything, eg. INI, JSON, etc.
# Convert data to bytes # Convert data to bytes
submitted_data = urllib.parse.urlencode(submitted_data) submitted_data = urllib.parse.urlencode(submitted_data)