-
Notifications
You must be signed in to change notification settings - Fork 21
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
voice calls are not working #10
Comments
|
Somebody needs to convince OWS to release RedPhone server source code... |
|
@mimi89999 I am afraid that our only hope is that Open Whisper Systems would want to add support for voice calls into their browser-based Signal desktop client. Then they will be forced to add WebSocket support to their closed RedPhone server. I am not the right person to try to convince OWS (after upsetting Moxie by providing public builds of LibreSignal) and I am afraid he will not listen to anyone of us... |
Would like so too, but I guess @moxie0 doesn't really like to support Google-Free forks of |
|
They don't support running independent voice + text servers. |
|
From a federated communications point of view, I think its better to spent our efforts on kontalk. Their community is very open to community participation and its pure xmpp (plus some customizations, but still interoperable with larger xmpp network). Currently the main drawback of kontalk is lack of group chat, but it is already in alpha. They run on tigase at server side, so extending it for voice should be straight forward. |
Is that a hint that we should better ditch this project and move on to this other app? |
|
@SecUpwN that is up to the contributors to decide. I prefer kontalk for the following reasons.
Now the reason for using Signal is mainly the group feature (kontalk/androidclient#179), but once kontalk build it, I will have no reason to be on LibreSignal. |
|
@SecUpwN for adding voice support to kontalk, all we'd ever need will be a pull request. No begging, no fear of banning, no need of depending on a single person for federation. Same for group feature, it just needs more contributors. |
|
"3. No lock-in to google." |
|
The big diff is that LibreSignal is using OTR like encryption.... |
|
@mimi89999 Fdroid version of kontalk does not use gcm. I learned about LibreSignal only a few weeks back. If it gets voice support, that too will not need gcm. Now the same protocol is already available for xmpp, its called omemo (http://conversations.im/omemo). It just need a pull request to implement the same in kontalk (conversations already have it implemented). kontalk/androidclient#538 |
|
Interesting stuff, @pravi! Too bad |
|
@SecUpwN since kontalk is xmpp based, it could be added to xmpp apps like ChatSecure (just add key based authentication and phone number to xmpp id conversion logic). If we are spending efforts for truly federated Free Software app that is easy to use, then I feel focusing on kontalk is better, as federation is guaranteed. There is no guarantee LibreSignal will always work with Signal and the federation is really namesake when there is only a single server at the center and any new server has to be manually approved by Open Whisper Systems. |
|
I feel the problem is scattering of resources, communities that are isolated now should come together. There is already a good sign as ChatSecure joining hands with Conversations. Now LibreSignal joining hands with kontalk would be super cool! If we make a good effort, I think we can crowd fund Kontalk support in ChatSecure. |
|
@SecUpwN kontalk support is planned for ChatSecure ChatSecure/ChatSecure-iOS#370 |
|
@pravi LibreSignal is using Axolotl for encryption. (AFAIK) Kontalk isn't. That's why I prefer LibreSignal. |
|
Also: For voice calls you can use a SIP client with ZRTP support. |
|
@mimi89999 Signal has axolotl but no real fedeartion (its hard coded which servers are federated and its centrally controlled). Kontalk does not have axolotl, but true federation with any xmpp server out there. if you want axolotl and true federation you can start from kontalk and signal. Kontalk's axolotl/omemo support is a pull request away, its in the roadmap, if anyone is impatient, they can send a pull request today. Now if you want true federation in Signal. You can just request and wait. There is no guarantee a new server will be accepted to Signal federarion or a server's acceptance is revoked. |
|
@pravi Kontalk is insecure as hell. Basic XMPP + OMEMO (Axolotl implementation) is much better option. But it is also much less convenient than Signal for common users. |
|
@xmikos why is it insecure? Can you explain? It uses gpg for encryption. The only drawback is lack of forward secrecy, which can be fixed by implementing omemo. |
Conversations is a quite good option. You only need to find a good XMPP server (or host one). There should be also an OMEMO plugin for Gajim (Desktop). |
|
@mimi89999 finding a server and finding contacts is an extra step compared to both kontalk and signal. Finding a server is still okay, having to manually find xmpp ids of all your contacts is not an easy step for most people. Kontalk is the right compromise for simplicity and privacy. Those who care can have basic xmpp while you can recommend kontalk to any non technical crowd comfortable with WhatsApp style messaging, a cheaper extention of sms/text messages with easy to use groups. Once diaspora gets xmpp in stable (we already run it on poddery.com and diasp.in), and it becomes popular, contact discovery can be solved to a large extend. |
|
But Kontalk doesn't have such a strong encryption.... |
|
@mimi8999 its true kontalk does not have forward secrecy, but claiming it does not have strong encryption is not true. Substantiate your claim. It uses well proven gpg encryption. If some one gets hold of your key, they can decrypt your past conversation, if they have stored them in hope of getting your key. That is all the weakness kontalk has. As mentioned earlier, its an easy code fix by adopting omemo and kontalk already accepted it in their roadmap. The issue with Signal is social with zero hope of fixing judging their past responses. Also using a new client for ZRTP+SIP means more steps and apps and social challenge of getting your contalks on it. |
|
@pravi In wake of Snowden revelations, no communication protocol should be called secure if it doesn't implement forward secrecy. It is a must and should be used by default (so e.g. something like Telegram with non-default secure chats is not enough, same as non-default OMEMO in XMPP). But I agree that another ZRTP+SIP client for secure voice/video calls is bad solution. We need to make it work in LibreSignal, the problem is how to make it. Somebody said that PhoneLibre (originally RedPhone) still works for them, if it is true then RedPhone servers still implement old SMS-based signalling (not only Google Cloud Messaging). We can port it from RedPhone back to LibreSignal (but of course there is still risk that Open Whisper Systems will remove it in the future). |
|
I don't think that using a proprietary server is a good idea... Somebody should convince OWS to make it FOSS... |
|
@DroidFire |
|
I think we are getting sidetracked for this issue. "Voice calls are not working" through WebSocket and they will continue to not work unless Open Whisper Systems offers a server-side alternative to the now exclusively Google Cloud Messaging, or LibreSignal implements open-source components necessary to connect with Google Cloud Messaging. In the meantime, smartphones without Google Play Services can implement the earlier mentioned workaround. The discussion on whether LibreSignal should or should not implement GCM through open-software software should perhaps be done somewhere else (maybe by opening a new issue...?). My perspective is that there is already a version of LibreSignal which relies on Google Play Services, so a certain commitment to Google is already accepted. Implementing internal GCM support would reduce the threshold to use LibreSignal on smartphones without Google Play Services without sacrificing functionality, unlike with the WebSocket version. It would also not force people to use proprietary software or follow a lengthy installation procedure of microG if they want to make secure audio calls. [edit] [edit2]
¹ The version from this GitHub repository. Also offered by the 'experimental' F-Droid repository at: https://fdroid.eutopia.cz |
|
If the current libresignal implementation works with the microg or proprietary GCM, then I'm actually fine with it and this issue can be closed, IMHO. Unfortunately, the current situation is that i do have proprietary GCM working on this phone and phone calls are not working with LibreSignal. I haven't tested with microg, but if that works, then maybe the resolution to that issue is simply to document how to setup microg better. Then another issue should be open for websocket voice calls, which is, in my opinion pie-in-the-sky stuff because we don't control what OWS will do and would just have to wait and see. This issue is about fixing phone calls. It can be done with free software, and, with appropriate warnings, should be done, imho. |
|
@anarcat If you do have proprietary GApps or opensource microG installed on your phone, then you don't need to use this WebSocket fork and can install builds from original sources which I provide in main repo on https://fdroid.eutopia.cz. They are also named LibreSignal, which can be maybe confusing (this name predated LibreSignal project on GitHub). |
|
Well, yes, this is totally confusing. Especially since it's unclear what will end up in F-Droid officially in the end - it would be great to have something that just Generally Works in F-Droid. Let's see if i get this right:
In the above:
Is that about right? I think it would really help in removing this confusion if the two LibreSignal builds would merge somehow, or at least have one change his name to alleviate this confusion. As things are now, as a user, I ended up installing the official Signal client from Google Play (by downloading it out of band with gplaycli) instead of using the Eutopia repository -- which I should probably have done instead because I would get updates... But yeah, this is getting totally off-topic here. |
|
@xmikos I did not yet thank you for offering those F-Droid repositories. Thanks! And yes, it might be a bit confusing with names. I updated the table in my previous comment to clarify this.
I understand your opinion. However, it does not really support the slogan of this repository:
The wrong impression would be given if this text was still used to describe a version that implements microG's GCM support, due to that a connection to Google is required. If a microG-based version is ever offered, this description has to change. It depends on how 'stubborn' the members of this repository are. @mimi89999 has already indicated that he prefers not to use GCM at all, and I also understand this opinion. Therefore, maybe another fork of Signal has to be made, if there is any interest in a voice call-enabled version.
I tested the official Signal client from the Play Store with microG a while ago. It did not work at the time. However, it does work with LibreSignal (Eutopia). So yes, it should be correct. |
|
@Zepmann that wasn't clear to me at all here. There's clearly a namespace problem because we now have two applications named LibreSignal that clash with each other (and this one came last, it seems). So that is one issue that I think we can adress separately, and I opened #28 to clear that up. I understand the purpose of this fork, but it was also not clear to me that this project was ready to completely drop the voice calling functionality to get away from Google's infrastructure. I do not find the project useful if I cannot make phone calls: to talk to my contacts, I can use other means (like XMPP) for text messaging. The killer feature here is voice, and I think it would be preferable for the client to still talk to GCM, even if that is an option disabled by default, rather than to kill the voice feature completely. Finally, if that is not an option, I think this issue should just be marked as closed and move the discussion to a more clearly framed issue, called (say) "Implement WebSocket support in Redphone", because otherwise you're going to get zillions of confused people coming here like me looking for voice support that might never come. As a last work, I must say I really appreciate the work everyone is doing here, and I cannot encourage you enough to keep pushing forward. Thanks for everything. |
Me neither, until the clarification that @mimi89999 made today.
I agree, and hope @xmikos will keep offering the LS (Eutopia) version for a long while. There will be many people who install Signal through the Play Store, who do have call functionality. I'd rather be able to voice call with a large audience, rather than limiting myself.
Again, I agree. Just put a big first-time warning on it, and then do not bother the user again.
Also agree. I think the discussion here is done if it remains a 'wontfix'. And also thanks for your contribution and insight. |
|
@LibreSignal Do you think that microg should be added in LibreSignal? |
|
I hope that WS will open source the RedPhone server... |
The links, that you gave me are links to the apps that you install on your device. In LibreSignal GMS libs should be added to support GCM |
|
This is the microg GMS lib that can be included in apps: https://github.com/microg/android_external_GmsLib |
|
I think there is no FOSS replacement for the GCM lib. |
|
Is it not possible to grab and adjust the relevant code from GmsCore and extend LibreSignal/libtextsecure-java? There is not a ready to use library. Is that necessary? |
AFAIK there is only the proprietary one and the microg one, but AFAIK it doesn't support GCM And yes, it's necessary. |
I think it should be possible. @LibreSignal could you please check that? |
|
I was under the impression that microg did feature a freed GCM implementation. This is clearly stated here: http://zepman.tweakblogs.net/blog/12999/signal-on-android-without-google-play-services Quote:
The microg website also explicitely states that Signal is one of the goals of the project: Quote:
Why are we rehashing all this? The only decision that needs to be reached here is if this specific fork of LibreSignal (LibreSignal GH or LibreSignal Websocket or whatever it's called) will implement GCM support or not. That implementation can be totally independent of GCM, ie. to let the user choose if they use the builtin proprietary GCM libraries or go with the microg hack. |
Yes, microG has a free GCM client-side implementation. No, microG does not provide a ready to use library to use GCM directly in your own applications, which would make your application work without the installation of Google Play Services or microG.
I think there are two questions. First of all, there is yours (will this fork implement GCM support, so that GCM will be used if either Google Play Service or microG is available?). The second one is mine (will this fork implement open-source GCM code so that the installation of Play Store Services or microG is not necessary anymore?). Based on mimi89999's comments, the answer to both questions is most likely 'no'. Feel free to correct me. |
|
Okay well then I'll split this off in different issues because i'm going crazy here. |
|
@xmikos What do you think? |
|
@mimi89999 I am not sure what to do, maybe there could be experimental microG branch of LibreSignal. But I am not going to implement it myself, it will be really a lot of work... if someone is interested in it, they can start by creating their own FOSS GCM library project for inclusion into apps without being dependent on microG framework (it will be useful for a lot of projects, not just LibreSignal)... |
|
(I moved my comment here: #30 (comment)) |
|
Just found this https://github.com/skal1ozz/RedPhoneServer |
Looks good! Mentioning its maintainer @skal1ozz so that he may helps us on this here. |
|
@pravi @mimi89999 Perhaps it's time to close this issue as obsolete? |
|
There is some discussion in the German open source messenger scene about this. Could someone clarify: Is the voice-calling part of the server source code for the official Signal free and open source? If so, where can I find the sources? Thanks in advance! |
I get 'login failed'. I use 3.12 websockets version. Is it expected to work on websockets version? ie, does signal server support websockets for voice too?
The text was updated successfully, but these errors were encountered: