aping-plugin-openweathermap

    0.8.0 • Public • Published

    apiNG

    Join the chat at https://gitter.im/JohnnyTheTank/apiNG npm version Bower version

    apiNG-plugin-openweathermap is a OpenWeatherMap API plugin for apiNG.

    Information

    Documentation

    1. INSTALLATION
      1. Get file
      2. Include file
      3. Add dependency
      4. Add plugin
    2. API KEY
      1. Generate your api_key
      2. Insert your api_key into aping-config.js
    3. USAGE
      1. Models
      2. Requests
      3. Rate limit

    1. INSTALLATION

    I. Get file

    Install via either bower, npm, CDN (jsDelivr) or downloaded files:

    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

    1. Login on openweathermap.org
    2. Open home.openweathermap.org
      • There is your api_key

    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>'}
                ],
                //...
            }
        });
    }]);

    ⚠️ 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

    Install

    npm i aping-plugin-openweathermap

    DownloadsWeekly Downloads

    1

    Version

    0.8.0

    License

    MIT

    Last publish

    Collaborators

    • johnnythetank