fetch and listen
missing: actual weather service