Sunday, January 08, 2023
grimoire@muc.metronome.im
January
Mon Tue Wed Thu Fri Sat Sun
            1
2 3 4 5
6 7 8
9
10
11
12
13
14
15
16 17 18 19
20 21 22
23 24 25
26
27
28 29
30 31          
Metronome IM "cook" book room | Support and Dev talk about the Metronome XMPP server.

Latest stable version build is: 4.0.3

For more information you can visit: https://metronome.im

Room logs can be found here: https://muc.metronome.im/logs/grimoire/

* Links *
<==========================================================>
- Building & Installation:
https://metronome.im/building
- Documentation:
https://metronome.im/documentation
- Issues Tracker:
https://github.com/maranda/metronome/issues
<==========================================================>

[01:01:50] <ember> I forked it now to made it compatible with the autodelete
[01:01:51] <ember> I don't know why or how should I fix it
[01:01:51] <ember> The problem is that metronome is not sending any delete request
[01:03:01] <ember> On the same address I set up for upload and using the same secret
[01:03:01] <ember> I am making the requests over https
[07:49:50] <Maranda[x]> ember: because deletion is not enabled by default
[07:51:06] <Maranda[x]> And it would need the corresponding API to be supported
[15:33:31] <ember> > Maranda[x]:
> 2023-01-08 01:51 (CST)
> And it would need the corresponding API to be supported
Yeah that's what I am trying to build
[15:33:38] <ember> > Maranda[x]:
> 2023-01-08 01:49 (CST)
> ember: because deletion is not enabled by default
How do I enable it?
[15:35:23] <Maranda> mod_http_upload_external ~
http_file_size_limit: size limit for uploads in bytes. Default: 100 MiB
http_file_expire_after: expiration time for file uploads in seconds. Default: 172800 (2 days)
http_file_no_expire_whitelist: list of JID addresses which uploads are never expired. Format: { "alice@capuleti.lit", "bob@capuleti.lit" }
http_file_external_url: external url base address which all files are served from, this option is required.
http_file_secret: secret required to authorize and verify upload slots PUT requests.
http_file_external_delete_url: external url base address to signal file deletion, if not provided all adhoc file handling / auto purging features are disabled. Warning: if using https, SNI is not supported.
http_file_delete_secret: secret required to authorize and verify upload slots DELETE requests.
[19:28:16] <ember> Component "my.site" "http_upload_external"
name = "Subida de archivos de Novoa"
interfaces = {"*"}
http_file_external_url = "https://my.site/"
http_file_secret = "mysecret"
http_file_size_limit = 100*1024*1024
http_upload_access = {"muc.novoa.nagoya", "posteo.novoa.nagoya", "my.site", "novoa.nagoya"};

-- Delete
http_file_expire_after = 180 -- 1 * 60 * 60 -- horas -- numbers must be on seconds
http_file_no_expire_whitelist = {} -- usuario@serv.er que no se le borraran sus subidas
http_file_external_delete_url = "https://my.site/"
http_file_delete_secret = "mysecret"

[19:28:24] <ember> What should I change?
[19:30:43] <Maranda> Looks correct
[19:32:11] <Maranda> ember: try calling deletion manually via Adhoc
[19:32:22] <Maranda> To debug
[19:32:43] <ember> how do I do that?
[19:33:13] <Maranda> Using Adhoc commands?
[20:02:45] <ember> I mean that's done through clients right? I opened up gajim and in the commands section I don't see anything refering to deleting files and, the client that does allow me to delete just deletes locally, that's why I am asking
[20:07:36] <Maranda> ember: you need to select the component
[20:08:24] <Maranda> In the disco info UI
[20:46:16] <ember> ok thanks
[20:46:32] <ember> Jan 08 20:43:17 c2s40760f30 debug Handled incoming stanzas: 48
Jan 08 20:43:17 c2s40760f30 debug Received[c2s]: <iq type='set' xml:lang='en' to='xup.novoa.nagoya' id='23e32dcc-3f44-46b4-ad89-c1694c28e149'>
Jan 08 20:43:17 socket debug try to start ssl at client id: 4139cb98
Jan 08 20:43:17 socket debug new connection established. id: 4139cb98
Jan 08 20:43:17 socket debug try to start ssl at client id: 41d9e5d0
Jan 08 20:43:17 socket debug new connection established. id: 41d9e5d0
Jan 08 20:43:17 socket debug try to start ssl at client id: 41998da8
Jan 08 20:43:17 socket debug new connection established. id: 41998da8
Jan 08 20:43:17 socket debug try to start ssl at client id: 403fea58
Jan 08 20:43:17 socket debug new connection established. id: 403fea58
Jan 08 20:43:17 socket debug try to start ssl at client id: 41349b40
Jan 08 20:43:17 socket debug new connection established. id: 41349b40
Jan 08 20:43:17 socket debug try to start ssl at client id: 403695c8
Jan 08 20:43:17 socket debug new connection established. id: 403695c8
Jan 08 20:43:17 socket debug starting handshake...
Jan 08 20:43:17 socket debug starting handshake...
Jan 08 20:43:17 socket debug starting handshake...
Jan 08 20:43:17 socket debug starting handshake...
Jan 08 20:43:17 socket debug starting handshake...
Jan 08 20:43:17 socket debug starting handshake...
Jan 08 20:43:17 socket debug ssl handshake of client with id:table: 0x4139cb98, attempt:1
Jan 08 20:43:17 socket debug ssl handshake of client with id:table: 0x41d9e5d0, attempt:1
Jan 08 20:43:17 socket debug ssl handshake of client with id:table: 0x41998da8, attempt:1
Jan 08 20:43:17 socket debug ssl handshake of client with id:table: 0x403fea58, attempt:1
Jan 08 20:43:17 socket debug ssl handshake of client with id:table: 0x41349b40, attempt:1
Jan 08 20:43:17 socket debug ssl handshake of client with id:table: 0x403695c8, attempt:1
Jan 08 20:43:17 socket debug ssl handshake of client with id:table: 0x4139cb98, attempt:2
Jan 08 20:43:17 socket debug ssl handshake error: tlsv1 alert internal error
Jan 08 20:43:17 socket debug closing client with id: 4139cb98 tlsv1 alert internal error
Jan 08 20:43:17 socket debug handshake failed because: tlsv1 alert internal error
Jan 08 20:43:17 socket debug ssl handshake of client with id:table: 0x41998da8, attempt:2
Jan 08 20:43:17 socket debug ssl handshake error: tlsv1 alert internal error
Jan 08 20:43:17 socket debug closing client with id: 41998da8 tlsv1 alert internal error
Jan 08 20:43:17 socket debug handshake failed because: tlsv1 alert internal error
Jan 08 20:43:17 socket debug ssl handshake of client with id:table: 0x41d9e5d0, attempt:2
Jan 08 20:43:17 socket debug ssl handshake error: tlsv1 alert internal error
Jan 08 20:43:17 socket debug closing client with id: 41d9e5d0 tlsv1 alert internal error
Jan 08 20:43:17 socket debug handshake failed because: tlsv1 alert internal error
Jan 08 20:43:17 socket debug ssl handshake of client with id:table: 0x403695c8, attempt:2
Jan 08 20:43:17 socket debug ssl handshake error: tlsv1 alert internal error
Jan 08 20:43:17 socket debug closing client with id: 403695c8 tlsv1 alert internal error
Jan 08 20:43:17 socket debug handshake failed because: tlsv1 alert internal error
Jan 08 20:43:17 socket debug ssl handshake of client with id:table: 0x41349b40, attempt:2
Jan 08 20:43:17 socket debug ssl handshake error: tlsv1 alert internal error
Jan 08 20:43:17 socket debug closing client with id: 41349b40 tlsv1 alert internal error
Jan 08 20:43:17 socket debug handshake failed because: tlsv1 alert internal error
Jan 08 20:43:17 socket debug ssl handshake of client with id:table: 0x403fea58, attempt:2
Jan 08 20:43:17 socket debug ssl handshake error: tlsv1 alert internal error
Jan 08 20:43:17 socket debug closing client with id: 403fea58 tlsv1 alert internal error
Jan 08 20:43:17 socket debug handshake failed because: tlsv1 alert internal error
Jan 08 20:43:17 c2s40760f30 debug Received[c2s]: <r xmlns='urn:xmpp:sm:3'>
Jan 08 20:43:17 c2s40760f30 debug Received ack request for 48

[20:46:41] <ember> I just get that when I try to manually delete
[20:46:50] <ember> when I upload however:
[20:49:08] <ember> Jan 08 20:47:14 c2s41f6d1c8 debug Received[c2s]: <iq xml:lang='en' to='xup.novoa.nagoya' id='sfekEstNnDOq' type='get' from='sarvo@novoa.nagoya/blabber.im[3.1.4].Vcxf'>
Jan 08 20:47:14 xup.novoa.nagoya:http_upload_external debug Expiring file https://xup.novoa.nagoya/external/yGfF8WWR7ZYL7821/20221227_115502316_2d54.gif
Jan 08 20:47:14 xup.novoa.nagoya:http_upload_external debug Expiring file https://xup.novoa.nagoya/external/kai32OfXY1BP7821/20221227_115626200_7b0c.jpg
Jan 08 20:47:14 xup.novoa.nagoya:http_upload_external debug Expiring file https://xup.novoa.nagoya/external/04KqC3i9jDUG7828/20221227_115626200_7b0c.jpg
Jan 08 20:47:14 xup.novoa.nagoya:http_upload_external debug Expiring file https://xup.novoa.nagoya/external/JhCPgflRKdc7843/20221227_115626200_7b0c.jpg
Jan 08 20:47:14 xup.novoa.nagoya:http_upload_external debug Expiring file https://xup.novoa.nagoya/external/gFtr6TqZMMxQ7869/20221227_115626200_7b0c.jpg
Jan 08 20:47:14 xup.novoa.nagoya:http_upload_external debug Expiring file https://xup.novoa.nagoya/QLv33FmiEak2213/20230107_165653197_dd46.jpg
Jan 08 20:47:14 xup.novoa.nagoya:http_upload_external debug Expiring file https://xup.novoa.nagoya/VfOwqz4Bx8H30643/20230108_144357972_8dc6.jpg
Jan 08 20:47:14 xup.novoa.nagoya:http_upload_external debug Handing out upload slot https://xup.novoa.nagoya/g1VATUPpPK1Q0834/20230108_144714610_88e6.jpg to sarvo@novoa.nagoya [2850534 image/jpeg]
Jan 08 20:47:14 socket debug try to start ssl at client id: 41f808a0
Jan 08 20:47:14 socket debug new connection established. id: 41f808a0
Jan 08 20:47:14 socket debug try to start ssl at client id: 41722c58
Jan 08 20:47:14 socket debug new connection established. id: 41722c58
Jan 08 20:47:14 socket debug try to start ssl at client id: 41c330e8
Jan 08 20:47:14 socket debug new connection established. id: 41c330e8
Jan 08 20:47:14 socket debug try to start ssl at client id: 41c4d2e0
Jan 08 20:47:14 socket debug new connection established. id: 41c4d2e0
Jan 08 20:47:14 socket debug try to start ssl at client id: 41c4d540
Jan 08 20:47:14 socket debug new connection established. id: 41c4d540
Jan 08 20:47:14 socket debug try to start ssl at client id: 41e38378
Jan 08 20:47:14 socket debug new connection established. id: 41e38378
Jan 08 20:47:14 socket debug try to start ssl at client id: 42541068
Jan 08 20:47:14 socket debug new connection established. id: 42541068
Jan 08 20:47:14 socket debug starting handshake...
Jan 08 20:47:14 socket debug starting handshake...
Jan 08 20:47:14 socket debug starting handshake...
Jan 08 20:47:14 socket debug starting handshake...
Jan 08 20:47:14 socket debug starting handshake...
Jan 08 20:47:14 socket debug starting handshake...
Jan 08 20:47:14 socket debug starting handshake...
Jan 08 20:47:14 socket debug ssl handshake of client with id:table: 0x41f808a0, attempt:1
Jan 08 20:47:14 socket debug ssl handshake of client with id:table: 0x41722c58, attempt:1
Jan 08 20:47:14 socket debug ssl handshake of client with id:table: 0x41c330e8, attempt:1
Jan 08 20:47:14 socket debug ssl handshake of client with id:table: 0x41c4d2e0, attempt:1
Jan 08 20:47:14 socket debug ssl handshake of client with id:table: 0x41c4d540, attempt:1
Jan 08 20:47:14 socket debug ssl handshake of client with id:table: 0x41e38378, attempt:1
Jan 08 20:47:14 socket debug ssl handshake of client with id:table: 0x42541068, attempt:1
Jan 08 20:47:14 socket debug ssl handshake of client with id:table: 0x41f808a0, attempt:2
Jan 08 20:47:14 socket debug ssl handshake error: tlsv1 alert internal error
Jan 08 20:47:14 socket debug closing client with id: 41f808a0 tlsv1 alert internal error
Jan 08 20:47:14 socket debug handshake failed because: tlsv1 alert internal error
Jan 08 20:47:14 socket debug ssl handshake of client with id:table: 0x41722c58, attempt:2
Jan 08 20:47:14 socket debug ssl handshake error: tlsv1 alert internal error
Jan 08 20:47:14 socket debug closing client with id: 41722c58 tlsv1 alert internal error
Jan 08 20:47:14 socket debug handshake failed because: tlsv1 alert internal error
Jan 08 20:47:14 socket debug ssl handshake of client with id:table: 0x41c330e8, attempt:2
Jan 08 20:47:14 socket debug ssl handshake error: tlsv1 alert internal error
Jan 08 20:47:14 socket debug closing client with id: 41c330e8 tlsv1 alert internal error
Jan 08 20:47:14 socket debug handshake failed because: tlsv1 alert internal error
Jan 08 20:47:14 socket debug ssl handshake of client with id:table: 0x41c4d2e0, attempt:2
Jan 08 20:47:14 socket debug ssl handshake error: tlsv1 alert internal error
Jan 08 20:47:14 socket debug closing client with id: 41c4d2e0 tlsv1 alert internal error
Jan 08 20:47:14 socket debug handshake failed because: tlsv1 alert internal error
Jan 08 20:47:14 socket debug ssl handshake of client with id:table: 0x41c4d540, attempt:2
Jan 08 20:47:14 socket debug ssl handshake error: tlsv1 alert internal error
Jan 08 20:47:14 socket debug closing client with id: 41c4d540 tlsv1 alert internal error
Jan 08 20:47:14 socket debug handshake failed because: tlsv1 alert internal error
Jan 08 20:47:14 socket debug ssl handshake of client with id:table: 0x41e38378, attempt:2
Jan 08 20:47:14 socket debug ssl handshake error: tlsv1 alert internal error
Jan 08 20:47:14 socket debug closing client with id: 41e38378 tlsv1 alert internal error
Jan 08 20:47:14 socket debug handshake failed because: tlsv1 alert internal error
Jan 08 20:47:14 socket debug ssl handshake of client with id:table: 0x42541068, attempt:2
Jan 08 20:47:14 socket debug ssl handshake error: tlsv1 alert internal error
Jan 08 20:47:14 socket debug closing client with id: 42541068 tlsv1 alert internal error
Jan 08 20:47:14 socket debug handshake failed because: tlsv1 alert internal error

[21:00:38] <Maranda> ember: is prosody-filer proxied?
[21:01:47] <Maranda> Metronome http stack doesn't support SNI
[21:02:14] <Maranda> So that's what may produce that error
[21:32:56] <ember> > Maranda:
> 2023-01-08 03:00 (CST)
> ember: is prosody-filer proxied?
Yeah its sitting behind caddy
[21:33:15] <ember> So I have to use the IP directly?
[21:33:35] <ember> Although why does it upload then?
[22:18:45] <Maranda> > <ember> Although why does it upload then?

Because it's not Metronome making the PUT request
[22:22:05] <ember> then is the client? does its returns an url for the client to upload to? (this may be why also dino can't upload to metronome)
[22:23:42] <Maranda> ember: in the http file upload protocol the XMPP server only provides the upload slot in band
[22:24:22] <Maranda> The XMPP client then does the PUT req
[22:25:09] <Maranda> So the client doesn't matter
[22:26:10] <Maranda> You can use caddy as long as it doesn't require SNI to route the request
[22:29:09] <ember> what is SNI?
[22:29:31] <ember> It is the server what makes the DELETE request or the client?
[22:33:27] <Maranda> If they run on the same host you could route on the loopback interface and use HTTP instead of HTTPS too
[22:33:45] <ember> I did try that but it doesn't seem to be working. I read throught the lua code and it didn't have a debug log for delete requests, I added it and I am going to see now whats going on
[22:33:53] <Maranda> > <ember> It is the server what makes the DELETE request or the client?

It's Metronome directly in that case
[22:43:46] <Maranda> > <ember> what is SNI?

Server Name Indication, by the way