#software-dokumentation
Explore tagged Tumblr posts
Text
Übersetzungsbüro Motte 5
Kommunikationstools und Software: Über Worte hinaus In einer Ära, die von digitaler Kommunikation dominiert wird, zeichnet sich das Übersetzungsbüro Motte durch die Übersetzung von Handbüchern für Kommunikationstools und Software aus. Von Benutzeroberflächen und Anleitungsguides bis hin zur Software-Dokumentation kombinieren die Linguisten von Motte Sprachkompetenz mit einem Verständnis für die…
View On WordPress
#anleitungsguides#Übersetzung#Übersetzungsbüro#benutzererfahrung#benutzeroberflächen#handbücher#kommunikationstools#service#software#software-dokumentation#sprachkompetenz
0 notes
Text
26. November 2024
Das Techniktagebuch ist zurück auf Bluesky
Ich halte mich nur noch selten im Facebook Messenger auf, deshalb sehe ich erst gestern, dass es seit einiger Zeit Probleme gibt, Einträge des Techniktagebuchs auf die vielen neuen Netzwerke zu verteilen. Manches läuft, bei manchem kann ich (noch) nicht helfen, aber für Bluesky habe ich eine Idee.
Es ist nämlich so, dass ich mich mit der fürchterlichen Bluesky-API, der technischen Anbindung nach außen, schon vor einiger Zeit intensiv auseinandergesetzt hatte, weil ich die Beiträge meines privaten Blogs dort sehen wollte.
Gleichzeitig beschäftige ich mich seit ein paar Monaten mit einer Open-Source-Software namens N8N, die auf meinem eigenen Spielserver liegt. Die kann Dienste automatisieren, so wie man das von Anbietern wie IFTTT, Zapier und Co. kennt. Die Lernkurve ist sehr steil, dafür kann man auch viel mehr und individueller sogenannte Workflows definieren.
Ohne Hilfe wäre ich trotzdem aufgeschmissen. Mein persönlicher Assistent heißt ChatGPT. Mit ihm habe ich mich gemeinsam durch die API-Dokumentation von Bluesky gekämpft und er hilft mir jetzt auch, das, was Tumblr im RSS-Feed auswirft, so umzuformatieren, dass ein lesbares Posting für Bluesky entsteht.
Für Interessierte habe ich den N8N-Workflow als JSON-Datei hier abgelegt: Download Workflow
(Johannes Mirus)
8 notes
·
View notes
Text
Ich musste heute für die Uni ein wundervolles Fallbeispiel lesen und ich möchte euch dieses absolute Trainwreck des IT-Projektmanagements nicht vorenthalten.
Ende der 90er haben in Großbritannien die beiden Genossenschaften Co-operative Wholesale Society (CWS) und Co-operative Retail Services (CRS) zur Co-operative Group (kurz Co-op) fusioniert und daher sollte auch ihr IT-System fusioniert werden. Das System von CRS war aber bei weitem nicht auf demselben Stand wie das von CWS, also schloss man beim Beginn der Fusionsgespräche einen Vertrag mit der Firma International Computers Limited (ICL) ab, die neue Kassensysteme installieren sollte.
*Einige Zeit später*
ICL: "Also, noch mal wegen den Kassensystemen. Wir haben da so ein neues Projekt am laufen, das wird voll geil, ihr seid dann auf demselben Stand wie CWS!"
Die Verantwortlichen bei CRS waren etwas skeptisch, weil sie in der Vergangenheit schon mal Probleme mit ICL gehabt hatten, aber da die Alternative gewesen wäre, den bestehenden Vertrag zu kündigen und über eine Millionen Pfund Entschädigung zu zahlen, stimmten sie schließlich zu. Da die Deadline kurz bevor stand blieb leider keine Zeit, um auf den Vertragsabschluss zu warten.
Zunächst musste man aber die mit ICL konkurrierende Firma PCMS dazu bringen, Daten zu den Dateiformaten des bisherigen Kassensystems rauszurücken. PCMS war wütend, dass man ICL den Vorzug gegeben hatte und wollte eine Entschädigung. Es hat sehr lange gedauert, bis man endlich zu einer Einigung gekommen ist.
ICL hatte derweil Probleme mit Personalmangel, also hat man sich darauf geeinigt, ein anderes Kassenmodell als ursprünglich geplant einzubauen - was eine Millionen Pfund teurer war.
Co-op hatte jetzt schon keinen Bock mehr und wollte Garantien, dass ICL bei unpünktlicher Lieferung Strafe zahlen muss und sie das komplette Geld zurück kriegen, wenn das fertige System nicht ihren Erwartungen entspricht. Man konnte sich allerdings immer noch nicht auf einen Vertrag einigen.
Schließlich wurde die Software einen Tag später und mit unvollständiger Dokumentation geliefert. Um Zeit zu sparen, hatte man sich darauf geeinigt, dass der erste Teil der Software bereits vor Abschluss der Softwaretests geliefert wird. Co-op fand in ihren eigenen Tests allein in den ersten 10% des Codes schon 42 Bugs, lehnten die Software daher ab und warnten ICL, dass spätere Versionen das selbe Schicksal ereilen würde, wenn das nochmal vorkam.
Kehren wir kurz zu PCMS zurück. Es gab eine gute und eine schlechte Nachricht. Die Gute: Sie hatten endlich die Daten zu den Dateiformaten zur Verfügung gestellt. Die Schlechte: Es waren die falschen.
Co-op gibt schließlich eine unabhängige Bewertung des Projekts in Auftrag.
Die Beratungsfirma: "Yo, wird schon gehen, ihr müsst nur ein paar kleine Fehler beheben und sofort nen Vertrag aufsetzen."
Natürlich haben sich nicht sofort nen Vertrag aufgesetzt.
Der nächste Teil der Software wurde schließlich eine Woche zu spät geliefert und mittlerweile waren die Verantwortlichen bei Co-op so frustriert, dass sie einen langen Brief mit allen Dingen geschrieben haben, die sie an ICL hassen. Ein paar Tage später kam aber ein überraschender Zwischenbericht mit dem Fazit "Alles läuft perfekt" rein.
Das ist nicht die überraschende Wendung dieser Geschichte, denn es gab zwei neue Probleme:
Co-op hatte bei der Umstrukturierung der Schulungsabteilung und der Entlassung des Schulungspersonals nicht bedacht, dass das Kassenpersonal irgendwie lernen muss, wie man das neue System bedient.
Sie hatten auch vergessen, zu testen, um das neue Kassensystem überhaupt mit ihrem zentralen IT-System kommunizieren konnte
Nachdem ICL schon wieder ankündigte, dass sich der nächste Teil der Software eventuell wieder verspäten könnte, hatte Co-op genug und drohte ICL, sich von dem Projekt zurückzuziehen und rechtliche Schritte einzuleiten, wenn sie nicht endlich den garantierten Deadlines und Strafklauseln zustimmten.
Bei einem Meeting eskalierte die Situation. Das ICL-Team dachte, sie würden dort einfach nur ein paar Bugs besprechen. Stattdessen hat der Projektmanager von Co-op sie komplett zusammengeschissen, kurz darauf scheiterten die Vertragsgespräche erneut und Co-op kündigte das Projekt endgültig auf.
ICL ließ daraufhin einen internen Bericht anfertigen, um rauszufinden, was schiefgelaufen war. Zum einen war das Projekt kaum mehr als ein Konzept gewesen, als sie es CRS damals vorgeschlagen hatten. Zum anderen hatten sie Technologien von Microsoft dafür benutzt, obwohl Microsoft sie gewarnt hatte, dass sie dafür nicht geeignet waren.
Das Ganze ist letzendlich vor Gericht gelandet und es gab ein überraschendes Urteil: Da es nie einen offiziellen Vertrag gab, blieb Co-op auf den Kosten in Höhe von 11 Millionen Pfund sitzen.
Doch am Ende geht die Geschichte doch gut aus, denn auch in der Geschäftswelt scheint es Karma zu geben: Co-op hat zunächst übergangsweise ein anderes Kassensystem benutzt, bevor sie ein eigenes entwickelt haben. 2011 gewannen sie damit sogar einen Innovationspreis.
Die Marke ICL dagegen ist im April 2002 in Fujitsu aufgegangen und wird heute nur noch von einem ehemaligen russischen Joint-Venture genutzt.
17 notes
·
View notes
Text
Argumente für Baubegleitendes Facility Management
Welche Themen müssen beim baubegleitenden FM berücksichtigt werden?
Während des Bauprozesses sind Bauherren einer Reihe von Herausforderungen ausgesetzt, die es zu meistern gilt. Welche konkreten Themen müssen beim baubegleitenden Facility Management unter anderem berücksichtigt werden und inwiefern können Facility Manager unterstützen?
Budgetmanagement
Ob in Folge eines Mangels an Fachkräften im Baugewerbe, sich stetig verändernden Vorschriften und Normen, ineffizienter Planung und Koordination oder unvorhergesehener Verzögerungen des Baus: Selten gibt es Fälle, in denen ein Bauprojekt tatsächlich mit dem eingeplanten Kostenbudget gelingt.
Durch effizientes Kostenmanagement können Facility Manager dem entgegenwirken. Besondere Bedeutung gewinnt hier unter anderem eine exakte Schätzung für Baukosten sowie die Berechnung der Lebenszykluskosten, auch unter Berücksichtigung zukünftiger Betriebs- und Wartungskosten, um so die sogenannten Total Cost of Ownership optimieren zu können.
Risikobewertung und Zeitmanagement
Wird durch unvorhergesehene Ereignisse der Bauprozesse gestört, hat dies nicht nur Kostenüberschreitungen zur Folge, sondern häufig auch Zeitverzögerungen, Vertragsstrafen, rechtliche Konflikte oder Rufschaden. Lassen Sie sich unterstützen anhand eines effektiven Zeitmanagements, einer Überwachung des Bauprozesses sowie einer Berücksichtigung der Abstimmung aller Gewerke. So kann jederzeit ein reibungsloser Ablauf gewährleistet und im Notfall rechtzeitig auf Verzögerungen reagiert werden.
Qualitätsmanagement
Schon in der Phase der Planung und des Baus muss sichergestellt werden, dass das Gebäude langfristig allen relevanten Bau- und Qualitätsstandards entspricht. Durch Expertise in Qualitätskontrollverfahren sowie ein sinnvolles Konzept zur Erfüllung sämtlicher Anforderungen an das Gebäude kann dies unterstützt werden. Insbesondere der Einsatz von Service Level Agreements (SLAs) sowie Key Performance Indicators (KPIs) stellen hier eine Hilfe dar.
Nachhaltigkeitszertifikate
Mittlerweile liegt nicht mehr nur die Wirtschaftlichkeit des Gebäudes im Fokus, sondern auch die Nachhaltigkeit spielt eine immer entscheidendere Rolle. Um während der Bauplanung nicht nur nachhaltige Materialien und Prozesse zu berücksichtigen, sondern auch von anerkannten Nachhaltigkeitszertifikaten zu profitieren, müssen spezifische Anforderungen erfüllt werden. Ziehen Sie dazu schon zu Beginn der Planungsphase einen Facility Manager welcher Erfahrung in der Nachhaltigkeitszertifizierung hinzu.
Effektive Verwaltung und Analyse der Gebäudedaten
Zum Grundgerüst eines erfolgreichen Bauprozesses gehört unter anderem die Dokumentation, Verwaltung und Analyse aller relevanten Gebäudedaten. Um diese effektiv umzusetzen und einen kontinuierlichen Überblick über die Echtzeitdaten zu haben, sind Software-Lösungen in großen Bauprojekten mittlerweile unumgänglich. Lassen Sie sich hier durch die Expertise eines Facility Managers beraten!
2 notes
·
View notes
Text
sharepoint beratung münchen
Sharepoint ist eine webbasierte Verwendung, die es Ihnen ermöglicht, Websites, Dokumente, verzeichnen, Kalender, Aufgaben, Umfragen, Foren, Blogs, Wikis noch dazu vieles mehr zu investieren obendrein zu verwalten. diese einbringen Sharepoint ebenso wie innerbetrieblich denn gleichermaßen außerhalb Sinn, um unter Zuhilfenahme von Ihren Kollegen, Partnern, Kunden überdies Lieferanten zu kommunizieren überdies zusammenzuarbeiten. Sharepoint ist in einige Editionen unterteilt, die ausgewählte Funktionen überdies Preise innehaben. Die wichtigsten Editionen sind:
Sharepoint verbunden: das ist die Cloud-basierte Erteilung vonseiten Sharepoint, die als Dingsbums seitens Microsoft 365 angeboten wird. diese können Sharepoint online bestellen überdies seitens jedem Wurfspießät darüber hinaus jedem Lage Aus darauf zugreifen. selbige zu tun sein einander keine sorgen um die Zusammenbau, Pflege oder Geborgenheit welcher Software handhaben, da Microsoft dies im Zusammenhang ebendiese übernimmt. Sharepoint Server: dasjenige ist die On-Premise-Fassung von Seiten Sharepoint, die diese hinauf Ihren eigenen Servern einsetzen noch dazu verwalten zu tun sein. solche veranschaulichen etliche Prüfung über die Anpassung, Angleichung noch dazu Einbeziehung von Seiten Sharepoint unter Einsatz von anderen Systemen. sie zu tun sein dagegen nicht zuletzt zwischen die Lizenzierung, Aktualisierung mehr noch Geborgenheit jener Gebrauch zuständig Dasein. Sharepoint Foundation: das ist die kostenlose Erteilung von Sharepoint, die freilich die grundlegenden Funktionen bietet. jene schaffen Sharepoint Foundation hinauf Ihren eigenen Servern einfügen mehr noch im Zusammenhang kleine bis mittlere Projekte Nutzen. solche sollen doch gen manche erweiterte Funktionen verzichten, die in den anderen Editionen zugänglich sind.
stellen ebendiese einander im Vorhinein, Ihr Produktionsstätte Kaliumönnte mit Hilfe von dieser gleichen Eta obendrein Einsatz bestellen ebenso ein multinationaler Konzern. Klingt nur in der Phantasie möglich? un ausgerechnet! mithilfe den richtigen Technologiepartnern an Ihrer Flanke können welche die Leistungsfähigkeit Ihres Unternehmens in München palpabel potenzieren. in diesem Fall kommt Network4you (Systemhaus München), ein zertifizierter Microsoft Gold Lebenspartner, ins Entscheidung.
Windows Server 2025 Hyper-V
Mit der Veröffentlichung von Windows Server 2025 Hyper-V hat die proprietäre Hypervisor-Software von Microsoft einen…
www.tumblr.com
SharePoint Beratung
SharePoint Supervision bezieht sich gen den Vorgehen jener Supervision seitens Fabrik wohnhaft bei jener effektiven Softwaresystem von SharePoint. dies kann ausgewählte Aspekte überspannen, genauso zum Beispiel die Zeichnung, Implementation, Zitat und Angleichung seitens SharePoint-Lösungen.
aus welchem Grund ist SharePoint Mentoring wesentlich?
Eine gute SharePoint Mentoring bietet zahlreiche Vorteile im Kontext Unternehmen, betrübt:
Kostensenkung: mit Hilfe von die richtige Softwareanwendungen seitens SharePoint bringen Werk Aufwendung verringern.
Effizienzsteigerung: SharePoint kann zu diesem Zweck zusteuern, Arbeitsabläufe zu besser machen noch dazu die Produktivität zu steigern.
Verbesserte Teamarbeit: SharePoint ermöglicht eine effektive Gruppenarbeit im Kontext Teams überdies Abteilungen.
Bessere Informationsverwaltung: SharePoint bietet Tools zur Struktur obendrein Führung vonseiten Dokumenten noch dazu Unterlagen.
Erhöhte Geborgenheit: SharePoint besitzt über robuste Sicherheitsfunktionen zum Schutzmechanismus Ihrer Angaben.
was beinhaltet eine SharePoint Besprechung?
Eine typische SharePoint Unterstützung hat alle Rechte an diesen Daten umfasst folgende Operation:
Anforderungsanalyse: Identifizierung welcher spezifischen Bedürfnisse überdies Ziele des Unternehmens.
Schema: Tendenz eines Stufunggeschneiderten SharePoint-Strategieplans.
Umsetzung: Montage noch dazu Konfiguration vonseiten SharePoint.
Weiterbildung: Zurverfügungstellung von Seiten Schulungen im Kontext Beschäftigter.
Supervision: Kontinuierliche Konsultation mehr noch Unterhalt der SharePoint-Erwiderung.
sharepoint beratung münchen
0 notes
Text
Shelly Scripting #1: Was ist das überhaupt? Grundlagen und Vorteile
Shelly Scripting eröffnet völlig neue Möglichkeiten in der Welt der Heimautomatisierung. Die Geräte von Shelly sind bereits für ihre Flexibilität und Benutzerfreundlichkeit bekannt, doch mit der Shelly Script Language kannst du ihre Funktionalität noch weiter anpassen. Diese leistungsstarke, auf JavaScript basierende Sprache erlaubt es dir, individuelle Automatisierungen und Steuerungen direkt auf deinen Shelly-Geräten zu erstellen – ganz ohne zusätzliche Hardware oder Cloud-Dienste. https://youtu.be/wTUAZC5-svM Shelly Scripts laufen auf einer angepassten Version von Espruino, einem minimalistischen JavaScript-Interpreter. Diese Änderung bringt die Script-Funktionalität näher an den JavaScript-Standard, während sie weiterhin die Einfachheit und Effizienz bietet, die Shelly-Nutzer schätzen. Wenn du bereit bist, die ersten Schritte in die Welt des Shelly Scripting zu machen, wirst du überrascht sein, wie intuitiv und flexibel die Möglichkeiten sind.
Shelly Scripting - einfaches Script mit Ausgabe in der Konsole
Was sind Shelly Scripts?
Shelly Scripts sind kleine Programme, die direkt auf deinem Shelly-Gerät laufen und dir erlauben, dessen Verhalten individuell anzupassen. Du kannst zum Beispiel Sensordaten erfassen, bestimmte Aktionen basierend auf Bedingungen auslösen oder Shelly-Geräte in komplexere Smart-Home-Systeme integrieren. Das Besondere an Shelly Scripts ist, dass sie lokal auf dem Gerät ausgeführt werden. Das bedeutet: keine Abhängigkeit von Cloud-Diensten und keine Verzögerungen durch externe Netzwerke. Du hast die volle Kontrolle und kannst deine Automationen nach deinen Bedürfnissen gestalten. Die Shelly Script Language nutzt Espruino, eine leichtgewichtige JavaScript-Umgebung, die ideal für eingebettete Systeme ist. Im Vergleich zu früheren Versionen bietet Espruino mehr Kompatibilität mit dem JavaScript-Standard und ermöglicht damit eine vertrautere Programmiererfahrung.
Welche Geräte unterstützen Shelly Scripting?
Nicht alle Shelly-Geräte unterstützen die Skriptfunktionalität. Laut Hersteller ist Shelly Scripting ausschließlich für Geräte der Pro- und Plus-Serie verfügbar. Diese Geräte verfügen über die notwendige Hardware und Software, um die erweiterten Funktionen von Shelly Scripts nutzen zu können. Unterstützte Serien - Shelly Plus: Moderne Shelly-Geräte mit erweiterten Funktionen und schnellerer Hardware. - Shelly Pro: Geräte, die speziell für professionelle Anwendungen und komplexere Installationen entwickelt wurden.
Shelly 1 PM Mini Gen 3 & Shelly Plus 1PM Mini
Shelly Plus 1 & Shelly 1 Mini Gen3
Shelly PLUS PM Mini 1
Shelly Plus 1 Technische Basis von Shelly Scripts Shelly Scripts laufen auf einer modifizierten Version von mJS, die ein Bestandteil des Mongoose OS Frameworks ist. Dieses Framework wurde speziell für eingebettete Systeme entwickelt und bietet eine leichtgewichtige, aber leistungsstarke Umgebung zur Ausführung von JavaScript-basierten Skripten. Mehr Informationen Die spezifischen Funktionen und Möglichkeiten der Shelly Script Language findest du in der offiziellen Dokumentation: Shelly API Documentation – Script Language Features Wenn du ein Gerät besitzt, das Shelly Scripting unterstützt, kannst du das volle Potenzial deiner Automatisierungen ausschöpfen – von benutzerdefinierten Steuerungen bis hin zur Kommunikation mit anderen Systemen über HTTP.
Was wird unterstützt?
Obwohl die Shelly Script Language auf JavaScript basiert, gibt es spezifische Anpassungen, die du kennen solltest. Hier sind die unterstützten Features, die dir bei der Arbeit mit Shelly Scripts zur Verfügung stehen: Unterstützt - Variablen und Funktionen: let, var, und die Definition von Funktionen. - Objekte und Methoden: String, Number, Array, und Math. - Zeit und Datum: Unterstützung für das Date-Objekt. - Operatoren: new, delete sowie grundlegende mathematische und logische Operatoren. - Weitere Features: Object.keys, Ausnahmebehandlungen (try...catch), und Funktionalität wie arguments.length. Nicht unterstützt - Hoisting: Variablen oder Funktionen müssen vor ihrer Verwendung deklariert sein. - Moderne Features aus ES6: Keine Klassen oder Promises; asynchrone Funktionen werden ebenfalls nicht unterstützt. - Systemnahe Espruino-Funktionen: Funktionen, die speziell für Espruino-Hardware entwickelt wurden, sind nicht verfügbar. Besonderheiten - arguments.length: Gibt entweder die Anzahl der übergebenen Argumente oder die erwartete Anzahl zurück, je nachdem, welche größer ist. - delete-Operator: Funktioniert nur ohne Klammern. - Zusätzliche Methode: Funktionen unterstützen replaceWith, ein nützliches Tool für spezifische Ersetzungen. Für detaillierte Informationen zur unterstützten Syntax und API-Details lohnt sich ein Blick in die Espruino-Dokumentation. Beachte jedoch, dass einige Hardware- und Systemspezifika von Espruino in Shelly nicht implementiert sind und auch nicht unterstützt werden.
Meine Shelly Scripting Beispiele auf GitHub
Um dir den Einstieg in Shelly Scripting zu erleichtern, habe ich ein GitHub-Repository eingerichtet: ShellyScripting. Dort stelle ich dir eine Sammlung von Beispielskripten zur Verfügung, die ich speziell für Anfänger und fortgeschrittene Nutzer entwickelt habe. Die Beispiele sind als JavaScript-Dateien organisiert, sodass du sie direkt in das Shelly Webinterface einfügen und ausprobieren kannst. Sie decken eine Vielzahl von Anwendungen ab, darunter: - Erfassen und Anzeigen von Sensordaten - Einfache Automatisierungen - Aktionen basierend auf Zeit oder Bedingungen - Integration mit MQTT und anderen Smart-Home-Systemen Ich aktualisiere das Repository regelmäßig, damit du immer neue Ideen und Lösungen findest. Außerdem lade ich dich herzlich ein, selbst aktiv zu werden: Du kannst gerne Feedback geben oder eigene Skripte einreichen, die ich dann in das Projekt integriere. Schau dir die Beispiele an, lade sie herunter, und probiere sie aus. Gemeinsam können wir die Möglichkeiten von Shelly Scripts entdecken und erweitern: GitHub: ShellyScripting.
Wie werden Shelly Scripts aufgerufen?
Bevor wir uns mit den Details des Shelly Scripting beschäftigen, ist es wichtig zu verstehen, wie die Scripts aufgerufen und genutzt werden können. Dabei gibt es zwei grundlegende Ansätze, die jeweils unterschiedliche Möglichkeiten bieten: Lokale Ausführung In der einfachsten Form laufen Shelly Scripts direkt auf dem Gerät und reagieren auf Ereignisse wie Schaltvorgänge oder Zeitbedingungen. Diese lokalen Scripts sind ideal, wenn du einfache Automatisierungen umsetzen möchtest, die unabhängig von Benutzereingaben oder externen Systemen funktionieren. Beispiele: - Ein Shelly reagiert auf einen Tastendruck und schaltet ein Relais. - Eine LED wird basierend auf einer vorgegebenen Zeit ein- und ausgeschaltet. Diese Art der Ausführung ist vollständig lokal und bietet eine schnelle, zuverlässige Möglichkeit, Geräte zu automatisieren – allerdings ohne direkte Rückmeldung oder Interaktion mit dem Benutzer. Kommunikation über HTTP Requests Die wahre Stärke des Shelly Scripting zeigt sich, wenn du die HTTP-API nutzt, um mit dem Shelly zu kommunizieren. Damit kannst du nicht nur Schaltvorgänge auslösen, sondern auch Werte wie Text oder Zahlen an den Shelly übergeben und darauf basierend komplexe Automatisierungen umsetzen. Beispiele: - Datenübergabe: Sende eine Temperatur oder einen Text an das Shelly Script, um Aktionen davon abhängig zu machen. - Abfrage von Zuständen: Erhalte Rückmeldungen vom Shelly, z. B. den aktuellen Zustand eines Sensors oder einer Schaltung. - Kombinierte Automatisierung: Steuerung eines Geräts durch externe Ereignisse wie Webhooks oder andere IoT-Plattformen. Warum HTTP Requests das volle Potenzial entfalten Mit HTTP Requests kannst du Shelly Geräte in komplexere Smart-Home-Systeme integrieren und sie flexibel steuern. Anders als bei Szenen, die auf feste Bedingungen beschränkt sind, kannst du mit Shelly Scripts: - Dynamische Eingaben nutzen: Werte in Echtzeit übergeben und darauf reagieren. - Mehrere Geräte synchronisieren: Daten von einem Gerät an ein anderes weitergeben. - Intelligente Entscheidungen treffen: Verschiedene Bedingungen und Werte kombinieren, um Aktionen auszuführen. Dieser Ansatz öffnet die Tür zu einer völlig neuen Ebene der Automatisierung, bei der du die Kontrolle vollständig in der Hand hast. Tipp: In meinem GitHub-Repository ShellyScripting findest du Beispiele, die beide Ansätze – lokale Scripts und HTTP Requests – abdecken. So kannst du selbst ausprobieren, welche Methode am besten zu deinem Projekt passt.
Debugging: Voraussetzung für die Ausführung von Shelly Scripts
Das Debugging ist nicht nur ein hilfreiches Werkzeug, sondern eine zwingende Voraussetzung, um Scripts auf deinem Shelly-Gerät auszuführen. Wenn das Debugging nicht aktiviert ist, kannst du kein Script starten. Stattdessen erscheint beim ersten Ausführen eines Scripts die folgende Meldung: "Logs are disabled. You can enable them from here."
Meldung - Fehlende Berechtigung zum Erzeugen von Websocket debug Meldungen Warum ist Debugging erforderlich? - Shelly Scripts erzeugen Protokolle, um den Ablauf und mögliche Fehler anzuzeigen. Ohne aktive Logs kann das Gerät die Scripts nicht korrekt ausführen. - Die Debug-Funktion dient also nicht nur zum Testen, sondern ist ein integraler Bestandteil des Script-Betriebs. Debugging aktivieren – Schritt für Schritt - Meldung beachten: Wenn die oben genannte Meldung erscheint, klicke auf den angebotenen Link oder navigiere manuell zu Settings > Debug im Webinterface. - Debugging einschalten: Setze den Haken bei der Checkbox "Websocket debug" neben "Enabled". - Änderungen speichern: Klicke auf "Save", um das Debugging zu aktivieren.
Schritt 1 - aktivieren der Websocket debug Meldungen
Schritt 2 - aktivieren der Websocket debug Meldungen Nach der Aktivierung kannst du Scripts ausführen und die Protokolle im Debug-Bereich des Webinterfaces einsehen. Ohne diese Einstellung ist die Nutzung der Shelly Script-Funktionen nicht möglich.
Ein Shelly Script erstellen: Schritt-für-Schritt-Anleitung
Das Erstellen eines Scripts auf deinem Shelly-Gerät ist einfach und direkt über das Webinterface möglich. Hier zeige ich dir die Schritte, wie du dein erstes Script anlegen kannst. Passend dazu stelle ich eine Grafik bereit, in der die Schritte durch nummerierte Markierungen hervorgehoben sind.
Öffnen des Webinterfaces - Gib die IP-Adresse deines Shelly-Geräts in die Adressleiste deines Browsers ein (z. B. http://192.168.0.x). - Dadurch öffnest du das Webinterface des Geräts. (Siehe Markierung 1 in der Grafik.) Den Menüpunkt "Scripts" auswählen - Im Hauptmenü des Webinterfaces findest du den Punkt "Scripts". - Klicke darauf, um zur Übersicht der Skript-Verwaltung zu gelangen. (Markierung 2) Neues Script erstellen - In der Script-Verwaltung klickst du auf die Schaltfläche "Create script". - Dadurch wird ein neues leeres Script angelegt, das du direkt bearbeiten kannst. (Markierung 3) Script benennen und starten Nachdem du auf "Create script" geklickt hast, öffnet sich ein Fenster, in dem du dein neues Script erstellen kannst. Bevor du mit dem Schreiben deines Codes loslegst, musst du dem Script einen Namen geben. Namen vergeben - Gib im Feld "Script name" einen aussagekräftigen Namen für dein Script ein. - Ein eindeutiger Name hilft dir später, deine Scripts besser zu organisieren, vor allem, wenn du mehrere Scripts auf deinem Shelly-Gerät hast. Mit dem Scripten beginnen - Nach der Namensvergabe kannst du direkt in den Editor schreiben. Hier steht dir eine Oberfläche zur Verfügung, in der du deinen JavaScript-Code eingeben und speichern kannst. Speichern und Testen - Sobald du deinen Code eingegeben hast, klicke auf "Save", um das Script zu sichern. - Danach kannst du das Script starten und im Debug-Bereich die Ausgabe oder mögliche Fehler überprüfen.
Starten und Stoppen eines Scripts Nachdem du dein Script das erste Mal gespeichert hast, erscheinen im Script-Editor zwei zusätzliche Schaltflächen: Start und Delete. Diese Funktionen ermöglichen es dir, dein Script zu starten oder bei Bedarf zu löschen.
Start-Schaltfläche - Nach dem Speichern des Scripts wird die Schaltfläche Start sichtbar. - Funktion: Mit einem Klick auf Start wird dein Script ausgeführt. Es läuft dann kontinuierlich, bis du es stoppst oder ein Fehler auftritt. - Dynamische Änderung: Sobald das Script läuft, verwandelt sich die Schaltfläche Start in Stop. Stop-Schaltfläche - Funktion: Mit einem Klick auf Stop kannst du die Ausführung des Scripts beenden. - Diese Funktion ist nützlich, wenn du Änderungen vornehmen oder das Script vorübergehend deaktivieren möchtest. Fehlerfall Du kannst den Fehler über den Debug-Bereich im Webinterface einsehen und das Script nach der Korrektur erneut starten. Wenn während der Ausführung ein Fehler auftritt, stoppt das Script automatisch.
Einfach loslegen: Kleine Beispiele mit Shelly Scripts
Shelly Scripts sind eine großartige Möglichkeit, die Funktionalität deines Shelly-Geräts individuell anzupassen. Hier stelle ich dir drei einfache Beispiele vor, die zeigen, wie du die Skriptsprache nutzen kannst – von einer Begrüßung in der Konsole bis hin zu einer zeitgesteuerten Schaltung und einer benutzerdefinierten HTTP-Interaktion. Begrüßung in der Konsole anzeigen Dieses Beispiel zeigt, wie du mit einem einfachen Script eine Begrüßung direkt in der Konsole des Shelly-Webinterfaces ausgibst. Es ist perfekt, um den Einstieg ins Scripting zu finden. (Dieses Beispiel habe ich aus der offiziellen Dokumentation entnommen.) let greeting = "Hallo vom Shelly!"; print(greeting); Was passiert hier? - Die print-Funktion gibt den Text direkt in der Konsole aus. Dies ist nützlich für Debugging oder einfache Statusmeldungen. Was ist die Ausgabe? In der Konsole erhältst du die Meldung welche zuvor definiert wurde. Zusätzlich noch ein Zeitstempel wann diese Meldung erzeugt wurde.
Meldung aus einem einfachen Shelly Script in der Konsole Relais zeitgesteuert schalten Im nächsten Beispiel schalten wir das Relais des Shelly für 5 Sekunden ein und danach wieder aus. Dieses Script ist ideal für Anwendungen wie das Einschalten einer Lampe oder eines Geräts für eine festgelegte Dauer. // Parameterobjekt für den Shelly-Aufruf. Es definiert das Relais (id: 0) und dessen Schaltstatus. let shellyParameter = { id: 0, // ID des Relais, das gesteuert werden soll (0 = erstes Relais) on: true, // Standardstatus, um das Relais einzuschalten }; // Ein Timer wird eingerichtet, der alle 5 Sekunden (5000 ms) ausgelöst wird. // Der Timer läuft im wiederholenden Modus (true als zweiter Parameter). Timer.set(5000, true, function() { // Abrufen des aktuellen Status des Relais (Switch:0 bezieht sich auf das erste Relais). const result = Shelly.getComponentStatus("Switch:0"); // Überprüfen, ob der Status erfolgreich abgerufen wurde. if (result) { // Prüfen, ob das Relais aktuell eingeschaltet ist (output === true). if (result.output === true) { print("Relais ist AN! -> neuer Status AUS"); // Debug-Ausgabe: Relais ist aktuell eingeschaltet. } else { print("Relais ist AUS! -> neuer Status AN"); // Debug-Ausgabe: Relais ist aktuell ausgeschaltet. } // Den Schaltstatus umkehren (toggle): Wenn es an ist, wird es ausgeschaltet, und umgekehrt. shellyParameter.on = !result.output; // Aufruf der Shelly-API, um den neuen Status des Relais zu setzen. Read the full article
0 notes
Text
Die deutsche Wirtschaft unterschätzt die Gefahr von Cyberangriffen. Nicht einmal die Hälfte der Industrieunternehmen führt regelmäßige Cybersecurity Schulungen für ihre Beschäftigten durch, so die Ergebnisse des „OT+IoT Cybersecurity Report 2024“. Es ist höchste Zeit, Cyberresilienz in den Mittelpunkt zu rücken. 40 Prozent der Industrieunternehmen in Deutschland führen regelmäßige Schulungs- und Trainingsmaßnahmen in Sachen Cybersicherheit für ihre Beschäftigten durch. 27 Prozent haben Regeln und Verfahren für Cybersecurity in ihre Mitarbeiterhandbücher und Firmenrichtlinien aufgenommen. „Das klingt nach viel, aber es bedeutet letztlich, dass ein Großteil der Industrie der Frage, wie man sich vor Hackern schützen kann, noch zu wenig Beachtung schenkt“, sagt Jan Wendenburg, CEO des Düsseldorfer Cybersecurity-Spezialisten ONEKEY. Dies geht aus dem „OT+IoT Cybersecurity Report 2024“ von ONEKEY hervor. Das Resultat: Die deutsche Wirtschaft unterschätzt das Risiko von Hackerangriffen auf Maschinen, industrielle Steuerungen (Operational Technology, OT) und das Internet der Dinge (Internet of Things, IoT). Laut Bericht sensibilisiert nur etwas mehr als ein Zehntel (11 Prozent) der Industrie seine Beschäftigten systematisch für Bedrohungen durch Cyberkriminelle. „Wenn ein Produktionsband oder ein Verpackungsroboter nicht richtig funktioniert, sollte der Maschinenführer auch den Fall einer Hackerattacke in Betracht ziehen“, gibt Jan Wendenburg ein Beispiel, „doch ohne Schulung wird genau das nicht passieren und die Erkenntnis, dass Hacker eingedrungen sind, setzt sich erst durch, wenn der Schaden längst angerichtet ist.“ Überprüfungen der Cyber-Resilienz bei über einem Drittel der Unternehmen unklar Immerhin führen 62 Prozent der untersuchten Industrieunternehmen regelmäßig Cybersecuritiy-Audits durch. 24 Prozent der Betriebe verlassen sich dabei auf externe Bewertungen, 18 Prozent auf interne, und 20 Prozent fahren hybrid mit eigenen und externen Audits. „Bei mehr als einem Drittel der Industrie scheint unklar, ob oder in welchem Umfang eine regelmäßige oder auch nur gelegentliche Prüfung der Resilienz gegenüber Hackerangriffen vorgenommen wird“, wundert sich Jan Wendenburg über den aktuellen Umgang mit einer der größten Bedrohungen unserer Zeit. Beinahe ein Fünftel (19 Prozent) der Befragten bekennt, dass bei ihnen keinerlei Audits zur Cybersicherheit statffinden, weder intern noch extern. Laut BKA bis zu 4.000 Angriffe am Tag Die Statistik des Bundeskriminalamtes (BKA) führt für das letzte Jahr beinahe 135.000 offiziell gemeldete Fälle von Cyberkriminalität auf und geht dabei von einem Dunkelfeld von 90 Prozent aus. „Das entspräche mehr als 4.000 Angriffen am Tag“, warnt der ONEKEY-CEO. Das Bundesamt für Sicherheit in der Informationstechnik (BSI) schreibt in seinem Lagebericht zum vergangenen Jahr: „Die Bedrohung durch Cybercrime ist so hoch wie nie zuvor.“ Der Bedrohungslage zum Trotz ist laut Umfrage weniger als die Hälfte der Unternehmen (46 Prozent) mit den getroffenen Maßnahmen zum Schutz gegen Cyberkriminelle zufrieden. „Es wird höchste Zeit zum Handeln“, mahnt Jan Wendenburg. Er führt aus: „Ein erster Schritt besteht darin, die Software in allen Connected Devices einer gründlichen Prüfung zu unterziehen, und eventuelle Schwachstellen aufzudecken.“ Product Cybersecurity & Compliance Platform als Basis für Prüfungen ONEKEY betreibt hierfür eine Product Cybersecurity & Compliance Platform (PCCP), um die Software in industriellen Steuerungen und in vernetzten Geräten einer gründlichen Analyse zu unterziehen und Sicherheitslücken aufzudecken. „Eine solche Prüfung dokumentiert den Ist-Zustand und gibt konkrete Hinweise, an welchen Stellen Verbesserungen angeraten sind“, erklärt Jan Wendenburg. Er gibt zu bedenken: „Wer ab 2027 ein vernetztes Elektronikprodukt mit bekannten ausnutzbaren Schwachstellen auf den EU-Markt bringt, haftet dafür mit bis zu 15 Millionen EUR. Der Dokumentation der Sicherheit fällt also nicht nur technisch, sondern auch rechtlich und finanziell eine Schlüsselrolle zu.“ Allein in der ersten Hälfte 2024 hat das US-amerikanische National Institute of Standards and Technology (NIST) rund 15.000 „Common Vulnerabilities and Exposures“ (kurz CVEs), also Sicherheitslücken und Schwachstellen in Software, veröffentlicht. „Die Herausforderung ist groß“, sagt Jan Wendenburg, und erklärt: „Umso dringlicher ist es, die für eine Verbesserung der Cybersecurity entlang der gesetzlichen Anforderungen notwendigen Maßnahmen zügig auf den Weg zu bringen. Audits und Schulungen der Beschäftigten spielen dabei eine Schlüsselrolle. Wir empfehlen dies in die Liste der guten Vorsätze für 2025 aufzunehmen – und dann dies auch umzusetzen.“ KI identifiziert kritische Lücken in der Cybersecurity ONEKEY ist Europas führender Spezialist für Product Cybersecurity & Compliance Management und Teil des Investmentportfolios von PricewaterhouseCoopers Germany (PwC). Die einzigartige Kombination aus einer automatisierten Product Cybersecurity & Compliance Platform (PCCP) mit Expertenwissen und Consulting Services bietet schnelle und umfassende Analyse, Unterstützung und Management zur Verbesserung der Produkt Cybersecurity und Compliance vom Produkt Einkauf, Design, Entwicklung, Produktion bis zum End-of-Life. Kritische Sicherheitslücken und Compliance-Verstöße in der Geräte-Firmware werden durch die KI-basierte Technologie innerhalb von Minuten vollautomatisch im Binärcode identifiziert - ohne Quellcode, Geräte- oder Netzwerkzugriff. Durch die integrierte Erstellung von "Software Bill of Materials (SBOM)" können Software-Lieferketten proaktiv überprüft werden. „Digital Cyber Twins“ ermöglichen die automatisierte 24/7 Überwachung der Cybersicherheit auch nach dem Release über den gesamten Produktlebenszyklus. Der zum Patent angemeldete, integrierte Compliance Wizard™ deckt bereits heute den EU Cyber Resilience Act (CRA) und Anforderungen nach IEC 62443-4-2, ETSI EN 303 645, UNECE R1 55 und vielen anderen ab. Das Product-Security-Incident-Response-Team (PSIRT) wird durch die integrierte, automatische Priorisierung von Schwachstellen effektiv unterstützt und die Zeit bis zur Fehlerbehebung deutlich verkürzt. Passende Artikel zum Thema Read the full article
0 notes
Text
FileMaker Runtime als Applikation
Das Thema ist vielen FileMaker Entwicklern vertraut: Im Verlauf und insbesondere zum Abschluss eines Projektes einer Zusammenarbeit sind nicht nur viele Tabellen, sondern auch viele Dateien entstanden, die ich an meine Kunden weitergeben möchte. Gleiches gilt, will ich eine Demoversion meiner Software an neue Interessenten schicken. Im Allgemeinen gebe ich die Dateien oder Demoversionen dann als Runtime weiter. Die FileMaker Runtime liegt mit etlichen Dateien innerhalb eines Ordners. Was aber macht der Kunde mit einem Ordner voller Dateien? Als Orientierungshilfe für den Anwender bieten sich mir zwei Möglichkeiten. Entweder füge ich einer Demoversion ein Dokument mit Erläuterungen zum Start der Datei bei, was potentielle Kunden allerdings schon im Vorfeld abschrecken könnte, oder ich investiere etwas Arbeit in die intelligente Verpackung meiner Demo-Software. Unter Windows konnte ich diese Problematik schon frühzeitig umgehen: Hier gibt es ein nahezu unendliches Angebot an Installationsprogrammen, mit deren Hilfe die Dateien an die richtige Stelle gelegt und entsprechende Menüeinträge zum Starten der FileMaker Runtime erzeugt werden können. Diese Möglichkeiten zur Installation gibt es auch unter Mac OS X, aber der Mac-Nutzer ist es nun einmal gewohnt, Applikationen aus dem .dmg-Image1 auf seine Festplatte zu ziehen und per Doppelklick zu starten. Dies lässt sich ermöglichen, indem der Ordner mit den entsprechenden Dateien als Applikation gebündelt wird: nun kann die im Ordner liegende FileMaker Runtime Applikation mit dem vertrauten Doppelklick geöffnet werden. Sicherlich gibt es eine Vielzahl von Möglichkeiten, den Ordner mit einer Aktion zu verbinden. Eine der komfortabelsten ist für mich die Verwendung des Tools Platypus2. Dieses kleine „Schnabeltier“ verwandelt den Ordner mit den enthaltenen FileMaker Dateien in eine native Mac-OS-Applikation. Werkzeuge Für die Erstellung der FileMaker Runtime nutzen wir das in der FileMaker Advanced Version (bei FileMaker 7 heißt es Developer-Version) mitgelieferte Werkzeug – dies ist allerdings nur in der jeweiligen Entwickler-Version enthalten. Als zweites Werkzeug verwende ich das bereits erwähnte Tool Platypus. Es dient der Bündelung von Scripts zu einer Applikation, eignet sich aber auch hervorragend zum Verpacken der FileMaker Runtime sowie der dazugehörenden Dateien. Der Quellcode steht unter GNU General Public License und die Nutzung ist kostenlos. Um den Umfang der fertigen Applikation zu reduzieren, verpacke ich sie in eine Image-Datei (.dmg). Diese Image-Dateien enthalten oft eine Kurzanleitung und eine „Bitte lesen!“-Datei des Entwicklers und sind jedem Mac-Nutzer bekannt. Enthaltene Programme bzw. Applikationen werden per „drag and drop“ in das Pro- grammverzeichnis gezogen. Für die Erzeugung von Image-Dateien gibt es ebenfalls ein vielfältiges Angebot an Werkzeugen. Die einfachste Möglichkeit ist die Nutzung des Festplatten-Dienstprogramms, das mit Mac OS X geliefert wird. Hat man das Programm gestartet, kann unter Ablage ̈ Neu ̈ Image von Ordner die Applikation zum Image konvertiert werden. Mein persönlicher Favorit ist aber FileStorm, denn mit dieser Applikation kann ich der Image-Datei zusätzlich eine persönliche Note verleihen: So lassen sich z. B. der Hintergrund und das Image-Symbol individuell gestalten. Aufbau einer Mac OS Applikation Eine Applikation unter Mac OS X besteht aus verschiedenen Verzeichnissen, die Struktur kann man sich im Finder anzeigen lassen. Mit einem Rechtsklick auf die Applikation oder über den Menüpunkt Paketinhalt anzeigen im Kontextmenü wird die Verzeichnisstruktur sichtbar. Üblicherweise entspricht sie folgen- dem Schema: Applikationsname.app/Contents/Info.plist Applikationsname.app/Contents/MacOS/executable Applikationsname.app/Contents /Resources/icon.icns Applikationsname.app/Contents /Frameworks/ Applikationsname.app/Contents/PlugIns/ Erstellung der Runtime Grundsätzlich unterscheidet sich die Erstellung einer Runtime unter Windows nicht von der unter Mac OS X. Zu bedenken ist aber, dass die Projektdateien ProjektXY.sav der beiden Systeme nicht kompatibel sind. Das bedeutet: Wenn ich meine FileMaker Dateien kompatibel für beide Systeme entwickeln möchte, muss ich spätestens bei der Runtime-Erstellung zwei Versionen anlegen. Der Aufruf der Funktion erfolgt im FileMaker Menü unter Werkzeuge ̈ Entwicklungs- werkzeuge. Hier können Sie die gewünschten Dateien auswählen, die Startdatei vorgeben und einige Parameter wie Projektordner, Abschlussbild u. ä. festlegen. Dabei sollten Sie auf jeden Fall darauf achten, unterschiedliche Projektordner für Mac OS und Windows aus- zuwählen. Warum betone ich die verschiede- nen Projektordner so ausdrücklich? Ich arbeite ausschließlich am Mac und starte Windows über Parallels. Als Besonderheit von Parallels ab Version 4 an gilt: Ab dieser Version könnten die Mac- und Windows-Dateien auch in einem Projektordner liegen, da die beiden Betriebssysteme sich völlig mischen und nicht mehr zwischen Verzeichnissen für Mac oder Windows unterschieden werden muss. Dies führt aber bei nur einem Projektordner zu ei- ner Überschreibung der für Windows erzeug- ten Dateien und umgekehrt. Der Rest der Runtime-Erstellung ist selbst- erklärend und soll nicht Thema dieses Beitrags sein. Noch zu erwähnen ist, dass nach der Erstellung der Runtime mindestens eine FileMaker Applikation mit der Datei-Endung .app und die eigentliche FileMaker Datei mit der standardmäßigen Datei-Endung .USR im Projektordner liegen. Erstellung des Application Bundles unter Mac OS Nachdem Sie die Runtime-Datei erstellt haben, können Sie den kompletten Projekt- ordner zu einer Applikation bündeln. Dazu benötigen Sie das bereits erwähnte Tool Platypus. Nach dem Programmstart öffnet sich ein kleines Fenster mit relativ wenigen Einstellun- gen: Für mich sind nur die Einstellungen von Platypus relevant, die ich für meine FileMaker- Bundles benötige. Daher gebe ich hier nur einen relativ kleinen Einblick in die Fähigkeiten dieses Programms. Wer weitergehende Ambitionen hegt, sollte sich das Programm ruhig genauer anschauen. Für unsere Zwecke sind nur wenige Angaben notwendig: In das Feld „App Name“ schreiben Sie den Titel Ihrer Applikation. In meinem Fall lautet der Titel „DokuCare“. Als „Script Type“ wählen Sie „AppleScript“. Im Feld „Script Path“ befindet sich der Pfad zu einem AppleScript, das die Anweisung dafür enthält, was bei einem Klick auf die fertige Applika- tion geschehen soll. Deshalb haben Sie auch im vorhergehenden Feld für den „Script Type“ das Format „AppleScript“ gewählt. Platypus vervollständigt automatisch den Pfad zum Interpreter. Jetzt müssen Sie nur noch ein kleines Apple- Script schreiben. Es besteht aus zwei Anweisungen: Tell application „Application“ Über wird die FileMaker Applikation (Pflegeverwaltung.app), die im Runtime-Ordner liegt, angesprochen und geöffnet. Über den Befehl „to activate“ wird das FileMaker Applikationsfenster in den Vordergrund geholt. Da nun Ihre FileMaker Applikation gestartet ist und sich im Vordergrund befindet, schließen wir die im Verzeichnis Applikationsname.app/Contents/MacOS liegende ausführende Datei DokuCareFM. Diese wird auch als „executable“ (ausführbar) bezeichnet und startete die FileMaker Applikation (Pflegeverwaltung.app). Geschlossen wird über die Anweisung quit application „Application“ Das bedeutet, Sie schreiben in einen Editor Ihrer Wahl den Befehl: Danach schreiben Sie und speichern die Datei im Projektordner als Applikation.scpt. Jetzt selektieren Sie nur noch den Pfad zum neu erzeugten AppleScript im Feld „Script Path“. Die besten Erfahrungen bei der Benennung des AppleScript habe ich damit gemacht, dass das Script den Namen der Applikation erhält, denn sobald der Name aus dem Feld „App Name“ sich von der Bezeichnung des App- leScript unterscheidet, startet die von Ihnen er- stellte Applikation nicht mehr zuverlässig. Am einfachsten ist es, das Feld App Name leer zu lassen, da es dann automatisch mit der Bezeich- nung des AppleScript gefüllt wird. Wenn Sie innerhalb Ihrer Datenbanken eigene Symbole einsetzen, möchten Sie wahrschein- lich auch hier ein themenbezogenes eigenes Icon verwenden. Ändern Sie dazu einfach das Symbol im entsprechenden Feld. Jetzt können Sie den Projektordner per „drag and drop“ in das Feld „Files and folders“ ziehen. Dann star- ten Sie über den Button „Create“ den Prozess der Bündelung. Das Programm Platypus er- fragt noch den Speicherort der zu erstellenden Applikation und beginnt dann mit der Arbeit. Ein visuelles Feedback über den Fortschritt der Erstellung gibt es nicht, lediglich der Button „Create“ bleibt bis zum Ende der Erstellung blockiert. Nach Abschluss erhalten Sie eine fertige Applikation mit eigenem Icon und der folgenden Dateistruktur: Erzeugung der Image Datei Um nun Ihre neu erstellte Applikation übers Internet zur Verfügung zu stellen, bietet es sich an, die Datei noch in ein Image zu verpacken. Wie bereits erwähnt, besteht die Möglichkeit, Image-Dateien mit Bordmitteln zu erzeugen. Ich persönlich verwende hierzu aber das kostenpflichtige Tool FileStorm3. Mit FileStorm habe ich die Möglichkeit, der Image-Datei ein individuelles Aussehen zu geben – passt außer- dem vom Namen her sehr gut zum Produkt FileMaker! Die Erzeugung der Image-Datei ist recht simpel: Zunächst erstellen Sie ein neues Pro- jekt. Anschließend öffnen Sie den Menü- punkt „Preferences“. Im geöffneten Fenster „FileStorm Preferences“ geben Sie unter dem Punkt „Defaults“ die individuellen Eigenschaften der Image-Datei ein. Das Fenster mit den „Preferences“ können Sie jetzt wieder schließen. Dann klicken Sie auf das Symbol „Inspector“. Es öffnet sich das Fenster „Property Inspector“. Mithilfe der Tastenkombination + kom- men Sie in den Bereich „License Agreements“. Hier können Sie eine Lizenz-Datei angeben. Wenn später das Image entpackt wird, wird diese Lizenz angezeigt, und der Entpackungs-Prozess läuft erst nach Zustimmung durch den Anwender weiter. (Warum die Einstellung so versteckt liegt, weiß wahrscheinlich nur der Programmautor von FileStorm ...) Als Letztes ziehen Sie die von Ihnen zuvor er- stellte Applikation DokuCareFM.app per „drag and drop“ auf das Hauptfenster von FileStorm. Auch hier bietet es sich an, eine Kurzanleitung für die Applikation mit in das Fenster zu ziehen. Ein Klick auf den Button „Finalize“ erzeugt dann das Image. Wie Sie nach dieser kurzen Abhandlung sehen können, ist der Aufwand für die Applikations-Erstellung zwar gering, aber doch etwas lästig. Sie erleichtern damit aber potentiellen Kunden den Zugang zu Ihrem Produkt und verringern Ihren Zeitaufwand für Supportleistungen, gerade für nicht programminhaltliche Fragen in erheblichem Maß.
0 notes
Link
#WLANLösungen#WiFiNetzwerk#DrahtlosesInternet#Netzwerksicherheit#WiFiTechnologie#WLANOptimierung#Netzwerktechnologie#WirelessSolutions#WLANAbdeckung#ASCENDGmbH
0 notes
Text
Übersetzungsbüro Motte 3
IT-Meisterschaft Die schnelllebige Welt der Informationstechnologie verlangt nach Übersetzungen, die nicht nur technische Details präzise vermitteln, sondern auch branchenüblichen Standards entsprechen. Die Kompetenz von Motte in der Übersetzung von IT-Themen umfasst ein breites Spektrum, einschließlich Software-Dokumentation, Codierungsanleitungen und technischer Spezifikationen. Durch das…
View On WordPress
#Übersetzung#Übersetzungsbüro#codierungsanleitung#Information#Informationstechnologie#it#it-branche#service#software#software-dokumentation#technischer Spezifikationen
0 notes
Text
13. Mai 2024
Der Bug ist eine Fliege
Das Smartboard in der Schule hat heute immer wieder den Programm-Schließen-Dialog („Möchtest du das Dokument speichern?") angezeigt, und ich musste immer wieder auf „Abbrechen“ drücken, um weiterschreiben zu können. Ich dachte, es sei ein Bug, aber die Klasse hat mich dann irgendwann drauf aufmerksam gemacht, dass es eine Fliege war, die auf dem X oben rechts rumgelaufen ist. (Ich arbeite meistens mit dem angeschlossenen Windows-PC statt mit der Smartboard-eigenen Software, darum das X oben rechts.) So not quite a bug, but close 😁
(Mehmet Aydın)
11 notes
·
View notes
Text
Die elektronische Patientenakte (ePA) fördert den Datenmissbrauch - kritisiert der Autor am 14.07.2023 in der Berliner Zeitung Elektonische Patientenakte - Schaufenster auf Ihre Gesundheit Andreas Heyer* Bislang sehen offenbar nur wenige Patienten einen Nutzen darin, ihre Gesundheits- und Behandlungsdaten zentral auf einem Server in einer elektronischen Patientenakte speichern zu lassen. Zwei Jahre nach Einführung der elektronischen Patientenakten haben sich bis Ende Januar 2023 nur 595.000 Versicherte dafür entschieden – das entspricht unter einem Prozent aller Versicherten. Aus Sicht der Bundesregierung reicht das nicht aus, um einen möglichst vollständigen Datensatz mit Gesundheitsdaten der Versicherten zu erstellen und diesen Institutionen aus öffentlicher und kommerzieller Forschung zur Auswertung zur Verfügung stellen zu können. Deshalb plant die Bundesregierung, das Prinzip umzukehren, sodass für alle Versicherten, die nicht ausdrücklich widersprechen, eine elektronischen Patientenakte angelegt wird. Das Portal Netzpolitik veröffentlichte Ende Juni die Referentenentwürfe des Bundesgesundheitsministeriums zum Digitalgesetz und zum Gesundheitsdatennutzungsgesetz. Gemäß Entwurf des Digitalgesetzes wären ab Januar 2025 die gesetzlichen Krankenversicherungen dazu verpflichtet, elektronische Patientenakten (ePA) für alle Versicherten anzulegen, die dem nicht ausdrücklich widersprochen haben (eine sogenannte Opt-Out-Regelung). Gleichzeitig sollen gemäß dem Gesetzentwurf Ärzte, Psychotherapeuten und andere Leistungserbringer des Gesundheitssystems dazu verpflichtet werden, ihre Behandlungsdaten auf die Server der Anbieter von elektronischen Patientenakten zu übertragen. Keine Kontrolle über den Verbleib der Daten Der Entwurf verpflichtet Ärzte und Psychotherapeuten ausdrücklich, Daten zu HIV-Infektionen, psychischen Erkrankungen und Schwangerschaftsabbrüchen in die ePA zu übermitteln. Bei diesen besonders sensiblen Daten soll es jedoch (im Gegensatz zur Übermittlung anderer Behandlungsdaten) eine Hinweispflicht des Behandlers auf die Widerspruchsrechte des Patienten geben. Das Grundkonzept einer Speichermöglichkeit digitalisierter Dokumente für Patienten, um ihren unterschiedlichen Fachärzten einen einfachen und zeitnahen Zugriff auf Vorbefunde von Kollegen zu ermöglichen, wenn dies der Patient befürwortet, kann durchaus sinnvoll sein. Entgegen früheren Vorschlägen werden die elektronischen Patientenakten jedoch nicht auf den Versichertenkarten der Patienten gespeichert, bei denen diese physisch die Kontrolle über den Verbleib ihrer Gesundheitsdaten behalten würden. Stattdessen wurde ein System eingeführt, in dem die ePA auf den Servern privater IT-Anbieter (in einer „Cloud“) gespeichert wird, mit denen die jeweilige Krankenkasse einen Vertrag abgeschlossen hat. Im Falle der Techniker Krankenkasse und der Barmer werden die elektronischen Patientenakten auf Servern des Unternehmens IBM gespeichert. Die Telematikinfrastruktur genannte digitale Infrastruktur des Gesundheitssystems wird über die Server der Bertelsmann-Tochter Arvato betrieben. Anfällig für Datenpannen Entgegen der Beteuerungen des Gesundheitsministeriums und der IT-Partner, dass die digitale Infrastruktur sicher sei, sind bereits zahlreiche Datenpannen aufgetreten. So wurde bekannt, dass seit der vor kurzem erfolgten Einführung der elektronischen Arbeitsunfähigkeitsbescheinigung ca. 116.000 Datensätze durch einen Software-Fehler statt an die Krankenkassen an eine einzelne Arztpraxis versendet worden seien. In Finnland wurden Psychotherapie-Daten bei einem Cyberangriff gehackt und Patienten teilweise von den Cyber-Kriminellen zu Bitcoin-Zahlungen erpresst. In Australien seien die Gesundheitsdaten von 9,7 Millionen Versicherten einer Krankenversicherung von Hackern im Darknet veröffentlicht worden. Bereits dieses Jahr sind gesetzliche Krankenversicherungen dazu verpflichtet, ihre Abrechnungsdaten inklusive der Diagnosen, Medikation und Dauer der Behandlung ihrer Versicherten pseudonymisiert an das Forschungsdatenzentrum Gesundheit zu übertragen. Dabei ist kein Widerspruchsrecht von Versicherten vorgesehen. Behandlungsdaten zu Forschungszwecken Gemäß dem Gesetzentwurf zum Gesundheitsdatennutzungsgesetz sollen demnächst auch die Behandlungsdaten in den elektronischen Patientenakten über eine noch zu schaffende „Datenzugangs- und Koordinierungsstelle für Gesundheitsdaten“ Universitäten und Unternehmen zur Auswertung für Forschungszwecke zugänglich gemacht werden können. Auch hierfür wird eine Regelung diskutiert, die die pseudonymisierte Datenweitergabe grundsätzlich erlauben würde, solange der Versicherte dem nicht aktiv widerspricht. Im Gegensatz zur Anonymisierung von Daten gilt die Pseudonymisierung jedoch unter Datenschutzaspekten als unsicherer, da durch enthaltene Angaben wie Geburtsjahr, Geschlecht und Postleitzahl des Patienten die Person aus den Pseudonymen in vielen Fällen rekonstruiert werden könnte. Weitergabe sensibler Daten erst nach ausdrücklicher Zustimmung? Man kann argumentieren, dass das Bundesgesundheitsministerium für das Ziel, möglichst große Gesundheitsdatenbanken zur Auswertung durch öffentliche und kommerzielle Forschung aufzubauen, durch die geplanten Opt-Out-Regelungen auf unmündige Bürger setzt, die sich nicht über Risiken der digitalen Übermittlung ihrer Gesundheits- und Behandlungsdaten informieren oder aus Bequemlichkeit der zentralisierten Datenspeicherung in der Cloud nicht aktiv widersprechen werden. Gleichzeitig betont die Politik, dass durch die geplante Opt-Out-Regelung jeder Versicherte die Möglichkeit behalte, der Übermittlung seiner Daten durch Ärzte und Psychotherapeuten in eine elektronische Patientenakte zu widersprechen. Um die bisherigen Prinzipien der ärztlichen Schweigepflicht zu bewahren, wäre es wichtig, dass die Weitergabe sensibler Behandlungsdaten durch Ärzte und Psychotherapeuten wie bisher nur nach ausdrücklicher Zustimmung durch Patienten erlaubt bleibt. Wenn jedoch die Opt-Out-Regelungen politisch durchgesetzt werden sollten, bleibt Patienten die Möglichkeit, sich als mündige Bürger über Chancen und Risiken der geplanten Übermittlung ihrer Gesundheitsdaten in zentrale Datenbanken zu informieren und zu entscheiden, ob sie der Verwendung ihrer Daten widersprechen möchten oder nicht. *Der Autor arbeitet als Psychologischer Psychotherapeut mit tiefenpsychologisch-fundierter Fachrichtung in eigener Praxis. Der Beitrag erschien zuerst in der Berliner Zeitung unter dem Titel: "Medizin vs. Digitalisierung: Welche Gefahren birgt die elektronische Pateientenakte?" Dieser Beitrag unterliegt der Creative Commons Lizenz (CC BY-NC-ND 4.0). Er darf für nicht kommerzielle Zwecke unter Nennung des Autors und der Berliner Zeitung und unter Ausschluss jeglicher Bearbeitung von der Allgemeinheit frei weiterverwendet werden. * * * Nachtrag vom 11.11.2024: Widerspruch gegen die ePa - Widerspruchsgenerator für ePa insgesamt oder nur Auswertung der Abrechungsdaten - Widerspruch Musterschreiben der IG Med zum Download NB: Fallstricke beim Widerspruch gegen die elektronische Patientenakte für Minderjährige Nachtrag vom 06.02.2024: Der Bundesrat billigte zwei Gesetzentwürfe des Bundesgesundheitsministeriums zur umfassenderen Nutzung des elektronischen Rezepts (E-Rezept) und der elektronischen Patientenakte (ePA). Nachtrag vom 03.07.2024: - "Österreich macht es vor: Erst die ePA, nun der eImpfpass … und bald chinesische Zustände?" Nachtrag vom 28.12.2024: "CCC fordert Ende der ePA-Experimente am lebenden Bürger" "Während die Sicherheitsforscher des CCC in der ePA wühlten, wurde am Fraunhofer-Institut das Sicherheitskonzept von einer KI gelesen und mit geringen Mängeln für 'sicher' befunden. Ein Vorgehen, das nur Stirnrunzeln hervorrufen kann. Die freudige Feststellung der Gematik: 'Gutachten bestätigt: ePA für alle ist sicher' kann nun getrost endgültig als halluzinierte Fehldiagnose betrachtet werden." Nachtrag vom 30.12.2024: Kommentar von Norbert Häring: "Dass diese hochsensiblen Daten, auf die im Prinzip alle Beteiligten am Gesundheitssystem in ganz Europa zugreifen können, nicht vor unbefugtem Zugriff geschützt werden können, war von vornherein klar, auch wenn die Regierung nicht müde wird das Gegenteil zu behaupten. Nicht von ungefähr hat sie ja private Versicherer, bei denen die Regierungsmitglieder und die Abgeordneten versichert sind, von der ePA-Pflicht ausgenommen." Read the full article
0 notes
Text
0852-5756-6933, Tempat Prakerin Videografi Malang
Tempat Prakerin Videografi Malang: Langkah Awal Menjadi Videografer Profesional
Bagi siswa maupun mahasiswa yang memiliki passion di dunia kreatif, terutama videografi, menemukan tempat Prakerin videografi Malang yang tepat adalah kunci untuk mengembangkan bakat dan keterampilan. Malang dikenal sebagai kota pendidikan sekaligus pusat kreativitas, menjadikannya lokasi strategis untuk praktik kerja di bidang videografi. Salah satu pilihan terbaik untuk memulai perjalanan Anda di dunia videografi adalah IMPro Digital, tempat Prakerin yang telah terbukti mendukung peserta meraih kesuksesan di bidang ini.
Pentingnya Prakerin di Dunia Videografi
Prakerin (Praktik Kerja Industri) memberikan pengalaman langsung yang tak tergantikan. Berikut manfaat utama mengikuti program Prakerin videografi:
Pengalaman Nyata dalam Produksi Video Anda akan terlibat dalam berbagai proyek kreatif, mulai dari pengambilan gambar hingga editing.
Pengenalan Teknologi Terbaru Mengenal kamera profesional, stabilizer, drone, dan software editing seperti Adobe Premiere atau Final Cut Pro.
Keterampilan Storytelling Visual Belajar bagaimana menyampaikan pesan secara efektif melalui visual dan audio.
Membangun Portofolio Profesional Hasil karya selama Prakerin dapat menjadi portofolio untuk karir masa depan Anda.
Jaringan dan Relasi Industri Bertemu dengan mentor dan profesional yang sudah berpengalaman di industri kreatif.
Mengapa Harus Memilih IMPro Digital?
IMPro Digital adalah pilihan utama untuk tempat Prakerin videografi Malang. Berikut alasan mengapa IMPro Digital layak dipilih:
Fasilitas Lengkap Dengan studio modern dan peralatan canggih, Anda akan belajar menggunakan teknologi terkini di dunia videografi.
Bimbingan Profesional Mentor di IMPro Digital merupakan ahli di bidangnya, siap membimbing Anda menjadi videografer andal.
Proyek Nyata Anda akan terlibat langsung dalam produksi video komersial, dokumenter, atau konten kreatif lainnya.
Lingkungan Belajar Kreatif Anda akan dikelilingi oleh rekan-rekan yang sama-sama antusias dalam dunia kreatif.
Keterampilan yang Akan Anda Kuasai
Di IMPro Digital, Anda akan menguasai:
Teknik pengambilan gambar yang kreatif dan efektif.
Editing video dengan kualitas tinggi.
Penyusunan konsep visual untuk proyek komersial dan non-komersial.
Penggunaan alat seperti drone untuk pengambilan gambar unik.
Strategi distribusi video di platform digital.
Segera Daftar di Tempat Prakerin Videografi Malang Terbaik!
Jangan lewatkan kesempatan untuk mengasah bakat Anda dan memulai perjalanan menuju karir profesional di bidang videografi. Pilih IMPro Digital sebagai tempat Prakerin Anda dan raih pengalaman belajar yang tak terlupakan.
IMPro Digital Telp/WA: 0852-5756-6933 Telp/WA: 0852-5756-6933 Website: https://magangdi.improduk.com
0 notes
Text
Windows Server 2025 Hyper-V
Mit der Veröffentlichung von Windows Server 2025 Hyper-V hat die proprietäre Hypervisor-Software von Microsoft einen erheblichen Innovationsschub erlebt. Virtuelle Maschinen (VMs) sind das Lebenselixier moderner IT-Infrastrukturen, und Microsoft hat die Herausforderungen, mit denen Administratoren täglich konfrontiert sind, sorgfältig berücksichtigt.
Lehnen Sie sich einfach zurück und schauen Sie zu, denn in unserem nächsten Beitrag werden wir einige wichtige Entwicklungen in Hyper-V besprechen. Der Bereich der Virtualisierung entwickelt sich rasant weiter und mit der Veröffentlichung von Windows Server 2025 wird erwartet, dass Microsofts eigener Hypervisor Hyper-V erhebliche Fortschritte erfahren wird. Virtuelle Maschinen (VMs) sind das Lebenselixier moderner IT-Infrastrukturen, und Microsoft hat den Herausforderungen, mit denen Administratoren täglich konfrontiert sind, große Aufmerksamkeit gewidmet. Lesen Sie weiter und wir enthüllen die Geheimnisse hinter einigen der bemerkenswertesten Verbesserungen von Hyper-V.
Arbeiten Sie mit GPUs auf nie dagewesene Weise: GPU-Partitionierung und Live-Migration
Stellen Sie sich vor, Sie könnten die brachliegende Leistung einer High-End-Grafikkarte optimal nutzen. Genau das ermöglicht die GPU-Partitionierung (GPU-P). Diese bahnbrechende Funktion in Hyper-V 2025 erlaubt es Ihnen, eine einzelne GPU in mehrere virtuelle GPUs aufzuteilen. So können Sie die Ressourcen Ihrer Grafikkarte effizient an mehrere VMs verteilen, die Anwendungen mit hohem GPU-Bedarf ausführen, wie z. B. KI-Inferenz, Machine Learning oder grafikintensive Desktop-Anwendungen. Aber das Beste kommt noch: Die GPU-Partitionierung unterstützt sogar die Live-Migration.
Das bedeutet, dass Sie VMs mit zugewiesenen GPUs zwischen zwei eigenständigen Hyper-V-Hosts migrieren können, ohne dass die Anwendung unterbrochen wird. Stellen Sie sich das so vor: Sie räumen auf Ihrem Schreibtisch auf und verschieben wichtige Dokumente (Ihre VMs) an einen anderen Ort (den neuen Host), ohne dass der Stiftfluss (die laufende Anwendung) dabei ins Stocken gerät.
Eine der Leistungen von Network4you (Systemhaus München) ist die Servervirtualisierung in München. Weitere Informationen finden Sie unter folgendem Link:
Servervirtualisierung
Schluss mit der Abhängigkeit von Active Directory: Workgroup-Cluster für einfache Edge-Bereitstellungen
Active Directory ist zwar für Domänenumgebungen unverzichtbar, kann aber die Bereitstellung von Hyper-V-Clustern an Edge-Standorten mit begrenzten Ressourcen komplizieren. Hyper-V 2025 führt daher Workgroup-Cluster ein. Diese Cluster basieren auf Zertifikaten und benötigen keine Active Directory-Integration. Das vereinfacht die Einrichtung und Verwaltung von Hyper-V-Clustern an Edge-Standorten erheblich. hyperv 2025
Stellen Sie sich vor, Sie ziehen in eine neue Wohnung (eine Edge-Bereitstellung) und möchten schnell WLAN einrichten (einen Cluster hochfahren). Normalerweise müssten Sie erst einen Vertrag mit einem Anbieter abschließen (Active Directory einrichten), aber mit Workgroup-Clustern geht das ganz einfach — Sie schalten einfach den Router ein und schon können Sie loslegen (Cluster mit Zertifikaten konfigurieren).
Dynamische Prozessorkompatibilität: Das Beste aus verschiedenen Welten nutzen
In Rechenzentren mit gemischten CPU-Generationen können Sie mit der dynamischen Prozessorkompatibilität in Hyper-V 2025 das Beste aus beiden Welten herausholen. Diese Funktion ermöglicht es Ihnen, VMs auf Hosts mit unterschiedlichen CPU-Generationen auszuführen und dabei von den neuesten Funktionen der neueren Prozessoren zu profitieren, während gleichzeitig sichergestellt wird, dass die VMs auch auf älteren Systemen lauffähig bleiben.
Vergleichen wir dies mit Ihrem Smartphone: Manchmal möchten Sie die neueste Kamera-App nutzen (die Funktionen der neuesten CPU-Generation), aber es gibt auch Apps, die Sie weiterhin verwenden möchten, obwohl sie für ältere Betriebssysteme entwickelt wurden (Abwärtskompatibilität mit älteren CPUs). Die dynamische Prozessorkompatibilität bietet Ihnen diese Flexibilität auch in Ihrer virtualisierten Umgebung.
Leistungssteigerungen: Storage Replica auf Hochtouren und NVMe-oF-Unterstützung
Stellen Sie sich vor, Sie sichern Ihre wichtigen Dokumente auf einer externen Festplatte (Storage Replica). Mit der Leistungssteigerung ist es jetzt so, als ob Sie diese Festplatte per Hochgeschwindigkeits-USB-Anschluss (NVMe-oF) angeschlossen hätten — die Datenübertragung geht jetzt noch schneller und reibungsloser.
Apropos Geschwindigkeit: Hyper-V 2025 bietet außerdem native Unterstützung für NVMe over Fabrics (NVMe-oF). NVMe-oF ermöglicht die gemeinsame Nutzung von NVMe-Flash-Speicher über ein Netzwerk, was die Leistung Ihrer VMs und die Reaktionsfähigkeit Ihrer Anwendungen erheblich verbessern kann.
Denken Sie daran, wenn Sie auf ein Dokument zugreifen (Ihre Anwendung ausführen): Normalerweise müssen Sie über einen herkömmlichen Netzwerkanschluss warten (traditioneller Speicher). Mit NVMe-oF ist es jedoch so, als ob Sie direkt auf der Festplatte (NVMe-Flash-Speicher) zugreifen würden — die Ladezeiten verkürzen sich deutlich und die Anwendungen laufen flüssiger.
0 notes
Text
Shelly Scripting #1: Was ist das überhaupt? Grundlagen und Vorteile
Shelly Scripting eröffnet völlig neue Möglichkeiten in der Welt der Heimautomatisierung. Die Geräte von Shelly sind bereits für ihre Flexibilität und Benutzerfreundlichkeit bekannt, doch mit der Shelly Script Language kannst du ihre Funktionalität noch weiter anpassen. Diese leistungsstarke, auf JavaScript basierende Sprache erlaubt es dir, individuelle Automatisierungen und Steuerungen direkt auf deinen Shelly-Geräten zu erstellen – ganz ohne zusätzliche Hardware oder Cloud-Dienste. https://youtu.be/wTUAZC5-svM Shelly Scripts laufen auf einer angepassten Version von Espruino, einem minimalistischen JavaScript-Interpreter. Diese Änderung bringt die Script-Funktionalität näher an den JavaScript-Standard, während sie weiterhin die Einfachheit und Effizienz bietet, die Shelly-Nutzer schätzen. Wenn du bereit bist, die ersten Schritte in die Welt des Shelly Scripting zu machen, wirst du überrascht sein, wie intuitiv und flexibel die Möglichkeiten sind.
Shelly Scripting - einfaches Script mit Ausgabe in der Konsole
Was sind Shelly Scripts?
Shelly Scripts sind kleine Programme, die direkt auf deinem Shelly-Gerät laufen und dir erlauben, dessen Verhalten individuell anzupassen. Du kannst zum Beispiel Sensordaten erfassen, bestimmte Aktionen basierend auf Bedingungen auslösen oder Shelly-Geräte in komplexere Smart-Home-Systeme integrieren. Das Besondere an Shelly Scripts ist, dass sie lokal auf dem Gerät ausgeführt werden. Das bedeutet: keine Abhängigkeit von Cloud-Diensten und keine Verzögerungen durch externe Netzwerke. Du hast die volle Kontrolle und kannst deine Automationen nach deinen Bedürfnissen gestalten. Die Shelly Script Language nutzt Espruino, eine leichtgewichtige JavaScript-Umgebung, die ideal für eingebettete Systeme ist. Im Vergleich zu früheren Versionen bietet Espruino mehr Kompatibilität mit dem JavaScript-Standard und ermöglicht damit eine vertrautere Programmiererfahrung.
Welche Geräte unterstützen Shelly Scripting?
Nicht alle Shelly-Geräte unterstützen die Skriptfunktionalität. Laut Hersteller ist Shelly Scripting ausschließlich für Geräte der Pro- und Plus-Serie verfügbar. Diese Geräte verfügen über die notwendige Hardware und Software, um die erweiterten Funktionen von Shelly Scripts nutzen zu können. Unterstützte Serien - Shelly Plus: Moderne Shelly-Geräte mit erweiterten Funktionen und schnellerer Hardware. - Shelly Pro: Geräte, die speziell für professionelle Anwendungen und komplexere Installationen entwickelt wurden.
Shelly 1 PM Mini Gen 3 & Shelly Plus 1PM Mini
Shelly Plus 1 & Shelly 1 Mini Gen3
Shelly PLUS PM Mini 1
Shelly Plus 1 Technische Basis von Shelly Scripts Shelly Scripts laufen auf einer modifizierten Version von mJS, die ein Bestandteil des Mongoose OS Frameworks ist. Dieses Framework wurde speziell für eingebettete Systeme entwickelt und bietet eine leichtgewichtige, aber leistungsstarke Umgebung zur Ausführung von JavaScript-basierten Skripten. Mehr Informationen Die spezifischen Funktionen und Möglichkeiten der Shelly Script Language findest du in der offiziellen Dokumentation: Shelly API Documentation – Script Language Features Wenn du ein Gerät besitzt, das Shelly Scripting unterstützt, kannst du das volle Potenzial deiner Automatisierungen ausschöpfen – von benutzerdefinierten Steuerungen bis hin zur Kommunikation mit anderen Systemen über HTTP.
Was wird unterstützt?
Obwohl die Shelly Script Language auf JavaScript basiert, gibt es spezifische Anpassungen, die du kennen solltest. Hier sind die unterstützten Features, die dir bei der Arbeit mit Shelly Scripts zur Verfügung stehen: Unterstützt - Variablen und Funktionen: let, var, und die Definition von Funktionen. - Objekte und Methoden: String, Number, Array, und Math. - Zeit und Datum: Unterstützung für das Date-Objekt. - Operatoren: new, delete sowie grundlegende mathematische und logische Operatoren. - Weitere Features: Object.keys, Ausnahmebehandlungen (try...catch), und Funktionalität wie arguments.length. Nicht unterstützt - Hoisting: Variablen oder Funktionen müssen vor ihrer Verwendung deklariert sein. - Moderne Features aus ES6: Keine Klassen oder Promises; asynchrone Funktionen werden ebenfalls nicht unterstützt. - Systemnahe Espruino-Funktionen: Funktionen, die speziell für Espruino-Hardware entwickelt wurden, sind nicht verfügbar. Besonderheiten - arguments.length: Gibt entweder die Anzahl der übergebenen Argumente oder die erwartete Anzahl zurück, je nachdem, welche größer ist. - delete-Operator: Funktioniert nur ohne Klammern. - Zusätzliche Methode: Funktionen unterstützen replaceWith, ein nützliches Tool für spezifische Ersetzungen. Für detaillierte Informationen zur unterstützten Syntax und API-Details lohnt sich ein Blick in die Espruino-Dokumentation. Beachte jedoch, dass einige Hardware- und Systemspezifika von Espruino in Shelly nicht implementiert sind und auch nicht unterstützt werden.
Meine Shelly Scripting Beispiele auf GitHub
Um dir den Einstieg in Shelly Scripting zu erleichtern, habe ich ein GitHub-Repository eingerichtet: ShellyScripting. Dort stelle ich dir eine Sammlung von Beispielskripten zur Verfügung, die ich speziell für Anfänger und fortgeschrittene Nutzer entwickelt habe. Die Beispiele sind als JavaScript-Dateien organisiert, sodass du sie direkt in das Shelly Webinterface einfügen und ausprobieren kannst. Sie decken eine Vielzahl von Anwendungen ab, darunter: - Erfassen und Anzeigen von Sensordaten - Einfache Automatisierungen - Aktionen basierend auf Zeit oder Bedingungen - Integration mit MQTT und anderen Smart-Home-Systemen Ich aktualisiere das Repository regelmäßig, damit du immer neue Ideen und Lösungen findest. Außerdem lade ich dich herzlich ein, selbst aktiv zu werden: Du kannst gerne Feedback geben oder eigene Skripte einreichen, die ich dann in das Projekt integriere. Schau dir die Beispiele an, lade sie herunter, und probiere sie aus. Gemeinsam können wir die Möglichkeiten von Shelly Scripts entdecken und erweitern: GitHub: ShellyScripting.
Wie werden Shelly Scripts aufgerufen?
Bevor wir uns mit den Details des Shelly Scripting beschäftigen, ist es wichtig zu verstehen, wie die Scripts aufgerufen und genutzt werden können. Dabei gibt es zwei grundlegende Ansätze, die jeweils unterschiedliche Möglichkeiten bieten: Lokale Ausführung In der einfachsten Form laufen Shelly Scripts direkt auf dem Gerät und reagieren auf Ereignisse wie Schaltvorgänge oder Zeitbedingungen. Diese lokalen Scripts sind ideal, wenn du einfache Automatisierungen umsetzen möchtest, die unabhängig von Benutzereingaben oder externen Systemen funktionieren. Beispiele: - Ein Shelly reagiert auf einen Tastendruck und schaltet ein Relais. - Eine LED wird basierend auf einer vorgegebenen Zeit ein- und ausgeschaltet. Diese Art der Ausführung ist vollständig lokal und bietet eine schnelle, zuverlässige Möglichkeit, Geräte zu automatisieren – allerdings ohne direkte Rückmeldung oder Interaktion mit dem Benutzer. Kommunikation über HTTP Requests Die wahre Stärke des Shelly Scripting zeigt sich, wenn du die HTTP-API nutzt, um mit dem Shelly zu kommunizieren. Damit kannst du nicht nur Schaltvorgänge auslösen, sondern auch Werte wie Text oder Zahlen an den Shelly übergeben und darauf basierend komplexe Automatisierungen umsetzen. Beispiele: - Datenübergabe: Sende eine Temperatur oder einen Text an das Shelly Script, um Aktionen davon abhängig zu machen. - Abfrage von Zuständen: Erhalte Rückmeldungen vom Shelly, z. B. den aktuellen Zustand eines Sensors oder einer Schaltung. - Kombinierte Automatisierung: Steuerung eines Geräts durch externe Ereignisse wie Webhooks oder andere IoT-Plattformen. Warum HTTP Requests das volle Potenzial entfalten Mit HTTP Requests kannst du Shelly Geräte in komplexere Smart-Home-Systeme integrieren und sie flexibel steuern. Anders als bei Szenen, die auf feste Bedingungen beschränkt sind, kannst du mit Shelly Scripts: - Dynamische Eingaben nutzen: Werte in Echtzeit übergeben und darauf reagieren. - Mehrere Geräte synchronisieren: Daten von einem Gerät an ein anderes weitergeben. - Intelligente Entscheidungen treffen: Verschiedene Bedingungen und Werte kombinieren, um Aktionen auszuführen. Dieser Ansatz öffnet die Tür zu einer völlig neuen Ebene der Automatisierung, bei der du die Kontrolle vollständig in der Hand hast. Tipp: In meinem GitHub-Repository ShellyScripting findest du Beispiele, die beide Ansätze – lokale Scripts und HTTP Requests – abdecken. So kannst du selbst ausprobieren, welche Methode am besten zu deinem Projekt passt.
Debugging: Voraussetzung für die Ausführung von Shelly Scripts
Das Debugging ist nicht nur ein hilfreiches Werkzeug, sondern eine zwingende Voraussetzung, um Scripts auf deinem Shelly-Gerät auszuführen. Wenn das Debugging nicht aktiviert ist, kannst du kein Script starten. Stattdessen erscheint beim ersten Ausführen eines Scripts die folgende Meldung: "Logs are disabled. You can enable them from here."
Meldung - Fehlende Berechtigung zum Erzeugen von Websocket debug Meldungen Warum ist Debugging erforderlich? - Shelly Scripts erzeugen Protokolle, um den Ablauf und mögliche Fehler anzuzeigen. Ohne aktive Logs kann das Gerät die Scripts nicht korrekt ausführen. - Die Debug-Funktion dient also nicht nur zum Testen, sondern ist ein integraler Bestandteil des Script-Betriebs. Debugging aktivieren – Schritt für Schritt - Meldung beachten: Wenn die oben genannte Meldung erscheint, klicke auf den angebotenen Link oder navigiere manuell zu Settings > Debug im Webinterface. - Debugging einschalten: Setze den Haken bei der Checkbox "Websocket debug" neben "Enabled". - Änderungen speichern: Klicke auf "Save", um das Debugging zu aktivieren.
Schritt 1 - aktivieren der Websocket debug Meldungen
Schritt 2 - aktivieren der Websocket debug Meldungen Nach der Aktivierung kannst du Scripts ausführen und die Protokolle im Debug-Bereich des Webinterfaces einsehen. Ohne diese Einstellung ist die Nutzung der Shelly Script-Funktionen nicht möglich.
Ein Shelly Script erstellen: Schritt-für-Schritt-Anleitung
Das Erstellen eines Scripts auf deinem Shelly-Gerät ist einfach und direkt über das Webinterface möglich. Hier zeige ich dir die Schritte, wie du dein erstes Script anlegen kannst. Passend dazu stelle ich eine Grafik bereit, in der die Schritte durch nummerierte Markierungen hervorgehoben sind.
Öffnen des Webinterfaces - Gib die IP-Adresse deines Shelly-Geräts in die Adressleiste deines Browsers ein (z. B. http://192.168.0.x). - Dadurch öffnest du das Webinterface des Geräts. (Siehe Markierung 1 in der Grafik.) Den Menüpunkt "Scripts" auswählen - Im Hauptmenü des Webinterfaces findest du den Punkt "Scripts". - Klicke darauf, um zur Übersicht der Skript-Verwaltung zu gelangen. (Markierung 2) Neues Script erstellen - In der Script-Verwaltung klickst du auf die Schaltfläche "Create script". - Dadurch wird ein neues leeres Script angelegt, das du direkt bearbeiten kannst. (Markierung 3) Script benennen und starten Nachdem du auf "Create script" geklickt hast, öffnet sich ein Fenster, in dem du dein neues Script erstellen kannst. Bevor du mit dem Schreiben deines Codes loslegst, musst du dem Script einen Namen geben. Namen vergeben - Gib im Feld "Script name" einen aussagekräftigen Namen für dein Script ein. - Ein eindeutiger Name hilft dir später, deine Scripts besser zu organisieren, vor allem, wenn du mehrere Scripts auf deinem Shelly-Gerät hast. Mit dem Scripten beginnen - Nach der Namensvergabe kannst du direkt in den Editor schreiben. Hier steht dir eine Oberfläche zur Verfügung, in der du deinen JavaScript-Code eingeben und speichern kannst. Speichern und Testen - Sobald du deinen Code eingegeben hast, klicke auf "Save", um das Script zu sichern. - Danach kannst du das Script starten und im Debug-Bereich die Ausgabe oder mögliche Fehler überprüfen.
Starten und Stoppen eines Scripts Nachdem du dein Script das erste Mal gespeichert hast, erscheinen im Script-Editor zwei zusätzliche Schaltflächen: Start und Delete. Diese Funktionen ermöglichen es dir, dein Script zu starten oder bei Bedarf zu löschen.
Start-Schaltfläche - Nach dem Speichern des Scripts wird die Schaltfläche Start sichtbar. - Funktion: Mit einem Klick auf Start wird dein Script ausgeführt. Es läuft dann kontinuierlich, bis du es stoppst oder ein Fehler auftritt. - Dynamische Änderung: Sobald das Script läuft, verwandelt sich die Schaltfläche Start in Stop. Stop-Schaltfläche - Funktion: Mit einem Klick auf Stop kannst du die Ausführung des Scripts beenden. - Diese Funktion ist nützlich, wenn du Änderungen vornehmen oder das Script vorübergehend deaktivieren möchtest. Fehlerfall Du kannst den Fehler über den Debug-Bereich im Webinterface einsehen und das Script nach der Korrektur erneut starten. Wenn während der Ausführung ein Fehler auftritt, stoppt das Script automatisch.
Einfach loslegen: Kleine Beispiele mit Shelly Scripts
Shelly Scripts sind eine großartige Möglichkeit, die Funktionalität deines Shelly-Geräts individuell anzupassen. Hier stelle ich dir drei einfache Beispiele vor, die zeigen, wie du die Skriptsprache nutzen kannst – von einer Begrüßung in der Konsole bis hin zu einer zeitgesteuerten Schaltung und einer benutzerdefinierten HTTP-Interaktion. Begrüßung in der Konsole anzeigen Dieses Beispiel zeigt, wie du mit einem einfachen Script eine Begrüßung direkt in der Konsole des Shelly-Webinterfaces ausgibst. Es ist perfekt, um den Einstieg ins Scripting zu finden. (Dieses Beispiel habe ich aus der offiziellen Dokumentation entnommen.) let greeting = "Hallo vom Shelly!"; print(greeting); Was passiert hier? - Die print-Funktion gibt den Text direkt in der Konsole aus. Dies ist nützlich für Debugging oder einfache Statusmeldungen. Was ist die Ausgabe? In der Konsole erhältst du die Meldung welche zuvor definiert wurde. Zusätzlich noch ein Zeitstempel wann diese Meldung erzeugt wurde.
Meldung aus einem einfachen Shelly Script in der Konsole Relais zeitgesteuert schalten Im nächsten Beispiel schalten wir das Relais des Shelly für 5 Sekunden ein und danach wieder aus. Dieses Script ist ideal für Anwendungen wie das Einschalten einer Lampe oder eines Geräts für eine festgelegte Dauer. // Parameterobjekt für den Shelly-Aufruf. Es definiert das Relais (id: 0) und dessen Schaltstatus. let shellyParameter = { id: 0, // ID des Relais, das gesteuert werden soll (0 = erstes Relais) on: true, // Standardstatus, um das Relais einzuschalten }; // Ein Timer wird eingerichtet, der alle 5 Sekunden (5000 ms) ausgelöst wird. // Der Timer läuft im wiederholenden Modus (true als zweiter Parameter). Timer.set(5000, true, function() { // Abrufen des aktuellen Status des Relais (Switch:0 bezieht sich auf das erste Relais). const result = Shelly.getComponentStatus("Switch:0"); // Überprüfen, ob der Status erfolgreich abgerufen wurde. if (result) { // Prüfen, ob das Relais aktuell eingeschaltet ist (output === true). if (result.output === true) { print("Relais ist AN! -> neuer Status AUS"); // Debug-Ausgabe: Relais ist aktuell eingeschaltet. } else { print("Relais ist AUS! -> neuer Status AN"); // Debug-Ausgabe: Relais ist aktuell ausgeschaltet. } // Den Schaltstatus umkehren (toggle): Wenn es an ist, wird es ausgeschaltet, und umgekehrt. shellyParameter.on = !result.output; // Aufruf der Shelly-API, um den neuen Status des Relais zu setzen. Read the full article
0 notes