NODE-RED: Integration von SONOFF-Geräten

NODE-RED: INTEGRATION VON SONOFF-GERÄTEN

Vorher muss man ein Konto bei SONOFF anlegen und das Gerät mit der eWeLink-App ins WLAN einbinden.

1.] Eine Funktion-Node (z.B. on, off, toggle) einfügen
2.] die Node-Palette (node-red-contrib-ewelink) herunterladen und entsprechend anpassen. An die Device ID kommt man über die eWeLink-App (Gerät auswählen >  „Geräteeinstellungen“ > „Geräte-ID“) dran.

Manchmal muss man sich nochmal anmelden.  Dabei E-Mail-Adresse & Passwort neu eingeben. Läuft aber danach stabil.

VB.net: Monitoring mit automatischer Aktualisierung/Befüllung des DataGridViews

VB.NET: MONITORING MIT DATAGRIDVIEW

Mit einem DataGridView wird auf die Datenbank zugegriffen und alle Vorgänge im Status „OFFEN“ angezeigt und automatisch aktualisiert.
Einige Punkte habe ich in den vorherigen Beiträgen bereits beschrieben, daher gehe ich in diesem Artikel nicht auf alles nochmal ein. Vieles lässt sich aber auch aus dem Kontext heraus ableiten.
Wird ein Vorgang abgeschlossen, verschwindet dieser automatisch in der Anzeige

Die automatische Aktualisierung der Daten erfolgt mit einer Timer-Steuerelement:

Unter „Interval“ die gewünschten Ausführungsabstände eingeben
Es wird im Intervall die Prozedur „datenAbfrage()“ ausgeführt

Zusätzlich soll auch in der Form die aktuelle Uhrzeit angezeigt werden. Auch das wird mit dem Steuerelement „Timer“ realisiert:

Das Steuerelemt „Label1“ zeigt die aktuelle Uhrzeit an

Das Hauptform heißt in unserem Beispiel „frmMain“, das Label1 ist „lblaktzeit, das DateGridView „dbgrid“

Der komplette Programmcode:

Imports MySql.Data.MySqlClient ' importieren der mysql-data.dll

Public Class frmMain
Dim conn As New MySqlConnection ' Verbindungsvariable zum Datenbankserver/Datenbank
Dim daten As New DataSet() ' Container(Zwischenspeicher) für die Datensätze

Public Sub dbOeffnen()
conn.ConnectionString = "Data Source=10.194.x.xxx;UID=DB-USER;Initial Catalog=DATENBANK-NAME;password=MEIN-PASSWORT"

Try
conn.Open() ' Öffnen der Datenbank auf dem DB-Server
Catch ex As Exception
MsgBox("Error: " & ex.Message)
End Try
End Sub

Public Sub datenAbfragen()
Dim sql As String

sql = "SELECT tbl.formPrim as 'V-ID',Upper(tbl.formPriority) AS 'PRIO',DATE_FORMAT(tbl.formDate,'%d.%m.%Y um %H:%m Uhr') AS 'Gemeldet am',"
sql += "tbl.formRaum as 'Standort',tbl.formMessage as 'BESCHREIBUNG',if (tbl.formErledigt='0000-00-00 0000:00','OFFEN',tbl.formErledigt) AS Status, "
sql += "concat(tbl.formVorname,' ',tbl.formNachname) AS 'NAME' FROM tblmonitor AS tbl "
sql += "WHERE tbl.visible = '1' ORDER BY tbl.formPriority asc;"

Dim adapter As MySqlDataAdapter = New MySqlDataAdapter(sql, conn)
' hier wird die SQl-Anweisung an die Datenbank gesendet
Try
daten.Clear() ' Datentabelle wieder neu aufbauen
adapter.Fill(daten, "tblmonitor")

Catch ex As Exception
End Try
' das Ergebnis der Abfrage wird an das Dataset übergeben 
dbgrid.DataSource = daten
' Inhalt des Datasets an das dbGrid übergeben
dbgrid.DataMember = "tblmonitor"
dbgrid.Font = New Font("ARIAL", 10, FontStyle.Regular)
dbgrid.AutoSizeRowsMode = DataGridViewAutoSizeRowsMode.AllCells
dbgrid.Columns(0).Width = 50
dbgrid.Columns(1).Width = 60
dbgrid.Columns(2).Width = 200
dbgrid.Columns(3).Width = 110
dbgrid.Columns(4).Width = 400
dbgrid.Columns(5).Width = 60
dbgrid.Columns(6).Width = 230

End Sub
Private Sub btnbeenden_Click(sender As Object, e As EventArgs) Handles btnbeenden.Click
Close()
End Sub

Private Sub frmMain_Load(sender As Object, e As EventArgs) Handles Me.Load
' Erstellen der DB-Verbindung und Anzeigen der Daten
dbOeffnen()
datenAbfragen()
End Sub

Private Sub frmMain_FormClosed(sender As Object, e As FormClosedEventArgs) Handles MyBase.FormClosed
conn.Close()
End Sub

Private Sub Timer1_Tick(sender As Object, e As EventArgs) Handles Timer1.Tick
lblaktzeit.Text = Format(Now, "HH-mm-ss")
End Sub

Private Sub Timer2_Tick(sender As Object, e As EventArgs) Handles Timer2.Tick
'aktualisiert die StörungsAnzeige
datenAbfragen()
End Sub

End Class

 


WordPress: Sicherung/ Backup der Datenbank

SICHERUNG/ BACKUP DER DATENBANK

WordPress:
4.9.8/ 5.0.3

Plugin WP-DB-Backup:
2.3.3

Es gibt diverse (kostenlose) Plugins, ich habe zur Sicherung der Datenbank – nicht nur WordPress-Tabellen – dieses Plugin genommen:

WP-DB-Backup

Nach Installation und Aktivierung erscheint unter „Werkzeuge“ ein weiterer Punkt „Backup“:

Hier hat man einige Optionen u.a. das Backup auf den eigenen Computer herunterzuladen und/oder eine geplante Sicherung durchzuführen.

Achtung!
Es wird nur die Datenbank gesichert. Die Dateien auf den FTP-Server werden nicht gesichert.

 

Autoit: In Schleife Mausklicks und Tastatureingaben ausführen

SCRIPT: SCHLEIFE MIT TASTATUREINGABEN, MAUSKLICKS, WARTEN UND MIT „ESC“  ABBRECHEN

 

#cs --------------------------------------------------------

AutoIt Version: 3.3.14.2

#ce --------------------------------------------------------

HotKeySet("{ESC}", "Terminate") ;ESC ZUM ABBRECHEN 
Func Terminate() 
Exit 0
EndFunc

Local $i = 0
While $i <= 10

    MouseClick("left",-1576, 531,1)
    Send("{END}") ;ENDE-Taste klicken
    Sleep(1000) ;warten 1 Sekunde
    MouseClick("left",-1398,913,1)
    Sleep(500)
    MouseClick("left",-1512,821,1)
    Sleep(500)
    MouseClick("left",-705,372,1)
    Sleep(5000)

$i = $i + 1
WEnd

Download Script (au3)

Die Taste F5 in einem Intervall von 5 Sekunden in einer Dauerschleife senden:

#cs ----------------------------------------------------------------------------

AutoIt Version: 3.3.14.2

#ce ----------------------------------------------------------------------------

HotKeySet("{ESC}", "Terminate") ;ESC ZUM ABBRECHEN
Func Terminate()
Exit 0
EndFunc

Local $i = 0
While $i <= 10

Sleep(5000) ;warten 5 Sekunden
Send("{F5}")

WEnd

 

Autoit: Mausposition ermitteln

MAUSPOSITION ERMITTELN

Um bestimmte Abläufe zu automatisieren oder nachträglich Aufzeichnungen zu bearbeiten, kann es Sinnvoll sein, die Mausposition zu ermitteln. Beispiel: Aufzeichnung mit dem Recorder gemacht und dieses Script soll auf einem anderen Rechner ausgeführt werden. Die Mausposition wird dann nicht mehr passen, weil der neue Rechner evtl. eine andere Ausflösung hat.

 

1] SciTe-Editor öffnen und unter Tools „AU2Info“ auswählen

2] Auf den „Finder Tool“ Icon mit der linken Maustaste klicken und gedrückthalten. Die Maus auf die gewünschte Position ziehen ziehen

3]  In der Registerkarte „Summary“ wird die Position angezeigt

Inhalt/Content-Bereich vergrößern oder verkleinern

INHALT/CONTENT-BEREICH ANPASSEN

Theme:
Twenty Seventeen (Version 1.7)

WordPress:
4.9.8

CSS:
%pfad%\wp-content\themes\twentyseventeen\style.css

Es geht um diesen Abstand:

Bild anklicken für Großansicht

Auf den Seiten, wo eine Grafik eingeblendet wird, muss dieserWert angepasst:

Bei den Seiten, wo keine Seitengrafik eingeblendet wird, muss dieser Wert verändert werden:

Für die Seiten (keine Beiträge) bei diesem Theme könnte dieser Eintrag relevant sein:

.page-one-column .panel-content .wrap {
max-width: 950px; /* vorher 740px */
}