PotoP API Translator

Das Videosystem ersetzen, jede Integration behalten

Eine PLC, ein Videowand-Controller, ein Gebäudemanagementsystem oder ein PSIM sendet weiter die Befehle, die es immer gesendet hat. Der API Translator führt jeden davon auf PotoP VMS Studio aus und antwortet in der Form, die das andere System erwartet – TKH VDG Sense, Commend ICX, Milestone XProtect und Genetec Security Center, Befehl für Befehl.

Hergestellt in der EU Läuft auf Ihren eigenen Servern

Live-Datenfluss: jeder Befehl, während er übersetzt wird

Befehl für Befehl

Jeder Befehl der API des anderen Systems, übersetzt in Aufrufe von PotoP VMS Studio – die Tabelle wird aus dem Code erzeugt.

Vier Konnektoren

TKH VDG Sense, Commend ICX, Milestone XProtect (MIP VMS API) und Genetec Security Center (Web SDK).

Live-Datenfluss

Verfolgen Sie jede Nachricht auf ihrem Weg vom anderen System über den Übersetzer zum VMS und zurück, mit jedem Schritt.

Prüfstand

Senden Sie jeden Befehl so, wie das andere System es tun würde; er wird auf PotoP wirklich ausgeführt, mit der Antwort und den gemachten Aufrufen.

Nie ein vorgetäuschter Erfolg

Was PotoP nicht kann, wird mit dem eigenen Fehlercode des anderen Systems beantwortet – eine PLC wird so nie in die Irre geführt.

Das eigene Zertifikat des VMS-Servers

Jeder Port liefert das Zertifikat des PotoP-Servers aus; Konten, erlaubte Adressen, Ratenlimits und Berechtigungsgruppen pro Konnektor.

Eine Adresse ändert sich, sonst nichts

Eine Integration neu zu schreiben ist der teure Teil beim Ersetzen eines Videomanagementsystems – und oft der Teil, für den sich niemand mehr zuständig fühlt. Der PotoP API Translator schafft ihn ab. Das andere System erhält eine neue Adresse und spricht weiter seine eigene API; der Übersetzer übersetzt jeden Befehl in die API von PotoP VMS Studio, führt ihn aus und übersetzt die Antwort zurück. Nichts wird vorgetäuscht: Hat PotoP für etwas keine Entsprechung, sagt die Antwort das im eigenen Vokabular des anderen Systems – nie ein falscher Erfolg, der eine PLC glauben lässt, eine Tür habe sich geöffnet.

Vier Systeme, jeder Befehl dokumentiert

Alle 71 dokumentierten Befehle der HTTP/XML-API von TKH VDG Sense, alle 81 Befehlsfamilien des Commend ICX-Protokolls, 75 Ressourcen der MIP VMS API von Milestone und das Web SDK von Genetec Security Center – jeder auf der Seite „Befehle“ der Konsole aufgeführt, mit dem PotoP-Aufruf, der daraus wird, und dem, was sich unterscheidet. Eine Live-Datenfluss-Ansicht zeigt jede Nachricht, während sie übersetzt wird, und ein Prüfstand führt jeden Befehl schon vor der Umstellung wirklich aus.

Gebaut für den Wechsel zu PotoP VMS Studio

Der Übersetzer existiert für einen Moment: den Tag, an dem ein Sense-, Milestone-, Genetec- oder Commend-System durch PotoP VMS Studio ersetzt wird und die Integrationen rundherum weiter funktionieren müssen.

PotoP VMS Studio

Das VMS macht die Arbeit

Kameras, PTZ, Aufzeichnungen, Exporte, Layouts, Makros, Alarme, Benutzer und die Intercom-Dienste gehören PotoP; der Übersetzer spricht mit ihnen nur die Sprache des anderen Systems.

Alarme im Register von PotoP

Ein von Milestone oder Genetec eingesandter Alarm ist ein echter PotoP-Alarm mit Nummer, Zustand und Verlauf – und was PotoP-Bediener ändern, kommt zurück.

Intercom über PotoP VoIP

Ein Managementsystem, das über ICX einen Commend Intercom Server gesteuert hat, steuert PotoP VoIP auf dieselbe Weise: Gespräche, Ausgänge, Eingänge, Durchsagen, Konferenzen, Rufanforderungen.

Feature-Tour

Jeder Bildschirm unten ist ein echter Screenshot. Suchen Sie nach einer Funktion oder wählen Sie ein Kapitel; klicken Sie auf ein Bild, um es in voller Größe zu sehen, und blättern Sie mit den Pfeiltasten.

01

Mit dem VMS gekoppelt 4 Bildschirme

Melden Sie sich als PotoP-Administrator an, koppeln Sie mit einem Knopfdruck und verfolgen Sie jede Übersetzung live.

Live-Datenfluss: jeder Befehl, während er übersetzt wird
Highlight API Translator-Konsole

Live-Datenfluss: jeder Befehl, während er übersetzt wird

Die Startseite der Konsole zeichnet jede Nachricht auf ihrem Weg vom anderen System über den Übersetzer zu PotoP VMS Studio und zurück, zählt Antworten, Fehler und Ablehnungen und listet jede Nachricht auf, die neueste zuerst.

So funktioniert es

Die Seite wird von einem Server-Sent-Event-Strom des Übersetzers gespeist: Jede Anfrage, die auf einem Konnektor-Port eintrifft, ist ein Datensatz im Fluss – der Befehl, die dafür gemachten PotoP REST-Aufrufe und die Antwort – und wird im Moment des Geschehens in den Browser geschoben, sodass nichts abgefragt und nichts verpasst wird. Animation und Zähler werden aus denselben Datensätzen gezeichnet wie die Tabelle, und die letzten fünfhundert Vorgänge bleiben für die Sitzung im Speicher. Passwörter, Sitzungsschlüssel, Token und Digests werden maskiert, bevor ein Vorgang gespeichert wird – die Seite kann also auf einem Bildschirm in der Leitstelle offen bleiben.

Eine Übersetzung, aufgeklappt
API Translator-Konsole

Eine Übersetzung, aufgeklappt

Klicken Sie auf eine Zeile, und die ganze Übersetzung entfaltet sich: die Anfrage, wie sie eintraf, jeder dafür gemachte PotoP REST-Aufruf mit Status und Zeit und die Antwort, die zurückging – Geheimnisse maskiert.

So funktioniert es

Ein Vorgang öffnet sich in drei Teilen: die Anfrage genau so, wie das andere System sie gesendet hat (Methode, URL, Body), die PotoP-Schritte – jeder REST-Aufruf mit Pfad, Statuscode und den Millisekunden, die er gebraucht hat – und die Antwort, die im eigenen Format des anderen Systems zurückging. Das Ergebnis ist ok, Fehler, abgelehnt oder nicht unterstützt, und genau das summieren die Zähler. Diese Detailansicht ist der schnellste Weg zu lernen, was der Befehl eines Herstellers auf PotoP wirklich tut – deshalb öffnet der Prüfstand dieselbe Ansicht für die Befehle, die Sie selbst senden.

Einstellungen: die Kopplung, das Zertifikat, die Konsole
API Translator-Konsole

Einstellungen: die Kopplung, das Zertifikat, die Konsole

Der Übersetzer arbeitet mit einem eigenen API-Token unter dem Administrator, der ihn gekoppelt hat; die Seite zeigt den Server, den Ereignis-Feed, das ausgelieferte Zertifikat und welche Konnektor-Arten bereit sind.

So funktioniert es

Beim Koppeln bittet der Übersetzer PotoP VMS Studio um ein nach ihm benanntes API-Token mit einem festen Satz von Rechten, angelegt unter dem Administrator, der den Knopf gedrückt hat; das Token wird verschlüsselt gespeichert und kann hier oder im VMS widerrufen werden. Dieselbe Seite zeigt den Ereignis-Feed, den der Übersetzer offen hält, um jedes PotoP-Ereignis zu nummerieren, das Zertifikat, das er auf jedem Port ausliefert (das eigene des VMS-Servers, über Erneuerungen hinweg verfolgt, oder ein selbst erzeugter Ersatz), und pro Konnektor-Art, ob sie bereit ist, wie viele eingerichtet sind oder dass sie noch nicht gebaut ist.

Anmeldung mit einem PotoP-Administratorkonto
API Translator-Konsole

Anmeldung mit einem PotoP-Administratorkonto

Die Konsole meldet Sie bei PotoP VMS Studio selbst an, zweistufiger Code inbegriffen; nur Administratoren kommen hinein, über das eigene Zertifikat des Servers.

So funktioniert es

Im Übersetzer gibt es keine Benutzerliste. Das Anmeldeformular sendet an den eigenen Login des VMS, beachtet die zweistufige Anmeldung und prüft dann, ob das Konto ein Administrator ist; alle anderen werden in klaren Worten abgewiesen. Die Sitzung ist ein striktes Cookie für diesen Browser mit einer gleitenden Lebensdauer von dreißig Minuten, jede Änderung trägt einen CSRF-Header, und acht Fehlversuche von einer Adresse in fünf Minuten pausieren diese Adresse. Die Seite wird über das Zertifikat des PotoP-Servers ausgeliefert, und ein Browser, der localhost öffnet, wird auf einen Namen umgeleitet, für den das Zertifikat ausgestellt wurde.

02

Konnektoren 7 Bildschirme

Eine Karte pro angebundenem System: Ports, Konten, Sicherheit, die Nummern, mit denen es programmiert wurde, Verhalten.

Eine Karte pro angebundenem System
Highlight API Translator-Konsole

Eine Karte pro angebundenem System

Vier Konnektoren – eine PLC, die VDG Sense spricht, ein Gebäudemanagementsystem auf Commend ICX, ein für Milestone gebautes PSIM, eines für Genetec – jeder mit seinen Ports, Verschlüsselungszustand, Nachrichtenzähler und einem Schalter.

So funktioniert es

Jede Karte ist ein anderes System: Seine Art bestimmt das Protokoll auf seinen Ports – HTTP und XML für Sense, rohes TCP für Commend ICX, REST und WebSocket für Milestone, REST und ein Multipart-Ereignisstrom für Genetec. Die Chips zeigen, ob er lauscht, ob unverschlüsseltes HTTP erlaubt wurde, bei ICX welcher Client verbunden ist und wie viele Nachrichten er verarbeitet hat. Der Schalter startet und stoppt den Listener, ohne Einstellungen zu verlieren; ein Konnektor läuft nie ohne Konto, und einen hinzuzufügen ist ein Knopf pro Art unter den Karten.

Sense: die Adresse für das andere System
API Translator-Konsole

Sense: die Adresse für das andere System

Der Reiter „Allgemein“ eines Konnektors: sein Name, die Ports, auf denen er lauscht, und die genaue Adresse, auf die das andere System gerichtet wird – das Einzige, was sich auf dessen Seite ändert.

So funktioniert es

Der Übersetzer liefert das Zertifikat des VMS-Servers auf jedem Konnektor-Port aus und folgt dessen Erneuerungen, sodass die Adresse unter „Allgemein“ über HTTPS funktioniert, sobald sie in die PLC oder das Managementsystem eingetragen ist. Ports sind Tags: Ein zweiter – 443 oder 80 für ein System, das keinen anderen bekommen kann – wird ohne Neustart hinzugefügt, und Ports, die der PotoP-Server selbst nutzt, werden mit Begründung abgelehnt. „Diesen Konnektor entfernen“ verlangt eine Bestätigung und wird unter Ihrem Namen ins Aktivitätsprotokoll geschrieben.

Anmeldung und Sicherheit pro Konnektor
API Translator-Konsole

Anmeldung und Sicherheit pro Konnektor

Konten mit einem einmalig angezeigten Zufallspasswort, unverschlüsseltes HTTP nur nach einer protokollierten Entscheidung, erlaubte Adressen, eine Rate pro Adresse und die Gruppen, die festlegen, was der Konnektor darf.

So funktioniert es

„Konto hinzufügen“ erzeugt ein einmalig angezeigtes Passwort mit achtzehn Zeichen; aufbewahrt wird nur ein scrypt-Hash, geprüft neben der Hauptschleife des Dienstes mit einem kurzen Merker, sodass ein System, das sich bei jeder Anfrage anmeldet, nichts extra kostet. Zehn falsche Passwörter pausieren diesen Namen von dieser Adresse für fünf Minuten. „Unverschlüsseltes HTTP zulassen“ öffnet eine Warnung, die Sie namentlich akzeptieren müssen, und HTTPS funktioniert auf demselben Port weiter. Die Gruppen darunter sind Berechtigungen pro Konnektor: Ein Befehl, dessen Gruppe aus ist, wird im eigenen Vokabular des anderen Systems abgelehnt; „Einstellungen ändern“ ist standardmäßig aus.

Ihre Nummern ⇄ PotoP
API Translator-Konsole

Ihre Nummern ⇄ PotoP

Die Server- und Geräte-IDs des alten Systems werden PotoP-Kameras zugeordnet; Nummern, die das andere System verwendet hat und die nicht zugeordnet sind, sammeln sich in einer Liste mit einem Knopf „Zuordnen…“ – die Einrichtung folgt so dem, was wirklich eintrifft.

So funktioniert es

Eine Sense-Integration adressiert einen Server über eine lange Nummer und eine Kamera über eine Geräte-ID, beide aus der ersetzten Installation. Die Zuordnung gibt jedem Paar seine PotoP-Kamera; ohne Zuordnung gilt die Geräte-ID als PotoP-Kameranummer, und eine zugeordnete Kamera ist nur unter ihrer zugeordneten Nummer erreichbar. Befehle mit einer unbekannten Nummer werden nicht geraten: Die Nummer wird in der Liste darunter gesammelt, mit Häufigkeit und letztem Zeitpunkt, und „Zuordnen…“ beginnt daraus eine Zuordnungszeile – lassen Sie das andere System eine Minute laufen, und die Liste sagt, was es noch erwartet.

ICX: Sprechstellen, Ausgänge, Eingänge, Kameras, Monitore
API Translator-Konsole

ICX: Sprechstellen, Ausgänge, Eingänge, Kameras, Monitore

Bei einem Commend ICX-Konnektor verknüpft der Reiter „Zuordnung“ Rufnummern mit PotoP VoIP-Nebenstellen, Ausgänge mit Makros, PotoP-Ereignisse mit Eingängen und Monitore mit Layout-Kacheln.

So funktioniert es

ICX spricht in Rufnummern, Ausgangs- und Eingangsnummern, Kamera- und Monitornummern. Eine Rufnummer ist die PotoP VoIP-Nebenstelle mit derselben Nummer, sofern nicht zugeordnet; ein Ausgang wird real, sobald ein PotoP-Makro für Ein und Aus benannt ist; ein Eingang wird von einem PotoP-Ereignistyp, wahlweise einer einzelnen Kamera, für eine Anzahl Sekunden gepulst; ein Monitor ist ein PotoP-Layout samt der Kachel, auf die die Kamera gelegt wird. Unter den Tabellen listet der Konnektor die Task- und Type-Paare, die er empfangen hat und für die er keinen Handler hat – eine fehlende Funktion wird so gesehen statt geraten.

Milestone: die GUIDs, mit denen die Integration programmiert wurde
API Translator-Konsole

Milestone: die GUIDs, mit denen die Integration programmiert wurde

Eine Integration mit fest eingebauten Milestone-IDs heftet jede GUID an die PotoP-Kamera, den Ausgang, das Makro, den Ereignistyp oder das Layout, das sie ersetzt hat; eine, die alles über Namen nachschlägt, braucht hier nichts.

So funktioniert es

Der Konnektor beantwortet die Konfigurations-API von Milestone mit eigenen IDs, stabil über Neustarts hinweg. Eine Integration, die Kameras, Ausgänge oder Ereignistypen über Namen nachschlägt, funktioniert daher unverändert; eine, die mit den GUIDs der alten XProtect-Installation programmiert wurde, heftet sie hier fest, jede an das PotoP-Objekt, das sie ersetzt hat, mit dem ID-Typ gewählt aus Kameras, Hardware, Recording-Servern, Ausgängen, Eingangsereignissen, benutzerdefinierten Ereignissen, Ereignistypen, Ansichten, Basisbenutzern und Rollen. Ausgänge erhalten eine Nummer, einen Namen und ein PotoP-Makro, damit das Auslösen wirklich etwas schaltet.

Genetec: wie alles übertragen wird
API Translator-Konsole

Genetec: wie alles übertragen wird

Eine schreibgeschützte Erklärung pro Konnektor, was auf PotoP zu was wird – Alarme, Videoschutz, Aufzeichnung, Ereignisse – und welche Entitäten von Security Center PotoP nicht hat.

So funktioniert es

PotoP ist ein Videosystem, und die Seite sagt das unverblümt: Alarme landen im Alarmregister von PotoP mit der Instanz-ID gleich der PotoP-Alarmnummer, Videoschutz ist eine Aufbewahrungssperre für Aufnahmen, Aufzeichnung ist die manuelle Aufzeichnung von PotoP, Ereignisse werden unter den Namen von Security Center veröffentlicht. Zutrittskontrolle, Einbruchmeldung, LPR-Patrouille und Parken haben kein Gegenstück – ihre Entitäten werden aufbewahrt, ihre Berichte antworten Ok mit leerer Liste, ihre Aktionen antworten Fail mit einer Meldung, die den Grund nennt – und nie wird vorgetäuscht, dass etwas geschehen sei.

03

Jeder Befehl, übersetzt 4 Bildschirme

Die Seite „Befehle“: jeder Befehl jedes Systems und der PotoP-Aufruf, der daraus wird.

TKH VDG Sense: alle 71 Befehle
Highlight API Translator-Konsole

TKH VDG Sense: alle 71 Befehle

Die Seite „Befehle“ ist die Autorität: jeder dokumentierte Sense-Befehl, wie weit PotoP ihn abdeckt, der PotoP VMS Studio-Aufruf, der daraus wird, und was sich unterscheidet – 71 von 71 vollständig ausgeführt.

So funktioniert es

Die Tabelle wird aus dem eigenen Befehlsregister des Konnektors erzeugt – demselben, das die Anfragen bedient –, sodass die Seite nie einen Befehl auflisten kann, den der Übersetzer nicht hat. Jede Zeile nennt den Sense-Befehl, die Abdeckung, die PotoP VMS Studio-Aufrufe, die daraus werden – eine PTZ-Bewegung ist ein POST an den ptz-Endpunkt der Kamera mit Geschwindigkeiten, die aus den Tausendsteln von Sense skaliert sind, ein Clip ist ein PotoP-Export mit VCA-Daten als zeitgesteuerter Textspur – und was man wissen muss, etwa einen vor Jahren aus Sense entfernten Befehl, der für alte Aufrufer weiterhin beantwortet wird. Der Filter grenzt auf vollständig, teilweise oder nicht verfügbar ein.

Commend ICX: 81 Befehlsfamilien
API Translator-Konsole

Commend ICX: 81 Befehlsfamilien

Jeder Task und jeder Type des ICX-Protokolls unter seiner Familie: 62 ausgeführt auf PotoP VoIP, Viewern, Kameras oder Makros, 19 aufbewahrt und gemeldet, wie es ein Intercom Server täte.

So funktioniert es

Jede Familie trägt ihre ICX-Task- und Type-Codes unter dem Namen, sodass ein Protokollingenieur 40/80 oder 80/AC direkt nachschlagen kann. Fast jede Familie wird zu einer Operation (op) des Intercom-Befehlsendpunkts des VMS – call, hangup, dtmf, busy, privacy, page, conference, output, input, door code, request, desk –, und die Notiz sagt, was sich unterscheidet: Privatsphäre pro Gespräch beachtet, Simplex-Modus gemeldet, aber nicht erzwungen, ein Funkkanal als Konferenzraum. Aufbewahrte Familien sind die Teile, die nur eine Commend-Sprechstelle hat; PotoP speichert sie pro Sprechstelle und meldet sie als Ereignis.

Milestone MIP VMS API: 75 Ressourcen
API Translator-Konsole

Milestone MIP VMS API: 75 Ressourcen

Anmeldung, Ereignisse, Alarme, Lesezeichen, Beweissperren, WebRTC und alle Konfigurations-Ressourcentypen, jeweils als vollständig, teilweise oder aufbewahrt markiert – und die Aufgaben, die PotoP nicht kann, mit einem Fehler beantwortet, nie mit einem vorgetäuschten Erfolg.

So funktioniert es

Die 75 Zeilen decken die Anmelde-Endpunkte, die WebSockets für Ereignisse und Messaging, Alarme, Lesezeichen, Beweissperren, WebRTC und jeden Konfigurations-Ressourcentyp der veröffentlichten MIP VMS API ab. Vollständige Zeilen sind durch PotoP gedeckt (Kameras, Recording-Server, Ausgänge, benutzerdefinierte Ereignisse als Makros, Ansichten als Layouts, Basisbenutzer und Rollen als echte Benutzer und Gruppen); aufbewahrte Zeilen speichern, was das andere System anlegt, und geben es mit eigenen IDs zurück; und jede Aufgabe, die PotoP nicht ausführen kann – Speicher kürzen, ein Gerätepasswort ändern, Hardware ersetzen –, ist als mit einem Fehler beantwortet aufgeführt, nicht als vorgetäuschter Erfolg.

Genetec Web SDK: Entitäten, Aktionen, Alarme, Ereignisse
API Translator-Konsole

Genetec Web SDK: Entitäten, Aktionen, Alarme, Ereignisse

Entitäten, Kameramethoden, PTZ, Ausgänge, Kacheln, Alarme, Ereignisstrom und Berichte des Web SDK mit ihren PotoP-Gegenstücken – und die Teile für Zutrittskontrolle und Einbruchmeldung, die ehrlich Fail antworten.

So funktioniert es

Das Web SDK wird mit seiner eigenen q=-Syntax für Methodenaufrufe beantwortet, JSON oder XML in moderner oder alter Form, wie der Accept-Header es verlangt. Entitäten stammen aus Kameras, Servern, Benutzern, Gruppen, Makros und Intercom-Zustand von PotoP, mit der logischen ID gleich der PotoP-Nummer; Kameramethoden, PTZ, Ausgänge, Kacheln und Alarme werden auf die gezeigten Aufrufe abgebildet; der Ereignisstrom trägt den Feed von PotoP unter 37 Ereignisnamen von Security Center. Die Zeilen für Zutrittskontrolle, Einbruchmeldung, LPR und Parken sind die ehrlichen: aufbewahrte Entitäten, leere Berichte und Aktionen, die mit Begründung fehlschlagen.

04

Prüfstand und Protokoll 3 Bildschirme

Führen Sie einen Befehl vor der Umstellung wirklich aus und lesen Sie danach die Spur nach.

Prüfstand: ein Sense-Befehl, wirklich ausgeführt
Highlight API Translator-Konsole

Prüfstand: ein Sense-Befehl, wirklich ausgeführt

Senden Sie jeden Befehl so, wie das andere System es tun würde, und lesen Sie die Antwort, Bilder inklusive; der Übersetzer meldet sich für Sie an, und der Befehl wird auf PotoP VMS Studio wirklich ausgeführt.

So funktioniert es

Der Prüfstand meldet sich mit einem Schlüssel für einen einzelnen Befehl an, sodass Sie zum Ausprobieren kein Konto des anderen Systems brauchen, und die Anfrage nimmt denselben Weg wie die einer PLC: Der Konnektor parst sie, ordnet die Nummern zu, macht die PotoP-Aufrufe und formatiert die XML-Antwort. Bilder kommen inline zurück – ein Live-Bild, ein Preset-Bild, ein Exportstatus –, und der Vorgang erscheint im selben Moment mit jedem Schritt im Live-Datenfluss. Das ist die empfohlene Reihenfolge: koppeln, Konnektor und Konto anlegen, hier einen Befehl senden, zusehen, dann das andere System umstellen.

ICX-Prüfstand mit fertigen Beispielen
API Translator-Konsole

ICX-Prüfstand mit fertigen Beispielen

Jede ICX-Befehlsfamilie mit Beispielnachrichten, die Antwort Nachricht für Nachricht mit ihrer Bedeutung, die gemachten PotoP-Aufrufe – und ein Simulator für die Statusmeldungen, die PotoP VoIP melden würde.

So funktioniert es

ICX ist binär, daher bietet der Prüfstand jede Befehlsfamilie mit durchgerechneten Beispielen, deren Nummern Sie durch Ihre ersetzen, zeigt die Hex-Nachricht, die er senden wird, und dekodiert jeden Antwortrahmen in Worte, neben den PotoP-Aufrufen, die ihn erzeugt haben. Der zweite Teil simuliert, was in PotoP VoIP geschieht – ein Gespräch klingelt, wird angenommen, endet, eine Sprechstelle fällt aus, ein Ausgang schaltet, eine Rufanforderung wird gestellt – und gibt die ICX-Statusmeldungen aus, die der Konnektor senden würde; sie erreichen das angebundene System nur, wenn das Kästchen angehakt ist, und das wird ins Aktivitätsprotokoll geschrieben. Der dritte Teil ist die Live-Leitung: jeder Rahmen hinein und hinaus.

Aktivitätsprotokoll
API Translator-Konsole

Aktivitätsprotokoll

Wer sich angemeldet hat, jede Änderung an einem Konnektor, jede abgewiesene Anmeldung eines anderen Systems und jede Nachricht, die der Prüfstand an ein angebundenes System gesendet hat – die Spur, die ein Prüfer liest.

So funktioniert es

Das Protokoll ist die eigene Audit-Tabelle des Übersetzers, neben dem Ereignisjournal in seiner SQLite-Datei: Konsolen-Anmeldungen mit ihrer Adresse, jede Konnektor-Änderung mit Feld und Person, abgewiesene Anmeldungen anderer Systeme – einmal pro Adresse, Name und Grund in fünf Minuten –, abgewiesene ICX-Clients und jede Statusmeldung, die der Prüfstand an ein Live-System geschoben hat. Was das Token des Übersetzers auf dem VMS getan hat, wird dort ebenfalls festgehalten, im Audit-Trail von PotoP unter dem Namen des Tokens – die beiden Bücher zusammen beantworten so, wer was auf welcher Seite getan hat.

Unter der Haube

Wie PotoP API Translator aufgebaut ist, wo es läuft und wie es Ihre Daten schützt.

01

Ein eigener Dienst neben dem VMS

Der Übersetzer ist ein eigener Dienst auf dem PotoP-Server, wie Cockpit, und nie Teil des VMS-Prozesses. Er lauscht auf den Ports, die den anderen Systemen gegeben wurden – standardmäßig 8471 für Sense, 18000 für ICX, 8472 für Milestone und 4590 für Genetec, 443 oder 80, wenn ein System keinen anderen Port bekommen kann – und spricht mit dem VMS über die gewöhnliche PotoP REST API.

02

Ein API-Token, kein Passwort

Die Kopplung erzeugt ein API-Token unter dem Administrator, der sie hergestellt hat, mit einem festen Satz von Rechten und nicht mehr; es wird verschlüsselt gespeichert und kann auf beiden Seiten widerrufen werden. Der Übersetzer hält nie ein VMS-Passwort, und Konnektor-Passwörter werden als scrypt-Hashes aufbewahrt.

03

Das Serverzertifikat auf jedem Port

Jeder Konnektor-Port liefert das Zertifikat des PotoP VMS Studio-Servers aus und folgt dessen Erneuerungen; TLS 1.2 ist das Minimum. Unverschlüsseltes HTTP wird erst beantwortet, nachdem ein Administrator es für einen Konnektor eingeschaltet und die Warnung akzeptiert hat – festgehalten unter seinem Namen.

04

Ihre Nummern, zugeordnet

Server-IDs, Geräte-IDs, GUIDs und Rufnummern der alten Installation werden PotoP-Kameras, -Ausgängen, -Makros, -Layouts und -Nebenstellen zugeordnet; ohne Zuordnung gilt eine Nummer als PotoP-Nummer. Nummern, die das andere System verwendet hat und die nicht zugeordnet sind, werden gesammelt – nie geraten.

05

Ereignisse nummeriert, wie sie eintreffen

Der Übersetzer hält den Ereignis-Feed des VMS offen und nummeriert jedes Ereignis in seinem eigenen Journal, sodass das Ereignis-Polling von Sense, die Ereignissitzungen von Milestone und der Ereignisstrom von Genetec so beantwortet werden, wie diese Systeme es erwarten – mit den Ereignistypen von PotoP unter den eigenen Namen jedes Systems.

06

Lizenziert pro Server

Der API Translator ist das lizenzierte Modul api_translator von PotoP VMS Studio, als Zusatz für jeden Lizenztyp verfügbar. Ohne das Modul öffnet der Dienst keinen Port, und das Tray zeigt nichts davon.

Möchten Sie PotoP API Translator bei sich vor Ort sehen?

Erzählen Sie uns von Ihrer Installation — wir zeigen Ihnen gern alles oder richten eine Testversion ein.