示例#1
0
def finishAuction((self, data)):
    bids = auctiontable[data.transactionID]


    #If list is not empty
    if bids:
        min_bid = 1000000
        winner = None
        #get biggest bid
        for b in bids:
            if(b.bid < min_bid):
                min_bid = b.bid
                winner = b

        #Build Bidwin
        bidwin = BidWin()
        data.destinationIP = winner.sourceIP

        #Make bidwin and data send rdy
        bw_send_rdy = bidwin.buildPayload(data.transactionID,winner.sourceIP, winner.bid, data.fine)
        d_send_rdy = data.serialize()

        #Send out bidwin and data to mesh
        udpProtocol.sendData(bw_send_rdy,BROADCAST_ADDRESS,udpPort)
        udpProtocol.sendData(d_send_rdy, winner.sourceIP, udpPort)

        #Send to master
        bidwinJSON = bidwin.toJSON().encode('ascii','replace')
        dataJSON = data.toJSON().encode('ascii','replace')
        self.sendData(bidwinJSON)
        self.sendData(dataJSON)
        log.msg("sent to master:", bidwinJSON, "\n", dataJSON)
示例#2
0
def finishAuction((self, data)):
    bids = auctiontable[data.transactionID]

    #If list is not empty
    if bids:
        min_bid = 1000000
        winner = None
        #get biggest bid
        for b in bids:
            if (b.bid < min_bid):
                min_bid = b.bid
                winner = b

        #Build Bidwin
        bidwin = BidWin()
        data.destinationIP = winner.sourceIP

        #Make bidwin and data send rdy
        bw_send_rdy = bidwin.buildPayload(data.transactionID, winner.sourceIP,
                                          winner.bid, data.fine)
        d_send_rdy = data.serialize()

        #Send out bidwin and data to mesh
        udpProtocol.sendData(bw_send_rdy, BROADCAST_ADDRESS, udpPort)
        udpProtocol.sendData(d_send_rdy, winner.sourceIP, udpPort)

        #Send to master
        bidwinJSON = bidwin.toJSON().encode('ascii', 'replace')
        dataJSON = data.toJSON().encode('ascii', 'replace')
        self.sendData(bidwinJSON)
        self.sendData(dataJSON)
        log.msg("sent to master:", bidwinJSON, "\n", dataJSON)
示例#3
0
    def startProtocol(self):
        print "[UDP] starting & sending..."

        b = Bid()
        b_payload = b.buildPayload(12345, 55)

        a = Advert()
        a_payload = a.buildPayload(12345, "localhost", 1, 2, 3, 4)
        packetJson = a.toJSON()

        bw = BidWin()
        bw_payload = bw.buildPayload(12345, "localhost", 1, 2)

        self.transport.write(bw_payload, (self.host, self.port))
示例#4
0
    def startProtocol(self):
        print "[UDP] starting & sending..."

        b = Bid()
        b_payload = b.buildPayload(12345, 55)

        a = Advert()
        a_payload = a.buildPayload(12345, "localhost",1,2,3,4)
        packetJson = a.toJSON()

        bw = BidWin()
        bw_payload = bw.buildPayload(12345, "localhost", 1, 2)

        self.transport.write(bw_payload, (self.host, self.port))