Данная программа сообщает погоду в указанном городе на основе данных, предоставленных сервисом meteoservice.ru, за что ему большое спасибо.
При запуске meteo.rb программа спрашивает, в каком городе (Россия, Украина, Беларусь, Казахстан) интересует пользователя погода. Программа поддерживает (182 города RU, 10 городов UK, 4 города BL, 3 города KZ), список которых содержится в JSON файле вместе с ключами городов.
С версии 2.0, программа научилась парсить словарь синонимов и находить города даже по старым или неофициальным названиям. Например:
Кенигсберг = Калининград
Питер = Санкт-Петербург
Менеск = Минск
Одесса-Мама = Одесса
Спасск = Спасск-Дальний
После определения города, программа делает запрос на сервер meteoservice.ru и забирает оттуда нужный xml файл, после чего парсит его и выводит обработанную информацию пользователю с информацией о городе, температуре, скорости ветра и облачности в данный момент.
С версии 2.0, программа поддерживает ввод с любой буквы (раньше была проблема с юникодом) и теперь не требует официального названия города - благодаря словарю синонимов. Если город не будет найден, то выведет первый город из JSON файла - в данном случае город с ключом "37", которому соответствует значение "Москва".