skype4pidgin
skype4pidgin copied to clipboard
Skypeweb plugin does not reconnect automatically
When my network connection breaks (moving from cable to wifi for example), my skype accounts get disbled: A popup in the bottom of the buddy list informs me: $skype_account_name disabled Failed getting Skype Token [Modify Account] [Re-enable] Clicking re-enable sometimes gets me reconnected, sometimes not. If I don't get reconnected, I'll have to activate the account again from the accounts menu.
Other account plugins reconnect automatically without me doing anything.
confirmed
Possible connected to: https://github.com/EionRobb/skype4pidgin/issues/364
Its pretty annoying, sometimes you have to restart pidgin or even login into web.skype.... to make it login on pidgin
confirmed
No need to post more "confirmed" comments. There's an "add your reaction" thing in the top right corner of the first post to add a +1, and a subscribe button on the right side to get notifications. Thanks for your understanding.
Same issue here... Skypeweb seems to stop trying to connect and comeback with the token error... compared to other services plugins...
a possible solution.
- increase connect attempt before stop
- add a feature to set the number of attempt
- add a feature to let tell the plugin try in a loop without stopping
i have a special setup where i use vpn/ssh etc.... and some time skype tunnel get disconnected for some seconds and skype never get connected back, even worst pidgin does not notify it until we open main window...
i will have a look on the code later and may be build an alpha version when i have the time...
Thanks anyway ;)
I pushed a commit a few hours ago that should help improve the situation, if people are able to test. :)
@EionRobb tested commit right now and automatic reconnect work :) many thanks... (until now i have problem every resume laptop from sleep, with wifi connect after 2second, pidgin-skypeweb newer reconnect)
Yep, seems to be working for me too, this would be a good reason for a release, I think:-).
BTW: WebUpd8 PPA for *buntu/Mint have it already :) https://launchpad.net/~nilarimogard/+archive/ubuntu/webupd8/+packages?field.name_filter=purple-skypeweb
BTW: WebUpd8 PPA for *buntu/Mint have it already :)
Fedora packages in main repository already updated too (in -testing).
Compiling for linux is some how simple... but what a hassle to compile it for windows, still can not have a compiled correct version... it's even easier to make modification over hex, disassembler... anyway. is https://eion.robbmob.com/libskypeweb.dll the current version ? if it is, it seems to work a little better but does not solve the problem
Managed to compile it i don't know how but anyway the commit does not fix the problem, it show the correct error most of time on no network situation (ssl connection failed) which is normal but it does not seems to reconnect automatically, plus sometimes the ssl error is replaced by the token error... i will try some modification and pull request also the tray icon should be updated when connection failed... looking for a king a similar functioning to purple-facebook
Yeeeeeaaaaahhhh i finally get rid of that annoying bug...
How to reproduce : connect to skype, cut the internet (without disconnecting the lan network)
The bug : instead of staying disconnected and reconnect when the network come back the account get disabled completely and pidgin automated reconnection does not work anymore, we need to re enable the account manually... in short term the plugin does not reconnect automatically
The quick fix (NOT FINAL !, but working) : under "skypeweb_login.c" Comment what's under the 3 ifs after "// grab PPFT and cookies (MSPRequ, MSPOK)" also comment the "Failed getting Magic T value" error and the "return;" after it.
Note 1 : PURPLE_CONNECTION_ERROR_* is not really necessary when network disconnection happen because pidgin itself manage the network connection loss and reconnect on it's own, and even notice it with "ssl connection failed" may be the function need to be rewritten to detect connection loss because for the moment it's confusing skype connection not working and network KO
Note 2 : i will make some advanced debugging this weekend and may be rewrite the function and pull request if i have some times for it...
Note 3 : a real paiiiiiiiiinnnnnnnnnnnnnn to setup the dev environment in windows for pidgin... but i finally get it setup correctly, working and compiling as intended
Note 4 : i will post a little "how to" setup the dev environment with cygwin/msys2 if needed
Note 5 : for those who want to test my version here is a release https://github.com/intika/Skypeweb_pidgin_plugin_reconnect_automatically_patch
Also i made a little patched version of pidgin as a workaround to change the tray icon when an account is disconnected or network is down https://github.com/intika/Pidgin_Notify_Disconnected_To_Tray_Icon
Actually, I noticed skypeweb gets disabled a lot for some reason - I never have to manually re-enable facebook or gtalk, but I have to reenable skype every three days or so. Is anyone getting the same behaviour? I sometimes use my computer offline but I am not sure if it is related.
I'm using fa888e082b012b2a2b71d455e3c38f62624912b6 (Dec 21) and still have this issue - after some period (10+ minutes) of absent internet connection I have to manually re-enable skype account in pidgin. All other protocols reconnects automatically after restoring internet connection.
The last commit adds a checkbox in the advanced tab, "Use alternative login method", which might help.
What exactly is the problem here?
Clicking the button to reconnect practically always works. Automatically reconnecting after one error would be fine with me. Is the plugin wrongly reporting some errors as fatal, and because of that causing Pidgin to not reconnect automatically?
It doesn't appear to try automatically reconnecting a few seconds later after an error. Clicking the button works, but often I forget to do this when pulling my laptop out of sleep. What steps should I take to gather enough logs to understand what's happening? (I use the Pidgin included with Debian 9 "Stretch" if it matters.) Would it be enough to open Help > Debug Window, put my PC to sleep, wake it up an hour later, and then submit the contents of that?
I just had the problem happen due to "failed getting PPFT value". The panel at the bottom of the contact list clearly said that the account was disabled, and the button was for re-enabling the account, not reconnecting. Yesterday I learned that when the button says reconnect, then Pidgin will reconnect automatically in a minute or so, but if it says re-enable, then I need to manually re-enable.
Pidgin considers some errors to be fatal, causing disabling, and other errors to be temporary, causing reconnection. You can see this in purple_connection_error_is_fatal(). You can see how skypeweb returns PURPLE_CONNECTION_ERROR_AUTHENTICATION_FAILED for "Failed getting PPFT value", which Pidgin considers fatal. Considering how after enabling the account login works, I think this ought to be treated as a non-fatal error, probably PURPLE_CONNECTION_ERROR_NETWORK_ERROR. I'm going to edit this now on my computer and recompile, and see what happens.
I too see "disabled: Failed getting PPFT value" as the reason when Pidgin asks me to "re-enable" my account. Is that enough, or if you want a debug log, how should I send it privately?
I just want to make this very clear. It's not a problem for me if a "failed getting PPFT value" error happens sometimes. I only want Pidgin to reconnect automatically after that error instead of me having to manually re-enable the account. Every time I remember, reconnecting worked on the first try after re-enabling the account.
Edit: I binary patched skypeweb.dll in Windows to make the PPFT error not fatal. So far so good. For current version 1.4, change is: 00007A27: 00 02.
I've made a fork that makes the PPFT error nonfatal (a PURPLE_CONNECTION_ERROR_NETWORK_ERROR) to see if that solves my problem. If tests on Pidgin 2.12.0 (libpurple 2.12.0) on Debian 9 over the next few days go well, I'll link a pull request.
Pidgin 2.13.1 purple-skypeweb 1.15-1 still has the same problem.
I tried the alternative login on the second tab of the skype account settings, and it seems to work: sometimes it gives some errors, but then reconnects. Not sure what this alternative method is, and why is it alternative then?
How to patch libskypeweb.dll through a hex editor? What are the offsets? What binary data needs to be changed? After exiting the standby mode, skype4pidgin loses connection with ppft error.
@Baltazar500 uhhhh wat?
Have you tried using the 'alternate auth' setting instead?
uhhhh wat?
I found this post https://github.com/EionRobb/skype4pidgin/issues/474#issuecomment-349817702 a solution to the problem :|
Have you tried using the 'alternate auth' setting instead?
I think this solution helped me. Thank.
I use this plugin with bitlbee (thanks for the plugin!!) and all works great, except that it does not reconnect automatically after sleep despite having the option auto_reconnect = 'true'.
I can reconnect manually without issue, but I have to do so after each sleep.
Auto-connecting after boot does work.
Note: I am using purple-skypeweb 1.5-1 on Arch Linux