WeatherAPI

Jaa meneillään olevat projektisi tai valmiit pelit muun yhteisön kanssa täällä.
Post Reply
MessyC
Newcomer
Posts: 10
Joined: Sat Mar 15, 2014 11:53 pm

WeatherAPI

Post by MessyC » Tue Aug 25, 2015 7:25 pm

Se on vihdoin täällä, API jota kukaan ei tarvinnut!

WeatherAPI on cbNetworkilla toimiva kirjasto, joka noutaa säätietoja osoitteesta openweathermap.org.
En itsekään tiedä mitä tälläisellä kukaan täällä tekee, mutta onpahan nyt tämäkin olemassa. Voihan sillä laittaa vaikka peliin dynaamisen sään tms. :) Kaiken tämän mahdollistaa tietenkin Marcoderin cbNetwork!

API-kutsuja on tällä hetkellä vain kourallinen, mutta niillä saa paikkatiedon, sekä yksinkertaiset säätiedot. API-kutsuja tulee vielä lisää, mutta kommentoi ihmeessä ominaisuuksia joita haluaisit tai jotka selvästi puuttuvat. Olisi myös hienoa saada palautetta, sekä koodia, jossa API:a hyödynnetään! Käyttö on tietenkin vapaata, kunhan alkuperä on mainittu, etkä levitä API:a tai sen osia ominasi.

Liitteenä .zip-tiedosto, joka sisältää WeatherAPI:n, cbNetworkin, sekä alempana olevan esimerkkiohjelman.

Manuaali:
  • _WAPIGetContent( _query$ ) - noutaa säätiedot ja palauttaa virhekoodin, onnistuneella noudolla koodi on 200
  • _WAPIErrorCode() - palauttaa virhekoodin
  • _WAPIGetAreaName() - palauttaa merkkijonon, joka on sääalueen nimi
  • _WAPIGetMain() - palauttaa merkkijonon, joka on yleinen kuvaus säästä
  • _WAPIGetDesc() - palauttaa merkkijonon, joka on tarkempi kuvaus säästä
  • _WAPIGetTemp() - palauttaa desimaaliluvun, joka on sen hetkinen lämpötila
  • _WAPIParse( _tag$) - purkkainen parseri, joka etsii WAPIContent:ista halutun tägin ja palauttaa sen arvon merkkijonona
  • WAPIContent - globaali muuttuja, joka sisältää JSON-formaatissa olevan säätiedon

Esimerkkiohjelma:

Code: Select all

//sisällytetään API
Include "WeatherAPI.cb"

//haetaan säätietoja, tässä käytetään Tamperetta.
//haun voi tehdä millä vain merkkijonolla.
rtn = _WAPIGetContent( "Tampere" )  


//jos palautui virhekoodi 200, luetaan säätiedot
If rtn = 200 Then
	
	name$ = _WAPIGetAreaName()	//alueen nimi
	main$ = _WAPIGetMain()		//yleinen säätiedote
	desc$ = _WAPIGetDesc()		//tarkempi säätiedote
	temp$ = _WAPIGetTemp()		//lämpötila
	
EndIf

Repeat
	
	//näytetään säätietoja ruudulla
	Text 0, 0, name
	Text 0,15, main + " - " + desc
	Text 0,30, temp + Chr( 176 ) + "C"
	
DrawScreen
Forever
Oheinen ohjelma näyttää tältä:
Image
Attachments
WeatherAPI.zip
(60.44 KiB) Downloaded 32 times

User avatar
Wingman
Devoted Member
Posts: 594
Joined: Tue Sep 30, 2008 4:30 pm
Location: Ruudun toisella puolella

Re: WeatherAPI

Post by Wingman » Tue Aug 25, 2015 9:43 pm

Hyvän näköinen pikkusofta, säätiedot tosni löytyy nykyään ihan kaikkialta.. Toisaalta, tällä APIlla saa säätiedot kaiken muun lisäksi myös CB-ohjelmiin!

Koodausprojektina mikätahansa API on hyvä, sillä vaikka sille ei tulisi käyttöä, on sitä tehdessä varmasti oppinut paljon, jos ei muuta niin sen, miten esimerkiksi säätiedot tulee netistä ja miten ne parsitaan.
- - - -

User avatar
CCE
Artist
Artist
Posts: 650
Joined: Mon Aug 27, 2007 9:53 pm

Re: WeatherAPI

Post by CCE » Tue Aug 25, 2015 9:55 pm

Hieno kirjasto. Olet saanut myös JSON:in jäsentelyn koodattua kunnioitettavan pieneen tilaan :D

Post Reply

Who is online

Users browsing this forum: No registered users and 3 guests