tigase / siskin-im

(M) Public Project of Tigase Messenger for iOS devices based on Tigase Swift XMPP library.
GNU General Public License v3.0
175 stars 37 forks source link

Works on some recent iPhone/iPad but not on old iPhone/iPad. #139

Open taxi-c opened 3 years ago

taxi-c commented 3 years ago

Describe the bug A clear and concise description of what the bug is. Depending on the server, I can’t connect or send message using OMEMO with an iPhone 6s, iPad6 running on IOS 14.7.1 but with an iPhone SE2 running on iOS 14.7.1 there is no problem. Siskin IM 6.4

To Reproduce Steps to reproduce the behavior:

  1. Go to ‘add an account’

  2. Open use a prosody server account: connect.

  3. See error: 3 orange dot on the account. Can’t add a contact

  4. Go to ‘add an account’

  5. Open use a ejabbered/tigase server account.

  6. Add a contact.

  7. Send none encrypted message : ok

  8. Send omemo encrypted messages:

  9. Error: ”there is no trusted device to send message to”

Expected behavior A clear and concise description of what you expected to happen. No problem.

Screenshots If applicable, add screenshots to help explain your problem.

Details (please complete the following information):

Additional context The only difference I can find out is on the apple store: iPhone SE2 app size : 21,7mo Old’s one: 30,6mo

hantu85 commented 3 years ago

There is the same logic used for iPhone SE2, iPad6th, and iPhone 6s in the app. Please check that on the old and on the new devices you have contacts with "presence subscription" set to "both".

Please also state which versions of eJabberd and Prosody you use and which device is connected to which server.

taxi-c commented 3 years ago

I'm not sure where to find it : contacts -> "+" -> "send presence updates" and "receive presence updates" are on. settings -> Contacts -> there is no "presence subscription"

Sorry, i've made a mistake : on prosody 0.11.9 it can connect but can't send omemo message.

on ejabberd (20.12.3 , 21.01-2 , 21.07 ) I have the 3 orange dot on the account. Settings->account "ejabberd"-> "General : Enable : on" but "Push notification: Enabled: can't be on"

taxi-c commented 3 years ago

I also try "snikket" which seems to be a fork of Siskin Im. Same problem, and same differences: about 10mo more for the app on the old devices.

hantu85 commented 3 years ago

on ejabberd (20.12.3 , 21.01-2 , 21.07 ) I have the 3 orange dot on the account.

This basically means that your client tries to connect but it is not able to connect - the connection hangs and due to that enabling push notifications or any other XMPP-related activity is not possible.

taxi-c commented 3 years ago

Thank you. So as I said before, I tried the four iPhone/iPad with these two sorts of servers trying to sending messages to iPhone/iPad/android on prosody/ejabberd servers. Only the iPhone SE2 was able to connect and send messages. Maybe you can give me an account/password so I try using this one. But not a tigase server, it works a little bit but I have still some issues. (I have tried sure.im)

Thanks for your help.

hantu85 commented 3 years ago

I think this issue is already solved in the beta build of Siskin IM on TestFlight. If I'm correct it was caused by differences in generating response by Prosody when requests were made by the user to his own account.

taxi-c commented 3 years ago

Thank you. I have TestFlight on my iPad, but no Siskin app beta to test. Can you send me a invitation code, please?

jtmaston commented 3 years ago

Thank you. I have TestFlight on my iPad, but no Siskin app beta to test. Can you send me a invitation code, please?

https://testflight.apple.com/join/zDSl1D3s

It's in the readme.md

taxi-c commented 3 years ago

Thank you. I tried the version 7.0 beta on my iPhone 6s and my iPad6th. They can exchange messages (encrypted or not) both of them using a prosody server. But if I try an ejabberd server, they can not access the server. This time, the 3 orange dots on the ID change to a grey dot.

hantu85 commented 3 years ago

Then your issue is with connectivity to this ejabberd server and not with SiskinIM not working on older devices.

I cannot tell what exactly is wrong here (as I do not have logs from the app nor access to this ejabberd server to gather logs).

taxi-c commented 3 years ago

But I can access these accounts with others applications on my iPhone and my iPad. And i can access these account with Siskin 6.4 on my iPhone SE2. So I'm still thinking the problem is related to old devices. Could it be related to the processor? Because when the app is compiled, the app size is different for the new processor and the old one?

licaon-kter commented 3 years ago

@taxi-c can you get any server side logs?

taxi-c commented 3 years ago

I use public xmpp that doesn't belong to me. And I don't know how to get some logs. You can tell me how to have the client side logs in the Siskin beta version, if it's possible. But for the server side logs, I think the better way, is to help me to register to one of you ejabberd server. I guess you have one to test purpose.

licaon-kter commented 3 years ago

Can you try with a free account on conversations.im ? No, we can't get server logs, but we exclude a server config issue.

taxi-c commented 3 years ago

I register an account on conversations.im and doesn't connect, stay grey.

And find a new issue, with the prosody server, a can receive messages but not send

licaon-kter commented 3 years ago

This is both via mobile data or Wi-Fi?

Are you in one of those countries that employ firewalls?

taxi-c commented 3 years ago

All through my house wifi for all of the devices. I don't have mobile data on my iPhone. Ivan test it through my phone mobile data. Yes, I live in a country where there is firewall.

licaon-kter commented 3 years ago

Test more servers... creep.im or draugr.de both use ejabberd

taxi-c commented 3 years ago

I didn't test using mobile data because my iPhone doesn't have mobile data.

Last time, I registered conversations.im using my android phone with conversations application.

So this time, I use Siskin 7.0 beta to register creep.im draugr.de and again conversations.im. They all pass through the registration without any problem. But they still don't connect. I have the grey dot.

So I use my iPhone se2 to add these new accounts, I can open them and send messages.

I do all of this without using any secure network with all my devices.

hantu85 commented 3 years ago

I've dug up my old iPhone 6s with iOS 14.8 and it works with conversations.im without any issues. It registers, connects, and sends messages - no issues.

I'm about to close this issue as it is not an app issue on the older devices (as I was not able to replicate the issue). I would suspect that for some reason the issue is related to "country firewall" but I'm not able to check what exactly is going on and know how to fix this "issue".

taxi-c commented 3 years ago

Thank you for trying on your iphone 6s. So i also try to update to ios 14.8 and ios 15.0. i have the same problem. I also try to use a vpn on my phone/ipad : same problem. As it could be possible that not all the traffic go through the vpn, i also use my computer as a vpn router and connect my iphone to it : same issue. And for my iphone SE2 on ios 14.7.1 14.8 15.0 , with or without vpn, it works fine.

As i can't give you more details or logs on the connection if later you have other tests to do i'll be glad to help. thanks