chiark / gitweb /
Added online stat collection, added dropdown 3D button.
[cura.git] / Cura / slice / __main__.py
index 573920bd1e4edd68a12fc220183aacb81356081f..66f20db12e9bcab3556cbf4e8274a0224bc959cc 100644 (file)
@@ -4,6 +4,10 @@ from optparse import OptionParser
 import sys
 import re
 import os
+import urllib
+import urllib2
+import platform
+import hashlib
 
 if not hasattr(sys, 'frozen'):
        cura_sf_path = os.path.normpath(os.path.join(os.path.dirname(os.path.abspath(__file__)), "./cura_sf/"))
@@ -86,6 +90,30 @@ def main():
        if ret is not None:
                print ret
        print "Finalizing %s" % (os.path.basename(options.output))
+       if profile.getPreference('submit_slice_information') == 'True':
+               filenames = fixUTF8(args[idx + 1]).split('|')
+               for filename in filenames:
+                       m = hashlib.sha512()
+                       f = open(filename, "rb")
+                       while True:
+                               chunk = f.read(1024)
+                               if not chunk:
+                                       break
+                               m.update(chunk)
+                       f.close()
+                       data = {
+                               'processor': platform.processor(),
+                               'machine': platform.machine(),
+                               'platform': platform.platform(),
+                               'profile': profile.getGlobalProfileString(),
+                               'modelhash': m.hexdigest(),
+                       }
+                       try:
+                               f = urllib2.urlopen("http://software.ultimaker.com/upload_stats.php", data = urllib.urlencode(data), timeout = 5);
+                               f.read()
+                               f.close()
+                       except:
+                               pass
 
 
 def stitchMultiExtruder(outputList, resultFile):