I found the solution.<br><br>The problem was that by default our proxys producer is registered with streaming = True<br>which is not what we want.<br>The following line will register our proxys producer with streaming = False
<br>ProducerConsumerProxy.iAmStreaming = False<br>The rest is the same.<br>I think adding an argument to ProducerConsumerProxy.__init__ about streaming would<br>be a good idea.<br>proxy = ProducerConsumerProxy(self.client.transport
)<br>dd = FileSender().beginFileTransfer(self.outgoingFile, proxy)<br>dd.addCallback(self.uploadDone)<br>dd.addErrback(self.uploadError)<br>