Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?xml version="1.0" encoding="utf-8"?>
- <!--
- ****************************************************************************
- * Copyright (c) 2022, Skyline Communications NV All Rights Reserved. *
- ****************************************************************************
- By using this driver, you expressly agree with the usage terms and
- conditions set out below.
- This driver and all related materials are protected by copyrights and
- other intellectual property rights that exclusively belong
- to Skyline Communications.
- A user license granted for this driver is strictly for personal use only.
- This driver may not be used in any way by anyone without the prior
- written consent of Skyline Communications. Any sublicensing of this
- driver is forbidden.
- Any modifications to this driver by the user are only allowed for
- personal use and within the intended purpose of the driver,
- and will remain the sole responsibility of the user.
- Skyline Communications will not be responsible for any damages or
- malfunctions whatsoever of the driver resulting from a modification
- or adaptation by the user.
- The content of this driver is confidential information.
- The user hereby agrees to keep this confidential information strictly
- secret and confidential and not to disclose or reveal it, in whole
- or in part, directly or indirectly to any person, entity, organization
- or administration without the prior written consent of
- Skyline Communications.
- Any inquiries can be addressed to:
- Skyline Communications NV
- Ambachtenstraat 33
- B-8870 Izegem
- Belgium
- Tel. : +32 51 31 35 69
- Fax. : +32 51 31 01 29
- E-mail : info@skyline.be
- Web : www.skyline.be
- Contact : Ben Vandenberghe
- -->
- <Protocol xmlns="http://www.skyline.be/protocol">
- <Name>LiveBoothBoxConnections</Name>
- <Description>Connects boxes and live booths</Description>
- <Version>0.0.0.3</Version>
- <IntegrationID>DMS-DRV-0100</IntegrationID>
- <Provider>A</Provider>
- <Vendor>A</Vendor>
- <VendorOID>1.3.6.1.4.1.8813.2.00</VendorOID>
- <DeviceOID>00</DeviceOID>
- <ElementType>Virtual Router</ElementType>
- <Type relativeTimers="true">virtual</Type>
- <Display defaultPage="General" pageOrder="General" wideColumnPages=""/>
- <SNMP includepages="true">auto</SNMP>
- <Params>
- <Param id="2">
- <Name>AfterStartup</Name>
- <Description>After Startup</Description>
- <Type>dummy</Type>
- </Param>
- <Param id="100">
- <Name>liveBooths</Name>
- <Description>Live Booths</Description>
- <Type>array</Type>
- <ArrayOptions index="0" options="naming=/102">
- <ColumnOption idx="0" pid="101" type="custom" options=""/>
- <ColumnOption idx="1" pid="102" type="custom" options=";save"/>
- <ColumnOption idx="2" pid="103" type="custom" options=";save"/>
- <ColumnOption idx="3" pid="104" type="custom" options=";save"/>
- <ColumnOption idx="4" pid="105" type="custom" options=";save"/>
- <ColumnOption idx="5" pid="106" type="custom" options=";save"/>
- <ColumnOption idx="6" pid="107" type="custom" options=";save"/>
- <ColumnOption idx="7" pid="108" type="custom" options=";save"/>
- </ArrayOptions>
- <Display>
- <RTDisplay>true</RTDisplay>
- <Positions>
- <Position>
- <Page>General</Page>
- <Column>0</Column>
- <Row>1</Row>
- </Position>
- </Positions>
- </Display>
- <Measurement>
- <Type options="tab=columns:101|0-102|1-103|2-104|3-105|4-106|5-107|6-108|7,width:109-148-100-100-100-100-100-100,sort:STRING-STRING|ASC-STRING-STRING-STRING-STRING-INT-INT,lines:0,filter:true">table</Type>
- </Measurement>
- </Param>
- <Param id="101" trending="false">
- <Name>liveBoothsBoothID</Name>
- <Description>Live Booth ID</Description>
- <Type>read</Type>
- <Information>
- </Information>
- <Interprete>
- <RawType>other</RawType>
- <Type>string</Type>
- <LengthType>next param</LengthType>
- </Interprete>
- <Display>
- <RTDisplay>true</RTDisplay>
- </Display>
- <Measurement>
- <Type>number</Type>
- </Measurement>
- </Param>
- <Param id="102" trending="false">
- <Name>liveBoothsName</Name>
- <Description>Live Booth Name [IDX]</Description>
- <Type>read</Type>
- <Information>
- </Information>
- <Interprete>
- <RawType>other</RawType>
- <Type>string</Type>
- <LengthType>next param</LengthType>
- </Interprete>
- <Display>
- <RTDisplay>true</RTDisplay>
- </Display>
- <Measurement>
- <Type>string</Type>
- </Measurement>
- </Param>
- <Param id="103" trending="false">
- <Name>liveBoothsDisplayName</Name>
- <Description>Display Name</Description>
- <Type>read</Type>
- <Information>
- </Information>
- <Interprete>
- <RawType>other</RawType>
- <Type>string</Type>
- <LengthType>next param</LengthType>
- </Interprete>
- <Display>
- <RTDisplay>true</RTDisplay>
- </Display>
- <Measurement>
- <Type>string</Type>
- </Measurement>
- </Param>
- <Param id="104" trending="false">
- <Name>liveBoothsSources</Name>
- <Description>Sources</Description>
- <Type>read</Type>
- <Information>
- </Information>
- <Interprete>
- <RawType>other</RawType>
- <Type>string</Type>
- <LengthType>next param</LengthType>
- </Interprete>
- <Display>
- <RTDisplay>true</RTDisplay>
- </Display>
- <Measurement>
- <Type>string</Type>
- </Measurement>
- </Param>
- <Param id="204" setter="true">
- <Name>liveBoothsSources</Name>
- <Description>Sources</Description>
- <Type>write</Type>
- <Interprete>
- <RawType>other</RawType>
- <Type>string</Type>
- <LengthType>next param</LengthType>
- </Interprete>
- <Display>
- <RTDisplay>true</RTDisplay>
- </Display>
- <Measurement>
- <Type>string</Type>
- </Measurement>
- </Param>
- <Param id="105" trending="false">
- <Name>liveBoothsDestinations</Name>
- <Description>Destinations</Description>
- <Type>read</Type>
- <Information>
- </Information>
- <Interprete>
- <RawType>other</RawType>
- <Type>string</Type>
- <LengthType>next param</LengthType>
- </Interprete>
- <Display>
- <RTDisplay>true</RTDisplay>
- </Display>
- <Measurement>
- <Type>string</Type>
- </Measurement>
- </Param>
- <Param id="106" trending="false">
- <Name>liveBoothsPip</Name>
- <Description>PIP</Description>
- <Type>read</Type>
- <Information>
- <Includes>
- <Include>units</Include>
- <Include>steps</Include>
- </Includes>
- </Information>
- <Interprete>
- <RawType>numeric text</RawType>
- <Type>double</Type>
- <LengthType>next param</LengthType>
- </Interprete>
- <Display>
- <RTDisplay>true</RTDisplay>
- </Display>
- <Measurement>
- <Type>number</Type>
- </Measurement>
- </Param>
- <Param id="107" trending="false">
- <Name>liveBoothsMix</Name>
- <Description>Mix</Description>
- <Type>read</Type>
- <Information>
- </Information>
- <Interprete>
- <RawType>numeric text</RawType>
- <Type>double</Type>
- <LengthType>next param</LengthType>
- </Interprete>
- <Display>
- <RTDisplay>true</RTDisplay>
- </Display>
- <Measurement>
- <Type>number</Type>
- </Measurement>
- </Param>
- <Param id="108" trending="false">
- <Name>liveBoothsLogo</Name>
- <Description>Logo</Description>
- <Type>read</Type>
- <Information>
- </Information>
- <Interprete>
- <RawType>numeric text</RawType>
- <Type>double</Type>
- <LengthType>next param</LengthType>
- </Interprete>
- <Display>
- <RTDisplay>true</RTDisplay>
- </Display>
- <Measurement>
- <Type>number</Type>
- </Measurement>
- </Param>
- <Param id="208" setter="true">
- <Name>liveBoothsLogo</Name>
- <Description>Logo</Description>
- <Type>write</Type>
- <Interprete>
- <RawType>numeric text</RawType>
- <Type>double</Type>
- <LengthType>next param</LengthType>
- </Interprete>
- <Display>
- <RTDisplay>true</RTDisplay>
- </Display>
- <Measurement>
- <Type>number</Type>
- </Measurement>
- </Param>
- <Param id="207" setter="true">
- <Name>liveBoothsMix</Name>
- <Description>Mix</Description>
- <Type>write</Type>
- <Interprete>
- <RawType>numeric text</RawType>
- <Type>double</Type>
- <LengthType>next param</LengthType>
- </Interprete>
- <Display>
- <RTDisplay>true</RTDisplay>
- </Display>
- <Measurement>
- <Type>number</Type>
- </Measurement>
- </Param>
- <Param id="206" setter="true">
- <Name>liveBoothsPip</Name>
- <Description>PIP</Description>
- <Type>write</Type>
- <Interprete>
- <RawType>numeric text</RawType>
- <Type>double</Type>
- <LengthType>next param</LengthType>
- </Interprete>
- <Display>
- <RTDisplay>true</RTDisplay>
- </Display>
- <Measurement>
- <Type>number</Type>
- </Measurement>
- </Param>
- <Param id="205" setter="true">
- <Name>liveBoothsDestinations</Name>
- <Description>Destinations</Description>
- <Type>write</Type>
- <Interprete>
- <RawType>other</RawType>
- <Type>string</Type>
- <LengthType>next param</LengthType>
- </Interprete>
- <Display>
- <RTDisplay>true</RTDisplay>
- </Display>
- <Measurement>
- <Type>string</Type>
- </Measurement>
- </Param>
- <Param id="203" setter="true">
- <Name>liveBoothsDisplayName</Name>
- <Description>Display Name</Description>
- <Type>write</Type>
- <Interprete>
- <RawType>other</RawType>
- <Type>string</Type>
- <LengthType>next param</LengthType>
- </Interprete>
- <Display>
- <RTDisplay>true</RTDisplay>
- </Display>
- <Measurement>
- <Type>string</Type>
- </Measurement>
- </Param>
- <Param id="202" setter="true">
- <Name>liveBoothsName</Name>
- <Description>Live Booth Name [IDX]</Description>
- <Type>write</Type>
- <Interprete>
- <RawType>other</RawType>
- <Type>string</Type>
- <LengthType>next param</LengthType>
- </Interprete>
- <Display>
- <RTDisplay>true</RTDisplay>
- </Display>
- <Measurement>
- <Type>string</Type>
- </Measurement>
- </Param>
- <Param id="110">
- <Name>liveBoxes</Name>
- <Description>Commentators Boxes</Description>
- <Type>array</Type>
- <ArrayOptions index="0" options="naming=/112">
- <ColumnOption idx="0" pid="111" type="autoincrement" options=""/>
- <ColumnOption idx="1" pid="112" type="retrieved" options=";save"/>
- <ColumnOption idx="2" pid="113" type="retrieved" options=";save"/>
- <ColumnOption idx="3" pid="114" type="retrieved" options=";save"/>
- </ArrayOptions>
- <Measurement>
- <Type options="tab=columns:111|0-112|1-113|2-114|3,width:71-124-127-123,sort:INT-STRING|ASC-INT-STRING,lines:0,filter:true">table</Type>
- </Measurement>
- <Display>
- <RTDisplay>true</RTDisplay>
- <Positions>
- <Position>
- <Page>General</Page>
- <Column>1</Column>
- <Row>1</Row>
- </Position>
- </Positions>
- </Display>
- </Param>
- <Param id="111" trending="false">
- <Name>liveBoxesID</Name>
- <Description>Box ID</Description>
- <Type>read</Type>
- <Information>
- <Subtext>Box primary key</Subtext>
- </Information>
- <Interprete>
- <RawType>other</RawType>
- <Type>string</Type>
- <LengthType>next param</LengthType>
- </Interprete>
- <Display>
- <RTDisplay>true</RTDisplay>
- </Display>
- <Measurement>
- <Type>number</Type>
- </Measurement>
- </Param>
- <Param id="112" trending="false">
- <Name>liveBoxesName</Name>
- <Description>Box Name [IDX]</Description>
- <Type>read</Type>
- <Information>
- <Subtext>Box Name</Subtext>
- </Information>
- <Interprete>
- <RawType>other</RawType>
- <Type>string</Type>
- <LengthType>next param</LengthType>
- </Interprete>
- <Display>
- <RTDisplay>true</RTDisplay>
- </Display>
- <Measurement>
- <Type>string</Type>
- </Measurement>
- </Param>
- <Param id="113" trending="false">
- <Name>liveBoxesConnectedBooth</Name>
- <Description>Connected Live Booth</Description>
- <Type>read</Type>
- <Information>
- </Information>
- <Interprete>
- <RawType>other</RawType>
- <Type>string</Type>
- <LengthType>next param</LengthType>
- </Interprete>
- <Display>
- <RTDisplay>true</RTDisplay>
- </Display>
- <Measurement>
- <Type>number</Type>
- </Measurement>
- </Param>
- <Param id="114" trending="false">
- <Name>liveBoxesMonitors</Name>
- <Description>Monitor Destinations</Description>
- <Type>read</Type>
- <Information>
- </Information>
- <Interprete>
- <RawType>other</RawType>
- <Type>string</Type>
- <LengthType>next param</LengthType>
- </Interprete>
- <Display>
- <RTDisplay>true</RTDisplay>
- </Display>
- <Measurement>
- <Type>string</Type>
- </Measurement>
- </Param>
- <Param id="214" setter="true">
- <Name>liveBoxesMonitors</Name>
- <Description>Monitor Destinations</Description>
- <Type>write</Type>
- <Interprete>
- <RawType>other</RawType>
- <Type>string</Type>
- <LengthType>next param</LengthType>
- </Interprete>
- <Display>
- <RTDisplay>true</RTDisplay>
- </Display>
- <Measurement>
- <Type>string</Type>
- </Measurement>
- </Param>
- <Param id="213" setter="true">
- <Name>liveBoxesConnectedBooth</Name>
- <Description>Connected Live Booth</Description>
- <Type>write</Type>
- <Interprete>
- <RawType>other</RawType>
- <Type>string</Type>
- <LengthType>next param</LengthType>
- </Interprete>
- <Display>
- <RTDisplay>true</RTDisplay>
- </Display>
- <Measurement>
- <Type>number</Type>
- </Measurement>
- </Param>
- <Param id="212" setter="true">
- <Name>liveBoxesName</Name>
- <Description>Box Name [IDX]</Description>
- <Type>write</Type>
- <Interprete>
- <RawType>other</RawType>
- <Type>string</Type>
- <LengthType>next param</LengthType>
- </Interprete>
- <Display>
- <RTDisplay>true</RTDisplay>
- </Display>
- <Measurement>
- <Type>string</Type>
- </Measurement>
- </Param>
- <Param id="300">
- <Name>createBox</Name>
- <Type>write</Type>
- <Information>
- <Subtext>Create new commentators box</Subtext>
- </Information>
- <Interprete>
- <RawType>numeric text</RawType>
- <Type>double</Type>
- <LengthType>next param</LengthType>
- </Interprete>
- <Display>
- <RTDisplay>true</RTDisplay>
- <Positions>
- <Position>
- <Page>General</Page>
- <Column>1</Column>
- <Row>0</Row>
- </Position>
- </Positions>
- </Display>
- <Measurement>
- <Type width="110">button</Type>
- <Discreets>
- <Discreet>
- <Display>Create New Box...</Display>
- <Value>newBox</Value>
- </Discreet>
- </Discreets>
- </Measurement>
- </Param>
- <Param id="301">
- <Name>createBooth</Name>
- <Type>write</Type>
- <Information>
- <Subtext>Create live booth</Subtext>
- </Information>
- <Interprete>
- <RawType>numeric text</RawType>
- <Type>double</Type>
- <LengthType>next param</LengthType>
- </Interprete>
- <Display>
- <RTDisplay>true</RTDisplay>
- <Positions>
- <Position>
- <Page>General</Page>
- <Column>0</Column>
- <Row>0</Row>
- </Position>
- </Positions>
- </Display>
- <Measurement>
- <Type width="110">button</Type>
- <Discreets>
- <Discreet>
- <Display>Create Live Booth...</Display>
- <Value>newBooth</Value>
- </Discreet>
- </Discreets>
- </Measurement>
- </Param>
- </Params>
- <QActions>
- <QAction id="1" name="Precompiled Code" encoding="csharp" options="precompile">
- <![CDATA[namespace Skyline.Protocol
- {
- using System;
- using System.Collections.Generic;
- using System.Globalization;
- using System.IO;
- using System.Text;
- using Skyline.DataMiner.Scripting;
- namespace MyExtension
- {
- #region Enumerations
- #endregion
- #region Structs
- #endregion
- #region Classes
- public class Utilitiy
- {
- public static void SaveTable(SLProtocol protocol, int tableID, string filename)
- {
- string[] keys = protocol.GetKeys(tableID);
- var tableContents = new List<string>();
- foreach (string key in keys)
- {
- object[] rowData = (object[])protocol.GetRow(tableID, key);
- tableContents.Add(string.Join(",", rowData));
- }
- File.WriteAllLines(filename, tableContents);
- }
- }
- public class MyClass
- {
- #region Fields
- #endregion
- #region Constructors
- #endregion
- #region Enumerations
- #endregion
- #region Properties
- #endregion
- #region Methods
- #endregion
- #region Structs
- #endregion
- }
- #endregion
- }
- }]]>
- </QAction>
- <QAction id="2" name="After Startup" encoding="csharp" triggers="2">
- <![CDATA[using System;
- using System.IO;
- using System.Linq;
- using Skyline.DataMiner.Scripting;
- /// <summary>
- /// DataMiner QAction Class: After Startup.
- /// </summary>
- public static class QAction
- {
- /// <summary>
- /// The QAction entry point.
- /// </summary>
- /// <param name="protocol">Link with SLProtocol process.</param>
- public static void Run(SLProtocol protocol)
- {
- int boothTableID = 100;
- int boxTableID = 110;
- try
- {
- // Init tables
- protocol.DeleteRow(boothTableID,protocol.GetKeys(boothTableID,NotifyProtocol.KeyType.Index));
- protocol.DeleteRow(boxTableID, protocol.GetKeys(boxTableID, NotifyProtocol.KeyType.Index));
- // Load boxes
- const string boxFileName = "C:\\Skyline_data\\boxFile.csv";
- if (File.Exists(boxFileName))
- {
- string[] fileRows = File.ReadAllLines(boxFileName);
- foreach (string row in fileRows)
- {
- if (!string.IsNullOrEmpty(row))
- {
- object[] rowValues = row.Split(',').Select(v => v == "null" ? null : v).ToArray<object>();
- protocol.AddRow(boxTableID, rowValues);
- }
- }
- }
- // Load booths
- const string boothFileName = "C:\\Skyline_data\\boothFile.csv";
- if (File.Exists(boothFileName))
- {
- string[] fileRows = File.ReadAllLines(boothFileName);
- foreach (string row in fileRows)
- {
- if (!string.IsNullOrEmpty(row))
- {
- object[] rowValues = row.Split(',').Select(v => v == "null" ? null : v).ToArray<object>();
- protocol.AddRow(boothTableID, rowValues);
- }
- }
- }
- }
- catch (Exception ex)
- {
- protocol.Log("QA" + protocol.QActionID + "|" + protocol.GetTriggerParameter() + "|Run|Exception thrown:" + Environment.NewLine + ex, LogType.Error, LogLevel.NoLogging);
- }
- }
- }]]>
- </QAction>
- <QAction id="3" name="Create New Box" encoding="csharp" triggers="300">
- <![CDATA[using System;
- using System.Collections.Generic;
- using System.Globalization;
- using System.Text;
- using Skyline.DataMiner.Scripting;
- using Skyline.DataMiner.Net.Messages;
- using System.IO;
- using System.Linq;
- using Skyline.DataMiner.Net.Messages.SLDataGateway;
- /// <summary>
- /// DataMiner QAction Class: Create New Box.
- /// </summary>
- public static class QAction
- {
- /// <summary>
- /// The QAction entry point.
- /// </summary>
- /// <param name="protocol">Link with SLProtocol process.</param>
- public static void Run(SLProtocol protocol)
- {
- int tableID = Skyline.DataMiner.Scripting.Parameter.Liveboxes.tablePid;//110;
- try
- {
- var executeScriptMessage = new ExecuteScriptMessage
- {
- ScriptName = "CreateLiveBoxParent",
- Options = new SA(new string[] { "OPTIONS:0", "DEFER:FALSE" }),
- };
- ExecuteScriptResponseMessage executeScriptResponseMessage = protocol.ExecuteScript(executeScriptMessage);
- bool succeeded = executeScriptResponseMessage != null && !executeScriptResponseMessage.HadError;
- if (succeeded)
- {
- try
- {
- Dictionary<string, string> scriptOutput = executeScriptResponseMessage.ScriptOutput;
- if (scriptOutput["BoxName"].Length > 0)
- {
- string newRowPK = protocol.AddRowReturnKey(tableID);
- string[] newRow = new string[] { newRowPK, scriptOutput["BoxName"], "0", scriptOutput["Monitors"] };
- const string boxFileName = "C:\\Skyline_data\\boxFile.csv";
- File.AppendAllLines(boxFileName, new string[] { string.Join(",", newRow.Select(v => v ?? "null").ToArray()) });
- newRow[0] = null;
- protocol.SetRow(tableID, newRowPK, newRow.ToArray<object>());
- }
- }
- catch (Exception e)
- {
- protocol.ShowInformationMessage($"ERROR: Could not save new box: {e.Message}\nPlease try again.");
- return;
- }
- }
- }
- catch (Exception ex)
- {
- protocol.Log("QA" + protocol.QActionID + "|" + protocol.GetTriggerParameter() + "|Run|Exception thrown:" + Environment.NewLine + ex, LogType.Error, LogLevel.NoLogging);
- }
- }
- }]]>
- </QAction>
- <QAction id="4" name="Create New Booth" encoding="csharp" triggers="301">
- <![CDATA[using System;
- using System.Collections.Generic;
- using System.Globalization;
- using System.Text;
- using Skyline.DataMiner.Scripting;
- using Skyline.DataMiner.Net.Messages;
- using System.IO;
- using System.Linq;
- /// <summary>
- /// DataMiner QAction Class: Create New Booth.
- /// </summary>
- public static class QAction
- {
- /// <summary>
- /// The QAction entry point.
- /// </summary>
- /// <param name="protocol">Link with SLProtocol process.</param>
- public static void Run(SLProtocol protocol)
- {
- try
- {
- var executeScriptMessage = new ExecuteScriptMessage
- {
- ScriptName = "CreateLiveBoothParent",
- Options = new SA(new string[] { "OPTIONS:0", "DEFER:FALSE" }),
- };
- ExecuteScriptResponseMessage executeScriptResponseMessage = protocol.ExecuteScript(executeScriptMessage);
- bool succeeded = executeScriptResponseMessage != null && !executeScriptResponseMessage.HadError;
- if (succeeded)
- {
- int tableID = Skyline.DataMiner.Scripting.Parameter.Livebooths.tablePid;//100;
- try
- {
- Dictionary<string, string> scriptOutput = executeScriptResponseMessage.ScriptOutput;
- if (scriptOutput["BoothName"].Length > 0)
- {
- string newRowPK = protocol.AddRowReturnKey(tableID);
- string[] newRow = new string[] {
- newRowPK,
- scriptOutput["BoothName"],
- scriptOutput["DisplayName"],
- scriptOutput["Sources"],
- scriptOutput["Destinations"],
- scriptOutput["Pip"],
- scriptOutput["Mix"],
- scriptOutput["Logo"]
- };
- newRow = newRow.Select(s => s.Replace(',', ';')).ToArray();
- const string boxFileName = "C:\\Skyline_data\\boothFile.csv";
- File.AppendAllLines(boxFileName, new string[] { string.Join(",", newRow.Select(v => v ?? "null").ToArray()) });
- newRow[0] = null;
- protocol.SetRow(tableID, newRowPK, newRow.ToArray<object>());
- }
- }
- catch (Exception e)
- {
- protocol.ShowInformationMessage($"ERROR: Could not save new box: {e.Message}\nPlease try again.");
- return;
- }
- }
- }
- catch (Exception ex)
- {
- protocol.Log("QA" + protocol.QActionID + "|" + protocol.GetTriggerParameter() + "|Run|Exception thrown:" + Environment.NewLine + ex, LogType.Error, LogLevel.NoLogging);
- }
- }
- }]]>
- </QAction>
- <QAction id="10" name="BoothSave" dllImport="[ProtocolName].[ProtocolVersion].QAction.1.dll" encoding="csharp" row="true" triggers="202;203;204;205;206;207;208">
- <![CDATA[using System;
- using Skyline.DataMiner.Scripting;
- using Skyline.Protocol.MyExtension;
- /// <summary>
- /// DataMiner QAction Class: BoothSave.
- /// </summary>
- public static class QAction
- {
- /// <summary>
- /// The QAction entry point.
- /// </summary>
- /// <param name="protocol">Link with SLProtocol process.</param>
- public static void Run(SLProtocol protocol)
- {
- try
- {
- const string fileName = "C:\\Skyline_data\\boothFile.csv";
- const int tableID = Skyline.DataMiner.Scripting.Parameter.Livebooths.tablePid;//100;
- Utilitiy.SaveTable(protocol, tableID, fileName);
- }
- catch (Exception ex)
- {
- protocol.Log("QA" + protocol.QActionID + "|" + protocol.GetTriggerParameter() + "|Run|Exception thrown:" + Environment.NewLine + ex, LogType.Error, LogLevel.NoLogging);
- }
- }
- }]]>
- </QAction>
- <QAction id="11" name="BoxSave" encoding="csharp" dllImport="[ProtocolName].[ProtocolVersion].QAction.1.dll" row="true" triggers="212;213;214">
- <![CDATA[using System;
- using System.Collections.Generic;
- using System.Globalization;
- using System.Text;
- using Skyline.DataMiner.Scripting;
- using Skyline.Protocol.MyExtension;
- /// <summary>
- /// DataMiner QAction Class: BoxSave.
- /// </summary>
- public static class QAction
- {
- /// <summary>
- /// The QAction entry point.
- /// </summary>
- /// <param name="protocol">Link with SLProtocol process.</param>
- public static void Run(SLProtocol protocol)
- {
- try
- {
- const string fileName = "C:\\Skyline_data\\boxFile.csv";
- const int tableID = 110;
- Utilitiy.SaveTable(protocol, tableID, fileName);
- }
- catch (Exception ex)
- {
- protocol.Log("QA" + protocol.QActionID + "|" + protocol.GetTriggerParameter() + "|Run|Exception thrown:" + Environment.NewLine + ex, LogType.Error, LogLevel.NoLogging);
- }
- }
- }]]>
- </QAction>
- </QActions>
- <Groups>
- <Group id="2">
- <Name>After Startup</Name>
- <Description>After Startup</Description>
- <Type>poll action</Type>
- <Content>
- <Action>2</Action>
- </Content>
- </Group>
- </Groups>
- <Triggers>
- <Trigger id="1">
- <Name>After Startup</Name>
- <On>protocol</On>
- <Time>after startup</Time>
- <Type>action</Type>
- <Content>
- <Id>1</Id>
- </Content>
- </Trigger>
- </Triggers>
- <Actions>
- <Action id="1">
- <Name>After Startup Group</Name>
- <On id="2">group</On>
- <Type>execute next</Type>
- </Action>
- <Action id="2">
- <Name>After Startup QAction</Name>
- <On id="2">parameter</On>
- <Type>run actions</Type>
- </Action>
- </Actions>
- <VersionHistory>
- <Branches>
- <Branch id="1">
- <Comment>Main Branch</Comment>
- <SystemVersions>
- <SystemVersion id="0">
- <MajorVersions>
- <MajorVersion id="0">
- <MinorVersions>
- <MinorVersion id="1">
- <Date>2022-03-24</Date>
- <Provider>
- <Author>A A</Author>
- <Company>A</Company>
- </Provider>
- <Changes>
- <NewFeature>Initial version</NewFeature>
- </Changes>
- </MinorVersion>
- </MinorVersions>
- </MajorVersion>
- </MajorVersions>
- </SystemVersion>
- </SystemVersions>
- </Branch>
- <Branch id="0">
- <Comment/>
- <SystemVersions>
- <SystemVersion id="0">
- <MajorVersions>
- <MajorVersion id="0">
- <MinorVersions>
- <MinorVersion id="3">
- <Date>2022-03-31</Date>
- <Provider>
- <Author>A A</Author>
- <Company>A</Company>
- </Provider>
- <Changes/>
- </MinorVersion>
- </MinorVersions>
- </MajorVersion>
- </MajorVersions>
- </SystemVersion>
- </SystemVersions>
- </Branch>
- </Branches>
- </VersionHistory>
- <Compliancies>
- <MinimumRequiredVersion>10.0.5.0 - 9164</MinimumRequiredVersion>
- </Compliancies>
- </Protocol>
Add Comment
Please, Sign In to add comment