From d62dd5a521abeceb045bbbb990661d7b0bf27d24 Mon Sep 17 00:00:00 2001 From: Zhenchao Li Date: Tue, 8 Jun 2010 16:39:44 +0800 Subject: [PATCH] construct well-formed jingle FT session-initiate stanza --- src/common/jingle_ft.py | 20 +++++++++++++++++++- src/filetransfers_window.py | 2 +- 2 files changed, 20 insertions(+), 2 deletions(-) diff --git a/src/common/jingle_ft.py b/src/common/jingle_ft.py index 190a88be4..7463d1c40 100644 --- a/src/common/jingle_ft.py +++ b/src/common/jingle_ft.py @@ -75,4 +75,22 @@ class JingleFileTransfer(JingleContent): pass def _fill_content(self, content): - content.addChild("description", namespace = xmpp.NS_JINGLE_FILE_TRANSFER) + description_node = xmpp.simplexml.Node(tag=xmpp.NS_JINGLE_FILE_TRANSFER + ' description') + + sioffer = xmpp.simplexml.Node(tag='offer') + file_tag = sioffer.setTag('file', namespace=xmpp.NS_FILE) + file_tag.setAttr('name', self.file_props['name']) + file_tag.setAttr('size', self.file_props['size']) + desc = file_tag.setTag('desc') + if 'desc' in self.file_props: + desc.setData(self.file_props['desc']) + + description_node.addChild(node=sioffer) + + content.addChild(node=description_node) + +def get_content(desc): + return JingleFileTransfer + + +contents[xmpp.NS_JINGLE_FILE_TRANSFER] = get_content diff --git a/src/filetransfers_window.py b/src/filetransfers_window.py index 4b3b17bab..1036ebe97 100644 --- a/src/filetransfers_window.py +++ b/src/filetransfers_window.py @@ -304,7 +304,7 @@ class FileTransfersWindow: return False self.add_transfer(account, contact, file_props) if contact.supports(NS_JINGLE_FILE_TRANSFER): - log.info("contact supports jingle file transfer") + log.info("contact %s supports jingle file transfer"%(contact.get_full_jid())) gajim.connections[account].start_file_transfer(contact.get_full_jid(), file_props) else: log.info("contact does not support jingle file transfer")