Skip to content
  • Home
  • Recent
  • Tags
  • 0 Unread 0
  • Categories
  • Unreplied
  • Popular
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. ioBroker Allgemein
  4. TibberLink Adapter

NEWS

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    17
    1
    2.9k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    1.1k

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.4k

TibberLink Adapter

Scheduled Pinned Locked Moved ioBroker Allgemein
631 Posts 85 Posters 206.5k Views 78 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • R ReblausGT

    @lesiflo said in TibberLink Adapter:

    Wäre es möglich einen Schalter einzubauen um zwischen 15 und 60 Minuten zu switchen?

    Ich hatte befürchtet dass die Frage kommt :disappointed_relieved: :blush:

    L Online
    L Online
    lesiflo
    Most Active
    wrote on last edited by lesiflo
    #591

    @reblausgt Wenn nicht wäre auch nicht schlimm, habe das schon mit meinem Script gelöst. :wink: Allerdings muß ich noch schauen wie das mit den Zeiträumen dann passt.

    P 1 Reply Last reply
    0
    • L lesiflo

      @reblausgt Wenn nicht wäre auch nicht schlimm, habe das schon mit meinem Script gelöst. :wink: Allerdings muß ich noch schauen wie das mit den Zeiträumen dann passt.

      P Offline
      P Offline
      pingo
      wrote on last edited by
      #592

      @ReblausGT Vielleicht machst Du einfach zusätzlich Objekte für die Stundenpreise? Sind ja immer nur 4 Objekte zusammengezählt und durch 4 geteilt. So helfe ich mir aktuell.
      Ansonsten funktioniert Version 6.0.0 hier perfekt. Danke

      1 Reply Last reply
      0
      • A Offline
        A Offline
        ArnoD
        wrote on last edited by
        #593

        Wenn ich die Tibber API Beschreibung richtig verstehe kann man beides abrufen:

        • The Subscription.priceInfo field (i.e. the type PriceInfo) now takes an optional argument resolution that can either be HOURLY or QUARTER_HOURLY.

        Bei Stundenwerten wird von Tibber der Durchschnittspreis angegeben.

        1 Reply Last reply
        0
        • L Online
          L Online
          lesiflo
          Most Active
          wrote on last edited by lesiflo
          #594

          Moin,
          wäre es möglich noch einen zusätzlichen Rechnerkanal mit einzubauen der die Stunden/Slots anhand des Akkustandes und Verbrauch pro Stunde ermittelt? Beispiel Akku hat noch 4 kWh, Verbrauch 0,4 kWh macht dann 10 Stunden an denen der Akku entladen werden könnte. Vorgaben wären dann Rest Akku und Verbrauch pro Stunde. Eventuell auch noch gesamt Akku um die Gesamtstunden anzuzeigen.

          1 Reply Last reply
          0
          • L lesiflo

            @reblausgt Hab's mal installiert und getestet, läuft soweit. Allerdings haben die 15 Minuten für mich keinen richtigen Mehrwert. Wenn man einen PV-Speicher hat bügelt der einiges aus. Wäre es möglich einen Schalter einzubauen um zwischen 15 und 60 Minuten zu switchen? Ansonsten klasse Arbeit!

            bf9af0f8-d4c1-461b-82be-4ba4b42d34dc-image.png

            P Offline
            P Offline
            Peter c
            wrote on last edited by
            #595

            @lesiflo said in TibberLink Adapter:

            Wenn man einen PV-Speicher hat bügelt der einiges aus.

            Deine Darstellung der Strompreise sieht sehr übersichtlich aus. Mit was hast Du das erzeugt? Ist das VIS oder was anderes?

            1 Reply Last reply
            0
            • L Online
              L Online
              lesiflo
              Most Active
              wrote on last edited by
              #596

              @peter-c Mit vis. Guckst du hier: vis

              1 Reply Last reply
              0
              • R ReblausGT

                @lesiflo said in TibberLink Adapter:

                Wäre es möglich einen Schalter einzubauen um zwischen 15 und 60 Minuten zu switchen?

                Ich hatte befürchtet dass die Frage kommt :disappointed_relieved: :blush:

                T Offline
                T Offline
                THELOH
                wrote on last edited by THELOH
                #597

                Hat sich erledigt, ich habe meine Alias(e) angepasst.

                @reblausgt Ich hätte die gleiche Bitte.
                Ich sortiere die Preise um zu den günstigsten Stunden die teuersten Stunden mit dem Speicher zu eliminieren und nutze die Preise sehr oft an verscheidenen Stellen. Ich würde mich jedoch freuen, wenn beides angebiten wird. Alte Strucktur der 1h Datenpunkte ohne Änderungen der Bezeichnungen etc und einmal ein neuer Ordner mit den 15min Werten. So kann sich jeder das schnappen, was er benötigt.
                Das wäre zauberhaft :)

                1 Reply Last reply
                1
                • H Offline
                  H Offline
                  HansJochen
                  wrote on last edited by HansJochen
                  #598

                  Hallo zusammen,

                  die Flexcharts / ECharts Integration in den Tibberlink Adapter ist absolut klasse. Ich habe mir das Standard-Template so angepasst, dass im Diagramm die aktuelle Zeit mit einer vertikalen Linie markiert wird.
                  Sieht dann so aus:
                  Bildschirmfoto_20251102_154501.png

                  Falls das jemand nutzen möchte:

                  {
                  	backgroundColor: "rgb(255, 255, 255)",
                  	title: {
                  		text: "Tibber Preis",
                  		textStyle: {
                  			color: "#ffffff"
                  		}
                  	},
                  	tooltip: {
                  		trigger: "axis",
                  		axisPointer: {
                  			type: "cross"
                  		}
                      },    
                  
                  	grid: { // Randabstände
                  		left: "10%", right: "4%", top: "8%", bottom: "8%"
                  	},
                  	xAxis: {
                  		type: "category",
                  		boundaryGap: false,
                  		data: %%xAxisData%%
                  	},
                  	yAxis: {
                  		type: "value",
                  		axisLabel: {formatter: "{value} €"},
                  		axisPointer: {
                  			snap: true
                  		}
                  	},
                  	visualMap: {
                  		min: 0.2,
                  		max: 0.4,
                  		inRange: {
                  			color: ["green", "yellow", "red"] // Verlauf von grün über gelb nach rot
                  		},
                  		show: false
                  	},
                  	series: [
                  		{
                  			name: "Preis",
                  			type: "line",
                  			step: "end",
                  			symbol: "none",
                  			data: %%yAxisData%%,
                  
                  			markArea: {
                  				itemStyle: {
                  					color: "rgba(120, 200, 120, 0.2)"
                  				},
                  				data: [
                  					%%CalcChannelsData%%
                  				]
                  			},
                  			markLine: {
                              data: [   
                              {
                                 name: 'jetzt', xAxis: ("0"+new Date().getDate()).slice(-2)+"."+("0"+(new Date().getMonth()+1)).slice(-2)+"." + "\n" + ("0"+new Date().getHours()).slice(-2)+":"+("0"+(Math.floor(new Date().getMinutes()/15)*15).toString()).slice(-2)}
                                 
                                    ]   
                              }
                  	    }
                      ]
                  
                  };
                  
                  R 1 Reply Last reply
                  1
                  • H HansJochen

                    Hallo zusammen,

                    die Flexcharts / ECharts Integration in den Tibberlink Adapter ist absolut klasse. Ich habe mir das Standard-Template so angepasst, dass im Diagramm die aktuelle Zeit mit einer vertikalen Linie markiert wird.
                    Sieht dann so aus:
                    Bildschirmfoto_20251102_154501.png

                    Falls das jemand nutzen möchte:

                    {
                    	backgroundColor: "rgb(255, 255, 255)",
                    	title: {
                    		text: "Tibber Preis",
                    		textStyle: {
                    			color: "#ffffff"
                    		}
                    	},
                    	tooltip: {
                    		trigger: "axis",
                    		axisPointer: {
                    			type: "cross"
                    		}
                        },    
                    
                    	grid: { // Randabstände
                    		left: "10%", right: "4%", top: "8%", bottom: "8%"
                    	},
                    	xAxis: {
                    		type: "category",
                    		boundaryGap: false,
                    		data: %%xAxisData%%
                    	},
                    	yAxis: {
                    		type: "value",
                    		axisLabel: {formatter: "{value} €"},
                    		axisPointer: {
                    			snap: true
                    		}
                    	},
                    	visualMap: {
                    		min: 0.2,
                    		max: 0.4,
                    		inRange: {
                    			color: ["green", "yellow", "red"] // Verlauf von grün über gelb nach rot
                    		},
                    		show: false
                    	},
                    	series: [
                    		{
                    			name: "Preis",
                    			type: "line",
                    			step: "end",
                    			symbol: "none",
                    			data: %%yAxisData%%,
                    
                    			markArea: {
                    				itemStyle: {
                    					color: "rgba(120, 200, 120, 0.2)"
                    				},
                    				data: [
                    					%%CalcChannelsData%%
                    				]
                    			},
                    			markLine: {
                                data: [   
                                {
                                   name: 'jetzt', xAxis: ("0"+new Date().getDate()).slice(-2)+"."+("0"+(new Date().getMonth()+1)).slice(-2)+"." + "\n" + ("0"+new Date().getHours()).slice(-2)+":"+("0"+(Math.floor(new Date().getMinutes()/15)*15).toString()).slice(-2)}
                                   
                                      ]   
                                }
                    	    }
                        ]
                    
                    };
                    
                    R Offline
                    R Offline
                    ReblausGT
                    Developer
                    wrote on last edited by
                    #599

                    @hansjochen said in TibberLink Adapter:

                    Ich habe mir das Standard-Template so angepasst, dass im Diagramm die aktuelle Zeit mit einer vertikalen Linie markiert wird.
                    Falls das jemand nutzen möchte:

                    JA! hier ich!!! Cool, das wollte ich schon die ganze Zeit!! Darf ich das im Adapter als Beispiel veröffentlichen?

                    H 1 Reply Last reply
                    0
                    • R ReblausGT

                      @hansjochen said in TibberLink Adapter:

                      Ich habe mir das Standard-Template so angepasst, dass im Diagramm die aktuelle Zeit mit einer vertikalen Linie markiert wird.
                      Falls das jemand nutzen möchte:

                      JA! hier ich!!! Cool, das wollte ich schon die ganze Zeit!! Darf ich das im Adapter als Beispiel veröffentlichen?

                      H Offline
                      H Offline
                      HansJochen
                      wrote on last edited by
                      #600

                      Hi @reblausgt ,

                      danke für Dein Feedback.

                      Klar, bau es gerne ein. Ich habe das ja hier gepostet, weil ich dachte, dass es auch für andere praktisch sein kann.

                      R 1 Reply Last reply
                      0
                      • H HansJochen

                        Hi @reblausgt ,

                        danke für Dein Feedback.

                        Klar, bau es gerne ein. Ich habe das ja hier gepostet, weil ich dachte, dass es auch für andere praktisch sein kann.

                        R Offline
                        R Offline
                        ReblausGT
                        Developer
                        wrote on last edited by
                        #601

                        Mal was anderes.... die X-Achse mit Strings war ein Entwurf der 1h Zeitscheiben.... jetzt, mit den 15 Minuten Scheiben überlege ich ob man das doch lieber im category time ändern sollte.... das zerschmeißt dann halt alles was man sich da schon an template gebastelt hatte.... Ist das ne Katastrophe? oder Überwiegen die Vorteile?

                        H 1 Reply Last reply
                        0
                        • S Offline
                          S Offline
                          Schimi
                          wrote on last edited by
                          #602

                          Ich brauche mal ne Erklärung zum "Batterie laden" Kanal nach der 15min Umstellung :-)

                          a5dfc580-d177-40be-aaad-749936c05b44-image.png

                          Wenn ich die AmountHours auf z.B. "0,5" stelle, schaltet er dann jede verfügbaren 30min Slot, wo der Preis 25% unter dem höchsten Tagespreis ist auf true? (den highest nutze ich nicht)

                          1 Reply Last reply
                          0
                          • R Offline
                            R Offline
                            ReblausGT
                            Developer
                            wrote on last edited by
                            #603

                            @schimi said in TibberLink Adapter:

                            Ich brauche mal ne Erklärung zum "Batterie laden" Kanal nach der 15min Umstellung :-)

                            Er sucht die 2 billigsten 15 Minuten und lädt die Batterie. Dann nimmt er den Preis der teuersten Phase = die teuerste Wattstunde im Speicher und rechnet dazu den Wirkungsgradverlust hinzu.... alles was da drunter liegt sperrt er das Entladen, was darüber liegt wird entladen.

                            S 1 Reply Last reply
                            0
                            • R ReblausGT

                              Mal was anderes.... die X-Achse mit Strings war ein Entwurf der 1h Zeitscheiben.... jetzt, mit den 15 Minuten Scheiben überlege ich ob man das doch lieber im category time ändern sollte.... das zerschmeißt dann halt alles was man sich da schon an template gebastelt hatte.... Ist das ne Katastrophe? oder Überwiegen die Vorteile?

                              H Offline
                              H Offline
                              HansJochen
                              wrote on last edited by
                              #604

                              @reblausgt

                              Gute Frage. Für mich war das mein erster Berührpunkt mit ECharts. So, wie es jetzt ist, passt es bei mir mit der Skalierung relativ gut. Je nach Fenstergröße auf unterschiedlichen Größen wählt ECharts hier recht vernünftig, welche Punkte auf der Skala weggelassen werden. Beispielsweise sehe ich in dem kleinen Ausschnitt, den ich dem Chart in meiner Visualisierung gönne, die vollen Stunden und wenn ich das Chart alleine im Browser Fullscreen öffne auch die Viertelstunden.

                              Ich habe mir aber jetzt gerade eine Echart Demo angeschaut (https://echarts.apache.org/examples/en/editor.html?c=area-time-axis), da lässt sich in dem Chart mit dem Mausrad zoomen. Das geht bei uns nicht. Ob die String-Skala der Grund ist, weiß ich nicht. Das könnte ich mir aber vorstellen.

                              Was wohl in jedem Fall schöner wäre: Es wäre halt der Weg, den ECharts für Zeitserien vorsieht. Das Datum würde nicht ständig wiederholt, sondern nur einmal angezeigt und ansonsten nur die Uhrzeit. Die X-Achse wäre also etwas übersichtlicher.

                              Mir persönlich wäre die Änderung nicht wichtig, das Template wäre aber leicht anzupassen. Ich kann da bei Bedarf auch gerne unterstützen. Wer sich beispielsweise veränderte Tooltips eingebaut hat, müsste halt selbst noch mal Hand anlegen. Ich würde aber vermuten, wer das hinbekommen hat, wird auch an dem Umbau nicht scheitern.

                              Übrigens: Ich vermute, dass es einige Nutzer gibt, die mit ECharts keine Berührpunkte hatten und die in ihrer Automatisierung nur für die Tibberpreise benutzen. Dann ist es schon etwas knifflig, die URL für die generierten Charts herauszufinden und die Templates in den Editor zu kopieren könnte auf manche auch etwas abschreckend wirken. Vermutlich benutzen die Meisten eines der Standard Templates ohne Veränderungen.

                              Da könnte es aus meiner Sicht helfen, wenn die URL im Adapter direkt angezeigt würde und es eine Auswahl der Art "Standard Darstellung", "alternative Darstellung" oder "benutzerdefinierte Darstellung" gäbe und damit der ganze Flexchart Hintergrund samt Erklärungen, Beispielen und Editor nur sichtbar wird, wenn man zuvor "benutzerdefiniert" ausgewählt hat.

                              1 Reply Last reply
                              0
                              • S Offline
                                S Offline
                                Schimi
                                wrote on last edited by
                                #605

                                ist das was?

                                {
                                	backgroundColor: "#ffffff",
                                
                                	title: {
                                		text: "Tibber Preis",
                                		left: "center",
                                		textStyle: { color: "#333", fontSize: 16 }
                                	},
                                
                                	tooltip: {
                                		trigger: "axis",
                                		axisPointer: { type: "cross" },
                                		valueFormatter: value => value.toFixed(3) + " €"
                                	},
                                
                                	grid: {
                                		left: "8%", right: "4%", top: "10%", bottom: "10%"
                                	},
                                
                                	xAxis: {
                                		type: "time",
                                		name: "Zeit",
                                		axisLabel: {
                                			formatter: value => {
                                				const date = new Date(value);
                                				const hours = date.getHours().toString().padStart(2, "0");
                                				const minutes = date.getMinutes().toString().padStart(2, "0");
                                				return hours + ":" + minutes;
                                			}
                                		},
                                		splitLine: { show: false }
                                	},
                                
                                	yAxis: {
                                		type: "value",
                                		name: "Preis (€)",
                                		axisLabel: { formatter: "{value} €" },
                                		splitLine: { show: true }
                                	},
                                
                                	visualMap: {
                                		show: false,
                                		min: 0.2,
                                		max: 0.4,
                                		inRange: {
                                			color: ["green", "yellow", "red"]
                                		}
                                	},
                                
                                	series: [
                                		{
                                			name: "Preis",
                                			type: "line",
                                			symbol: "none",
                                			step: "end",
                                			data: %%yAxisData%%, // Format: [ [timestamp, value], [timestamp, value], ... ]
                                
                                			markArea: {
                                				itemStyle: { color: "rgba(120, 200, 120, 0.2)" },
                                				data: [ %%CalcChannelsData%% ] // z. B. [[{ xAxis: "2025-11-04T10:00" }, { xAxis: "2025-11-04T14:00" }]]
                                			},
                                
                                			markLine: {
                                				symbol: "none",
                                				label: {
                                					formatter: "Jetzt",
                                					position: "end",
                                					color: "#333"
                                				},
                                				lineStyle: { color: "red", type: "solid" },
                                				data: [
                                					{
                                						xAxis: new Date().toISOString()
                                					}
                                				]
                                			}
                                		}
                                	]
                                }
                                
                                
                                H 1 Reply Last reply
                                0
                                • S Schimi

                                  ist das was?

                                  {
                                  	backgroundColor: "#ffffff",
                                  
                                  	title: {
                                  		text: "Tibber Preis",
                                  		left: "center",
                                  		textStyle: { color: "#333", fontSize: 16 }
                                  	},
                                  
                                  	tooltip: {
                                  		trigger: "axis",
                                  		axisPointer: { type: "cross" },
                                  		valueFormatter: value => value.toFixed(3) + " €"
                                  	},
                                  
                                  	grid: {
                                  		left: "8%", right: "4%", top: "10%", bottom: "10%"
                                  	},
                                  
                                  	xAxis: {
                                  		type: "time",
                                  		name: "Zeit",
                                  		axisLabel: {
                                  			formatter: value => {
                                  				const date = new Date(value);
                                  				const hours = date.getHours().toString().padStart(2, "0");
                                  				const minutes = date.getMinutes().toString().padStart(2, "0");
                                  				return hours + ":" + minutes;
                                  			}
                                  		},
                                  		splitLine: { show: false }
                                  	},
                                  
                                  	yAxis: {
                                  		type: "value",
                                  		name: "Preis (€)",
                                  		axisLabel: { formatter: "{value} €" },
                                  		splitLine: { show: true }
                                  	},
                                  
                                  	visualMap: {
                                  		show: false,
                                  		min: 0.2,
                                  		max: 0.4,
                                  		inRange: {
                                  			color: ["green", "yellow", "red"]
                                  		}
                                  	},
                                  
                                  	series: [
                                  		{
                                  			name: "Preis",
                                  			type: "line",
                                  			symbol: "none",
                                  			step: "end",
                                  			data: %%yAxisData%%, // Format: [ [timestamp, value], [timestamp, value], ... ]
                                  
                                  			markArea: {
                                  				itemStyle: { color: "rgba(120, 200, 120, 0.2)" },
                                  				data: [ %%CalcChannelsData%% ] // z. B. [[{ xAxis: "2025-11-04T10:00" }, { xAxis: "2025-11-04T14:00" }]]
                                  			},
                                  
                                  			markLine: {
                                  				symbol: "none",
                                  				label: {
                                  					formatter: "Jetzt",
                                  					position: "end",
                                  					color: "#333"
                                  				},
                                  				lineStyle: { color: "red", type: "solid" },
                                  				data: [
                                  					{
                                  						xAxis: new Date().toISOString()
                                  					}
                                  				]
                                  			}
                                  		}
                                  	]
                                  }
                                  
                                  
                                  H Offline
                                  H Offline
                                  HansJochen
                                  wrote on last edited by
                                  #606

                                  @schimi sagte in TibberLink Adapter:

                                  ist das was?

                                  Kunst am Bau? :)

                                  Bildschirmfoto_20251104_184922.png

                                  S 1 Reply Last reply
                                  0
                                  • H HansJochen

                                    @schimi sagte in TibberLink Adapter:

                                    ist das was?

                                    Kunst am Bau? :)

                                    Bildschirmfoto_20251104_184922.png

                                    S Offline
                                    S Offline
                                    Schimi
                                    wrote on last edited by
                                    #607

                                    @hansjochen

                                    hehe, dachte ich bin mal "clever" und jag es einfach durch ChatGPT :D

                                    scheint wohl nicht geklappt zu haben....

                                    besser? :D

                                    {
                                    	backgroundColor: "#ffffff",
                                    
                                    	title: {
                                    		text: "Tibber Preis",
                                    		left: "center",
                                    		textStyle: { color: "#333", fontSize: 16 }
                                    	},
                                    
                                    	tooltip: {
                                    		trigger: "axis",
                                    		axisPointer: { type: "cross" },
                                    		valueFormatter: value => value.toFixed(3) + " €"
                                    	},
                                    
                                    	grid: {
                                    		left: "8%", right: "4%", top: "10%", bottom: "10%"
                                    	},
                                    
                                    	xAxis: {
                                    		type: "time",
                                    		name: "Zeit",
                                    		axisLabel: {
                                    			formatter: value => {
                                    				const date = new Date(value);
                                    				const hours = date.getHours().toString().padStart(2, "0");
                                    				const minutes = date.getMinutes().toString().padStart(2, "0");
                                    				return hours + ":" + minutes;
                                    			}
                                    		},
                                    		splitLine: { show: false }
                                    	},
                                    
                                    	yAxis: {
                                    		type: "value",
                                    		name: "Preis (€)",
                                    		axisLabel: { formatter: "{value} €" },
                                    		splitLine: { show: true }
                                    	},
                                    
                                    	visualMap: {
                                    		show: false,
                                    		min: 0.2,
                                    		max: 0.4,
                                    		inRange: {
                                    			color: ["green", "yellow", "red"]
                                    		}
                                    	},
                                    
                                    	series: [
                                    		{
                                    			name: "Preis",
                                    			type: "line",
                                    			symbol: "none",
                                    			smooth: true,          // <<< weiche Kurve statt Stufen
                                    			data: %%yAxisData%%,   // Format: [ [timestamp, value], [timestamp, value], ... ]
                                    
                                    			lineStyle: {
                                    				width: 2
                                    			},
                                    
                                    			markArea: {
                                    				itemStyle: { color: "rgba(120, 200, 120, 0.2)" },
                                    				data: [ %%CalcChannelsData%% ]
                                    			},
                                    
                                    			markLine: {
                                    				symbol: "none",
                                    				label: {
                                    					formatter: "Jetzt",
                                    					position: "end",
                                    					color: "#333"
                                    				},
                                    				lineStyle: { color: "red", type: "solid" },
                                    				data: [
                                    					{
                                    						xAxis: new Date().toISOString()
                                    					}
                                    				]
                                    			}
                                    		}
                                    	]
                                    }
                                    
                                    

                                    Falls das auch nichts ist, gebe ich auf ;-)

                                    H 1 Reply Last reply
                                    0
                                    • S Schimi

                                      @hansjochen

                                      hehe, dachte ich bin mal "clever" und jag es einfach durch ChatGPT :D

                                      scheint wohl nicht geklappt zu haben....

                                      besser? :D

                                      {
                                      	backgroundColor: "#ffffff",
                                      
                                      	title: {
                                      		text: "Tibber Preis",
                                      		left: "center",
                                      		textStyle: { color: "#333", fontSize: 16 }
                                      	},
                                      
                                      	tooltip: {
                                      		trigger: "axis",
                                      		axisPointer: { type: "cross" },
                                      		valueFormatter: value => value.toFixed(3) + " €"
                                      	},
                                      
                                      	grid: {
                                      		left: "8%", right: "4%", top: "10%", bottom: "10%"
                                      	},
                                      
                                      	xAxis: {
                                      		type: "time",
                                      		name: "Zeit",
                                      		axisLabel: {
                                      			formatter: value => {
                                      				const date = new Date(value);
                                      				const hours = date.getHours().toString().padStart(2, "0");
                                      				const minutes = date.getMinutes().toString().padStart(2, "0");
                                      				return hours + ":" + minutes;
                                      			}
                                      		},
                                      		splitLine: { show: false }
                                      	},
                                      
                                      	yAxis: {
                                      		type: "value",
                                      		name: "Preis (€)",
                                      		axisLabel: { formatter: "{value} €" },
                                      		splitLine: { show: true }
                                      	},
                                      
                                      	visualMap: {
                                      		show: false,
                                      		min: 0.2,
                                      		max: 0.4,
                                      		inRange: {
                                      			color: ["green", "yellow", "red"]
                                      		}
                                      	},
                                      
                                      	series: [
                                      		{
                                      			name: "Preis",
                                      			type: "line",
                                      			symbol: "none",
                                      			smooth: true,          // <<< weiche Kurve statt Stufen
                                      			data: %%yAxisData%%,   // Format: [ [timestamp, value], [timestamp, value], ... ]
                                      
                                      			lineStyle: {
                                      				width: 2
                                      			},
                                      
                                      			markArea: {
                                      				itemStyle: { color: "rgba(120, 200, 120, 0.2)" },
                                      				data: [ %%CalcChannelsData%% ]
                                      			},
                                      
                                      			markLine: {
                                      				symbol: "none",
                                      				label: {
                                      					formatter: "Jetzt",
                                      					position: "end",
                                      					color: "#333"
                                      				},
                                      				lineStyle: { color: "red", type: "solid" },
                                      				data: [
                                      					{
                                      						xAxis: new Date().toISOString()
                                      					}
                                      				]
                                      			}
                                      		}
                                      	]
                                      }
                                      
                                      

                                      Falls das auch nichts ist, gebe ich auf ;-)

                                      H Offline
                                      H Offline
                                      HansJochen
                                      wrote on last edited by
                                      #608

                                      @schimi sagte in TibberLink Adapter:

                                      scheint wohl nicht geklappt zu haben....

                                      Schwer zu sagen. Falls Du das hier erreichen wolltest, hat es geklappt:

                                      Bildschirmfoto_20251104_192150.png

                                      Was ist denn Dein Ziel?

                                      S 1 Reply Last reply
                                      0
                                      • H HansJochen

                                        @schimi sagte in TibberLink Adapter:

                                        scheint wohl nicht geklappt zu haben....

                                        Schwer zu sagen. Falls Du das hier erreichen wolltest, hat es geklappt:

                                        Bildschirmfoto_20251104_192150.png

                                        Was ist denn Dein Ziel?

                                        S Offline
                                        S Offline
                                        Schimi
                                        wrote on last edited by
                                        #609

                                        @hansjochen sieht nicht richtig aus :D

                                        wollte dein script (für welche die es brauchen, ich habe aktuell keine Verwendung für die Funktion)
                                        umbauen das unten nur Uhrzeit angezeigt wird und nicht immer das Datum (quasi wie ihr danach drüber geschrieben habt)

                                        H 1 Reply Last reply
                                        0
                                        • S Schimi

                                          @hansjochen sieht nicht richtig aus :D

                                          wollte dein script (für welche die es brauchen, ich habe aktuell keine Verwendung für die Funktion)
                                          umbauen das unten nur Uhrzeit angezeigt wird und nicht immer das Datum (quasi wie ihr danach drüber geschrieben habt)

                                          H Offline
                                          H Offline
                                          HansJochen
                                          wrote on last edited by
                                          #610

                                          @Schimi

                                          Okay, das fällt dann wohl in die Kategorie "gut gemeint" :)

                                          Das Verhalten von Hand nachzubilden, solange der Adapter hier noch auf Strings basiert, wäre ziemlich müßig. Echarts macht das ja schon automatisch, wenn @ReblausGT , wie er es hier angedacht hat, den Adapter auf Datumsobjekte umstellt. Das sollte dann aber synchron passieren: Im Adapter und in den Templates.

                                          1 Reply Last reply
                                          1
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate
                                          FAQ Cloud / IOT
                                          HowTo: Node.js-Update
                                          HowTo: Backup/Restore
                                          Downloads
                                          BLOG

                                          617

                                          Online

                                          32.6k

                                          Users

                                          82.3k

                                          Topics

                                          1.3m

                                          Posts
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Home
                                          • Recent
                                          • Tags
                                          • Unread 0
                                          • Categories
                                          • Unreplied
                                          • Popular
                                          • GitHub
                                          • Docu
                                          • Hilfe