Keine Rückmeldung?
Beiträge von horschte
-
-
Widerstand ist immer richtig. Super das Du dich nicht einschüchtern lässt.
mich schüchtern sie damit nicht mal ansatzweise ein. da alle mails der firma noch existieren wird ihr vorhaben auch wenig erfolg haben.
ab 36:30 fängt im video übrigens die masche an, mit der sie mir auf die eier gehen. -
hier mal ein fall, der mich gerade selbst betrifft....thema "goldstar marketing".
ich verwalte die inet auftritte für eine befreundete familie und ihrer 3 firmen. webseite, facebook, google usw.
vor einigen monaten bekamen diese firmen bei google plötzlich zusammenhangslose, extrem schlechte bewertungen.
kurz danach plötzlich emails der firma goldstar marketing mit dem angebot, diese schlechten bewertungen gegen honorar zu löschen.
natürlich habe ich diese spammail ignoriert, über die firma recherchiert und ihnen die verdiente, schlechte bewertung geschrieben.
es folgten weitere spammails, in denen versucht wurde immer mehr druck aufzubauen.screenshot erste mail:
letzte woche erreichte mich eine google mail mit dem inhalt, dass goldstar marketing durch einen anwalt gegen meine bewertung vorgegangen ist und diese löschen lassen will.
natürlich hab ich alle mails von goldstar marketing aufbewahrt und an google weitergeleitet.
zufällig bin ich gestern auf einen frontal21 beitrag des zdf gestossen....thema goldstar marketing
viel spass beim schauen
https://www.zdf.de/politik/fronta…r-2020-100.htmlgoldstar marketing bei google:
https://www.google.com/maps/place/Gol…287535?hl=de-DE
die realen, schlechten bewertungen neutralisiert das "unternehmen" mit eigenen fake bewertungen -
Bin heute unterwegs aber kann morgen vormittag mal schauen wenn sich niemand anderes findet
-
hier nochmals alles komplett mit uhrzeit zum testen. tvh serverdaten wieder anpassen.
im anhang ist auch noch ein record icon. runterladen, entpacken und nach /etc/openhab2/icons/classic schiebenitems:
CodeNumber TVH_Aufnahmen_Anzahl "[%d]" {http="<[http://name:passwort@192.168.2.3:9981/api/dvr/entry/grid_upcoming:60000:JSONPATH($.total)]"} String TVH_Aufnahmen "[%s]" { http="<[http://name:passwort@192.168.2.3:9981/api/dvr/entry/grid_upcoming?limit=3&sort=start:60000:JSONPATH($.entries.*.title.ger)]" } String TVH_Aufnahme1 "[%s]" <recording> String TVH_Aufnahme2 "[%s]" <recording> String TVH_Aufnahme3 "[%s]" <recording> String TVH_Aufnahmen_Zeit "[%d]" {http="<[http://name:passwort@192.168.2.3:9981/api/dvr/entry/grid_upcoming?limit=3&sort=start:60000:JSONPATH($.entries.*.start)]"} DateTime TVH_Aufnahme1_Zeit "[%1$td.%1$tm. um %1$tH:%1$tM Uhr]" <time> DateTime TVH_Aufnahme2_Zeit "[%1$td.%1$tm. um %1$tH:%1$tM Uhr]" <time> DateTime TVH_Aufnahme3_Zeit "[%1$td.%1$tm. um %1$tH:%1$tM Uhr]" <time>
rules:
Code
Alles anzeigenrule "aufnahmen" when Item TVH_Aufnahmen changed or Item TVH_Aufnahmen_Zeit changed then if(TVH_Aufnahmen_Anzahl.state == "NULL"){ TVH_Aufnahme1.postUpdate("LEER") TVH_Aufnahme2.postUpdate("LEER") TVH_Aufnahme3.postUpdate("LEER") } if(TVH_Aufnahmen_Anzahl.state >= 1){ val aufnahme1 = TVH_Aufnahmen.state.toString.split(",").get(0).replace("[","") val aufnahmezeit1 = TVH_Aufnahmen_Zeit.state.toString.split(",").get(0).replace("[","") TVH_Aufnahme1.postUpdate(aufnahme1) TVH_Aufnahme1_Zeit.postUpdate(new DateTimeType(aufnahmezeit1)) } if(TVH_Aufnahmen_Anzahl.state == 1){ TVH_Aufnahme2.postUpdate("LEER") TVH_Aufnahme3.postUpdate("LEER") } if(TVH_Aufnahmen_Anzahl.state >= 2){ val aufnahme2 = TVH_Aufnahmen.state.toString.split(',').get(1).replace("]","") val aufnahmezeit2 = TVH_Aufnahmen_Zeit.state.toString.split(",").get(1).replace("]","") TVH_Aufnahme2.postUpdate(aufnahme2) TVH_Aufnahme2_Zeit.postUpdate(new DateTimeType(aufnahmezeit2)) } if(TVH_Aufnahmen_Anzahl.state == 2){ TVH_Aufnahme3.postUpdate("LEER") } if(TVH_Aufnahmen_Anzahl.state >= 3){ val aufnahme3 = TVH_Aufnahmen.state.toString.split(',').get(2).replace("]","") val aufnahmezeit3 = TVH_Aufnahmen_Zeit.state.toString.split(",").get(2).replace("]","") TVH_Aufnahme3.postUpdate(aufnahme3) TVH_Aufnahme3_Zeit.postUpdate(new DateTimeType(aufnahmezeit3)) } end
sitemap:
CodeText item=TVH_Aufnahme1_Zeit visibility=[TVH_Aufnahme1 != "LEER"] Text item=TVH_Aufnahme1 visibility=[TVH_Aufnahme1 != "LEER"] Text item=TVH_Aufnahme2_Zeit visibility=[TVH_Aufnahme2 != "LEER"] Text item=TVH_Aufnahme2 visibility=[TVH_Aufnahme2 != "LEER"] Text item=TVH_Aufnahme3_Zeit visibility=[TVH_Aufnahme3 != "LEER"] Text item=TVH_Aufnahme3 visibility=[TVH_Aufnahme3 != "LEER"]
-
Der Mensch ist halt neuem gegenüber skeptisch, was ja nicht grundsätzlich verkehrt ist. Allerdings sind die vorbehalte beim saugi unbegründet. Das teil ist super praktisch und nimmt einem verdammt viel Arbeit ab. Natürlich "braucht" man ihn nicht unbedingt
..genau wie warmes Wasser zum duschen oder einen 70zoll tv. Aber wenn man das hat ist es schon verdammt gut. -
Für mich steht der Sauger an gleicher Stelle in Sachen Komfort wie bspw ein Geschirrspüler. Ich möchte den Saugi nie mehr missen. Mit die besten Anschaffungen überhaupt.
-
Also ich hatte jetzt in den 3 Jahren überhaupt keinen Ausfall.
Gebe dir recht. Die Bewertung halte ich für bashing. Ich habe den ersten xiaomi Sauger bereits in Betrieb gehabt, als in Deutschland noch kaum jemand die Marke selbst kannte (Januar 2017). Mittlerweile läuft bei mir der 1S, also die 2. Version. Ich hatte in den ganzen Jahren noch nie einen Server Ausfall und die saugis haben immer zu voller Zufriedenheit ihre Arbeit verrichtet.
-
Ich kann ja mal morgen evt was machen, heute bin ich nicht mehr am Rechner.
-
AAAHHH man muß das HTTP Binding installieren und dann gehts.
dachte das ist klar, weil es ja im channel steht
Du bist mein Held
bin aber schon vergeben
Aber wie geht das mit der Anzeige der Zeit??
zeit ist etwas komplexer. die tvh api gibt einen unix timestamp für die jeweiligen aufnahmen aus -> https://de.wikipedia.org/wiki/Unixzeit
es muss also erstmal wieder ein abruf für die aufnahmen gemacht werden
- dann split um einen einzelnen wert zu bekommen
- dann replace um überflüssige zeichen zu entfernen
- dann den extrahierten timestamp in ein lesbares datum wandeln und zu einem item posten -
harmony elite mit hub (wz)
https://www.logitech.com/de-de/products…915-000257.html
harmony ultimate mit hub (sz)
https://support.myharmony.com/de-us/ultimate-one
harmony companion (büro) am hub vom wz
https://www.logitech.com/de-de/products…40.html?crid=60 -
das ist schon nicht wenig aufwand. daher auch die frage ob man sowas wirklich in so einem umfang braucht.
-
das wären bei 10 einträgen (10 x aufnahmename, 10x unixtime konvertierung) also ca 30 items und ein arsch voll rules. das willste wirklich? deine sitemap wird dann 100m lang
hier ein brainstorming beispiel um die namen der 3 nächsten aufnahmen (siehe item TVH_Aufnahmen -> "limit") chronologisch anzuzeigen. api abruf musst du natürlich anpassen.
items:
CodeString TVH_Aufnahmen "[%s]" { http="<[http://name:passwort@192.168.2.3:9981/api/dvr/entry/grid_upcoming?limit=3&sort=start_real:60000:JSONPATH($.entries.*.title.ger)]" } Number TVH_Aufnahmen_Anzahl "[%d]" {http="<[http://name:passwort@192.168.2.3:9981/api/dvr/entry/grid_upcoming:60000:JSONPATH($.total)]"} String TVH_Aufnahme1 "[%s]" String TVH_Aufnahme2 "[%s]" String TVH_Aufnahme3 "[%s]"
rules:
Code
Alles anzeigenrule "aufnahmen" when Item TVH_Aufnahmen changed then /* wenn keine aufnahmen dann "leer" in die items posten um ausblenden in der sitemap zu realisieren */ if(TVH_Aufnahmen_Anzahl.state == "NULL"){ TVH_Aufnahme1.postUpdate("LEER") TVH_Aufnahme2.postUpdate("LEER") TVH_Aufnahme3.postUpdate("LEER") } /* aufnahme 1 ins item posten + eckklammer im string entfernen */ if(TVH_Aufnahmen_Anzahl.state >= 1){ val aufnahme1 = TVH_Aufnahmen.state.toString.split(",").get(0).replace("[","") TVH_Aufnahme1.postUpdate(aufnahme1) } /* "leer" in 2 und 3 posten um ausblenden in der sitemap zu realisieren */ if(TVH_Aufnahmen_Anzahl.state == 1){ TVH_Aufnahme2.postUpdate("LEER") TVH_Aufnahme3.postUpdate("LEER") } /* aufnahme 2 ins item posten + abschliessende eckklammer im string entfernen */ if(TVH_Aufnahmen_Anzahl.state >= 2){ val aufnahme2 = TVH_Aufnahmen.state.toString.split(',').get(1).replace("]","") TVH_Aufnahme2.postUpdate(aufnahme2) } /* "leer" in 3 posten um ausblenden in der sitemap zu realisieren */ if(TVH_Aufnahmen_Anzahl.state == 2){ TVH_Aufnahme3.postUpdate("LEER") } /* aufnahme 3 ins item posten + abschliessende eckklammer im string entfernen */ if(TVH_Aufnahmen_Anzahl.state >= 3){ val aufnahme3 = TVH_Aufnahmen.state.toString.split(',').get(2).replace("]","") TVH_Aufnahme3.postUpdate(aufnahme3) } end
sitemap
CodeText item=TVH_Aufnahme1 visibility=[TVH_Aufnahme1 != "LEER"] Text item=TVH_Aufnahme2 visibility=[TVH_Aufnahme2 != "LEER"] Text item=TVH_Aufnahme3 visibility=[TVH_Aufnahme3 != "LEER"]
für die startzeiten der aufnahmen müsste bei jedem eintrag der unix time stamp per api abgerufen, dann in einer rule konvertiert und zum item gepostet werden.
-
hab mal geschaut. per api kann man recht gut die gewünschten anzahl an anstehenden aufnahmen abfragen, chronologisch ordnen und dann per jsonpath die titel extrahieren...bspw
[
"Bundesliga Pur Klassiker",
"Winter in Schwaben"
]
diese wiederum kann man per .split(',') und .get(X) trennen und per rule den items zuordnen.
allerdings hab ich in einer testrule noch das problem, dass wenn es mehr .get(x) abfragen als reale anstehende aufnahmen gibt die rule crasht.
in dem fall werden die items nicht mehr zuverlässig mit infos gefüllt. die aufnahmen sind auch nicht durchnummeriert zum weiteren filtern.
muss ich mal schauen wie man das am besten lösen könnte. (edit: funktioniert über den umweg anzahl der aufnahmen abfragen und erst dann innerhalb einer if abfrage mit dem value "aufnahmenahme" arbeiten)wieviel einträge willst du denn gelistet haben?
-
Für die nächste(n) Aufnahme sollte man die api von tvheadend nutzen können. Das Beispiel oben von dir finde ich viiieeel zu aufgebläht, braucht kein Mensch. Ich schaue mal morgen vormittag welche Infos man über anstehende Aufnahmen per api bekommt.
-
hab mal kurz rübergeschaut. mal im vertrauen...was du da machen willst ist quatsch. grundsätzlich geht das natürlich aber man neigt speziell beim smarthome einstieg ne menge völlig überflüssigen kram einzubinden. du wirst da so gut wie nie oder wenn überhaupt mal was anschauen. was interessieren kommende aufnahmen, die abgeschlossenen sind doch wichtig. wen interessiert die tvh version usw usw.
mach ne benachrichtigung und gut ist. mehr wirst du wenns fertig ist auch nicht wirklich nutzen.
so jedenfalls ist meine erfahrung.
wenn überhaupt würde ich maximal den namen der nächsten aufnahme anzeigen lassen. -
Kurze Rückmeldung: klappt 1a! Thx
ging ja schnell . und mal die reichweite mit nem herrkömmlichen router verglichen (natürlich mit "wall penetration mode")? da klappte mir seinerzeit der kiefer runter vor staunen.
-
Irgendwann werd ich noch berühmt
-
-
mach dir lieber irgendwo ne vm. da hat sich so viel verändert, dass würde ich niemals parallel laufen lassen....selbst wenn es ginge.