MattJThere night be room for a simpler ad-hoc protocol perhaps
pasdesushihas left
MattJIt wouldn't be too hard to implement on the server with the same underlying commands
MattJBut I think it's mainly forms that are the issue
harry837374884has joined
MattJBuilding good UIs is hard, and just chaining together a bunch of controls of different types doesn't suffice for anything but the most basic prompts
MattJI spent a whole day implementing a user-friendly time zone selector recently, and there's just no way it could be reasonably done with data forms, and yet I don't expect every client to implement a timezone selector control just for the 1 or 2 services that might use it
chipmnkhas left
Samhas left
pasdesushihas joined
MattJThe logical step up would be allowing a HTML/CSS form, but the problems with that are hopefully obvious
chipmnkhas joined
mathieui Should I summarize with "we can never have nice things"
MattJHTML 5 has a lot of form-related improvements that XEP-0004 doesn't, and if we don't adopt HTML itself and still want to pursue dataform UIs, we'd probably want to at least adopt some things that HTML has gained
Samhas joined
MattJBut then client complexity increases, and will ultimately warrant a HTML renderer (i.e. web view) and then in 10 years people will be complaining that we didn't just allow HTML forms
MattJAnd all of this falls into the products vs protocols dichotomy, since it's only needed when the clients are supposed to interoperate with arbitrary unknown services
MattJA client could instead support a nice native UI for biboumi configuration
adiaholichas joined
Dele Olajidehas joined
pasdesushihas left
homebeachhas left
Half-Shothas left
Matthewhas left
uhoreghas left
Half-Shothas joined
Matthewhas joined
homebeachhas joined
uhoreghas joined
nikhilmwarrierhas left
adiaholichas left
msavoritiashas joined
stphas joined
nikhilmwarrierhas joined
phoeboshas joined
adiaholichas joined
pasdesushihas joined
Samhas left
stphas left
Samhas joined
Mx2has left
Wojtekhas joined
phoeboshas left
intosihas left
intosihas joined
Samhas left
goffiMattJ: what was needed for your form? Would something like XEP-0141 helps? Regarding the particular time-zone selection, this seems generic enough to me to worth a dedicated field-type.
goffiBut yeah HTML/CSS forms would be interesting, I've had similar thoughs when I've been working on the ad-hoc based remoted control.
goffidespite obvious security implications, there would be issues also for TUI/CLI clients, or any UI libraries not supporting direct HTML rendering/webview (like Kivy). But still, it would be nice to have.
neshtaxmpphas left
Samhas joined
neshtaxmpphas joined
inkyhas joined
Danielhas left
stphas joined
nikhilmwarrierhas left
nikhilmwarrierhas joined
MattJgoffi: to be fair most of the complexity ended up on the server side for that (gathering, formatting and sorting the available options). Things that wouldn't be possible in XMPP currently would be automatically detecting the user's current time zone (available from the browser) and preselecting it for them.
intosihas left
pjnhas joined
antranigvhas joined
msavoritiashas left
lovetoxHtml/CSS form? So the sender decides how the UI looks? Meh ...
MattJExample of a responsive UI that just can't be done in XMPP today
intosihas joined
lovetoxI don't know what you mean, what has xmpp to do with UI
MattJData forms have everything to do with UI
antranigvhas left
MattJWhen clients display them to users
lovetoxResponsive is a web dev term to me
Titihas left
MattJIt's not a web dev term, have you used Gajim on a Linux mobile?
lovetoxI'm sure converse can build a responsive form
xnamedhas joined
cloudedhas left
MattJConverse doesn't have the necessary information to make a responsive form
msavoritiashas joined
Titihas joined
harry837374884has left
lovetoxWhat information is missing
cloudedhas joined
MattJIf we agree that a good user interface is one that is structured logically for the data it is presenting/requesting, and that a simple flat list of controls often does not suffice, then layout is an important part of the form designer's job
debaclehas left
marc0shas left
marc0shas joined
MattJAnd given that people access the forms on a range of screen sizes and orientations, it is also the form designer's job to ensure it functions well across all of them
MattJHTML/CSS has a bunch of problems, but they do give you the tools to do this. XEP-0004+XEP-0141 do not.
playerthreehas left
marc0shas left
marc0shas joined
Danielhas joined
goffiIn the special case of the experiment I've made with XMPP powered remote control, I've add to make dedicated UI. It would be nice to be able to specify from the sender, and also to add stuff like volume control, timer, etc. Cf. https://www.goffi.org/b/74BwHSApD7w7Tr9L9fvR82/news-control-your-media-player-from-omemo and notably the first video.
nikhilmwarrierhas left
msavoritiashas left
goffiI've had*
antranigvhas joined
neshtaxmpphas left
neshtaxmpphas joined
intosihas left
Samhas left
MattJYeah, good example
konstantinoshas joined
intosihas joined
Samhas joined
adiaholichas left
Tim Rhas left
Tim Rhas joined
antranigvhas left
playerthreehas joined
Dele Olajide>MattJ : Converse doesn't have the necessary information to make a responsive form
It doesn't, but it has a plugin that does.
https://github.com/conversejs/community-plugins/tree/master/packages/adaptive-cards
https://adaptivecards.io/
papatutuwawahas joined
adiaholichas joined
MattJRight, but XEP-0004 doesn't carry the necessary information, is my point
MattJAm I reading rightly that the converse.js plugin is interpreting Adaptive Card JSON in <body/>? 😬
konstantinoshas left
konstantinoshas joined
adiaholichas left
adiaholichas joined
APachhas joined
adiaholichas left
konstantinoshas left
Dele Olajidehttps://xmpp.org/extensions/xep-0335.html
arcxihas left
lovetoxhas left
sebastianhas left
sebastianhas joined
lovetoxhas joined
papatutuwawahas left
papatutuwawahas joined
Zash👉️ XEP-0141: Data Forms Layout https://xmpp.org/extensions/xep-0141.html
Dele Olajidehas left
Dele Olajidehas joined
Mx2has joined
neshtaxmpphas left
neshtaxmpphas joined
nikhilmwarrierhas joined
konstantinoshas joined
adiaholichas joined
pasdesushihas left
pasdesushihas joined
adiaholichas left
menelhas left
menelhas joined
menelhas left
menelhas joined
konstantinoshas left
chipmnkhas left
chipmnkhas joined
adiaholichas joined
harry837374884has joined
adiaholichas left
Mx2has left
nikhilmwarrierhas left
adiaholichas joined
goffiregarding the remote control, I was thinging that SVG could actually be a neat way to do elaborated UI
goffiand it's XML, making it straightforward to link in XMPP
goffiit can be responsive too.
arcxihas joined
msavoritiashas joined
goffiand there are plenty of tools that could be used, in particular inkscape.
goffiNo exactly sure about the security implications though.
Zash"Complete this game of Tetris to enable the thing"
ZashSo, is XEP-0141 something we should obsolete? Or is it just unknown?
goffiit has been mentioned twice today, so it's not unknown. But I don't think that there are many implementation in the wild, or are there?
adiaholichas left
marc0shas left
marc0shas joined
Dele Olajidehas left
rubihas left
kinetikhas joined
rubihas joined
papatutuwawahas left
papatutuwawahas joined
adiaholichas joined
marc0shas left
marc0shas joined
rubihas left
rubihas joined
rubihas left
rubihas joined
rubihas left
rubihas joined
rubihas left
rubihas joined
adiaholichas left
pablohas joined
rubihas left
rubihas joined
rubihas left
rubihas joined
kinetikhas left
Half-Shothas left
homebeachhas left
Matthewhas left
uhoreghas left
Half-Shothas joined
Matthewhas joined
homebeachhas joined
uhoreghas joined
rubihas left
rubihas joined
rubihas left
rubihas joined
lovetoxXEP-0141 seems to add light layout caps
lovetoxlike adding a section or have different pages
lovetoxbut thats about it
neshtaxmpphas left
rubihas left
neshtaxmpphas joined
rubihas joined
rubihas left
rubihas joined
lovetoxMattJ, probably searches for much more detailed layout
lovetoxi think, sure it would be cool, but i discovered no form in the wild where i thought i need to add a custom layout because the simple field list doesnt cut it
Andrzejhas left
lovetoxso lots of complexity for probably very few and niche use cases
wgreenhousehas left
wgreenhousehas joined
Zash> Right, but XEP-0004 doesn't carry the necessary information, is my point
So what's missing and what is actually needed?
rubihas left
rubihas joined
ZashDoes chat clients really _need_ full HTML forms (with CSS layouts)?
nikhilmwarrierhas joined
ZashI like to think that a lot of nice things could be done by inventing datatypes with xep-0122 and then having clients do nice things where it knows those data types. E.g. a timezone type could be smart about its default, even show a map selector.
lovetoxits either css or nothing, like what do you want to do otherwise, invent a whole new layout language that works with all the different ui frameworks out there ..
lovetoxim all for more hints about what the data is that we should display, and i think this can be easy done
lovetoxbut starting with stuff like "display this filed on the right side from that field"
lovetoxi probably not going to implement something like that, sounds like a lot of work with very little gain
adiaholichas joined
marc0shas left
marc0shas joined
pablohas left
eevvoorhas joined
neshtaxmpphas left
neshtaxmpphas joined
Andrzejhas joined
moparisthebestMattJ: yea XMPP can't be taken seriously if you can't implement a proper date picker like https://i01000101.github.io/RedditBadUIBattles/ScientificDatePicker/index.html
adiaholichas left
marc0shas left
marc0shas joined
Guusstarts to slowly clap.
pasdesushihas left
kinetikhas joined
marc0shas left
marc0shas joined
marc0shas left
marc0shas joined
neshtaxmpphas left
neshtaxmpphas joined
pasdesushihas joined
jinxdhas joined
RayTutuhas joined
Steve Killehas left
adiaholichas joined
kinetikhas left
rebeld22has joined
Paganinihas joined
Tim Rhas left
Tim Rhas joined
Half-Shothas left
homebeachhas left
Matthewhas left
uhoreghas left
Half-Shothas joined
Matthewhas joined
homebeachhas joined
uhoreghas joined
papatutuwawahas left
neshtaxmpphas left
neshtaxmpphas joined
adiaholichas left
neshtaxmpphas left
neshtaxmpphas joined
Dele Olajidehas joined
APachhas left
APachhas joined
cloudedhas left
chipmnkhas left
chipmnkhas joined
nikhilmwarrierhas left
adiaholichas joined
nikhilmwarrierhas joined
cloudedhas joined
adiaholichas left
antranigvhas joined
marc0shas left
marc0shas joined
Kevhas left
Kevhas joined
Dele Olajidehas left
antranigvhas left
antranigvhas joined
adiaholichas joined
antranigvhas left
konstantinoshas joined
Kevhas left
neshtaxmpphas left
neshtaxmpphas joined
Dele Olajidehas joined
Steve Killehas joined
papatutuwawahas joined
Kevhas joined
eevvoorhas left
adiaholichas left
Tim Rhas left
jl4has joined
jl4has left
marc0shas left
marc0shas joined
Link Mauvehas left
adiaholichas joined
Dele Olajidehas left
marc0shas left
marc0shas joined
BASSGODhas left
MattJTo be clear, I'm personally not advocating adding this complexity into XMPP at all. I just see it as a necessity if we really started using ad-hoc for important things. We don't support this complexity today, which means ad-hoc commands will never be used for more than very simple things (if clients implement them at all).
ZashEgg, meet chicken?
MattJI don't think today's ad-hoc + dataforms leads to good UIs, and that's why I don't push for them in modern XMPP clients
raghavgururajanhas joined
BASSGODhas joined
MattJAd-hoc commands with a native UI is fine, and clients already do this (e.g. for creating invitations)
konstantinoshas left
lovetoxi thin adhoc has also value in simply providing a flow for whatever
lovetoxlike if some XEP wants to provide some options to configure something on the server etc, they can simply reuse adhoc
lovetoxwithout inventing there own iq flow
MattJYeah, I agree. And as I said earlier, it might be nice to simplify it somewhat (many of the awkward edge cases are caused by features that aren't used)
lovetoxas a client developer im not against adding a custom UI for some adhoc workflow, (not my standard rendering of a dataform)
lovetoxif its a good feature and it benefits from a custom UI why not
lovetoxbut of course the fields should be fixed than
MattJYep
lovetoxMattJ, about what are you thinking that you would like to do with adhoc?
ZashYeah, well-known ad-hoc commands with client-side custom UI can be nice.
lovetoxlike until now only server and muc configs are done with adhoc
lovetoxi think the standard dataform rendering is fine enough for that use case
lovetoxas its very expert use case
ZashMUC config is dataforms, but not ad-hoc
lovetoxyeah sorry
lovetoxactually it does not matter if its adhoc
MattJWell that's kind of what started this discussion: why do only the "advanced" clients implement ad-hoc commands + dataforms
lovetoxthe problem for MattJ is the dataform rendering
lovetoxit does not matter in which context
lovetoxbut its really dataform rendering ...
lovetoxnot adhoc
lovetoxadhoc of course is a expert use case, because its only used for muc config and server config
lovetoxand server config is not really neccessary at all
lovetoxnot even sure admins use this
MattJFWIW one thing on my to-do list is a XEP for user account config
moparisthebestthat would be excellent, could probably get rid of those terrible servers that blanket block all messages from strangers for all accounts
ZashStep 0: define scope of that 🙂
lovetoxMattJ, but what needs to be specified in that XEP?
intosihas left
lovetoxadhoc on account is already available
intosihas joined
ZashSomething like XEP-0133 but for users?
lovetoxAdhoc is only necessary for transport config and server admin config
lovetoxthats the reason its last on the list for every client
adiaholichas left
lovetoxthese are not important things users need
adiaholichas joined
lovetoxthats the reason in my opinion, and certainly not because its "to hard to implement"
MattJmoparisthebest, yes, that's definitely one of the first things I would like to expose and standardize
Skull Fuckerhas left
MattJlovetox, on my list of things the XEP should support: a registry of options, types, an ad-hoc command to fetch and set them, and a mechanism to get, set and subscribe to changes in individual options
SteveFhas left
adiaholichas left
marc0shas left
marc0shas joined
lovetoxso basically you specify a set of options which should be available via adhoc@account
lovetoxand then add a notification thingy on top
lovetoxi think this is great, please stay with adhoc for fetching and setting the options
lovetoxbecause many servers offer already on adhoc account options
lovetoxit would be less ideal if i have to merge this with some other mechanism
marc0shas left
marc0shas joined
antranigvhas joined
marc0shas left
marc0shas joined
djorzhas joined
Kevhas left
marc0shas left
marc0shas joined
antranigvhas left
marc0shas left
marc0shas joined
adiaholichas joined
RayTutuhas left
MattJAd-hoc will be one way of doing it, but I expect most clients won't use it
marc0shas left
marc0shas joined
neshtaxmpphas left
neshtaxmpphas joined
marc0shas left
marc0shas joined
intosihas left
adiaholichas left
antranigvhas joined
Kevhas joined
Thilo Molitorhas left
marc0shas left
marc0shas joined
marc0shas left
marc0shas joined
Thilo Molitorhas joined
antranigvhas left
Wojtekhas left
Kevhas left
Kevhas joined
nikhilmwarrierhas left
nikhilmwarrierhas joined
intosihas joined
marc0shas left
marc0shas joined
Samhas left
adiaholichas joined
Samhas joined
debaclehas joined
papatutuwawahas left
Samhas left
djorzhas left
wladmishas left
adiaholichas left
wladmishas joined
adiaholichas joined
intosihas left
Samhas joined
Kevhas left
intosihas joined
adiaholichas left
papatutuwawahas joined
Half-Shothas left
homebeachhas left
Matthewhas left
uhoreghas left
Half-Shothas joined
Matthewhas joined
homebeachhas joined
uhoreghas joined
Kevhas joined
djorzhas joined
Kevhas left
Kevhas joined
marc0shas left
marc0shas joined
Samhas left
intosihas left
Samhas joined
intosihas joined
xnamedhas left
lovetoxWhy?
lovetoxAgain, nothing about Adhoc is complicated or hard to implement, every other IQ flow is exactly the same
lovetoxthe reason clients dont implement adhoc is because its not needed
lovetoxits basically only used by nerdy xmpp people that want to admin there server
lovetoxthere is zero reason for any client to implement adhoc
mathieuilovetox: except for configuring stuff
Kevhas left
mathieuiEven non-nerdy people want to be able to configure their bridged accounts
Matthewhas left
Half-Shothas left
homebeachhas left
uhoreghas left
Half-Shothas joined
Matthewhas joined
homebeachhas joined
uhoreghas joined
lovetoxno, nobody even knows what a bridge is
Zashno, nobody uses XMPP!
mathieuiI beg to differ
moparisthebestwhat do non-nerdy people bridge with? certainly not IRC
mathieuiWe see plenty of non-technical people actively wanting bridges
lovetoxi dont see your argument, i said there is zero reason to implement this, and you argue "but bridge configuration" which is about the most expert thing there is on xmpp
thndrbvrhas joined
lovetoxthey want bridges, they dont want to configure them
lovetoxthey simply want them to work
lovetoxand most work fine without any configuration
lovetoxim not arguing that adhoc is not useful, im saying its not a good reason to not use adhoc, because "no client implements it"
lovetoxwhen the xmpp specs simply have no widley used usecase which uses adhoc
lovetoxthen saying, clients dont implement it because its to complicated
lovetoxhence lets not use adhoc
lovetoxno event another iq flow, with 2 attributes less
pasdesushihas left
lovetoxbut im looking forward to see the iq flow that is so much simpler than adhoc, but offers exactly the same functionality
MattJlovetox, I want to support setting one option at a time, and that's a bit weird to do via ad-hoc. It would at least turn it into multiple round-trips when only a single one was necessary.
Kevhas joined
Kevhas left
Kevhas joined
MattJI want to present an ad-hoc interface to the configuration for clients that want to present the configuration all at once to a user (in a native or dataforms-driven UI).
Zash{get,set,enable,disable}-${option} ?
lovetoxMattJ, if there are valid protocol reason to not do adhoc for something, because it does not fit, im all for it
lovetoxbut please dont base any decision on the count of clients that implement adhoc
ZashHm, maybe one could make a thingy that exposes ad-hoc commands via a chat interface, probably on the bare host JID....
lovetoxclients implement jingle, adhoc is laughable
jgarthas joined
lovetoxadhoc is 200 lines of code in nbxmpp, and thats is with boilerplate
nikhilmwarrierhas left
lovetoxi think what people confuse this with is, displaying dataforms in a UI
lovetoxthis is certainly not trivial
lovetoxbut is not inherent to Adhoc
lovetoxa muc configuration form is also a dataform
lovetoxa IBR flow has also a dataform
Zash+ not enough existing commands or other dataforms using things exposed that warrant implementing the UI translation routines, which I hear can be pretty complicated on some platforms
lovetoxcorrect, for IBR everybody uses the same dataform basically
lovetoxConversations never had a dataform UI, and IBR worked fine
ZashIt's also got a reduced MUC config interface, which is probably fine for the majority
lovetoxFor MUC config you dont need dataform UI, because most servers offer the standard configs, and only very few addtional
Steve Killehas left
adiaholichas joined
pasdesushihas left
pasdesushihas joined
Kevhas left
Kevhas joined
Half-Shothas left
homebeachhas left
Matthewhas left
uhoreghas left
Half-Shothas joined
Matthewhas joined
homebeachhas joined
uhoreghas joined
neshtaxmpphas left
intosihas left
intosihas joined
neshtaxmpphas joined
Alexhas left
Alexhas joined
Steve Killehas joined
adiaholichas left
adiaholichas joined
chipmnkhas left
Kevhas left
chipmnkhas joined
Steve Killehas left
marc0shas left
marc0shas joined
raghavgururajanhas left
intosihas left
Dele Olajidehas joined
adiaholichas left
adiaholichas joined
debaclehas left
Kevhas joined
Kevhas left
Danielhas left
cloudedhas left
Dele Olajidehas left
intosihas joined
cloudedhas joined
Danielhas joined
marc0shas left
marc0shas joined
adiaholichas left
pablohas joined
adiaholichas joined
intosihas left
paulhas left
paulhas joined
adiaholichas left
intosihas joined
homebeachhas left
Half-Shothas left
Matthewhas left
uhoreghas left
Half-Shothas joined
Matthewhas joined
homebeachhas joined
uhoreghas joined
adiaholichas joined
kinetikhas joined
papatutuwawahas left
Samhas left
Samhas joined
adiaholichas left
konstantinoshas joined
Andrzejhas left
Maranda[x]has left
Maranda[x]has joined
kinetikhas left
antranigvhas joined
Kevhas joined
intosihas left
antranigvhas left
intosihas joined
inkyhas left
jgarthas left
Tim Rhas joined
papatutuwawahas joined
pablohas left
pablohas joined
Maranda> <lovetox> Conversations never had a dataform UI, and IBR worked fine
I dissent slightly on that
Samhas left
lovetoxYeah you are one of the very few that adds custom additions to IBR
Ingolfhas left
MarandaI had to specifically add exceptions for C not supporting extended fields in IBR or even just the supplemental ones
Samhas joined
antranigvhas joined
MarandaIn Metronome that is
Kevhas left
konstantinoshas left
konstantinoshas joined
xnamedhas joined
neshtaxmpphas left
neshtaxmpphas joined
papatutuwawahas left
papatutuwawahas joined
marc0shas left
marc0shas joined
Kevhas joined
Tim Rhas left
jgarthas joined
pablohas left
Samhas left
Samhas joined
marc0shas left
marc0shas joined
lovetoxhas left
intosihas left
Samhas left
Ingolfhas joined
Kevhas left
Holger> Yeah you are one of the very few that adds custom additions to IBR
Chicken egg, I'd love to do that as well, but client side support is close to nonexistent.
Samhas joined
Holger(Not just Conversations.)
konstantinoshas left
lovetoxhas joined
pablohas joined
adiaholichas joined
Samhas left
pablohas left
Samhas joined
adiaholichas left
marc0shas left
marc0shas joined
konstantinoshas joined
marc0shas left
marc0shas joined
adiaholichas joined
Andrzejhas joined
adiaholichas left
Steve Killehas joined
Steve Killehas left
Steve Killehas joined
Andrzejhas left
adiaholichas joined
adiaholichas left
konstantinoshas left
Ingolfhas left
inkyhas joined
Thilo Molitorhas left
Thilo Molitorhas joined
marc0shas left
marc0shas joined
antranigvhas left
intosihas joined
antranigvhas joined
jgarthas left
Half-Shothas left
homebeachhas left
Matthewhas left
uhoreghas left
Half-Shothas joined
Matthewhas joined
homebeachhas joined
uhoreghas joined
Kevhas joined
wgreenhouse> they want bridges, they dont want to configure them
a bridge needs some way to enter authentication/account details for $other_network if applicable