EFTERLYSES: gnome-panel-applet temperaturhämtarprogram

Användarvisningsbild
whac
Inlägg: 465
Blev medlem: 11 dec 2006, 03:31
OS: Arch Linux
Ort: Mariestad
Kontakt:

EFTERLYSES: gnome-panel-applet temperaturhämtarprogram

Inlägg av whac »

Jag efterlyser gnome-panel-applet som hämtar temperaturen från en egenvald sida eller temperatur.nu likt temperatur.nu:s program temperaturkoll och som ser ut ungefär som gweather-applet. Någon som kan hitta något?
Användarvisningsbild
vulfgar
ung forumnörd
Inlägg: 12893
Blev medlem: 01 okt 2006, 22:31
OS: Ubuntu
Utgåva: 22.04 Jammy Jellyfish LTS
Ort: Bohuslän

Re: EFTERLYSES: gnome-panel-applet temperaturhämtarprogram

Inlägg av vulfgar »

Duger inte väder-appleten som finns? Det finns ju många svenska platser att välja på, det verkar som om det är flygplatsväder som används.
På internet vet ingen att du är en hund. ..... ~~~ ..... I'm a bitch! 8)
Användarvisningsbild
Smygis
Inlägg: 849
Blev medlem: 21 jun 2006, 18:41
OS: Ubuntu
Utgåva: 24.04 Noble Numbat LTS
Ort: Kramfors

Re: EFTERLYSES: gnome-panel-applet temperaturhämtarprogram

Inlägg av Smygis »

Vad är det för fel med den nuvarande lösningen?
Temperatur.nu vet jag inte om dem vill vara med på något sånt... Även fast det skulle gå att göra.
A Foolish Consistency is the Hobgoblin of Little Minds.Beware: In C++, your friends can see your privates!
Användarvisningsbild
whac
Inlägg: 465
Blev medlem: 11 dec 2006, 03:31
OS: Arch Linux
Ort: Mariestad
Kontakt:

Re: EFTERLYSES: gnome-panel-applet temperaturhämtarprogram

Inlägg av whac »

Grejen är just det, att det hämtas från flygplatser. :P

Mariestad har inte direkt någon flygplats och jag kan inte visa min egna temperatur som jag fångat via min egna 1-wire-temp-sensor.
Användarvisningsbild
vulfgar
ung forumnörd
Inlägg: 12893
Blev medlem: 01 okt 2006, 22:31
OS: Ubuntu
Utgåva: 22.04 Jammy Jellyfish LTS
Ort: Bohuslän

Re: EFTERLYSES: gnome-panel-applet temperaturhämtarprogram

Inlägg av vulfgar »

whac skrev:Grejen är just det, att det hämtas från flygplatser. :P

Mariestad har inte direkt någon flygplats och jag kan inte visa min egna temperatur som jag fångat via min egna 1-wire-temp-sensor.
När jag kollar så är inte alla flygplatser med i listan. Både Skövde och Lidköping borde vara med, men jag ser bara Skövde. Det spelar kanske inte nån roll för dej, men det är mysko. Intressant problem i alla fall, jag hittar inget sätt att ändra när jag kollar i manualen, men ska leta vidare.
Hmm, undrar hur det är i KDE, det finns väl en väder-applet till den panelen också?
På internet vet ingen att du är en hund. ..... ~~~ ..... I'm a bitch! 8)
Phlad1934
Inlägg: 25
Blev medlem: 04 sep 2007, 19:32
OS: Ubuntu
Utgåva: 12.04 Precise Pangolin LTS

Re: EFTERLYSES: gnome-panel-applet temperaturhämtarprogram

Inlägg av Phlad1934 »

Det enda jag kan rekommendera är Weather plugin för Firefox, det finns på Add-ons sida, lycka till O0
Användarvisningsbild
whac
Inlägg: 465
Blev medlem: 11 dec 2006, 03:31
OS: Arch Linux
Ort: Mariestad
Kontakt:

Re: EFTERLYSES: gnome-panel-applet temperaturhämtarprogram

Inlägg av whac »

Jag fulhackade ihop en adesklet, som gör ungefär det jag vill att den ska göra, den hämtar temperaturen och lägger den på skrivbordet. Ni kan läsa mer om den på min blogg: http://p1i-tips.blogspot.com/2008/04/ut ... -ditt.html eller på temperatur.nu-forumet: http://www.temperatur.nu/forum/viewtopic.php?t=398 Jag kan inte påstå att jag kan programmera, ni får gärna hjälpa till att utveckla. Målet är en lite gnome-panel-applet med ungefär motsvarande funktioner. :)
Användarvisningsbild
webaake
Inlägg: 3962
Blev medlem: 09 maj 2007, 09:46
OS: Xubuntu
Utgåva: 22.04 Jammy Jellyfish LTS

Re: EFTERLYSES: gnome-panel-applet temperaturhämtarprogram

Inlägg av webaake »

Kollade din blogg men hittade inget om 1wire-temp-sensorn. VAd är det för nåt? Verkar väldigt intressant!
Xubuntu på flera maskiner. Men inte Unity!
Mer Terminalanvändande i Ubuntu vore bra. Och Xfce. Och Mate.
Användarvisningsbild
Hund
Inlägg: 16492
Blev medlem: 25 jan 2007, 04:15
OS: Gentoo
Ort: Norrland
Kontakt:

Re: EFTERLYSES: gnome-panel-applet temperaturhämtarprogram

Inlägg av Hund »

I Hardy så har man ju vädret vid klockan. Eftersom jag inte bor i en stad som fanns med så använde jag mig av longitude och latitude koordinaten.
Linuxkompis - En vänlig Linux-gemenskap för alla!
rylleman
Inlägg: 477
Blev medlem: 23 apr 2007, 16:37
OS: Ubuntu
Utgåva: 12.04 Precise Pangolin LTS
Ort: bagarmossen

Re: EFTERLYSES: gnome-panel-applet temperaturhämtarprogram

Inlägg av rylleman »

Hund skrev:I Hardy så har man ju vädret vid klockan. Eftersom jag inte bor i en stad som fanns med så använde jag mig av longitude och latitude koordinaten.
Det verkar som den då plockar vädret från flygplatsen som ligger närmast.
Finns det något litet panelprogram som plockar vädret från SMHIs väderstationer, tex Kuggören och Utklippan?
Tinwelint
Inlägg: 1
Blev medlem: 26 jul 2010, 00:59
OS: Ubuntu
Utgåva: 22.04 Jammy Jellyfish LTS

Re: EFTERLYSES: gnome-panel-applet temperaturhämtarprogram

Inlägg av Tinwelint »

Det kanske är en lite gammal tråd men...
Jag har själv känt samma behov och hackat ihop en panel-applet som hämtar temperaturen från den här sidan:
http://celsius.met.uu.se/flogsta/flogstaobs.html
Vilket passar mig bra då jag bor i Flogsta i Uppsala.

Den enkla lösningen var väl egentligen att jag först knåpade ihop ett perl-skript som via en siddumpning från lynx och ett reguljärt uttryck plockar ut och skriver ut temperaturen (i terminalen). Sedan anropar panel-appleten det skriptet och visar temperaturen (uppdaterar den var femte minut eller när man trycker på den dessutom).

Jag postar koden här:

gettemp (perlskript)

Kod: Markera allt

#!/usr/bin/env perl
use strict;
use warnings;

my $indata = `lynx -dump http://90.230.81.83/last.htm 2>/dev/null`;

if($indata =~ /Temperatur.*\)\s+(-?\d+\.\d+)/){
print "$1\n";
} else {
print "--\n";
}
panel-appleten (baserad på instruktioner här)

Kod: Markera allt

#include <string.h>
#include <stdlib.h>
#include <panel-applet.h>
#include <gtk/gtklabel.h>
#include <stdio.h>
#include <time.h>


char *tempDown();

static gboolean aj_gettemp_applet_fill (PanelApplet *applet,
   const gchar *iid,
   gpointer data);
  
static gboolean
  on_button_press (GtkWidget *event_box, GdkEventButton *event, gpointer data);

static gboolean
time_update( gpointer data);



char *tempDown(){
  //string retval;
  char *retur = malloc( sizeof(char)*6 ); 

  FILE *fp = popen("gettemp", "r" );
  
  fgets(retur,sizeof(retur), fp );
 
  pclose( fp );
 
 //Ta bort newline
  char *p;
  if ((p = strchr(retur, '\n')) != NULL)
      *p = '\0';

  return  retur;

}


static gboolean
time_update(gpointer data)
{
/*
	time_t curtime;
	struct tm *loctime;

	curtime = time(NULL);
	loctime = localtime(&curtime);

	gchar tid[256];
	strftime(tid, 256, "%T", loctime);
*/
	gchar * tempen=tempDown();
/*
	strcat(tempen," ");
	strcat(tempen,tid);
*/
	//till data skickar vi med label, så här ändrar vi dess text!
	gtk_label_set_text (data, tempen);

  //gtk_widget_queue_draw(widget);
  return TRUE;
}



static gboolean
  on_button_press (GtkWidget *event_box,
                         GdkEventButton *event,
                         gpointer data)
  {
	
	/* Don't react to anything other than the left mouse button;
	   return FALSE so the event is passed to the default handler */
	
	if (event->button != 1)
		return FALSE;

	gchar * tempen=tempDown();

	//till data skickar vi med label, så här ändrar vi dess text!
	gtk_label_set_text (data, tempen);
	
	return TRUE;
	
  }

//FIXME

static gboolean
aj_gettemp_applet_fill (PanelApplet *applet,
   const gchar *iid,
   gpointer data)
{
	GtkWidget *label;

	if (strcmp (iid, "OAFIID:AJ_gettemp") != 0)
		return FALSE;
	
	
	gchar * tempen=tempDown();
	
	label = gtk_label_new (tempen);
	gtk_container_add (GTK_CONTAINER (applet), label);

	gtk_widget_show_all (GTK_WIDGET (applet));
	
	g_signal_connect (G_OBJECT (applet), 
                  "button_press_event",
                  G_CALLBACK (on_button_press),
                  label);
                  
    g_timeout_add(1000*60*5, (GSourceFunc) time_update, (gpointer) label);


	return TRUE;
}

PANEL_APPLET_BONOBO_FACTORY ("OAFIID:AJ_gettemp_factory",
                             PANEL_TYPE_APPLET,
                             "AJ gettemp grejen.",
                             "0",
                             aj_gettemp_applet_fill,
                             NULL);


Den nödvändiga .server-filen:

Kod: Markera allt

<oaf_info>
<oaf_server iid="OAFIID:AJ_gettemp_factory" type="exe"
            location="/usr/lib/gnome-panel/aj_gettemp">

        <oaf_attribute name="repo_ids" type="stringv">
                <item value="IDL:Bonobo/GenericFactory:1.0"/>
                <item value="IDL:Bonobo/Unknown:1.0"/>
        </oaf_attribute>
        <oaf_attribute name="name" type="string" value="AJ get temp fabrik"/>
        <oaf_attribute name="description" type="string" value="Fabrik för att bygga AJ get temp"/>
</oaf_server>

<oaf_server iid="OAFIID:AJ_gettemp" type="factory"
            location="OAFIID:AJ_gettemp_factory">

        <oaf_attribute name="repo_ids" type="stringv">
                <item value="IDL:GNOME/Vertigo/PanelAppletShell:1.0"/>
                <item value="IDL:Bonobo/Control:1.0"/>
                <item value="IDL:Bonobo/Unknown:1.0"/>
        </oaf_attribute>
        <oaf_attribute name="name" type="string" value="AJgettemp"/>
        <oaf_attribute name="description" type="string" value="Hämtar temperaturen från Celsius Uppsala och visar den i panelen"/>
        <oaf_attribute name="panel:category" type="string" value="Amusements"/>
        <oaf_attribute name="panel:icon" type="string" value="aj_gettemp.svg"/>
</oaf_server>
Det hela ska kompileras enligt instruktionerna här

Jag måste erkänna att det här verkligen inte är något jag är bra på och jag kommer knappt ihåg hur den där programmeringen som jag gjorde för ett halvår sen går till. Men perl-skriptet har jag fått ändra på någon gång och det är desto lättare.
Bilagor
Skärmbild-4.png
Skärmbild-4.png (29.57 KiB) Visad 5248 gånger
Skriv svar

Återgå till "Program - inaktuell"