コード例 #1
0
        public void OwnTypes()
        {
            //Added the follow to automatically own Speech Base types that have no owner.
            OSAEObjectType oType = OSAEObjectTypeManager.ObjectTypeLoad("IPCAM");

            if (oType.OwnedBy == "")
            {
                OSAEObjectTypeManager.ObjectTypeUpdate(oType.Name, oType.Name, oType.Description, pName, oType.BaseType, oType.Owner, oType.SysType, oType.Container, oType.HideRedundant, oType.Tooltip);
                Log.Info("IPCam Plugin took ownership of the IPCAM Object Type.");
            }
            else
            {
                Log.Info("IPCam Plugin correctly owns the IPCAM Object Type.");
            }

            oType = OSAEObjectTypeManager.ObjectTypeLoad("IP CAMERA");

            if (oType.OwnedBy == "")
            {
                OSAEObjectTypeManager.ObjectTypeUpdate(oType.Name, oType.Name, oType.Description, pName, oType.BaseType, oType.Owner, oType.SysType, oType.Container, oType.HideRedundant, oType.Tooltip);
                Log.Info("IPCam Plugin took ownership of the IP CAMERA Object Type.");
            }
            else
            {
                Log.Info("IPCam Plugin correctly owns the IP CAMERA Object Type.");
            }
        }
コード例 #2
0
    private void loadDetails()
    {
        OSAEObject obj = OSAEObjectManager.GetObjectByName(gvObjects.DataKeys[Int32.Parse(hdnSelectedRow.Text)]["object_name"].ToString());

        txtName.Text               = obj.Name;
        txtDescr.Text              = obj.Description;
        txtAddress.Text            = obj.Address;
        ddlContainer.SelectedValue = obj.Container;
        if (obj.State.Value != "")
        {
            ddlState.SelectedValue = obj.State.Value;
        }
        ddlType.SelectedValue = obj.Type;
        if (obj.Enabled == 1)
        {
            chkEnabled.Checked = true;
        }
        else
        {
            chkEnabled.Checked = false;
        }

        OSAEObjectType objtype = OSAEObjectTypeManager.ObjectTypeLoad(obj.Type);

        txtOwned.Text = objtype.OwnedBy;
    }
コード例 #3
0
        public void OwnTypes()
        {
            //Added the follow to automatically own Speech Base types that have no owner.
            OSAEObjectType oType = OSAEObjectTypeManager.ObjectTypeLoad("ANDROID");

            if (oType.OwnedBy == "")
            {
                OSAEObjectTypeManager.ObjectTypeUpdate(oType.Name, oType.Name, oType.Description, pName, oType.BaseType, oType.Owner, oType.SysType, oType.Container, oType.HideRedundant);
                Log.Info("Android Plugin took ownership of the ANDROID Object Type.");
            }
            else
            {
                Log.Info("Android Plugin correctly owns the ANDROID Object Type.");
            }

            oType = OSAEObjectTypeManager.ObjectTypeLoad("ANDROID DEVICE");
            if (oType.OwnedBy == "")
            {
                OSAEObjectTypeManager.ObjectTypeUpdate(oType.Name, oType.Name, oType.Description, pName, oType.BaseType, oType.Owner, oType.SysType, oType.Container, oType.HideRedundant);
                Log.Info("Android Plugin took ownership of the ANDROID DEVICE Object Type.");
            }
            else
            {
                Log.Info("Android Plugin correctly owns the ANDROID DEVICE Object Type.");
            }
        }
コード例 #4
0
    protected void btnAdd_Click(object sender, EventArgs e)
    {
        int owner = 0, container = 0, systype = 0, hideevents = 0;

        if (chkOwner.Checked)
        {
            owner = 1;
        }
        if (chkContainer.Checked)
        {
            container = 1;
        }
        if (chkSysType.Checked)
        {
            systype = 1;
        }
        if (chkHideEvents.Checked)
        {
            hideevents = 1;
        }

        OSAEObjectTypeManager.ObjectTypeAdd(txtName.Text, txtDescr.Text, ddlOwnedBy.SelectedValue, ddlBaseType.SelectedValue, owner, systype, container, hideevents);
        txtName.Text              = "";
        txtDescr.Text             = "";
        chkOwner.Checked          = false;
        chkContainer.Checked      = false;
        chkSysType.Checked        = false;
        chkHideEvents.Checked     = false;
        ddlOwnedBy.SelectedValue  = "";
        ddlBaseType.SelectedValue = "";
        loadObjectTypes();
    }
コード例 #5
0
 private void checkAPIKey()
 {
     try
     {
         Log.Info("Checking if REST API Key exist");
         string cRAK = OSAE.OSAEObjectPropertyManager.GetObjectPropertyValue("Rest", "APIKEY").Value;
         if (cRAK == " " || cRAK == "" || cRAK.Length < 32)
         {
             Log.Info("REST API Key found, but is not valid.");
             Log.Info("Creating a new REST API Key...");
             OSAEObjectPropertyManager.ObjectPropertySet("Rest", "APIKEY", OSAESecurity.GenerateAPIKey(), "Rest");
         }
         else
         {
             Log.Info("REST API Key found.");
         }
     }
     catch
     {
         Log.Info("REST API Key does not exist..");
         Log.Info("Creating Rest Plugin property: APIKEY.");
         OSAEObjectTypeManager.ObjectTypePropertyAdd("Rest", "APIKEY", "String", "", "", false, true, "This is the Rest Plugin API Key. This property is used by remote clients and devices to encrypt and decrypt user information for authentication.");
         Log.Info("Generating a new REST API Key...");
         OSAEObjectPropertyManager.ObjectPropertySet("Rest", "APIKEY", OSAESecurity.GenerateAPIKey(), "Rest");
     }
 }
コード例 #6
0
    protected void btnUpdate_Click(object sender, EventArgs e)
    {
        int owner = 0, container = 0, systype = 0, hideevents = 0;

        if (chkOwner.Checked)
        {
            owner = 1;
        }
        if (chkContainer.Checked)
        {
            container = 1;
        }
        if (chkSysType.Checked)
        {
            systype = 1;
        }
        if (chkHideEvents.Checked)
        {
            hideevents = 1;
        }

        OSAEObjectTypeManager.ObjectTypeUpdate(hdnSelectedObjectName.Text, txtName.Text, txtDescr.Text, ddlOwnedBy.SelectedValue, ddlBaseType.SelectedValue, owner, systype, container, hideevents);
        hdnSelectedObjectName.Text = txtName.Text;
        loadObjectTypes();
    }
コード例 #7
0
        public void OwnTypes()
        {
            //Added the follow to automatically own WUnderground Base types that have no owner.
            OSAEObjectType oType = OSAEObjectTypeManager.ObjectTypeLoad("WUNDERGROUND");

            if (oType.OwnedBy == "")
            {
                OSAEObjectTypeManager.ObjectTypeUpdate(oType.Name, oType.Name, oType.Description, pName, oType.BaseType, oType.Owner, oType.SysType, oType.Container, oType.HideRedundant, oType.Tooltip);
                Log.Info("WUnderground Plugin took ownership of the WUNDERGROUND Object Type.");
            }
            else
            {
                Log.Info("WUnderground Plugin correctly owns the WUNDERGROUND Object Type.");
            }

            //Added the follow for SYSTEM to automatically own Weather Base types that have no owner.
            oType = OSAEObjectTypeManager.ObjectTypeLoad("WUNDERGROUND");

            if (oType.OwnedBy == "")
            {
                OSAEObjectTypeManager.ObjectTypeUpdate(oType.Name, oType.Name, oType.Description, "SYSTEM", oType.BaseType, oType.Owner, oType.SysType, oType.Container, oType.HideRedundant, oType.Tooltip);
                Log.Info("SYSTEM took ownership of the WEATHER Object Type.");
            }
            else
            {
                Log.Info("SYSTEM Plugin correctly owns the WEATHER Object Type.");
            }
        }
コード例 #8
0
 protected void btnPropDelete_Click(object sender, EventArgs e)
 {
     OSAEObjectTypeManager.ObjectTypePropertyDelete(txtPropName.Text, hdnSelectedObjectName.Text);
     txtPropName.Text    = "";
     txtPropDefault.Text = "";
     loadProperties();
 }
コード例 #9
0
 private void checkSecurityKey()
 {
     try
     {
         Log.Info("Checking if System Security Key exist");
         string cSSK = OSAE.OSAEObjectPropertyManager.GetObjectPropertyValue("System", "SecurityKey").Value;
         if (cSSK == " " || cSSK == "" || cSSK.Length < 16)
         {
             Log.Info("System Security Key found, but is not valid.");
             Log.Info("Generating a new Security Key...");
             OSAEObjectPropertyManager.ObjectPropertySet("System", "SecurityKey", OSAESecurity.GenerateSecurityKey(), "Rest");
         }
         else
         {
             Log.Info("System Security Key found.");
         }
     }
     catch
     {
         Log.Info("System Security Key does not exist..");
         Log.Info("Creating System object property: SecurityKey.");
         OSAEObjectTypeManager.ObjectTypePropertyAdd("System", "SecurityKey", "String", "", "", false, true, "This key is used in HTTP and Rest authorization. Must be 16 characters.");
         Log.Info("Generating a new Security Key...");
         OSAEObjectPropertyManager.ObjectPropertySet("System", "SecurityKey", OSAESecurity.GenerateSecurityKey(), "Rest");
     }
 }
コード例 #10
0
        public override void RunInterface(string pluginName)
        {
            pName = pluginName;
            OSAEObjectTypeManager.ObjectTypeUpdate("KILLAWATT MODULE", "KILLAWATT MODULE", "Kill-A-Watt Module", pName, "KILLAWATT MODULE", 0, 0, 0, 1);

            xb = new xbee(Int32.Parse(OSAEObjectPropertyManager.GetObjectPropertyValue(pName, "Port").Value));
            xb.xbeePacketReceived += new xbee.xbeePacketReceivedEventHandler(xb_xbeePacketReceived);
        }
コード例 #11
0
        public override void RunInterface(string pluginName)
        {
            this.Log.Debug("Running interface");
            pName = pluginName;
            OSAEObjectTypeManager.ObjectTypeUpdate("XBMC SYSTEM", "XBMC SYSTEM", "XBMC System", pluginName, "XBMC SYSTEM", 0, 0, 0, 1);

            OSAEObjectCollection XBMCInstances = OSAEObjectManager.GetObjectsByType("XBMC System");

            foreach (OSAEObject obj in XBMCInstances)
            {
                string ip = "", username = "", password = "";
                int    port = 0;

                foreach (OSAEObjectProperty p in obj.Properties)
                {
                    switch (p.Name)
                    {
                    case "IP":
                        ip = p.Value;
                        break;

                    case "Port":
                        port = Int32.Parse(p.Value);
                        break;

                    case "Username":
                        username = p.Value;
                        break;

                    case "Password":
                        password = p.Value;
                        break;
                    }
                }
                this.Log.Debug("Creating new XBMC System connection: " + obj.Name + " - " + ip);
                try
                {
                    XBMCSystem system = new XBMCSystem(obj.Name, ip, port, username, password);
                    if (system.Connect())
                    {
                        Systems.Add(system);
                    }
                }
                catch (Exception ex)
                {
                    this.Log.Error("Error connecting to XBMC system: " + ex.Message + " - " + ex.InnerException.Message);
                }
            }

            Clock          = new System.Timers.Timer();
            Clock.Interval = 5000;

            Clock.Elapsed += new ElapsedEventHandler(Timer_Tick);
            Clock.Start();
        }
コード例 #12
0
 protected void btnPropSave_Click(object sender, EventArgs e)
 {
     if (ddlPropType.SelectedValue == "Object Type" & ddlBaseType2.SelectedValue == "")
     {
         Response.Write("<script>alert('You must select an Object Type!');</script>");
     }
     else
     {
         OSAEObjectTypeManager.ObjectTypePropertyUpdate(gvProperties.DataKeys[gvProperties.SelectedIndex]["property_name"].ToString(), txtPropName.Text, ddlPropType.SelectedValue, ddlBaseType2.SelectedValue, txtPropDefault.Text, hdnSelectedObjectName.Text, chkTrackChanges.Checked, chkRequired.Checked, txtPropertyTooltip.Text);
     }
 }
コード例 #13
0
        public override void RunInterface(string pluginName)
        {
            pName = pluginName;
            Log   = new General.OSAELog(pName);
            Log.Info("Running Interface!");

            OSAEObjectType objt = OSAEObjectTypeManager.ObjectTypeLoad("RADIO THERMOSTAT DEVICE");

            OSAEObjectTypeManager.ObjectTypeUpdate(objt.Name, objt.Name, "Radio Thermostat Device", pName, "RADIO THERMOSTAT DEVICE", objt.Owner, objt.SysType, objt.Container, objt.HideRedundant);
            OSAEObjectCollection devices = OSAEObjectManager.GetObjectsByType("RADIO THERMOSTAT DEVICE");

            foreach (OSAEObject obj in devices)
            {
                ThermostatLib.SystemInfo si = ThermostatLib.SystemInfo.Load(obj.Address);
                Log.Info("---------------------------------");
                Log.Info("Device Name: " + ThermostatLib.SystemInfo.LoadSystemName(obj.Address));
                Log.Info("API Version: " + si.ApiVersion.ToString());
                Log.Info("Firmware Version: " + si.FirmwareVersion);
                Log.Info("UUID: " + si.UUID);
                Log.Info("WLAN Version: " + si.WlanFirmwareVersion);
                Log.Info("Model: " + ThermostatLib.SystemInfo.LoadModelName(obj.Address));
                Log.Info("Operating Mode: " + ThermostatLib.SystemInfo.LoadOperatingMode(obj.Address));

                ThermostatLib.Services services = ThermostatLib.Services.Load(obj.Address);
                string service = "";
                foreach (ThermostatLib.HttpdHandler handler in services.Handlers)
                {
                    service  = "";
                    service += handler.Url + " (";
                    if (handler.AllowsGet && handler.AllowsPost)
                    {
                        service += "GET, POST";
                    }
                    else
                    {
                        if (handler.AllowsGet)
                        {
                            service += "GET";
                        }
                        if (handler.AllowsPost)
                        {
                            service += "POST";
                        }
                    }
                    service += ")";
                    Log.Info("Service: " + service);
                }
            }
            Clock          = new System.Timers.Timer();
            Clock.Interval = Int32.Parse(OSAEObjectPropertyManager.GetObjectPropertyValue(pName, "Poll Interval").Value) * 60000;
            Clock.Start();
            Clock.Elapsed += new ElapsedEventHandler(Timer_Tick);
        }
コード例 #14
0
        public override void RunInterface(string pluginName)
        {
            pName = pluginName;
            Log   = new General.OSAELog(pName);

            OSAEObjectType objt = OSAEObjectTypeManager.ObjectTypeLoad("KILLAWATT MODULE");

            OSAEObjectTypeManager.ObjectTypeUpdate(objt.Name, objt.Name, objt.Description, pName, "THING", objt.Owner, objt.SysType, objt.Container, objt.HideRedundant, objt.Tooltip);

            xb = new xbee(Int32.Parse(OSAEObjectPropertyManager.GetObjectPropertyValue(pName, "Port").Value));
            xb.xbeePacketReceived += new xbee.xbeePacketReceivedEventHandler(xb_xbeePacketReceived);
        }
コード例 #15
0
 protected void btnPropAdd_Click(object sender, EventArgs e)
 {
     if (ddlPropType.SelectedValue == "Object Type" & ddlBaseType2.SelectedValue == "")
     {
         Response.Write("<script>alert('You must select an Object Type!');</script>");
     }
     else
     {
         OSAEObjectTypeManager.ObjectTypePropertyAdd(hdnSelectedObjectName.Text, txtPropName.Text, ddlPropType.SelectedValue, ddlBaseType2.SelectedItem.ToString(), txtPropDefault.Text, chkTrackChanges.Checked, chkRequired.Checked, txtPropertyTooltip.Text);
         loadProperties();
     }
 }
コード例 #16
0
    private void loadDetails()
    {
        OSAEObjectType type = OSAEObjectTypeManager.ObjectTypeLoad(gvObjectTypes.DataKeys[Int32.Parse(hdnSelectedRow.Text)]["object_type"].ToString());

        txtName.Text              = type.Name;
        txtDescr.Text             = type.Description;
        ddlOwnedBy.SelectedValue  = type.OwnedBy;
        ddlBaseType.SelectedValue = type.BaseType;
        chkContainer.Checked      = type.Container;
        chkHideEvents.Checked     = type.HideRedundant;
        chkOwner.Checked          = type.Owner;
        chkSysType.Checked        = type.SysType;
    }
コード例 #17
0
 protected void btnDelete_Click(object sender, EventArgs e)
 {
     OSAEObjectTypeManager.ObjectTypeDelete(hdnSelectedObjectName.Text);
     txtName.Text              = "";
     txtDescr.Text             = "";
     chkOwner.Checked          = false;
     chkContainer.Checked      = false;
     chkSysType.Checked        = false;
     chkHideEvents.Checked     = false;
     ddlOwnedBy.SelectedValue  = "";
     ddlBaseType.SelectedValue = "";
     loadObjectTypes();
 }
コード例 #18
0
        public void OwnTypes()
        {
            //Added the follow to automatically own Speech Base types that have no owner.
            OSAEObjectType oType = OSAEObjectTypeManager.ObjectTypeLoad("NETWORK MONITOR");

            if (oType.OwnedBy == "")
            {
                OSAEObjectTypeManager.ObjectTypeUpdate(oType.Name, oType.Name, oType.Description, gAppName, oType.BaseType, oType.Owner, oType.SysType, oType.Container, oType.HideRedundant, oType.Tooltip);
                Log.Info("Network Monitor Plugin took ownership of the NETWORK MONITOR Object Type.");
            }
            else
            {
                Log.Info("Network Monitor Plugin correctly owns the NETWORK MONITOR Object Type.");
            }
        }
コード例 #19
0
        public void OwnTypes()
        {
            //Added the follow to automatically own PubNub Base types that have no owner.
            OSAEObjectType oType = OSAEObjectTypeManager.ObjectTypeLoad("PUBNUB");

            if (oType.OwnedBy == "")
            {
                OSAEObjectTypeManager.ObjectTypeUpdate(oType.Name, oType.Name, oType.Description, gAppName, oType.BaseType, oType.Owner, oType.SysType, oType.Container, oType.HideRedundant);
                Log.Info("PubNub Plugin took ownership of the PubNub Object Type.");
            }
            else
            {
                Log.Info("The PubNub Plugin correctly owns the PubNub Object Type.");
            }
        }
コード例 #20
0
    protected void btnMethodDelete_Click(object sender, EventArgs e)
    {
        OSAEObjectTypeManager.ObjectTypeMethodDelete(txtMethodName.Text, hdnSelectedObjectName.Text);
        loadMethods();
        int selectedRow = Int32.Parse(hdnSelectedMethodRow.Text) - 1;

        if (selectedRow < 0)
        {
            hdnSelectedMethodRow.Text = "";
        }
        else
        {
            hdnSelectedMethodRow.Text = selectedRow.ToString();
        }
    }
コード例 #21
0
    protected void btnEventDelete_Click(object sender, EventArgs e)
    {
        OSAEObjectTypeManager.ObjectTypeEventDelete(txtEventName.Text, hdnSelectedObjectName.Text);
        txtEventName.Text  = "";
        txtEventLabel.Text = "";
        loadEvents();
        int selectedRow = Int32.Parse(hdnSelectedEventRow.Text) - 1;

        if (selectedRow < 0)
        {
            hdnSelectedEventRow.Text = "";
        }
        else
        {
            hdnSelectedEventRow.Text = selectedRow.ToString();
        }
    }
コード例 #22
0
    protected void btnPropDelete_Click(object sender, EventArgs e)
    {
        OSAEObjectTypeManager.ObjectTypePropertyDelete(txtPropName.Text, hdnSelectedObjectName.Text);
        txtPropName.Text    = "";
        txtPropDefault.Text = "";
        loadProperties();
        int selectedRow = Int32.Parse(hdnSelectedPropRow.Text) - 1;

        if (selectedRow < 0)
        {
            hdnSelectedPropRow.Text = "";
        }
        else
        {
            hdnSelectedPropRow.Text = selectedRow.ToString();
        }
    }
コード例 #23
0
        public override void RunInterface(string pluginName)
        {
            Log.Info("Starting Android plugin");
            pName = pluginName;

            OSAEObjectTypeManager.ObjectTypeUpdate("Android Device", "Android Device", "Android Device", pluginName, "Android Device", false, false, false, true);

            //connect to devices
            OSAEObjectCollection objects = OSAEObjectManager.GetObjectsByType("Android Device");

            foreach (OSAEObject obj in objects)
            {
                createdevice(obj);
            }

            Log.Debug("Run Interface Complete");
        }
コード例 #24
0
    private void loadDetails()
    {
        OSAEObjectType type = OSAEObjectTypeManager.ObjectTypeLoad(gvObjectTypes.DataKeys[gvObjectTypes.SelectedIndex]["object_type"].ToString());

        txtName.Text  = type.Name;
        txtDescr.Text = type.Description;
        try
        { ddlOwnedBy.SelectedValue = type.OwnedBy; }
        catch
        { }
        ddlBaseType.SelectedValue = type.BaseType;
        chkContainer.Checked      = type.Container;
        chkHideEvents.Checked     = type.HideRedundant;
        chkOwner.Checked          = type.Owner;
        chkSysType.Checked        = type.SysType;
        applyObjectSecurity(type.Name);
    }
コード例 #25
0
        public override void RunInterface(string pluginName)
        {
            log("Running interface", true);
            pName = pluginName;

            OSAEObjectTypeManager.ObjectTypeUpdate("Android Device", "Android Device", "Android Device", pluginName, "Android Device", 0, 0, 0, 1);

            //connect to devices
            OSAEObjectCollection objects = OSAEObjectManager.GetObjectsByType("Android Device");

            foreach (OSAEObject obj in objects)
            {
                createdevice(obj);
            }

            log("Run Interface Complete", true);
        }
コード例 #26
0
        public override void RunInterface(string pluginName)
        {
            logging.AddToLog("Running interface", false);
            pName = pluginName;
            OSAEObjectTypeManager.ObjectTypeUpdate("XBMC SYSTEM", "XBMC SYSTEM", "XBMC System", pluginName, "XBMC SYSTEM", 0, 0, 0, 1);

            OSAEObjectCollection XBMCInstances = OSAEObjectManager.GetObjectsByType("XBMC System");

            foreach (OSAEObject obj in XBMCInstances)
            {
                string ip = "", username = "", password = "";
                int    port = 0;

                foreach (OSAEObjectProperty p in obj.Properties)
                {
                    switch (p.Name)
                    {
                    case "IP":
                        ip = p.Value;
                        break;

                    case "Port":
                        port = Int32.Parse(p.Value);
                        break;

                    case "Username":
                        username = p.Value;
                        break;

                    case "Password":
                        password = p.Value;
                        break;
                    }
                }
                logging.AddToLog("Creating new XBMC System connection: " + obj.Name + " - " + ip, false);
                XBMCSystem system = new XBMCSystem(obj.Name, ip, port, username, password);
                system.Connect();
                Systems.Add(system);
            }

            //Clock = new System.Timers.Timer();
            //Clock.Interval = 5000;
            //Clock.Start();
            //Clock.Elapsed += new ElapsedEventHandler(Timer_Tick);
        }
コード例 #27
0
        public void updateFeeds()
        {
            this.Log.Debug("Trying to get all feed Urls:" + pName);

            DataSet ds = new DataSet();

            ds = OSAEObjectPropertyManager.ObjectPropertyArrayGetAll(pName, "Feeds");
            foreach (DataRow dr in ds.Tables[0].Rows)
            {
                try
                {
                    this.Log.Debug("Fetching feed: " + dr["item_name"].ToString());
                    WebClient webClient = new WebClient();
                    string    strSource = webClient.DownloadString(dr["item_name"].ToString());
                    webClient.Dispose();

                    XmlDocument xml = new XmlDocument();
                    xml.LoadXml(strSource);

                    string feedTitle = xml.SelectSingleNode("/rss/channel/title").InnerText;
                    this.Log.Debug("Feeds title: " + feedTitle);
                    if (OSAEObjectPropertyManager.GetObjectPropertyValue(pName, feedTitle).Value == "")
                    {
                        this.Log.Debug("Adding property to object type");
                        OSAEObjectTypeManager.ObjectTypePropertyAdd(feedTitle, "List", "", "RSS", false);
                    }
                    OSAEObjectPropertyManager.ObjectPropertyArrayDeleteAll(pName, feedTitle);
                    this.Log.Debug("Cleared feed data");

                    XmlNodeList xnList = xml.SelectNodes("/rss/channel/item");
                    foreach (XmlNode xn in xnList)
                    {
                        string content = xn.SelectSingleNode("title").InnerText + " - " + xn.SelectSingleNode("description").InnerText;
                        content = Regex.Replace(content, "<.*?>", string.Empty);
                        this.Log.Debug("Added item to feed data: " + content);
                        OSAEObjectPropertyManager.ObjectPropertyArrayAdd(pName, feedTitle, content, "");
                    }
                }
                catch (Exception ex)
                {
                    this.Log.Error("Error", ex);
                }
            }
        }
コード例 #28
0
    protected void Page_PreRender(object sender, EventArgs e)
    {
        if (ddlPropType.SelectedItem.ToString() == "Object Type")
        {
            ddlBaseType2.SelectedValue = gvProperties.DataKeys[gvProperties.SelectedIndex]["property_object_type"].ToString();
            ddlBaseType2.Visible       = true;
            lblPropObjectType.Visible  = true;
        }
        else
        {
            ddlBaseType2.SelectedValue = "";
            ddlBaseType2.Visible       = false;
            lblPropObjectType.Visible  = false;
        }

        if (hdnSelectedStateRow.Text != "")
        {
            txtStateName.Text    = gvStates.DataKeys[Int32.Parse(hdnSelectedStateRow.Text)]["state_name"].ToString();//hdnSelectedStateName.Text;
            txtStateLabel.Text   = gvStates.DataKeys[Int32.Parse(hdnSelectedStateRow.Text)]["state_label"].ToString();
            txtStateTooltip.Text = gvStates.DataKeys[Int32.Parse(hdnSelectedStateRow.Text)]["state_tooltip"].ToString();
        }
        if (hdnSelectedMethodRow.Text != "")
        {
            txtMethodName.Text    = gvMethods.DataKeys[Int32.Parse(hdnSelectedMethodRow.Text)]["method_name"].ToString();//hdnSelectedMethodName.Text;
            txtMethodLabel.Text   = gvMethods.DataKeys[Int32.Parse(hdnSelectedMethodRow.Text)]["method_label"].ToString();
            txtParam1Label.Text   = gvMethods.DataKeys[Int32.Parse(hdnSelectedMethodRow.Text)]["param_1_label"].ToString();
            txtParam2Label.Text   = gvMethods.DataKeys[Int32.Parse(hdnSelectedMethodRow.Text)]["param_2_label"].ToString();
            txtParam1Default.Text = gvMethods.DataKeys[Int32.Parse(hdnSelectedMethodRow.Text)]["param_1_default"].ToString();
            txtParam2Default.Text = gvMethods.DataKeys[Int32.Parse(hdnSelectedMethodRow.Text)]["param_2_default"].ToString();
            txtMethodTooltip.Text = gvMethods.DataKeys[Int32.Parse(hdnSelectedMethodRow.Text)]["method_tooltip"].ToString();
        }
        if (hdnSelectedEventRow.Text != "")
        {
            txtEventName.Text    = gvEvents.DataKeys[Int32.Parse(hdnSelectedEventRow.Text)]["event_name"].ToString();//hdnSelectedEventName.Text;
            txtEventLabel.Text   = gvEvents.DataKeys[Int32.Parse(hdnSelectedEventRow.Text)]["event_label"].ToString();
            txtEventTooltip.Text = gvEvents.DataKeys[Int32.Parse(hdnSelectedEventRow.Text)]["event_tooltip"].ToString();
        }

        if (hdnSelectedObjectName.Text != "")
        {
            lblExportScript.Text = OSAEObjectTypeManager.ObjectTypeExport(hdnSelectedObjectName.Text);
        }
    }
コード例 #29
0
        public override void RunInterface(string pluginName)
        {
            pName = pluginName;
            Log   = new General.OSAELog(pName);
            Log.Info("Initializing Plugin");
            OSAEObjectType objt = OSAEObjectTypeManager.ObjectTypeLoad("SQUEEZEBOX");

            OSAEObjectTypeManager.ObjectTypeUpdate(objt.Name, objt.Name, objt.Description, pName, "SQUEEZEBOX", objt.Owner, objt.SysType, objt.Container, objt.HideRedundant);

            sbsAddress = OSAEObjectPropertyManager.GetObjectPropertyValue(pName, "Server Address").Value;
            sbsPort    = Int32.Parse(OSAEObjectPropertyManager.GetObjectPropertyValue(pName, "CLI Port").Value);
            ttsSave    = OSAEObjectPropertyManager.GetObjectPropertyValue(pName, "TTS Save Path").Value;
            ttsPlay    = OSAEObjectPropertyManager.GetObjectPropertyValue(pName, "TTS Play Path").Value;

            Log.Info("address: " + sbsAddress);
            Log.Info("port: " + sbsPort);
            sbs.mHost = sbsAddress;
            sbs.mPort = sbsPort;
            StringCollection     players = sbs.GetPlayers();
            OSAEObjectCollection objects = OSAEObjectManager.GetObjectsByType("SQUEEZEBOX");

            Log.Info("Found " + sbs.GetPlayerCount().ToString() + " players");
            foreach (string player in players)
            {
                Log.Info("Found player: " + player);
                string[] sb    = player.Split(' ');
                bool     found = false;
                foreach (OSAEObject obj in objects)
                {
                    if (obj.Address == sb[0])
                    {
                        Log.Info("Found matching object: " + obj.Name);
                        found = true;
                    }
                }

                if (!found)
                {
                    Log.Info("No object found.  Adding to OSA");
                    OSAEObjectManager.ObjectAdd(sb[1], "", sb[1], "SQUEEZEBOX", sb[0], "", 30, true);
                }
            }
        }
コード例 #30
0
        public override void RunInterface(string pluginName)
        {
            pName = pluginName;

            logging.AddToLog("Initializing Plugin", true);
            OSAEObjectTypeManager.ObjectTypeUpdate("SQUEEZEBOX", "SQUEEZEBOX", "Squeezebox", pName, "SQUEEZEBOX", 0, 0, 0, 1);

            sbsAddress = OSAEObjectPropertyManager.GetObjectPropertyValue(pName, "Server Address").Value;
            sbsPort    = Int32.Parse(OSAEObjectPropertyManager.GetObjectPropertyValue(pName, "CLI Port").Value);
            ttsSave    = OSAEObjectPropertyManager.GetObjectPropertyValue(pName, "TTS Save Path").Value;
            ttsPlay    = OSAEObjectPropertyManager.GetObjectPropertyValue(pName, "TTS Play Path").Value;

            logging.AddToLog("address: " + sbsAddress, true);
            logging.AddToLog("port: " + sbsPort, true);
            sbs.mHost = sbsAddress;
            sbs.mPort = sbsPort;
            StringCollection     players = sbs.GetPlayers();
            OSAEObjectCollection objects = OSAEObjectManager.GetObjectsByType("SQUEEZEBOX");

            logging.AddToLog("Found " + sbs.GetPlayerCount().ToString() + " players", true);
            foreach (string player in players)
            {
                logging.AddToLog("Found player: " + player, true);
                string[] sb    = player.Split(' ');
                bool     found = false;
                foreach (OSAEObject obj in objects)
                {
                    if (obj.Address == sb[0])
                    {
                        logging.AddToLog("Found matching object: " + obj.Name, true);
                        found = true;
                    }
                }

                if (!found)
                {
                    logging.AddToLog("No object found.  Adding to OSA", true);
                    OSAEObjectManager.ObjectAdd(sb[1], sb[1], "SQUEEZEBOX", sb[0], "", true);
                }
            }
        }