rendered paste bodyimport socketimport sysfrom struct import *# import *def ConnectWithRouter(host): port = 3450 sockobj = socket.socket(socket.AF_INET, socket.SOCK_STREAM) try: sockobj.connect((host,port)) except: return False, "Fehler beim Verbindungsaufbau" else: return True, sockobj def DCECommand(fromDevice,socket): message = "EVENT " + str(fromDevice) + "\n" print message print type(socket) socket.send(message) print "message send" try: data = socket.recv(1024) except: print data else: if data == "OK\n": return True else: print data return Falsedef SendBigBlob(blob,socket): blobsize = len(blob)# try: socket.send("MESSAGET ") socket.send(str(blobsize)) socket.send("\n") socket.send(blob) socket.send("\n")# except:# print "error sending big blob" server = "dcerouter"magicNumber = 1234 deviceFromId = 78 # Oliver's phonereturnvalue = ConnectWithRouter(server)if (returnvalue[0]): print "Erfolg" dcerouter = returnvalue[1] returnvalue = DCECommand(deviceFromId, dcerouter)else: print returnvalue[1] returnvalue = Falseif (returnvalue): print "Erfolg mit DCECommand"else: print "Kein Erfolg mit DCECommand"deviceToId = 10 # Media plugindeviceGroupToId = 0 # no specific device group.messageId = 43 # MH_Play_File (see Advanced / DCE / Commands for more)messagePriority = 1 # PRIORITY_LOW=0, PRIORITY_NORMAL=1, PRIORITY_HIGH=2, PRIORITY_URGENT=3messageType = 1 # MESSAGETYPE_COMMAND=1, MESSAGETYPE_EVENT=2, MESSAGETYPE_DATAPARM_CHANGE=3, MESSAGETYPE_REPLY=4, MESSAGETYPE_DATAPARM_REQUEST=5, MESSAGETYPE_LOG=6, MESSAGETYPE_SYSCOMMAND=7, MESSAGETYPE_REGISTER_INTERCEPTOR=8, MESSAGETYPE_MESSAGE_INTERCEPTED=9, MESSAGETYPE_EXEC_COMMAND_GROUP=10, MESSAGETYPE_START_PING=11, MESSAGETYPE_STOP_PING=12, MESSAGETYPE_PURGE_INTERCEPTORS=13, MESSAGETYPE_PENDING_TASKS=14deviceCategoryTo = 0 # no specific categorydeviceTemplateTo = 0 # no specific templateincludeChildren = 0 # we don't care about childrenmessageBroadcastLevel = 0 # BL_None=0, BL_DirectSiblings=1, BL_SameComputer=2, BL_SameRoom=3, BL_SameHouse=4, BL_AllHouses=5messageRetry = 0 # MR_None=0, MR_Retry=1, MR_Persist=2relativeToSender = 0 # not relative to senderexpectedResponse = 0 # delivery confirmationdeviceListTo = "" # no specific list of devices to send stuff to.blobheader = pack("9LBLLBL0s",magicNumber, deviceFromId, deviceToId, deviceGroupToId, messageId, messagePriority, messageType, deviceCategoryTo, deviceTemplateTo, includeChildren, messageBroadcastLevel, messageRetry, relativeToSender, expectedResponse, deviceListTo)# SendHeader(blob,dcerouter) parameter1ID = 13 # filenameparameter1Content = "/home/public/data/samples/security/security.mpg"parameter2ID = 45 # Entertainment Areaparameter2Content = "2"blobbody = pack("LL"+str(len(parameter1Content))+"sL1sL",2,parameter1ID,parameter1Content,parameter2ID,parameter2Content,0)#SendBody(blob,dcerouter)blobfooter = pack("L",6789)#SendFooter(blob,dcerouter)blobsize = len(blobheader)+len(blobbody)+len(blobfooter)print "blobsize mit drei mal calcsize"print blobsizebigblob = blobheader+blobbody+blobfooterprint "blobsize mit bigblob"print len(bigblob)bigblob = "78 10 1 43 13 \"/home/public/data/samples/security/security.mpg\" 45 2"delimiter = " "bigblob = delimiter.join(sys.argv[1:])SendBigBlob(bigblob,dcerouter)print "big blob:"print bigblob