aping-plugin-openweathermap
v0.8.0
Published
OpenWeatherMap plugin for apiNG
Downloads
9
Maintainers
Readme
apiNG-plugin-openweathermap is a OpenWeatherMap API plugin for apiNG.
Information
- Supported apiNG models:
weather
- This plugin supports the
get-native-data
parameter - This plugin needs an api key :warning:
- Used promise library: angular-openweathermap-api-factory (included in distribution files)
Documentation
- INSTALLATION
- Get file
- Include file
- Add dependency
- Add plugin
- API KEY
- Generate your
api_key
- Insert your
api_key
intoaping-config.js
- Generate your
- USAGE
- Models
- Requests
- Rate limit
1. INSTALLATION
I. Get file
Install via either bower, npm, CDN (jsDelivr) or downloaded files:
bower install apiNG-plugin-openweathermap --save
npm install aping-plugin-openweathermap --save
- use CDN file
- download apiNG-plugin-openweathermap.zip
II. Include file
Include aping-plugin-openweathermap.min.js
in your apiNG application
<!-- when using bower -->
<script src="bower_components/apiNG-plugin-openweathermap/dist/aping-plugin-openweathermap.min.js"></script>
<!-- when using npm -->
<script src="node_modules/aping-plugin-openweathermap/dist/aping-plugin-openweathermap.min.js"></script>
<!-- when using cdn file -->
<script src="//cdn.jsdelivr.net/aping.plugin-openweathermap/latest/aping-plugin-openweathermap.min.js"></script>
<!-- when using downloaded files -->
<script src="aping-plugin-openweathermap.min.js"></script>
III. Add dependency
Add the module jtt_aping_openweathermap
as a dependency to your app module:
angular.module('app', ['jtt_aping', 'jtt_aping_openweathermap']);
IV. Add the plugin
Add the plugin's directive aping-openweathermap="[]"
to your apiNG directive and configure your requests
<aping
template-url="templates/weather.html"
model="weather"
aping-openweathermap="[{'cityName':'munich'}]>
</aping>
2. API KEY
I. Get your api_key
- Login on openweathermap.org
- Open home.openweathermap.org
- There is your
api_key
- There is your
II. Insert your api_key
into aping-config.js
Create and open js/apiNG/aping-config.js
in your application folder. It should be look like this snippet:
angular.module('jtt_aping').config(['$provide', function ($provide) {
$provide.value("apingDefaultSettings", {
apingApiKeys : {
'openweathermap': [
{'api_key':'<YOUR_OPENWEATHERMAP_API_KEY>'}
],
//...
}
});
}]);
:warning: Replace <YOUR_OPENWEATHERMAP_API_KEY>
with your api_key
3. USAGE
I. Models
Supported apiNG models
| model | content |
|----------|---------|
| weather
| weather data |
II. Requests
Every apiNG plugin expects an array of requests as html attribute.
Requests by City name
| parameter | sample | default | description | optional |
|----------|---------|---------|---------|---------|
| cityName
| berlin
| | You can call by city name | no |
| countryCode
| de
| | ISO 3166 country codes | yes |
| timeSlot
| forecast5
| now
| Valid values: now
and forecast5
(5 days forecast) |
| type
| like
| | To set the accuracy level either use the accurate
or like
type parameter. accurate
returns exact match values. like
returns results by searching for that substring | yes |
| units
| imperial
| metric
| Temperature is available in Fahrenheit, Celsius and Kelvin units. For temperature in Fahrenheit use imperial
. For temperature in Celsius use metric
. For temperature in Kelvin use kelvin
| yes |
| language
| ru
| en
| English: en
, Russian: ru
, Italian: it
, Spanish: es
(or sp
), Ukrainian: uk
(or ua
), German: de
, Portuguese: pt
, Romanian: ro
, Polish: pl
, Finnish: fi
, Dutch: nl
, French: fr
, Bulgarian: bg
, Swedish: sv
(or se
), Chinese Traditional: zh_tw
, Chinese Simplified: zh
(or zh_cn
), Turkish: tr
, Croatian: hr
, Catalan: ca
| yes |
Sample requests:
[{'cityName':'london'}, {'cityName':'ney work city', 'units':'imperial'}]
[{'cityName':'berlin', 'countryCode':'de', 'language':'de', 'timeSlot':'forecast5'}]
Requests by City ID
| parameter | sample | default | description | optional |
|----------|---------|---------|---------|---------|
| cityId
| 2172797
| | You can call by city ID. API responds with exact result. List of city ID city.list.json.gz can be downloaded here. | no |
| timeSlot
| forecast5
| now
| Valid values: now
and forecast5
(5 days forecast) |
| units
| imperial
| metric
| Temperature is available in Fahrenheit, Celsius and Kelvin units. For temperature in Fahrenheit use imperial
. For temperature in Celsius use metric
. For temperature in Kelvin use kelvin
| yes |
| language
| ru
| en
| English: en
, Russian: ru
, Italian: it
, Spanish: es
(or sp
), Ukrainian: uk
(or ua
), German: de
, Portuguese: pt
, Romanian: ro
, Polish: pl
, Finnish: fi
, Dutch: nl
, French: fr
, Bulgarian: bg
, Swedish: sv
(or se
), Chinese Traditional: zh_tw
, Chinese Simplified: zh
(or zh_cn
), Turkish: tr
, Croatian: hr
, Catalan: ca
| yes |
Sample requests:
[{'cityId':'2172797', 'units':'imperial'}]
Requests by Zip code
| parameter | sample | default | description | optional |
|----------|---------|---------|---------|---------|
| zip
| 94040
| | You can call by zip Code | no |
| countryCode
| us
| | ISO 3166 country codes | no |
| units
| imperial
| metric
| Temperature is available in Fahrenheit, Celsius and Kelvin units. For temperature in Fahrenheit use imperial
. For temperature in Celsius use metric
. For temperature in Kelvin use kelvin
| yes |
| language
| ru
| en
| English: en
, Russian: ru
, Italian: it
, Spanish: es
(or sp
), Ukrainian: uk
(or ua
), German: de
, Portuguese: pt
, Romanian: ro
, Polish: pl
, Finnish: fi
, Dutch: nl
, French: fr
, Bulgarian: bg
, Swedish: sv
(or se
), Chinese Traditional: zh_tw
, Chinese Simplified: zh
(or zh_cn
), Turkish: tr
, Croatian: hr
, Catalan: ca
| yes |
Sample requests:
[{'cityName':'94040', 'countryCode':'us', 'language':'de'}]
Requests by Coordinates
| parameter | sample | default | description | optional |
|----------|---------|---------|---------|---------|
| lat
| -13.163333
| | latitude of the location of your interest | no |
| lng
| -72.545556
| | longitude of the location of your interest | no |
| timeSlot
| forecast5
| now
| Valid values: now
and forecast5
(5 days forecast) |
| units
| imperial
| metric
| Temperature is available in Fahrenheit, Celsius and Kelvin units. For temperature in Fahrenheit use imperial
. For temperature in Celsius use metric
. For temperature in Kelvin use kelvin
| yes |
| language
| ru
| en
| English: en
, Russian: ru
, Italian: it
, Spanish: es
(or sp
), Ukrainian: uk
(or ua
), German: de
, Portuguese: pt
, Romanian: ro
, Polish: pl
, Finnish: fi
, Dutch: nl
, French: fr
, Bulgarian: bg
, Swedish: sv
(or se
), Chinese Traditional: zh_tw
, Chinese Simplified: zh
(or zh_cn
), Turkish: tr
, Croatian: hr
, Catalan: ca
| yes |
Sample requests:
[{'lat':'-13.163333', 'lng':'-72.545556', 'language':'es'}]
III. Rate limit
Visit the official OpenWeatherMap Price List
| Calls per | Free | |----------|---------| | minute (no more than) | 60 | | day (no more than) | 50,000 |
Licence
MIT