JohannWeiher

Über Johann Weiher

Der Autor hat bisher keine Details angegeben.
Bisher hat Johann Weiher, 536 Blog Beiträge geschrieben.

LocationPrint

Dieses Script wurde uns freundlicherweise von Artur Netz bereitgestellt. Vielen Dank dafür! Anbei die Beschreibung & Anleitung.

 

Beschreibung

Nach Orten sortiert drucken (LocationPrint):

Mit dem Skript kann man bequem nach Orten sortiert drucken.

Man wählt die gewünschten Orte aus und diese werden ausgedruckt. Es wird dabei „detailliert“ ausgedruckt, also auch die Seiten wo im Rahmen ein anderer Ort steht.

Wen n im Feld „Ort1“ z.B. KK1 gewählt ist und im Feld „Ort2“ KK3 kommt ein Stapel Seiten bezogen auf KK1 raus und anschließend ein Stapel Seiten bezogen auf KK3.

Wenn im Feld „Ort1“ z.B. S* eingegeben wird kommen alle Seiten raus mit Bauteile bezogen au f S, z.B. S01, S02, S03…

Man erspart sich den Arbeitsschritt die „detaillierte Auswahl“ für jeden Ort einzustellen , die Seiten zu markieren und dann auszudrucken. D as ist bei großen Anlagen mit vielen O rten eine große Erleichterung . A uch die Werkstatt , ohne große Eplan Kenntnisse, kann sich bequem die passenden Seiten ausdrucken.

Das Skript lässt sich bequem per Toolbar Button aufrufen.

 

Installation

  • den Ordner „LocationPrint“ entpacken und in den Standard Skript Pfad von EPLAN kopieren.
  • das Skript laden, es wird ein neues Menü erstellt „AN-Tools“ und eine neue Toolbar „AN-Tools“ mit einem Button
  • Action starten

LocationPrint

Von |2018-03-06T08:18:47+01:002018-03-06|EPLAN, EPLAN-Scripts|

FritzboxOnAir – Whitelist

Es gibt Nummern (Freunde & Kollegen), da darf man ruhig mal im Büro stören. Aus diesem Grund hab ich meine OnAir-Lampe auf eine farbige aufgerüstet. Ist die Nummer in der Whitelist, LAMP == green, wenn nicht LAMP == red.

Hab auch den Code bisl objektorientierter gestaltet. Python macht mir aber immer noch nicht Spaß…

# Whitelist
converter = Converter() # for color
foundInWhitelist = False
for w in Whitelist:
    if w in str(details):
        foundInWhitelist = True
        break
if foundInWhitelist == True:
    print(Fore.LIGHTBLUE_EX + 'Whitelist: True' + Style.RESET_ALL)
    xy = converter.rgbToCIE1931(0,255,0) # green
else:
    print(Fore.LIGHTBLUE_EX + 'Whitelist: False' + Style.RESET_ALL)
    xy = converter.rgbToCIE1931(255,0,0) # red
def Calling():
    global LAMP
    global xy
    print(Back.GREEN + 'Calling' + Style.RESET_ALL)
    os.system("osascript -e 'set volume output muted true'") # mute system volume
    LAMP.on = True
    LAMP.brightness = 254
    LAMP.transitiontime = 0
    LAMP.xy = xy
Von |2018-03-02T14:12:38+01:002018-03-05|FritzboxOnAir, Projekte|

FritzboxOnAir – Skype

Ich liebe ja mein Setup im Büro… Telefon klingelt, Musik wird leise gestellt. Telefonat beendet, Musik geht wieder an. Vor der Tür geht die Lampe an und jeder weiß ich telefoniere.

Leider aber nicht wenn ich ein Skype-Meeting habe… Das habe ich aber hiermit geändert:

while(True):
    # Skype
    skypeFound = False
    for p in psutil.process_iter():
        if "skype" in p.name().lower():
            skypeFound = True;
            if IsSkypeActive == False:
                print(Fore.LIGHTBLUE_EX + 'Skype open' + Style.RESET_ALL)
                Calling()
                IsSkypeActive = True
    if skypeFound == False:
        if IsSkypeActive == True:
            Sleeping()
            IsSkypeActive = False
            print(Fore.LIGHTBLUE_EX + 'Skype close' + Style.RESET_ALL)

Bisl was noch in den Subroutinen geändert damit wenn jemand währenddessen anruft nicht das Licht ausgeht und die Musik an.

Von |2018-03-02T10:11:19+01:002018-03-02|FritzboxOnAir, Projekte|

Doorbell – Pushover

Ich bin ja damals von Pushover weg, weil das mit den Bildern nicht so geklappt hat.
Mit dem neuen Update funktioniert das aber grandios. Zusätzlich klappt der Push bei Slack nicht immer… liegt aber wohl an Slack.

Nun hab ich das mal ausprobiert und Pushover hat derzeit paar Vorteile:

  • Vorschau in der Push Notification
  • Push funktioniert zuverlässig
  • Größere Übersicht der Fotos

Ich hab das mal wie folgt mit Requests implementiert:

import requests

...

r = requests.post("https://api.pushover.net/1/messages.json", data = {
  "token": "-- API Token --",
  "user": "-- User Key --",
  "message": "Knock Knock Knock"
},
files = {
  "attachment": ("image.jpg", open('/home/pi/Desktop/doorbell/web/photos/' +  filename, "rb"), "image/jpeg")
})
print(r.text)

  

Von |2018-02-26T07:12:49+01:002018-02-26|Doorbell, Projekte|

Doorbell – Homebridge

Ich hab ja den Pi neu aufgesetzt… da wollte ich Homebridge mal wieder testen. Da fiel mir ein, es wäre doch praktisch wenn man einen Live-Stream hätte…
Gesagt, getan.

Hab das Script angepasst, dass der Video Treiber automatisch geladen wird:

# Camera for Homebridge
cmdCamHomebridge='sudo modprobe bcm2835-v4l2'
subprocess.call(cmdCamHomebridge, shell=True)

Ihr müsst auch euren User (pi), zur video Gruppe hinzufügen:

sudo usermod -a -G video pi

In der HomeKit App musste ich dann den Code (gleicher wie Bridge) manuell hinzufügen. Dann erscheint die Kamera. Nun kann ich bequem vom iPhone oder der Apple Watch meine Haustüre betrachten…

Von |2018-02-18T20:39:06+01:002018-02-19|Doorbell, Projekte|
Nach oben