Bug 226022 - weather widget doesn't retry to update the weater from internet
Summary: weather widget doesn't retry to update the weater from internet
Status: RESOLVED FIXED
Alias: None
Product: solid
Classification: Frameworks and Libraries
Component: networkmanagement (show other bugs)
Version: unspecified
Platform: unspecified Linux
: HI normal
Target Milestone: ---
Assignee: Will Stephenson
URL:
Keywords:
: 241768 251481 273182 282766 (view as bug list)
Depends on:
Blocks:
 
Reported: 2010-02-09 13:41 UTC by Mohd Asif Ali Rizwaan
Modified: 2023-11-08 21:33 UTC (History)
11 users (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Mohd Asif Ali Rizwaan 2010-02-09 13:41:44 UTC
Version:           unknown (using 4.3.95 (KDE 4.3.95 (KDE 4.4 RC2)), Kubuntu packages)
Compiler:          cc
OS:                Linux (i686) release 2.6.31-19-generic

I use ppp0 (bsnl evdo) internet using wvdial, which starts at boot time before the "kdm" starts; which means, the internet connection is available before login.

But, the weather applet, after login always complains of inability to get the weather data.

and the "error can't get weater info" dialog doesn't go away.

I need to manually "re-enter my city" information to get the applet going.

Expected behavior:

1. have an option to auto update on failure (retries etc...)
2. the error "notification" dialog should have "update now" option.
3. should allow the error notification dialog to be closed.

thanks.
Comment 1 Aaron J. Seigo 2010-05-11 05:39:20 UTC
*** Bug 220841 has been marked as a duplicate of this bug. ***
Comment 2 disabled account 2010-06-10 02:46:55 UTC
I experience the same problem in KDE SC 4.5 Beta 1, every time after boot, the weather forecast plasmoid is just a blue question mark, saying "please configure" and I get a message that the action to get the weather has timed out.
I solve this by going to the plasmoid settings and just clicking ok since my town (Edmonton, AB), is already entered. The provider is not BBC but iGoogle.
Comment 3 Artur Souza (MoRpHeUz) 2010-08-29 01:53:58 UTC
SVN commit 1169287 by asouza:

Make weather dataengine work if started without network

Always call setData() using the original source so it's initialized
and when we reset the ions, they have sources connected to them and are
able to communicate back.

Also, fix the ions to update their data into the weather engine and later
emit the signal that will make the engine force the clients (plasmoids) to
update using the new data.

This mostly fix the problem of turning the computer on without network,
getting network later and the weather plasmoids not updating.

CCBUG: 226022
CCBUG: 245639


 M  +5 -1      envcan/ion_envcan.cpp  
 M  +9 -3      ion.cpp  
 M  +5 -1      noaa/ion_noaa.cpp  
 M  +9 -1      wetter.com/ion_wettercom.cpp  


WebSVN link: http://websvn.kde.org/?view=rev&revision=1169287
Comment 4 Artur Souza (MoRpHeUz) 2010-08-30 18:24:36 UTC
SVN commit 1170055 by asouza:

backporting r1169287

Make weather dataengine work if started without network

Always call setData() using the original source so it's initialized
and when we reset the ions, they have sources connected to them and are
able to communicate back.

Also, fix the ions to update their data into the weather engine and later
emit the signal that will make the engine force the clients (plasmoids) to
update using the new data.

This mostly fix the problem of turning the computer on without network,
getting network later and the weather plasmoids not updating.

CCBUG: 226022
CCBUG: 245639



 M  +5 -1      envcan/ion_envcan.cpp  
 M  +9 -3      ion.cpp  
 M  +5 -1      noaa/ion_noaa.cpp  
 M  +9 -1      wetter.com/ion_wettercom.cpp  


WebSVN link: http://websvn.kde.org/?view=rev&revision=1170055
Comment 5 Tim Holy 2011-05-14 10:46:50 UTC
Thanks for the fix! In Kubuntu Maverick this suddenly started (mostly) working for me with updates that must have been released sometime towards the end of April.

However,  for me the fix is partial.
What works: I log in, but the network is not yet available. I start the wireless network via KNetworkManager, and very soon thereafter the weather applet updates itself. Hurray!

What doesn't work: then, I put my laptop to sleep, head in to work, and connect to the wired network (static IP). The weather applet no longer updates every 30 minutes. Moreoever, at the end of the day if I put my laptop back to sleep, disconnect, head home, and reconnect to my home's wireless network, the weather applet still fails to update. (Currently it is Saturday, but the weather applet is still showing the forecast for the previous Wednesday.) So it seems that it's been fixed for the case when the network wasn't initially available at all, but the more general problem of a temporary network change or disruption still seems problematic.
Comment 6 Nick Beatty 2011-06-17 01:07:36 UTC
Weather isn't updating for me any time after resuming from sleep, and on a desktop always connected to the internet.
Comment 7 Lamarque V. Souza 2011-10-15 21:57:55 UTC
*** Bug 251481 has been marked as a duplicate of this bug. ***
Comment 8 Lamarque V. Souza 2011-10-15 21:58:43 UTC
*** Bug 241768 has been marked as a duplicate of this bug. ***
Comment 9 Lamarque V. Souza 2011-10-15 21:59:19 UTC
*** Bug 273182 has been marked as a duplicate of this bug. ***
Comment 10 Aaron J. Seigo 2011-11-22 20:06:15 UTC
sounds like solid isn't telling us about the network connectivity on these devices.
Comment 11 Lamarque V. Souza 2011-11-23 01:01:21 UTC
kded's networkstatus module supports three backends: NetworkManager, ntrack and Wicd (this one since 4.7.2). Ntrack is the only backend that could detect interfaces started by wvdial (and Kppp for the matter).

Networkstatus' Ntrack backend is only compiled if ntrack library is installed when kde-runtime is compiled. Most distributions do not do that, so in my most cases ntrack backend is disabled.

Ntrack has a history of causing problems for networkstatus module. I, for one, had to recommend uninstalling it to several people who had instability problems.

One workaround for this problem is executing the command below at each login:

qdbus org.kde.kded /modules/networkstatus setNetworkStatus SolidNetwork 4

0 = Unknown
1 = Unconnected
2 = Disconnecting
3 = Connecting
4 = Connected

that will mark the KDE session as Connected.

You can even add that script to /etc/ppp/ip-up.d/ and another one to /etc/ppp/ip-down.d/ to set the networkstatus to unknown (or leave it online if there is another active Internet connection). Actually the script will have to be more complex because qdbus requires DISPLAY to be set so that it can talk to org.kde.kded :-/

As for the problem in comment #5 I fixed it one month ago and is available since 4.7.2:

https://projects.kde.org/projects/kde/kde-runtime/repository/revisions/987e18493c26ea52ca9ca216e4083a6fabb95092
Comment 12 Lamarque V. Souza 2011-11-23 01:05:57 UTC
*** Bug 282766 has been marked as a duplicate of this bug. ***
Comment 13 Tim Holy 2011-11-23 11:48:28 UTC
Hi Lamarque & Aaron,

I apologize for not being in a position to easily test your very promising-sounding work on this bug---I am still running Maverick and a bit reluctant to upgrade (basically, because of more scary-sounding bugs in recent Ubuntu releases I'm probably waiting until the next LTS). If I get a chance to try it out on a less mission-critical machine than my own laptop, I will let you know what happens.

However, even before verifying that it all works now, I want to sincerely thank both of you for your time and attention to this bug.  Your work extending & solidifying KDE's behavior makes an enormous difference to large numbers of people. I look forward to seeing the differences first-hand!

Best wishes,
--Tim
Comment 14 Lamarque V. Souza 2011-12-02 11:05:59 UTC
*** Bug 282766 has been marked as a duplicate of this bug. ***