User Manual

User Manual:

Open the PDF directly: View PDF PDF.
Page Count: 25

DownloadUser Manual
Open PDF In BrowserView PDF
Technical
M​ANUAL
Weather Data API, Weather Data Messenger
and Little_R Generator
By
MUTESASIRA JOVAN
KYEBAMBE SARAH
OKWII STANLEY
MULONDO MOSES

JUNE 2018

BSE 18-8
0

Revision Sheet
Release No.
Rev. 0
Rev. 1
Rev. 2

Date
10/05/2018
19/05/2018
04/06/2018

Revision Description
User’s Manual Template and Checklist
Initial Work
Revision 1: To Reflect Prototype 1.0

USER'S MANUAL
BSE 18-8
1

TABLE OF CONTENTS
GENERAL INFORMATION
1.1 System Overview
1.2 Project References
1.3 Authorized Use Permission
1.4 Points of Contact
1.4.1 Information
1.5 Organization of the Manual
1.6 Acronyms and Abbreviations

6
6
6
6
7
7
7
8

SYSTEM SUMMARY
2.1 System Configuration
2.2 Data Flows
2.3 User Access Levels

10
10
10
11

GETTING STARTED
3.1 Logging On
3.2 System Menu
3.2.1 Login/Register
3.2.2 Documentation
3.3 Resetting User Password on forgetting
3.4 Exit System

13
13
13
13
13
14
14

USING the SYSTEM (ONline)
4.1 Weather API Endpoints
4.1.1 Manual observations for today endpoint
4.1.2 AWS observations for today endpoint
4.1.3 Observations for a Specific Day endpoint
4.1.4 Observations for a Specific Date Range endpoint
4.1.5 AWS Observations for a Specific date and time endpoint
4.1.6 Manual station Observations for a Specific date and time endpoint
4.1.7 Observations for the recent 30 days endpoint
4.1.8 Observations for the recent 7 days endpoint
4.1.9 Available active stations that post to the repository endpoint
4.2 Weather API Key Generation
4.2.1 Weather API Account Registration
4.2.2 Weather API Login

16
16
16
16
17
17
17
18
18
19
19
19
19
19

BSE 18-8
2

4.3 Special Instructions for Error Correction
4.4 Caveats and Exceptions
Appendix

20
20
22

BSE 18-8
3

1.0

GENERAL INFORMATION

BSE 18-8
4

A.

GENERAL INFORMATION
1.1

System Overview

The ​Weather Data API is web based system that provides easy and efficient access to weather
data. The data available includes that from local manual stations and automatic weather stations
stored in the Weather Data Repository(WDR)[1]. The weather data API allows programmers
who are interested in using the weather data to access it easily and performs clearly defined
functions for which there is a readily identifiable security consideration and need. In addition, it
also provides general automatic data processing or network support for a variety of users and
applications.
Current operational status:
● Partially Operational.
● Under development.
Weather Data Messaging app a​ nd ​Little_R Generator a​ re small applications that use data
provided by the weather API for specific purposes. These applications achieve a streamline data
flow from the weather data repository to both the WRF model and the message switching system
at the national meteorological center.

1.2

Project References

References that were used in preparation of this document in order of importance to the end user.
[1] "Weather Data Repositories – WIMEA-ICT", ​Wimea-ict.net​, 2018. [Online]. Available:
https://wimea-ict.net/?page_id=1844. [Accessed: 07- Jun- 2018]
[2] J. Michael J. Kavulich, "WRFDA Online Tutorial", ​Www2.mmm.ucar.edu,​ 2018. [Online]. Available:
http://www2.mmm.ucar.edu/wrf/users/wrfda/OnlineTutorial/Help/littler.html. [Accessed: 07- Jun- 2018]

1.3

Authorized Use Permission

The WDR API system provides users with access to a variety of resources on the website which
includes documentation, about and signing up for an API key that enables users to use the
Weather API. The Weather Data Messaging Application administrator can add
recipients,edit,and remove for the weather messaging application. The Little_R generator has no
authorization, user are availed with the Little_R files through a web portal.

BSE 18-8
5

1.4

Points of Contact

1.4.1

Information

For additional information, please contact any member of the development team shown below:Name

Email

Phone

Mutesasira Jovan

mutesasirajovan@gmail.com

+256 702 563 825

Kyebambe Sarah

kyebambesarah75@gmail.com

+256 704 602 453

Moses Mulondo Kasozi

mulondo26@gmail.com

+256 703 493 608

Okwii Stanley

stanleeparker12@gmail.com

+256 785 041 234

1.5

Organization of the Manual

To achieve its purpose and aims, the manual is organized as follows:
A. GENERAL INFORMATION: It presents a short description of the system and
reasons for its development. It contains definitions of the basic terms and entities
related to the use of the system, the knowledge of which facilitates the clear
understanding of this manual.
B. SYSTEM SUMMARY: Contains a general overview of the system written in
non-technical terminology. The summary should outline the uses of the system in
supporting the activities of the user and staff.
C. GETTING STARTED: Provides a general walkthrough of the system from
initiation through exit. The logical arrangement of the information shall enable
the functional personnel to understand the sequence and flow of the system.
D. USING THE SYSTEM (ONLINE): Provides a detailed description of the online
system from initiation through exit, explaining in detail the characteristics of the
required input and system-produced output.

BSE 18-8
6

1.6

Acronyms and Abbreviations

A list of the acronyms and abbreviations used in this document and the meaning of each.
App

Application

WDR

Weather Data Repository

WRF

Weather Research Forecasting Model

WIMEA-ICT

Weather Information Management in East Africa ICT

SMS

Short Messaging Service

TOU

Terms of Use

TDCF

Table Driven Code Forms

URI

Uniform Resource Identifier

API

Application Programming Interface

WMO

World Meteorogical Organization

JSON

JavaScript Object Notation

BSE 18-8
7

2.0

SYSTEM SUMMARY

BSE 18-8
8

B.

SYSTEM SUMMARY
2.1

System Configuration

The Weather Data API consists several interfaces some of which are accessible by guest users
(not logged in) and others are accessible to logged in users.
Before logging in, a guest can access the home, documentation, about, blog, register and login
pages.The home page displays a short summary of the services offered by the API. The
documentation page displays instructions on how to use different endpoints of the API to get
desired user service. The about page displays a detailed description about the Weather Data API
and the system at large.The blog has information about the developers of the API. The login page
has a form filled by the user who has logged while the register page has a form to fill in order get
an account with the weather data API.
After logging in a user can access all the above pages and in addition, has access to the logged
in User page. This page gives a user access to an API key which the user appends to the API url
to access the data at different end points.
The Weather Data Messaging application converts the data is converted from JSON format to
Table Driven Code format which is required at the national Meteorological Centre. It has a user
interface where an administrator is able to add another recipient and also view all the recipients
in the system. once a recipient is added, they will automatically receive emails and SMS
containing the weather data in after every 30 minutes.
The Little_R generator is an application that runs on the background on the server. It creates
Little_R files by consuming the weather data from the API as input, performs data manipulation
to achieve consistency in the standards recommended by WMO[2] for little_R files. The
application sends the little_R files created to a web portal from which they can be accessed,
downloaded and used for weather research and forecasting.

2.2

Data Flows

Users input there emails, username and passwords into the sign-up form on the weather data API
website. After signing in, users can access their API key which is unique for every user. The API
receives fetches from the Weather Data Repository(WDR) and transforms it into JSON format,
which is accessible through the endpoints. WDR contains recorded at both the manual and
automatic weather station.
The Weather Messaging Application uses one of the API’s endpoint, which returns the current
data. The endpoint provides the current weather data in JSON format. The Weather Messaging
Application gets the JSON data, transforms it to TDCF and sends email or sms to specified
recipients. The system administrator adds a recipient to the Weather Messaging Application and
can edit and delete a recipient. Once a recipient is added, they will receive emails and sms
containing the weather. The weather data is sent at interval of 30 minutes in TDCF format.
BSE 18-8
9

The Little_R Generator gets its input data through the Weather Data API in JSON format. It
takes in data specific to a given station and recorded at a particular time since little_r
observations are created basing on a station. From the station data provided by the API, it filters
out parameters required for the creation of the little_r file such as temperature, humidity, wind
speed, wind direction and altitude. Before use of these parameters, it performs data manipulation
to ensure that parameters passed in the correct units as recommended by the WMO and
calculations to obtain derived values e.g. dew point which is calculated from the wet and dry
bulb temperature data.
Once all the parameters have been sanitized, they are fed into a program which produces a
Little_R file as output. The created little_R file is moved into a directory on the server from
which it can be accessed through the web portal.

2.3

User Access Levels

The Weather messaging Applications administrator can edit and delete the recipient for the
weather data messaging application. Users can sign up on the API interface and also login to
access the API key.
The Weather API has one User access Level.
Little R Generator has read, write and execute access Level while all weather/climate forecasters
have read access to the files. But the forecasters have downloaded the file onto their personal
computers, they get all access to that file.

BSE 18-8
10

3.0

GETTING STARTED

BSE 18-8
11

C.

GETTING STARTED
3.1

Logging On
Weather Data API website.
A user email and password is required to log onto web interface of the Weather
API.
Weather Data Messaging application​.
The application requires the system’s administrator to log in so as to add, edit or
remove a recipient.

3.2

System Menu
Weather Data API website.
On visiting the Weather API interface the user will see a menu which consists the
Home, Documentation, Blog and About links.In the right top corner, he/she sees a
Login and Register links.

3.2.1

Login/Register
Weather Data API website.
Registered users are those who have been given a username and password for the
Weather API. A registered user has additional access over the unregistered (guest)
user for one or more Weather features. After registering a user can now access a
valid API key which is used to access weather data using different
endpoints/Urls.To register a user clicks in the register button in the top right
corner of the guest interface.
Weather Data Messaging Application.
The system’s administrator logs into the application and can add, edit and also
delete recipients.

3.2.2

Documentation
Both a registered and unregistered user (guest) can read about how to use
different endpoints/urls to route to appropriate functions which return required
data.To access the documentation a user clicks on the “Documentation” link on
the menu bar.

BSE 18-8
12

3.3

Resetting User Password on forgetting
Click “Forgot your password” link near the login button.
Fill in the a valid email you registered with the system.
And click the “send password Reset Link” button.
Open your email inbox and click on the sent link.
Your prompted to enter a new password for your account

3.4

Exit System
Click on logout at the top right corner of your interface..

BSE 18-8
13

4.0

USING THE SYSTEM (ONLINE)

BSE 18-8
14

D.

USING THE SYSTEM (ONLINE)
Weather Data API
4.1 Weather API Endpoints

This function directs URI/endpoints specified by the user to the appropriate method that returns
required weather data to the user according to the passed url arguments.
Any API endpoint that can be routed to the appropriate method to return data must begin with
http://wimea.mak.ac.ug/weatherapi/api/...
4.1.1 Manual observations for today endpoint
If a user wants to access all weather data for a specific manual station for the current day, he or
she uses the “manualCurrentObservations” ​endpoint that returns required data. With this
endpoint, the user specifies two parameters which includes the API key and the optional station.

4.1.2 AWS observations for today endpoint
If a user wants to access all weather data for a specific automatic station for the current day, he
or she uses the “aws CurrentObservations” ​endpoint that returns required data. With this
endpoint the user specifies two parameters which includes the API key and the optional
automatic station name.

BSE 18-8
15

4.1.3 Observations for a Specific Day endpoint
Here a user accesses weather data for a specified day and station. The user accesses the data
through the endpoint “specificyDate” as shown in the picture below.With this endpoint the user
specifies three arguments which includes the API key, date and the optional station.

4.1.4 Observations for a Specific Date Range endpoint
User accesses weather data for a specified date range and station.The user access the data
through the endpoint “specifyDateRange” as shown in the picture below.With this endpoint the
user specifies three compulsory arguments which includes the API key, datefrom and dateto. On
addition the user may append an optional station argument.

4.1.5 AWS Observations for a Specific date and time endpoint
User accesses AWS weather data for a specified date,time and station.The user access the data
through the endpoint “awsSpecificDateTimeStationObservations” as shown in the picture
below.With this endpoint the user specifies three compulsory arguments which includes the API
key, date and time. On addition the user may append an optional station argument.

BSE 18-8
16

4.1.6 Manual station Observations for a Specific date and time endpoint
User accesses Manual station weather data for a specified date, time and station. The user access
the data through the endpoint “manualSpecificDateTimeStationObservations” as shown in the
picture below.With this endpoint, the user specifies three compulsory arguments which includes
the API key, date and time. In addition, the user may append an optional station argument.

4.1.7 Observations for the recent 30 days endpoint
If a user want to access all weather data for recent 30 days, he or she uses the “data
forrecent30days” ​endpoint that returns required data. With this endpoint the user specifies two
parameters which includes the API key and the optional automatic station name.

BSE 18-8
17

4.1.8 Observations for the recent 7 days endpoint
If a user wants to access all weather data for recent 7 days, he or she uses the
“dataforrecent7days” ​endpoint that returns required data. With this endpoint, the user specifies
two parameters which includes the API key and the optional automatic station name.

4.1.9 Available and active stations endpoint
If a user wants to access all stations data that submit data to this repository, he or she uses the
“availableStations” ​endpoint that returns required data. With this endpoint, the user specifies one
argument the API key.

4.2

Weather API Key Generation

With this function, a user is given a permanent API key of 60 characters after a successful user
account registration. This API can always be accessed by the user on logging into the system.

4.2.1 Weather API Account Registration
A user enters a unique username, valid email and password. On successful registration a user is
logged in and redirected to logged in page where he or she can copy the API key.

4.2.2 Weather API Login

BSE 18-8
18

A user enters email and password they used for registration of the API key to log in. On
successful login, the user redirected to the logged in page where he or she can copy the API key.

4.3

Special Instructions for Error Correction

As a condition of your use of the Services, you will not use the Services for any purpose that is
unlawful or prohibited by these terms, conditions, and notices. You may not use the Services in
any manner that could damage, disable, overburden, or impair any WIMEA-ICT/UNMA server,
or the network(s) connected to any WIMEA-ICT/UNMA server, or interfere with any other party
use and enjoyment of any Services. You may not attempt to gain unauthorized access to any
Services, other accounts, computer systems or networks connected to any WIMEA-ICT/UNMA
server or to any of the Services, through hacking, password mining or any other means. You may
not obtain or attempt to obtain any materials or information through any means not intentionally
made available through the Services.

4.4

Caveats and Exceptions

The services that WIMEA-ICT provides to you are subject to the following Terms of Use
("TOU"). WIMEA-ICT reserves the right to update the TOU at any time without notice to you.
The most current version of the TOU can be reviewed by clicking on the "Terms of Use".

BSE 18-8
19

APPENDIX

BSE 18-8
20

A.

SYSTEM SCREENSHOTS

Weather Data API: Home Page

Weather Data API: User’s Home Page

BSE 18-8
21

Weather Data Messaging Application: Add recipient

Weather Data Messaging Application: View recipients

BSE 18-8
22

Weather Data Messaging Application: Data in TDCF format

Little_r Generator: Web portal to access little_r files

BSE 18-8
23

Little_r Generator: Data in little_r format

BSE 18-8
24



Source Exif Data:
File Type                       : PDF
File Type Extension             : pdf
MIME Type                       : application/pdf
PDF Version                     : 1.7
Linearized                      : No
Producer                        : Skia/PDF m69
Page Count                      : 25
EXIF Metadata provided by EXIF.tools

Navigation menu