PapaTutuWawa / moxxy

An experiment in building a better XMPP client. This time using Flutter (mirror)
GNU General Public License v3.0
59 stars 9 forks source link

[FEATURE REQUEST] JMP.chat features from Soprani.ca's Cheogram app #12

Open ItsRogueRen opened 2 years ago

ItsRogueRen commented 2 years ago

This app is everything I've been searching for with XMPP on Android, but I wanted to know if there were 2 features you could copy from Cheogram, which is the recommended app for XMPP-based phone service JMP.chat. Those features being contact integration w/ your local contacts (most clients seem to have this for 1-1 convos but fail to get names for group chats) and integration with the native Android phone dialer app.

Cheogram is fully open-source so it might be as easy as copying/pasting some code (though I doubt it's that easy). https://git.singpolyma.net/cheogram

Obviously this is just a request, but I would love it if these could be done some time down the road.

PapaTutuWawa commented 2 years ago

The first feature, which is integration with local contacts, is something which I was planning on doing. I will then probably copy what Conversations is doing. Having this integration within groupchats is, however, a bit more specific as it would only work within MUCs that are non-private. But still possible. I don't know when I will get to it, though. As for integration with the Android dialer: Please excuse me but as I have never used Cheogram, I don't even know how such an integration would look like or what users would expect from it.

ItsRogueRen commented 2 years ago

The first feature, which is integration with local contacts, is something which I was planning on doing. I will then probably copy what Conversations is doing. Having this integration within groupchats is, however, a bit more specific as it would only work within MUCs that are non-private. But still possible. I don't know when I will get to it, though. As for integration with the Android dialer: Please excuse me but as I have never used Cheogram, I don't even know how such an integration would look like or what users would expect from it.

Cheogram is just another Conversations fork with some changes, as such I provided a link to their source code so maybe you could tell how easy or hard it would be.

ItsRogueRen commented 2 years ago

The first feature, which is integration with local contacts, is something which I was planning on doing. I will then probably copy what Conversations is doing. Having this integration within groupchats is, however, a bit more specific as it would only work within MUCs that are non-private. But still possible. I don't know when I will get to it, though. As for integration with the Android dialer: Please excuse me but as I have never used Cheogram, I don't even know how such an integration would look like or what users would expect from it.

So I asked the devs and they say that Cheogram replaces URIs with contact names to get them to show in group chats, would that be a better solution for names?

PapaTutuWawa commented 2 years ago

Using a local contact's information in display in 1-1 chats or groupchats where the JIDs are visible to everyone is, in my opinion, not that difficult. It is, as far as I know, not possible in public MUCs where JIDs are hidden.

Looking only at the screenshots of the Conversations fork, the only really obvious integration with the Dialer I can see is that if the contact has both their JID and phone number the local contact entry, then a "call" button could be shown to invoke the Dialer and call the contact. Everything else, like using a SIP gateway, which jmp.chat, as far as I know, is all about, is much much more difficult. It would require implementing the Jingle protocol suite and the audio calling parts, which would be pretty cool but is currently out of scope.

ItsRogueRen commented 2 years ago

Fair enough, the dialer stuff is a pretty edge-case feature. The contact names however I do think would useful to most

PapaTutuWawa commented 2 years ago

I am tracking the local contacts integration here: https://codeberg.org/moxxy/moxxyv2/issues/37

I, however, do not know when I will get to implement it. Maybe once the code has gotten a bit more stable.

mxmvncnt commented 2 years ago

Hi, I would like to add some information

JMP.Chat is basically a phone service, that uses XMPP to send and receive SMS. It uses the XMPP client's call function to make voip calls over the phone network, and the dialer feature is made so that you can use your phone's native dialer app instead of the xmpp client to initiate calls.

PapaTutuWawa commented 2 years ago

Thanks for the clarification! Unless I decide to implement audio calls in Moxxy, the dialer integration sadly won't happen.

PapaTutuWawa commented 1 year ago

Integration of the phone's contact list has been implemented in 8f1d17636e3fbcb7511e01bc7ccd5f06fa2852e4