Connect. Communicate. Collaborate. Securely.

Home » Kerio User Forums » Kerio Connect » Instant Message Receive Files (Building a Blather client and unable to receive file transfers)
  •  
support@KNOCKinc.com

Messages: 27
Karma: 0
Send a private message to this user
I'm trying to create a Jabber script that receives files sent via instant message. I'm using Blather, an XMPP/Jabber Library for Ruby. First off, the script is written for files sent via XEP 0096. Does Kerio support XEP 0096?

The script I've written does work. I've tested it with two Goolge Talk accounts and files do transfer successfully. When I try file transfers between two Kerio accounts, I receive an error. Kerio account #1 sends a file from Apple Messages. Kerio account #2 is the Blather script. The file transfer results in this error in the Kerio Instant Message Debug log:

[10/Sep/2013 13:27:43][15114] {im} [external] Recv 192.168.123.46:33758 <iq type="error" id="iChat_38A88B40" from="support@company.com/kerio-30" to="user.name<_at_>company.com/0127 iMac"><error type="cancel"><item-not-found xmlns="urn:ietf:params:xml:ns:xmpp-stanzas"/></error></iq > (IOService.readData)
[10/Sep/2013 13:27:43][15114] {im} [external] Send 192.168.123.136:51761 <iq id="iChat_38A88B40" type="error" from="support@company.com/kerio-30" xmlns="jabber:client" to="user.name<_at_>company.com/0127 iMac"><error type="cancel"><item-not-found xmlns="urn:ietf:params:xml:ns:xmpp-stanzas"/></error></iq > (IOService.writeData)


Here it is in content of the whole transaction:
Sep/2013 13:27:42][15114] {im} [external] Recv 192.168.123.136:51761 <message to="blather.user<_at_>company.com/kerio-30" type="chat" id="iChat_2E755D74"><composing xmlns="http://jabber.org/protocol/chatstates"/></message> (IOService.readData)
[10/Sep/2013 13:27:42][15114] {im} [external] Send 192.168.123.46:33758 <message id="iChat_2E755D74" type="chat" from="user.name@company.com/0127 iMac" xmlns="jabber:client" to="blather.user<_at_>company.com/kerio-30"><composing xmlns="http://jabber.org/protocol/chatstates"/></message> (IOService.writeData)
[10/Sep/2013 13:27:43][15114] {im} [external] Recv 192.168.123.136:51761 <message to="blather.user<_at_>company.com/kerio-30" type="chat" id="6A1E41CE-70BE-47C6-988D-1F65C66FBDAA"><body>...</body > <html xmlns="http://jabber.org/protocol/xhtml-im"><body xmlns="http://www.w3.org/1999/xhtml" style="background-color:#e9e9e9;color:#000000;"></body></html ><active xmlns="http://jabber.org/protocol/chatstates"/></message> (IOService.readData)
[10/Sep/2013 13:27:43][15114] {im} [external] Send 192.168.123.46:33758 <message id="6A1E41CE-70BE-47C6-988D-1F65C66FBDAA" type="chat" from="user.name@company.com/0127 iMac" xmlns="jabber:client" to="blather.user<_at_>company.com/kerio-30"><body/> <html xmlns="http://jabber.org/protocol/xhtml-im"><body xmlns="http://www.w3.org/1999/xhtml" style="background-color:#e9e9e9;color:#000000;"/></html><active xmlns="http://jabber.org/protocol/chatstates"/></message> (IOService.writeData)
[10/Sep/2013 13:27:43][15114] {im} [external] Recv 192.168.123.46:33758 <message to="user.name<_at_>company.com/0127 iMac" type="chat"><body>...</body><active xmlns="http://jabber.org/protocol/chatstates"/></message> (IOService.readData)
[10/Sep/2013 13:27:43][15114] {im} [external] Send 192.168.123.136:51761 <message type="chat" from="blather.user@company.com/kerio-30" xmlns="jabber:client" to="user.name<_at_>company.com/0127 iMac"><body>...</body><active xmlns="http://jabber.org/protocol/chatstates"/></message> (IOService.writeData)
[10/Sep/2013 13:27:43][15114] {im} [external] Socket: TLS: c2s<_at_>sycamore/192.168.123.44_5222_192.168.123.136_51761 Socket[addr=/192.168.123.136,port=51761,localport=5222], Resizing socketInput to 4096 bytes. (IOService.resizeInputBuffer)
[10/Sep/2013 13:27:43][15114] {im} [external] Recv 192.168.123.136:51761 <iq type="set" id="iChat_05633542" to="blather.user<_at_>company.com/kerio-30"><si xmlns="http://jabber.org/protocol/si" id="sid_3A67BC04" mime-type="binary/octet-stream" profile="http://jabber.org/protocol/si/profile/file-transfer">http://jabber.org/protocol/si/profile/file-transfer"><file xmlns="http://jabber.org/protocol/si/profile/file-transfer" xmlns:ichat="apple:profile:transfer-extensions" name="Screen Shot 2013-09-10 at 9.21.21 AM.png" size="33094... (IOService.readData)
[10/Sep/2013 13:27:43][15114] {im} [external] Socket: TLS: c2s<_at_>sycamore/192.168.123.44_5222_192.168.123.136_51761 Socket[addr=/192.168.123.136,port=51761,localport=5222], Resizing socketInput down to 2048 bytes. (IOService.readData)
[10/Sep/2013 13:27:43][15114] {im} [external] Send 192.168.123.46:33758 <iq id="iChat_05633542" type="set" from="user.name@company.com/0127 iMac" xmlns="jabber:client" to="blather.user<_at_>company.com/kerio-30"><si id="sid_3A67BC04" mime-type="binary/octet-stream" profile="http://jabber.org/protocol/si/profile/file-transfer">http://jabber.org/protocol/si/profile/file-transfer" xmlns="http://jabber.org/protocol/si"><file size="33094" ichat:posixflags="000001B4" xmlns="http://jabber.org/protocol/si/profile/file-transfer" n... (IOService.writeData)
[10/Sep/2013 13:27:43][15114] {im} [external] Recv 192.168.123.46:33758 <iq type="result" id="iChat_05633542" from="blather.user@company.com/kerio-30" to="user.name<_at_>company.com/0127 iMac"><si xmlns="http://jabber.org/protocol/si"><feature xmlns="http://jabber.org/protocol/feature-neg"><x xmlns="jabber:x:data" type="submit"><field var="stream-method"><value>http://jabber.org/protocol/bytestreams</value></field></x></feature></si></iq> (IOService.readData)
[10/Sep/2013 13:27:43][15114] {im} [external] Send 192.168.123.136:51761 <iq id="iChat_05633542" type="result" from="blather.user@company.com/kerio-30" xmlns="jabber:client" to="user.name<_at_>company.com/0127 iMac"><si xmlns="http://jabber.org/protocol/si"><feature xmlns="http://jabber.org/protocol/feature-neg"><x type="submit" xmlns="jabber:x:data"><field var="stream-method"><value>http://jabber.org/protocol/bytestreams</value></field></x></feature></si></iq> (IOService.writeData)
[10/Sep/2013 13:27:43][15114] {im} [external] Recv 192.168.123.136:51761 <iq type="set" id="iChat_38A88B40" to="blather.user@company.com/kerio-30"><query xmlns="http://jabber.org/protocol/bytestreams" sid="sid_3A67BC04"><streamhost jid="user.name<_at_>company.com/0127 iMac" host="192.168.123.136" port="50209"/></query> </iq> (IOService.readData)
[10/Sep/2013 13:27:43][15114] {im} [external] Send 192.168.123.46:33758 <iq id="iChat_38A88B40" type="set" from="user.name@company.com/0127 iMac" xmlns="jabber:client" to="blather.user@company.com/kerio-30"><query sid="sid_3A67BC04" xmlns="http://jabber.org/protocol/bytestreams"><streamhost host="192.168.123.136" port="50209" jid="user.name<_at_>company.com/0127 iMac"/></query> </iq> (IOService.writeData)
[10/Sep/2013 13:27:43][15114] {im} [external] Recv 192.168.123.46:33758 <iq type="error" id="iChat_38A88B40" from="blather.user@company.com/kerio-30" to="user.name<_at_>company.com/0127 iMac"><error type="cancel"><item-not-found xmlns="urn:ietf:params:xml:ns:xmpp-stanzas"/></error></iq > (IOService.readData)
[10/Sep/2013 13:27:43][15114] {im} [external] Send 192.168.123.136:51761 <iq id="iChat_38A88B40" type="error" from="blather.user@company.com/kerio-30" xmlns="jabber:client" to="user.name<_at_>company.com/0127 iMac"><error type="cancel"><item-not-found xmlns="urn:ietf:params:xml:ns:xmpp-stanzas"/></error></iq > (IOService.writeData)
  •  
Tomas Skoda (Kerio)

Messages: 107
Karma: 20
Send a private message to this user
XEP-0096 defines protocol for transferring files between two entities. These two entities are your clients: Messages and Blather client. They are only ones who need to support this XEP, not the server. The server only delivers file-transfer negotiation packets (as you can see from debug log).

In the last but one log line you can see that server received error from Messages that requesting file was not found (in the last line server delivered the error to Blather). We are also seeing this error sometimes (only with Messages client). Restart of the Messages client or worse restart of system should help. Did you try another client (e.g. Adium)?

Cheers,
Tomas Skoda
  •  
support@KNOCKinc.com

Messages: 27
Karma: 0
Send a private message to this user
Wow! Adium works fine. Thanks for the suggestion. Ultimately, I need to get this working on Messages because people are already using it and I want to avoid an office-wide Adium deployment.

I think I am experiencing two issues. The first is what you are describing. Occasionally, I attempt to drop a file into messages and it says that it won't accept file transfers. Restarting the app or the computer usually resolves this.

The second issue occurs consistently. Messages allows the transfer, but then I get the file not found error in the debug log and in the blather script debug log. Transferring between two Messages clients does work, but it does not work between Messages and the Blather script.

Thank you for your help
Previous Topic: Exporting user resource booking data to excel
Next Topic: Problem getting access to Archive folders
Goto Forum:
  


Disclaimer:
Kerio discussion forums are intended for open communication between forum members and may contain information and material posted by members which may be useful in learning about Kerio products. The discussion forums are not intended to provide technical support for any specific product. Any information implied or expressed in the discussion forums is that of the posting member. Kerio is in no way responsible for the information posted in the forums, or its accuracy. Kerio employees may participate in the discussions, but their postings do not represent an offical position of the company on any issues raised or discussed. Kerio reserves the right to monitor and maintain the forums to promote free and accurate exchange of information.

Current Time: Sat Nov 18 17:06:35 CET 2017

Total time taken to generate the page: 0.00461 seconds
.:: Contact :: Home ::.
Powered by: FUDforum 3.0.4.