{"id":5450,"date":"2016-08-17T12:49:00","date_gmt":"2016-08-17T10:49:00","guid":{"rendered":"https:\/\/www.derdack.com\/de\/?p=5450"},"modified":"2016-08-17T12:49:00","modified_gmt":"2016-08-17T10:49:00","slug":"zwei-wege-integration-backend-system-scripting","status":"publish","type":"post","link":"https:\/\/www.derdack.com\/de\/zwei-wege-integration-backend-system-scripting\/","title":{"rendered":"Zwei-Wege-Integration mit Backend-Systemen mittels Scripting"},"content":{"rendered":"<p>Enterprise Alert bietet &#8222;codeless&#8220; Integration\u00a0mit einer ganzen Reihe von Standard-Tools, zum Beispiel\u00a0Microsoft System Center, HP Operations Manager, HP Service Manager, usw. Dar\u00fcber hinaus gibt es offene Schnittstellen \/\u00a0API s, wie, Kommandozeile,\u00a0Web Service,\u00a0SMTP\u00a0und mehr. Diese erm\u00f6glichen eine einfache Integration mit fast jedem Backend-System.<\/p>\n<p>Es gibt jedoch auch einen eleganten Weg zur Integration mittels\u00a0Enterprise Alert Scripting Host.\u00a0Das hat folgende Vorteile:<\/p>\n<ul>\n<li>Scripting ist sehr flexibel und eine enge Integration in viele Backend-Systeme ist einfack m\u00f6glich (zum Beispiel per\u00a0Datenbank, Web Service, Dateien, usw.)<\/li>\n<li>Verwendung dynamischer Event Parametern<\/li>\n<li>Die Script Integration verh\u00e4lt sich wie das\u00a0Web Service Interface in Enterprise Alert und es k\u00f6nnen Alarmierungsrichtlinien zur Auswertung verwendet werden<\/li>\n<li>Zwei-Wege-Integration ist m\u00f6glich, inklusive Updates und Reset Event<\/li>\n<li>Einfach anzupassen, zum Beispiel Hinzuf\u00fcgen von Event Parametern oder Anpassung der Implementierung bei \u00c4nderungen im Backend System<\/li>\n<\/ul>\n<p>Das folgende Script ist ein Beispiel f\u00fcr das Lesen von Event-Daten aus einer Datenbank:<\/p>\n<p>&nbsp;<\/p>\n<p><em>\/*<\/em><br \/>\n<em>=============================================================================<\/em><br \/>\n<em>CONFIGURATION<\/em><br \/>\n<em>=============================================================================<\/em><br \/>\n<em>*\/<\/em><\/p>\n<p><em>\/\/ The interval in milliseconds when the messages get read from the MMSEND database table<\/em><br \/>\n<em>var APPCONFIG_CHECK_MESSAGES_INTERVAL = 10000;<\/em><\/p>\n<p><em>\/\/ The script ID used for marking the field &#8222;EA_Status&#8220;. This is unique for each script running in a high-availability environment, e.g. 1001, 1002.<\/em><br \/>\n<em>\/\/ Must be greater than 1000<\/em><br \/>\n<em>var APPCONFIG_SCRIPT_ID = 1002;<\/em><\/p>\n<p><em>\/\/ Enterprise Alert database connection string<\/em><br \/>\n<em>var APPCONFIG_DBCONNECTIONSTRING = &#8222;Driver=SQL Server Native Client 11.0;Server=sqlserver;Trusted_Connection=Yes;Database=EnterpriseAlert2016;Connect Timeout=120;General Timeout=120&#8220;;<\/em><\/p>\n<p><em>\/*<\/em><br \/>\n<em>=============================================================================<\/em><br \/>\n<em>Main functions<\/em><br \/>\n<em>=============================================================================<\/em><br \/>\n<em>*\/<\/em><\/p>\n<p><em>EAScriptHost.LogInfo(&#8222;Script Interface process started&#8220;);<\/em><\/p>\n<p><em>function CheckEvents()<\/em><br \/>\n<em>{<\/em><\/p>\n<p><em>while (true)<\/em><br \/>\n<em>{<\/em><\/p>\n<p><em>var oConn = null;<\/em><br \/>\n<em>var oRs = null;<\/em><br \/>\n<em>var bInTrans = false;<\/em><\/p>\n<p><em>try <\/em><br \/>\n<em>{<\/em><\/p>\n<p><em>\/\/Open the db connection<\/em><br \/>\n<em>\/\/<\/em><br \/>\n<em>oConn = new ActiveXObject(&#8222;ADODB.Connection&#8220;);<\/em><br \/>\n<em>oConn.IsolationLevel = 1048576; \/\/ Set the isolation level to Serializable <\/em><br \/>\n<em>oConn.Open(APPCONFIG_DBCONNECTIONSTRING); <\/em><br \/>\n<em>EAScriptHost.LogDebug(&#8222;Db Connection Opened&#8220;);<\/em><\/p>\n<p><em>oConn.BeginTrans();<\/em><br \/>\n<em>bInTrans = true;<\/em><\/p>\n<p><em>oConn.Execute(&#8222;UPDATE EnterpriseAlert_Central_EventSync SET EA_Status = &#8220; + APPCONFIG_SCRIPT_ID + &#8222;WHERE EA_Status = 0&#8220;);<\/em><\/p>\n<p><em>\/\/ Get the details of the message<\/em><br \/>\n<em>\/\/<\/em><br \/>\n<em>var iNumMessages = 0; <\/em><br \/>\n<em>oRs = DbGetRS(oConn, &#8222;SELECT * FROM EnterpriseAlert_Central_EventSync WHERE EA_Status = &#8220; + APPCONFIG_SCRIPT_ID + &#8220; ORDER BY intID ASC&#8220;); <\/em><br \/>\n<em>while (!oRs.EOF)<\/em><br \/>\n<em>{<\/em><\/p>\n<p><em>var iRecordId = oRs.Fields.Item(&#8222;intID&#8220;).Value;<\/em><\/p>\n<p><em>\/\/ Create new event<\/em><br \/>\n<em>EAScriptHost.LogDebug(&#8222;Script Interface: Create new event&#8220;);<\/em><br \/>\n<em>objevent = EAScriptHost.CreateEvent();<\/em><br \/>\n<em>objevent.SetEventType(&#8222;ConnectorEvent&#8220;);<\/em><br \/>\n<em>objevent.SetEventName(&#8222;NewAlert&#8220;);<\/em><br \/>\n<em>objevent.SetProperty(&#8222;serviceFrom&#8220;, &#8222;\/\/q:mmwebservice\/EventProviderAPI\/Custom Script Interface\/EnterpriseAlert_Central_EventSync&#8220;);<\/em><\/p>\n<p><em>\/\/ Set event parameters and values<\/em><br \/>\n<em>\/\/ objevent.SetProperty(&#8222;externalTicketId&#8220;, oRs.Fields.Item(&#8222;EventID&#8220;).Value == null ? &#8222;&#8220; : oRs.Fields.Item(&#8222;EventID&#8220;).Value);<\/em><br \/>\n<em>objevent.SetEventParameter(&#8222;intID&#8220;, oRs.Fields.Item(&#8222;intID&#8220;).Value == null ? &#8222;&#8220; : oRs.Fields.Item(&#8222;intID&#8220;).Value);<\/em><\/p>\n<p><em>objevent.SetEventParameter(&#8222;EventID&#8220;, oRs.Fields.Item(&#8222;EventID&#8220;).Value == null ? &#8222;&#8220; : oRs.Fields.Item(&#8222;EventID&#8220;).Value);<\/em><br \/>\n<em>objevent.SetEventParameter(&#8222;Description&#8220;, oRs.Fields.Item(&#8222;Description&#8220;).Value == null ? &#8222;&#8220; : oRs.Fields.Item(&#8222;Description&#8220;).Value);<\/em><br \/>\n<em>objevent.SetEventParameter(&#8222;MachineName&#8220;, oRs.Fields.Item(&#8222;MachineName&#8220;).Value == null ? &#8222;&#8220; : oRs.Fields.Item(&#8222;MachineName&#8220;).Value);<\/em><br \/>\n<em>objevent.SetEventParameter(&#8222;EA_Status&#8220;, oRs.Fields.Item(&#8222;EA_Status&#8220;).Value == null ? &#8222;&#8220; : oRs.Fields.Item(&#8222;EA_Status&#8220;).Value);<\/em><\/p>\n<p><em>\/\/ Send event<\/em><br \/>\n<em>objevent.Send();<\/em><\/p>\n<p><em>iNumMessages++;<\/em><\/p>\n<p><em>oRs.MoveNext();<\/em><br \/>\n<em>}<\/em><\/p>\n<p><em>\/\/ Update the processed records<\/em><br \/>\n<em>oConn.Execute(&#8222;UPDATE EnterpriseAlert_Central_EventSync SET EA_Status=1 WHERE EA_Status = &#8220; + APPCONFIG_SCRIPT_ID);<\/em><\/p>\n<p><em>\/\/ Delete the processed records<\/em><br \/>\n<em>\/\/ oConn.Execute(&#8222;DELETE EnterpriseAlert_Central_EventSync WHERE EA_Status = &#8220; + APPCONFIG_SCRIPT_ID);<\/em><\/p>\n<p><em>EAScriptHost.LogDebug(&#8222;Number of events processed: &#8220; + iNumMessages.toString());<\/em><\/p>\n<p><em>oRs.Close();<\/em><br \/>\n<em>oRs = null;<\/em><\/p>\n<p><em>oConn.CommitTrans();<\/em><\/p>\n<p><em>} catch (e) { \/\/ catch all thrown errors<\/em><\/p>\n<p><em>try<\/em><br \/>\n<em>{<\/em><\/p>\n<p><em>EAScriptHost.LogError(&#8222;Error processing event. Error message (Exception): &#8220; + e.message);<\/em><\/p>\n<p><em>if (bInTrans == true &amp;&amp; oConn != null)<\/em><br \/>\n<em>{<\/em><br \/>\n<em>oConn.RollbackTrans();<\/em><br \/>\n<em>}<\/em><\/p>\n<p><em>}<\/em><br \/>\n<em>catch (e2)<\/em><br \/>\n<em>{<\/em><br \/>\n<em>EAScriptHost.LogError(&#8222;Error processing exception. &#8220; + e2.message); <\/em><br \/>\n<em>}<\/em><\/p>\n<p><em>}<\/em><br \/>\n<em>finally<\/em><br \/>\n<em>{<\/em><\/p>\n<p><em>try<\/em><br \/>\n<em>{<\/em><\/p>\n<p><em>\/\/ Release all resources at the end of message processing<\/em><br \/>\n<em>\/\/<\/em><br \/>\n<em>if (oRs != null)<\/em><br \/>\n<em>{<\/em><br \/>\n<em>oRs.Close();<\/em><br \/>\n<em>oRs = null;<\/em><br \/>\n<em>}<\/em><\/p>\n<p><em>if (oConn != null) <\/em><br \/>\n<em>{ <\/em><br \/>\n<em>oConn.Close(); <\/em><br \/>\n<em>oConn = null;<\/em><br \/>\n<em>}<\/em><\/p>\n<p><em>EAScriptHost.LogDebug(&#8222;Resources released.&#8220;);<\/em><\/p>\n<p><em>} catch (e3)<\/em><br \/>\n<em>{<\/em><br \/>\n<em>EAScriptHost.LogError(&#8222;Error releasing resources. &#8220; + e3.message);<\/em><br \/>\n<em>}<\/em><\/p>\n<p><em>}<\/em><\/p>\n<p><em>Sleep(APPCONFIG_CHECK_MESSAGES_INTERVAL);<\/em><\/p>\n<p><em>}<\/em><\/p>\n<p><em>}<\/em><\/p>\n<p><em>\/\/ Returns an ADODB.Recordset object for the specified query<\/em><br \/>\n<em>function DbGetRS(oConn, strSQL)<\/em><br \/>\n<em>{<\/em><\/p>\n<p><em>\/\/Set some constants<\/em><br \/>\n<em>var adOpenStatic = 3;<\/em><br \/>\n<em>var adUseClient = 3;<\/em><br \/>\n<em>var adLockBatchOptimistic = 4;<\/em><\/p>\n<p><em>\/\/Declare our variables<\/em><br \/>\n<em>var oRS;<\/em><\/p>\n<p><em>\/\/ Create the Recordset object<\/em><br \/>\n<em>oRS = new ActiveXObject(&#8222;ADODB.Recordset&#8220;);<\/em><\/p>\n<p><em>\/\/ Populate the Recordset object with a SQL query<\/em><br \/>\n<em>oRS.Open(strSQL, oConn, adOpenStatic, adLockBatchOptimistic, 0);<\/em><\/p>\n<p><em>\/\/ Return the Recordset <\/em><br \/>\n<em>return oRS;<\/em><\/p>\n<p><em>}<\/em><\/p>\n<p><em>\/\/ Gets a date string for the date object<\/em><br \/>\n<em>\/\/<\/em><br \/>\n<em>function GetDateString(date)<\/em><br \/>\n<em>{<\/em><\/p>\n<p><em>var strDate = date.getFullYear().toString() + &#8222;-&#8220; + GetDoubleDigit((date.getMonth() + 1).toString()) + &#8222;-&#8220; + GetDoubleDigit(date.getDate().toString()) + &#8220; &#8220; + GetDoubleDigit(date.getHours().toString()) + &#8222;:&#8220; + GetDoubleDigit(date.getMinutes().toString()) + &#8222;:&#8220; + GetDoubleDigit(date.getSeconds().toString());<\/em><br \/>\n<em>return strDate;<\/em><\/p>\n<p><em>}<\/em><\/p>\n<p><em>\/\/ Gets a double digit for the date<\/em><br \/>\n<em>\/\/<\/em><br \/>\n<em>function GetDoubleDigit(strText)<\/em><br \/>\n<em>{<\/em><\/p>\n<p><em>var strOutput;<\/em><br \/>\n<em>if (strText.length == 1)<\/em><br \/>\n<em>strOutput = &#8222;0&#8220; + strText;<\/em><br \/>\n<em>else <\/em><br \/>\n<em>strOutput = strText; <\/em><br \/>\n<em>return strOutput;<\/em><\/p>\n<p><em>}<\/em><\/p>\n<p><em>\/\/ Run<\/em><br \/>\n<em>CheckEvents();<\/em><\/p>\n<p>&nbsp;<\/p>\n<p>Zus\u00e4tzlich zu dem Script ist es noch notwendig einen entsprechenden Event Provider in der Datenbank anzulegen.\u00a0Das kann mit dem folgenden Beispiel SQL Script geschehen:<\/p>\n<p>&nbsp;<\/p>\n<p><em>BEGIN<\/em><br \/>\n<em>IF NOT EXISTS (SELECT * FROM [dbo].[EventProviders] WHERE Name = &#8218;Custom Script Interface&#8216;)<\/em><br \/>\n<em>BEGIN<\/em><br \/>\n<em>INSERT INTO [dbo].[EventProviders] (Name, DisplayName, Description, DateCreated, Type, Options, UserID, ResponseAddress, LicenseName, ClientAddress)<\/em><br \/>\n<em>VALUES (&#8218;Custom Script Interface&#8216;, &#8218;Custom Script Interface&#8216;, &#8218;Custom Script Interface&#8216;, GETDATE(), 3, 2, 1, &#8220;, null, &#8218;::1&#8216;)<\/em><br \/>\n<em>END<\/em><br \/>\n<em>BEGIN<\/em><br \/>\n<em>DECLARE @ProviderID AS INT<\/em><br \/>\n<em>SET @ProviderID = (SELECT ID FROM [dbo].[EventProviders] WHERE Name = &#8218;Custom NetIQ&#8216;)<\/em><\/p>\n<p><em>INSERT INTO [dbo].[EventParameters] (ProviderID, Name, DisplayName, XPath, Description, Options, ForbiddenEvaluations) VALUES (@ProviderID, &#8218;intID&#8216;, &#8218;intID&#8216;, &#8220;, &#8220;, 0, 0)<\/em><br \/>\n<em>INSERT INTO [dbo].[EventParameters] (ProviderID, Name, DisplayName, XPath, Description, Options, ForbiddenEvaluations) VALUES (@ProviderID, &#8218;EventID&#8216;, &#8218;EventID&#8216;, &#8220;, &#8220;, 0, 0) <\/em><br \/>\n<em>INSERT INTO [dbo].[EventParameters] (ProviderID, Name, DisplayName, XPath, Description, Options, ForbiddenEvaluations) VALUES (@ProviderID, &#8218;Description&#8216;, &#8218;Description&#8216;, &#8220;, &#8220;, 0, 0) <\/em><br \/>\n<em>INSERT INTO [dbo].[EventParameters] (ProviderID, Name, DisplayName, XPath, Description, Options, ForbiddenEvaluations) VALUES (@ProviderID, &#8218;MachineName&#8216;, &#8218;MachineName&#8216;, &#8220;, &#8220;, 0, 0)<\/em><br \/>\n<em>INSERT INTO [dbo].[EventParameters] (ProviderID, Name, DisplayName, XPath, Description, Options, ForbiddenEvaluations) VALUES (@ProviderID, &#8218;EA_Status&#8216;, &#8218;EA_Status&#8216;, &#8220;, &#8220;, 0, 0)<\/em><\/p>\n<p><em>END<\/em><br \/>\n<em>END<\/em><\/p>\n<p>&nbsp;<\/p>\n<p>Datens\u00e4tze, die aus der Datenbank ausgelesen werden, kommen dann in Enterprise Alert als Events an. F\u00fcr die Zwei-Implementierung kann der entsprechende Code in den Event Handler aufgenommen werden, zum Beispiel in OnTicketStatus().<\/p>\n<div class=\"clearfix\"><\/div>","protected":false},"excerpt":{"rendered":"<p>Enterprise Alert bietet &#8222;codeless&#8220; Integration\u00a0mit einer ganzen Reihe von Standard-Tools, zum Beispiel\u00a0Microsoft System Center, HP Operations Manager, HP Service Manager, usw. Dar\u00fcber hinaus gibt es offene Schnittstellen \/\u00a0API s, wie, Kommandozeile,\u00a0Web Service,\u00a0SMTP\u00a0und mehr. Diese erm\u00f6glichen eine einfache Integration mit fast jedem Backend-System. Es gibt jedoch auch einen eleganten Weg zur Integration mittels\u00a0Enterprise Alert Scripting Host.\u00a0Das<\/p>\n<p class=\"cv-read-more-button\"><a class=\"cv-button button is-standard color-accent has-icon icon-after\" href=\"https:\/\/www.derdack.com\/de\/zwei-wege-integration-backend-system-scripting\/\">Continue Reading<i class=\"button-icon icon-right-open-big\"><\/i><\/a><\/p>\n","protected":false},"author":11,"featured_media":2521,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[1],"tags":[505,115,504],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v19.0 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Zwei-Wege-Integration mit Backend-Systemen mittels Scripting<\/title>\n<meta name=\"description\" content=\"Enterprise Alert bietet &quot;codeless&quot; Integration\u00a0mit einer ganzen Reihe von Standard-Tools, zum Beispiel\u00a0Microsoft System Center, HP Operations Manager, HP\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.derdack.com\/de\/zwei-wege-integration-backend-system-scripting\/\" \/>\n<meta property=\"og:locale\" content=\"de_DE\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Zwei-Wege-Integration mit Backend-Systemen mittels Scripting\" \/>\n<meta property=\"og:description\" content=\"Enterprise Alert bietet &quot;codeless&quot; Integration\u00a0mit einer ganzen Reihe von Standard-Tools, zum Beispiel\u00a0Microsoft System Center, HP Operations Manager, HP\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.derdack.com\/de\/zwei-wege-integration-backend-system-scripting\/\" \/>\n<meta property=\"og:site_name\" content=\"Derdack DE\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/derdack?ref=ts\" \/>\n<meta property=\"article:published_time\" content=\"2016-08-17T10:49:00+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.derdack.com\/de\/wp-content\/uploads\/sites\/5\/2016\/01\/Tech_Support.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"917\" \/>\n\t<meta property=\"og:image:height\" content=\"568\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"twitter:card\" content=\"summary\" \/>\n<meta name=\"twitter:creator\" content=\"@derdack\" \/>\n<meta name=\"twitter:site\" content=\"@derdack\" \/>\n<meta name=\"twitter:label1\" content=\"Verfasst von\" \/>\n\t<meta name=\"twitter:data1\" content=\"ronald\" \/>\n\t<meta name=\"twitter:label2\" content=\"Gesch\u00e4tzte Lesezeit\" \/>\n\t<meta name=\"twitter:data2\" content=\"5 Minuten\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.derdack.com\/de\/#website\",\"url\":\"https:\/\/www.derdack.com\/de\/\",\"name\":\"Derdack DE\",\"description\":\"Alarmierung und mobile St\u00f6rfallreaktion f\u00fcr kritische Systeme\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.derdack.com\/de\/?s={search_term_string}\"},\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"de-DE\"},{\"@type\":\"ImageObject\",\"inLanguage\":\"de-DE\",\"@id\":\"https:\/\/www.derdack.com\/de\/zwei-wege-integration-backend-system-scripting\/#primaryimage\",\"url\":\"https:\/\/www.derdack.com\/de\/wp-content\/uploads\/sites\/5\/2016\/01\/Tech_Support.jpg\",\"contentUrl\":\"https:\/\/www.derdack.com\/de\/wp-content\/uploads\/sites\/5\/2016\/01\/Tech_Support.jpg\",\"width\":917,\"height\":568,\"caption\":\"group of young business people it engineer in network server room solving problems and give help and support\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.derdack.com\/de\/zwei-wege-integration-backend-system-scripting\/#webpage\",\"url\":\"https:\/\/www.derdack.com\/de\/zwei-wege-integration-backend-system-scripting\/\",\"name\":\"Zwei-Wege-Integration mit Backend-Systemen mittels Scripting\",\"isPartOf\":{\"@id\":\"https:\/\/www.derdack.com\/de\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.derdack.com\/de\/zwei-wege-integration-backend-system-scripting\/#primaryimage\"},\"datePublished\":\"2016-08-17T10:49:00+00:00\",\"dateModified\":\"2016-08-17T10:49:00+00:00\",\"author\":{\"@id\":\"https:\/\/www.derdack.com\/de\/#\/schema\/person\/45ea5442287c9b1738f56eb0b7770123\"},\"description\":\"Enterprise Alert bietet \\\"codeless\\\" Integration\u00a0mit einer ganzen Reihe von Standard-Tools, zum Beispiel\u00a0Microsoft System Center, HP Operations Manager, HP\",\"breadcrumb\":{\"@id\":\"https:\/\/www.derdack.com\/de\/zwei-wege-integration-backend-system-scripting\/#breadcrumb\"},\"inLanguage\":\"de-DE\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.derdack.com\/de\/zwei-wege-integration-backend-system-scripting\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.derdack.com\/de\/zwei-wege-integration-backend-system-scripting\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.derdack.com\/de\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Zwei-Wege-Integration mit Backend-Systemen mittels Scripting\"}]},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.derdack.com\/de\/#\/schema\/person\/45ea5442287c9b1738f56eb0b7770123\",\"name\":\"ronald\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"de-DE\",\"@id\":\"https:\/\/www.derdack.com\/de\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/a0dc470a8dfd7dcdcdc8a1f0e78de308?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/a0dc470a8dfd7dcdcdc8a1f0e78de308?s=96&d=mm&r=g\",\"caption\":\"ronald\"},\"url\":\"https:\/\/www.derdack.com\/de\/author\/ronald\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Zwei-Wege-Integration mit Backend-Systemen mittels Scripting","description":"Enterprise Alert bietet \"codeless\" Integration\u00a0mit einer ganzen Reihe von Standard-Tools, zum Beispiel\u00a0Microsoft System Center, HP Operations Manager, HP","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.derdack.com\/de\/zwei-wege-integration-backend-system-scripting\/","og_locale":"de_DE","og_type":"article","og_title":"Zwei-Wege-Integration mit Backend-Systemen mittels Scripting","og_description":"Enterprise Alert bietet \"codeless\" Integration\u00a0mit einer ganzen Reihe von Standard-Tools, zum Beispiel\u00a0Microsoft System Center, HP Operations Manager, HP","og_url":"https:\/\/www.derdack.com\/de\/zwei-wege-integration-backend-system-scripting\/","og_site_name":"Derdack DE","article_publisher":"https:\/\/www.facebook.com\/derdack?ref=ts","article_published_time":"2016-08-17T10:49:00+00:00","og_image":[{"width":917,"height":568,"url":"https:\/\/www.derdack.com\/de\/wp-content\/uploads\/sites\/5\/2016\/01\/Tech_Support.jpg","type":"image\/jpeg"}],"twitter_card":"summary","twitter_creator":"@derdack","twitter_site":"@derdack","twitter_misc":{"Verfasst von":"ronald","Gesch\u00e4tzte Lesezeit":"5 Minuten"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebSite","@id":"https:\/\/www.derdack.com\/de\/#website","url":"https:\/\/www.derdack.com\/de\/","name":"Derdack DE","description":"Alarmierung und mobile St\u00f6rfallreaktion f\u00fcr kritische Systeme","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.derdack.com\/de\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"de-DE"},{"@type":"ImageObject","inLanguage":"de-DE","@id":"https:\/\/www.derdack.com\/de\/zwei-wege-integration-backend-system-scripting\/#primaryimage","url":"https:\/\/www.derdack.com\/de\/wp-content\/uploads\/sites\/5\/2016\/01\/Tech_Support.jpg","contentUrl":"https:\/\/www.derdack.com\/de\/wp-content\/uploads\/sites\/5\/2016\/01\/Tech_Support.jpg","width":917,"height":568,"caption":"group of young business people it engineer in network server room solving problems and give help and support"},{"@type":"WebPage","@id":"https:\/\/www.derdack.com\/de\/zwei-wege-integration-backend-system-scripting\/#webpage","url":"https:\/\/www.derdack.com\/de\/zwei-wege-integration-backend-system-scripting\/","name":"Zwei-Wege-Integration mit Backend-Systemen mittels Scripting","isPartOf":{"@id":"https:\/\/www.derdack.com\/de\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.derdack.com\/de\/zwei-wege-integration-backend-system-scripting\/#primaryimage"},"datePublished":"2016-08-17T10:49:00+00:00","dateModified":"2016-08-17T10:49:00+00:00","author":{"@id":"https:\/\/www.derdack.com\/de\/#\/schema\/person\/45ea5442287c9b1738f56eb0b7770123"},"description":"Enterprise Alert bietet \"codeless\" Integration\u00a0mit einer ganzen Reihe von Standard-Tools, zum Beispiel\u00a0Microsoft System Center, HP Operations Manager, HP","breadcrumb":{"@id":"https:\/\/www.derdack.com\/de\/zwei-wege-integration-backend-system-scripting\/#breadcrumb"},"inLanguage":"de-DE","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.derdack.com\/de\/zwei-wege-integration-backend-system-scripting\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.derdack.com\/de\/zwei-wege-integration-backend-system-scripting\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.derdack.com\/de\/"},{"@type":"ListItem","position":2,"name":"Zwei-Wege-Integration mit Backend-Systemen mittels Scripting"}]},{"@type":"Person","@id":"https:\/\/www.derdack.com\/de\/#\/schema\/person\/45ea5442287c9b1738f56eb0b7770123","name":"ronald","image":{"@type":"ImageObject","inLanguage":"de-DE","@id":"https:\/\/www.derdack.com\/de\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/a0dc470a8dfd7dcdcdc8a1f0e78de308?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/a0dc470a8dfd7dcdcdc8a1f0e78de308?s=96&d=mm&r=g","caption":"ronald"},"url":"https:\/\/www.derdack.com\/de\/author\/ronald\/"}]}},"_links":{"self":[{"href":"https:\/\/www.derdack.com\/de\/wp-json\/wp\/v2\/posts\/5450"}],"collection":[{"href":"https:\/\/www.derdack.com\/de\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.derdack.com\/de\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.derdack.com\/de\/wp-json\/wp\/v2\/users\/11"}],"replies":[{"embeddable":true,"href":"https:\/\/www.derdack.com\/de\/wp-json\/wp\/v2\/comments?post=5450"}],"version-history":[{"count":3,"href":"https:\/\/www.derdack.com\/de\/wp-json\/wp\/v2\/posts\/5450\/revisions"}],"predecessor-version":[{"id":5453,"href":"https:\/\/www.derdack.com\/de\/wp-json\/wp\/v2\/posts\/5450\/revisions\/5453"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.derdack.com\/de\/wp-json\/wp\/v2\/media\/2521"}],"wp:attachment":[{"href":"https:\/\/www.derdack.com\/de\/wp-json\/wp\/v2\/media?parent=5450"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.derdack.com\/de\/wp-json\/wp\/v2\/categories?post=5450"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.derdack.com\/de\/wp-json\/wp\/v2\/tags?post=5450"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}