tigase / beagle-im

(M) XMPP client for macOS based on TigaseSwift XMPP library
GNU General Public License v3.0
182 stars 21 forks source link

File upload not working #60

Closed Nothing4You closed 3 years ago

Nothing4You commented 3 years ago

Describe the bug From reading some issues it seems that I should be able to upload files by drag-n-dropping them onto the text input. I'm also suspecting the + button next to the input to be intended for file uploads. When I drop a file on the input it only results in the path being in there and when sending the message the path is sent as string. When I click on the + button nothing happens.

File uploads work fine in other clients like Gajim, Conversations and Dino.

To Reproduce Steps to reproduce the behavior:

  1. Open a chat, muc or 1:1
  2. Click on + next to chat input
  3. Nothing happens
  4. Drag n drop file from finder to chat input
  5. See path in chat input
  6. Send message
  7. Local path to file was sent

Expected behavior The actual file is transmitted.

Screenshots

Desktop (please complete the following information):

Server Info (via Gajim)

Server Software: Prosody 0.11 nightly build 112 (2020-10-28, 0ff148362a3d)
XEP-0045: Multi-User Chat: Yes 
XEP-0054: vcard-temp: Yes 
XEP-0077: In-Band Registration: Yes 
XEP-0163: Personal Eventing Protocol: Yes 
XEP-0163: #publish-options: Yes 
XEP-0191: Blocking Command: Yes (urn:xmpp:blocking)
XEP-0198: Stream Management: Yes (urn:xmpp:sm:3)
XEP-0258: Security Labels in XMPP: No (urn:xmpp:sec-label:0)
XEP-0280: Message Carbons: Yes (urn:xmpp:carbons:2)
XEP-0313: Message Archive Management: Yes 
XEP-0363: HTTP File Upload: Yes (urn:xmpp:http:upload:0 (max. 100.0 MiB))
XEP-0398: Avatar Conversion: Yes 
XEP-0411: Bookmarks Conversion: Yes 
hantu85 commented 3 years ago

That is not an error and file transfers are working just fine in BeagleIM 4.0. As for your issue, please look at https://github.com/tigase/siskin-im/issues/37#issuecomment-625880042. While that issue was reported for SiskinIM (iOS client) they have shared codebase and the same logic related to the HTTP File Upload component discovery.

Nothing4You commented 3 years ago

Can you recommend me a way to debug this? I noticed I had an older configuration style in my prosody configuration and migrated it to the latest recommended variant using an explicit component, however, I'm still not seeing improvements. I've tried to look for Beagle logs but the directory that opens up using the preferences button is empty (besides an empty TemporaryItems folder).

hantu85 commented 3 years ago

You should be able to press and hold OPTION key and at the same time open Window from the top menu and select XML Console for your account. If you disconnect and then reconnect (while having the XML console open) you will see the full log of XML stream and could check what discovery returns from your server.

As for log folder, we do not store most of the logs on the drive (they are printed to the console output at least for now) and this log directory currently is valid only for VoIP logs.

Nothing4You commented 3 years ago

thanks, I'm now also explicitly advertising it as disco item and it's working now.