Hi Leute...
weil ichs mal wieder nicht Erwarten kann hab ich mich selber versucht damit etwas zu spielen...
leider mit *räusper* mäßigem Erfolg...
hab mal versucht das Googlemakro anzupassen... das es mit wunderground läuft... leider scheitert
es da schon im Ansatz an meinen Fähigkeiten
(man stellt sichs ja immer deutlich einfacher vor... )
jedenfalls hab ich mir bei wunderground (das ich soweit eigentlich ganz gut finde) einen Account
angelegt (free) .. daraufhin bekommt man Zugang zur API... (über einen eigenen Key)...
jetzt hab ich eben mal versucht was zu basteln... aber weiter wie bis zum "resolve" bin ich nicht
gekommen.. vielleicht kann ja mal einer von euch Profis mir zeigen, wie ich mit der GET Anweisung
und dem readtcp einen Wert in die Variable bekomm.
[highlight=epc]
//----------------------------------------------------------------------
// Abfrage von Wunderground
//
//----------------------------------------------------------------------
:begin Wunderground(Ort,Key,Refresh)
:info $Wetterabfrage... bla bla bla... Name des Macros + Zeit nach wieviel Minuten aktualisiert werden soll$\\
$Der Name des Ortes z.B"Massing" $\\
$nach wieviel Minuten soll refreshed werden$
:shortinfo $Wundergroundabfrage$
// Variablen
Ort^Port=0u16
Ort^IP=0u32
Ort^XMLAbfrPort = 80u16
Ort^XMLAbfrIP = 0u32
Ort^Freigabe=AUS
Ort^xmlText=$$
if cycle(02,00) then Ort^Freigabe=AUS endif
// TCP Verbindung aufmachen
if Ort^Freigabe==EIN then Ort^XMLAbfrIP = resolve($www.wunderground.com$) endif
if after(Ort^Freigabe==EIN,600u64) then {
connecttcp(Ort^XMLAbfrPort,Ort^XMLAbfrIP)
} endif
// TCP Anfrage senden
if after(Ort^Freigabe==EIN,1000u64) then sendtcp(Ort^XMLAbfrPort,Ort^XMLAbfrIP,$GET http://api.wunderground.com/api/6c54ebxxxxxxxxx48/forecast/lang
L/q/CA/massing.xml$) endif
// Empfang TCP Paketen
if event(readtcp(Ort^XMLAbfrPort,Ort^XMLAbfrIP,Ort^xm lText)) and Ort^IP==Ort^XMLAbfrIP then Ort^xmlText=Ort^xmlText endif
// TCP Verbindung schliessen
if after(Ort^Freigabe==EIN,10000u64) then {
connecttcp(Ort^XMLAbfrPort,Ort^XMLAbfrIP)
} endif
:end
[/highlight]
Ach ja.. und köpft mich bitte nicht gleich... wie schon erwähnt.. ich bin da kein
Profi.. aber Strg C + Strg V hab ich drauf... type it like Guttenberg...
Gruß Martin
weil ichs mal wieder nicht Erwarten kann hab ich mich selber versucht damit etwas zu spielen...
leider mit *räusper* mäßigem Erfolg...
hab mal versucht das Googlemakro anzupassen... das es mit wunderground läuft... leider scheitert
es da schon im Ansatz an meinen Fähigkeiten

(man stellt sichs ja immer deutlich einfacher vor... )
jedenfalls hab ich mir bei wunderground (das ich soweit eigentlich ganz gut finde) einen Account
angelegt (free) .. daraufhin bekommt man Zugang zur API... (über einen eigenen Key)...
jetzt hab ich eben mal versucht was zu basteln... aber weiter wie bis zum "resolve" bin ich nicht
gekommen.. vielleicht kann ja mal einer von euch Profis mir zeigen, wie ich mit der GET Anweisung
und dem readtcp einen Wert in die Variable bekomm.
[highlight=epc]
//----------------------------------------------------------------------
// Abfrage von Wunderground
//
//----------------------------------------------------------------------
:begin Wunderground(Ort,Key,Refresh)
:info $Wetterabfrage... bla bla bla... Name des Macros + Zeit nach wieviel Minuten aktualisiert werden soll$\\
$Der Name des Ortes z.B"Massing" $\\
$nach wieviel Minuten soll refreshed werden$
:shortinfo $Wundergroundabfrage$
// Variablen
Ort^Port=0u16
Ort^IP=0u32
Ort^XMLAbfrPort = 80u16
Ort^XMLAbfrIP = 0u32
Ort^Freigabe=AUS
Ort^xmlText=$$
if cycle(02,00) then Ort^Freigabe=AUS endif
// TCP Verbindung aufmachen
if Ort^Freigabe==EIN then Ort^XMLAbfrIP = resolve($www.wunderground.com$) endif
if after(Ort^Freigabe==EIN,600u64) then {
connecttcp(Ort^XMLAbfrPort,Ort^XMLAbfrIP)
} endif
// TCP Anfrage senden
if after(Ort^Freigabe==EIN,1000u64) then sendtcp(Ort^XMLAbfrPort,Ort^XMLAbfrIP,$GET http://api.wunderground.com/api/6c54ebxxxxxxxxx48/forecast/lang

// Empfang TCP Paketen
if event(readtcp(Ort^XMLAbfrPort,Ort^XMLAbfrIP,Ort^xm lText)) and Ort^IP==Ort^XMLAbfrIP then Ort^xmlText=Ort^xmlText endif
// TCP Verbindung schliessen
if after(Ort^Freigabe==EIN,10000u64) then {
connecttcp(Ort^XMLAbfrPort,Ort^XMLAbfrIP)
} endif
:end
[/highlight]
Ach ja.. und köpft mich bitte nicht gleich... wie schon erwähnt.. ich bin da kein
Profi.. aber Strg C + Strg V hab ich drauf... type it like Guttenberg...

Gruß Martin
Kommentar