Closed nesium closed 5 months ago
Do we know btw. how we are going to handle contact requests on the recipient side?
Is it safe to automatically accept requests from the same domain? Should that be an application setting? What about requests from other domains?
UI all done and functional on my end in: 6e1778c4e40f5f4998952b1798be7f9652a6d971
Remaining tasks to complete this (for you @nesium):
I had added this method in the meanwhile…
/**
* Adds a contact to the roster and sends a presence subscription request.
* @param {JID} jid
* @returns {Promise<void>}
*/
addContact(jid: JID): Promise<void>;
… which is not enough since it doesn't automatically create a room.
I would prefer to not have distinct steps between adding a contact and starting a chat with that contact. The problem of course is compatibility with other Jabber clients.
From a user perspective I would expect something like this:
From here we could display status messages within the chat. E.g. something like "The contact has not yet accepted your request". TBD
The sidebar also is in conceptional limbo ATM. The design shows more of a classic Jabber roster-like functionality, in the implementation I blurred the lines though between a contact/1:1 chat and group chats, like Slack does. I do think that it makes more sense for this kind of application and that as a user of a work-related chat app I do not want to think about my contact list (roster) and see who comes online and goes offline. All I'm interested in are the recent conversations I have/had with people and of course see their online status in that context, so that I know if I can expect a timely response or not.
What’s the status of this one? Do I still need to implement it, or does ‘startConversation’ suffices into adding an user to roster and opening the sidebar item?
Ok sorry, forget what I said. Implemented.
I will need more helper methods though related to this one: https://github.com/prose-im/prose-core-client/issues/45
Reference: fd574c0200406f4916ad89f27d906219907b9d17
Currently there's no UI to add any contacts