<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/">
	<channel>
		<title><![CDATA[Comfort Automation/ Security System Forums - Plug-in Development]]></title>
		<link>https://www.comfortforums.com/</link>
		<description><![CDATA[Comfort Automation/ Security System Forums - https://www.comfortforums.com]]></description>
		<pubDate>Fri, 11 Sep 2026 11:35:20 +0000</pubDate>
		<generator>MyBB</generator>
		<item>
			<title><![CDATA[Plugins]]></title>
			<link>https://www.comfortforums.com/thread-3513.html</link>
			<pubDate>Fri, 13 Sep 2013 05:43:33 -0400</pubDate>
			<dc:creator><![CDATA[<a href="https://www.comfortforums.com/member.php?action=profile&uid=876"></a>]]></dc:creator>
			<guid isPermaLink="false">https://www.comfortforums.com/thread-3513.html</guid>
			<description><![CDATA[Hi all,<br />
<br />
Must be that the days are drawing in, the leaves are falling and it\'s getting colder (well in the UK anyway) but I feel the urge to develop a few more plugins for ComfortClient (CC)in the long winter evenings that beckon.<br />
<br />
Whether to write a plugin or build into standard CC is always a point to think about but if anyone has any ideas/requests for plugins then drop me a PM or reply to this topic.<br />
<br />
Next one I was thinking of is a SQL data warehouse plugin that we can use to store data inbound/outbound.  We can then use tools such as Crystal Reports or MS Reporting services to produce pretty reports and analysis against the database.<br />
<br />
Also I put a lot of work in the CC API framework to allow CC floorplan feeds to be sent to remote applications.  The aim was to be able to have floorplans updating in remote browser based apps.  Unfortunately though I\'m a bit phobic of webby stuff so if anyone interested in trying to proof-of-concept here I\'d be interested.<br />
<br />
J]]></description>
			<content:encoded><![CDATA[Hi all,<br />
<br />
Must be that the days are drawing in, the leaves are falling and it\'s getting colder (well in the UK anyway) but I feel the urge to develop a few more plugins for ComfortClient (CC)in the long winter evenings that beckon.<br />
<br />
Whether to write a plugin or build into standard CC is always a point to think about but if anyone has any ideas/requests for plugins then drop me a PM or reply to this topic.<br />
<br />
Next one I was thinking of is a SQL data warehouse plugin that we can use to store data inbound/outbound.  We can then use tools such as Crystal Reports or MS Reporting services to produce pretty reports and analysis against the database.<br />
<br />
Also I put a lot of work in the CC API framework to allow CC floorplan feeds to be sent to remote applications.  The aim was to be able to have floorplans updating in remote browser based apps.  Unfortunately though I\'m a bit phobic of webby stuff so if anyone interested in trying to proof-of-concept here I\'d be interested.<br />
<br />
J]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[Sample Plugin]]></title>
			<link>https://www.comfortforums.com/thread-2840.html</link>
			<pubDate>Sun, 22 Apr 2012 15:56:39 -0400</pubDate>
			<dc:creator><![CDATA[<a href="https://www.comfortforums.com/member.php?action=profile&uid=876"></a>]]></dc:creator>
			<guid isPermaLink="false">https://www.comfortforums.com/thread-2840.html</guid>
			<description><![CDATA[Here\'s a sample plugin to show what\'s involved.<br />
<br />
Julian<br />
<br />
<span style="font-weight: bold;" class="mycode_b">This Code</span><br />
 (and the window form for About Box):<br />
<br />
<blockquote class="mycode_quote"><cite>Quote:</cite>\' ----------------------<br />
\' Hello World Plugin<br />
\' ----------------------<br />
<br />
Imports System.ComponentModel.Composition<br />
Imports ComfortClient.Plugin.Framework<br />
Imports System.Windows.Forms<br />
Imports System.Reflection<br />
Imports System.Runtime.InteropServices<br />
Imports System.Drawing<br />
<br />
&lt;PartMetadata(\"ComfortClientPlugin\", \"1.0\"), Export()&gt; _<br />
Public Class HelloWorld_Plugin<br />
    \' Plugin Contracts Supported<br />
    Implements IClientPluginMain<br />
    Implements IClientPluginMainMenu<br />
<br />
#Region \"Properties\"<br />
<br />
    \' Unique Identifier of the Plugin<br />
    Private ReadOnly Property GUID() As Guid Implements IClientPluginMain.Guid<br />
        Get<br />
            Return _GUID<br />
        End Get<br />
    End Property<br />
    Private _GUID As Guid<br />
<br />
    \' Name of the Plugin<br />
    Private ReadOnly Property ID() As String Implements IClientPluginMain.ID<br />
        Get<br />
            Return _ID<br />
        End Get<br />
    End Property<br />
    Private _ID As String<br />
<br />
    \' Plugin Image<br />
    Private ReadOnly Property Image() As Image Implements IClientPluginMain.Image<br />
        Get<br />
            Return _Image<br />
        End Get<br />
    End Property<br />
    Private _Image As Image<br />
<br />
    \' Host Reference<br />
    Private Property Host() As IClientPluginHost Implements IClientPluginMain.Host<br />
        Set(value As IClientPluginHost)<br />
            _Host = value<br />
        End Set<br />
        Get<br />
            Return _Host<br />
        End Get<br />
    End Property<br />
    Private _Host As IClientPluginHost<br />
<br />
    \' About Handler<br />
    ReadOnly Property AboutHandler() As System.EventHandler Implements IClientPluginMain.AboutHandler<br />
        Get<br />
            Return _AboutHandler<br />
        End Get<br />
    End Property<br />
    Private _AboutHandler As System.EventHandler<br />
#End Region<br />
<br />
#Region \"Methods\"<br />
<br />
    \' Plugin Instantiation<br />
    Public Sub New()<br />
        \' Mandatory Plugin Identification;  GUID and ID<br />
        For Each Attr In Attribute.GetCustomAttributes(Me.GetType.Assembly)<br />
            If TypeOf Attr Is GuidAttribute Then<br />
                _GUID = New Guid(CType(Attr, GuidAttribute).Value)<br />
            ElseIf TypeOf Attr Is AssemblyTitleAttribute Then<br />
                _ID = CType(Attr, AssemblyTitleAttribute).Title<br />
            End If<br />
        Next<br />
        _Image = My.Resources.plugin<br />
        _AboutHandler = AddressOf About<br />
    End Sub<br />
<br />
    \' Before Plugin Initialises<br />
    Private Function BeforePluginInitialisation() As ReturnCode _<br />
                    Implements IClientPluginMain.BeforePluginInitialisation<br />
        \' Set Returncode<br />
        Return New ReturnCode(ReturnCodeType.Internal, ReturnCodeValue.OK)<br />
    End Function<br />
<br />
    \' After Plugin Initialises<br />
    Private Function AfterPluginInitialisation() As ReturnCode _<br />
                    Implements IClientPluginMain.AfterPluginInitialisation<br />
        \' Set Returncode<br />
        Return New ReturnCode(ReturnCodeType.Internal, ReturnCodeValue.OK)<br />
    End Function<br />
<br />
    \' Plugin is disabled by the Client<br />
    Private Function PluginIsDisabled() As ReturnCode _<br />
                    Implements IClientPluginMain.PluginIsDisabled<br />
        \' Set Returncode<br />
        Return New ReturnCode(ReturnCodeType.Internal, ReturnCodeValue.OK)<br />
    End Function<br />
<br />
    \' Plugin is enabled by the Client<br />
    Private Function PluginIsEnabled() As ReturnCode _<br />
                    Implements IClientPluginMain.PluginIsEnabled<br />
        \' Set Returncode<br />
        Return New ReturnCode(ReturnCodeType.Internal, ReturnCodeValue.OK)<br />
    End Function<br />
<br />
    \' Adds thw About Box for the Plugin<br />
    Private Function About(ByVal sender As Object, ByVal e As System.EventArgs) _<br />
                    As ReturnCode Implements IClientPluginMain.About<br />
        Dim AboutForm As New About()<br />
        Call AboutForm.ShowDialog()<br />
        \' Set Returncode<br />
        Return New ReturnCode(ReturnCodeType.Internal, ReturnCodeValue.OK)<br />
    End Function<br />
<br />
    \' Adds the Plugin About Menu Item to the Main Menu<br />
    Private Function SetAboutMenu(ByRef MenuAbout As ToolStripMenuItem) _  <br />
                     As ReturnCode Implements IClientPluginMain.SetAboutMenu<br />
<br />
        \' Mandatory About Box<br />
        With MenuAbout<br />
              .Name = \"About\"<br />
              .Text = \"About\"<br />
              .Image = My.Resources.About<br />
        End With<br />
        AddHandler MenuAbout.Click, AddressOf About<br />
<br />
        \' Set Returncode<br />
        Return New ReturnCode(ReturnCodeType.Internal, ReturnCodeValue.OK)<br />
    End Function<br />
<br />
    \' Add Other Menu Item(s) to the Main Menu<br />
    Private Function SetMainMenu(ByRef PluginMenu As List(Of ToolStripItem)) _<br />
                    As ReturnCode Implements IClientPluginMainMenu.SetMainMenu<br />
        \' Setup Menu Item<br />
        Dim HelloItem As New ToolStripMenuItem<br />
        With HelloItem<br />
              .Name = Me.ID & \"_Hello_World\"<br />
              .Text = \"Hello World!\"<br />
              .Image = My.Resources.World<br />
        End With<br />
<br />
        \' Add Menu Click Handler<br />
        AddHandler HelloItem.Click, AddressOf Hello<br />
<br />
        \' Add to the Menu List<br />
        PluginMenu.Add(HelloItem)<br />
<br />
        \' Set Success Returncode<br />
        Return New ReturnCode(ReturnCodeType.Internal, ReturnCodeValue.OK)<br />
    End Function<br />
<br />
    \' Payload<br />
    Private Sub Hello(ByVal sender As Object, ByVal e As System.EventArgs)<br />
        MsgBox(\"Hello World!\")<br />
    End Sub<br />
<br />
#End Region<br />
<br />
End Class</blockquote>
Ã¢â¬Æ<br />
<br />
<span style="font-weight: bold;" class="mycode_b">Produces this Plugin....</span><br /><!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.comfortforums.com/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=1086" target="_blank" title="">HelloWorld.png</a> (Size: 86 KB / Downloads: 61)
<!-- end: postbit_attachments_attachment -->]]></description>
			<content:encoded><![CDATA[Here\'s a sample plugin to show what\'s involved.<br />
<br />
Julian<br />
<br />
<span style="font-weight: bold;" class="mycode_b">This Code</span><br />
 (and the window form for About Box):<br />
<br />
<blockquote class="mycode_quote"><cite>Quote:</cite>\' ----------------------<br />
\' Hello World Plugin<br />
\' ----------------------<br />
<br />
Imports System.ComponentModel.Composition<br />
Imports ComfortClient.Plugin.Framework<br />
Imports System.Windows.Forms<br />
Imports System.Reflection<br />
Imports System.Runtime.InteropServices<br />
Imports System.Drawing<br />
<br />
&lt;PartMetadata(\"ComfortClientPlugin\", \"1.0\"), Export()&gt; _<br />
Public Class HelloWorld_Plugin<br />
    \' Plugin Contracts Supported<br />
    Implements IClientPluginMain<br />
    Implements IClientPluginMainMenu<br />
<br />
#Region \"Properties\"<br />
<br />
    \' Unique Identifier of the Plugin<br />
    Private ReadOnly Property GUID() As Guid Implements IClientPluginMain.Guid<br />
        Get<br />
            Return _GUID<br />
        End Get<br />
    End Property<br />
    Private _GUID As Guid<br />
<br />
    \' Name of the Plugin<br />
    Private ReadOnly Property ID() As String Implements IClientPluginMain.ID<br />
        Get<br />
            Return _ID<br />
        End Get<br />
    End Property<br />
    Private _ID As String<br />
<br />
    \' Plugin Image<br />
    Private ReadOnly Property Image() As Image Implements IClientPluginMain.Image<br />
        Get<br />
            Return _Image<br />
        End Get<br />
    End Property<br />
    Private _Image As Image<br />
<br />
    \' Host Reference<br />
    Private Property Host() As IClientPluginHost Implements IClientPluginMain.Host<br />
        Set(value As IClientPluginHost)<br />
            _Host = value<br />
        End Set<br />
        Get<br />
            Return _Host<br />
        End Get<br />
    End Property<br />
    Private _Host As IClientPluginHost<br />
<br />
    \' About Handler<br />
    ReadOnly Property AboutHandler() As System.EventHandler Implements IClientPluginMain.AboutHandler<br />
        Get<br />
            Return _AboutHandler<br />
        End Get<br />
    End Property<br />
    Private _AboutHandler As System.EventHandler<br />
#End Region<br />
<br />
#Region \"Methods\"<br />
<br />
    \' Plugin Instantiation<br />
    Public Sub New()<br />
        \' Mandatory Plugin Identification;  GUID and ID<br />
        For Each Attr In Attribute.GetCustomAttributes(Me.GetType.Assembly)<br />
            If TypeOf Attr Is GuidAttribute Then<br />
                _GUID = New Guid(CType(Attr, GuidAttribute).Value)<br />
            ElseIf TypeOf Attr Is AssemblyTitleAttribute Then<br />
                _ID = CType(Attr, AssemblyTitleAttribute).Title<br />
            End If<br />
        Next<br />
        _Image = My.Resources.plugin<br />
        _AboutHandler = AddressOf About<br />
    End Sub<br />
<br />
    \' Before Plugin Initialises<br />
    Private Function BeforePluginInitialisation() As ReturnCode _<br />
                    Implements IClientPluginMain.BeforePluginInitialisation<br />
        \' Set Returncode<br />
        Return New ReturnCode(ReturnCodeType.Internal, ReturnCodeValue.OK)<br />
    End Function<br />
<br />
    \' After Plugin Initialises<br />
    Private Function AfterPluginInitialisation() As ReturnCode _<br />
                    Implements IClientPluginMain.AfterPluginInitialisation<br />
        \' Set Returncode<br />
        Return New ReturnCode(ReturnCodeType.Internal, ReturnCodeValue.OK)<br />
    End Function<br />
<br />
    \' Plugin is disabled by the Client<br />
    Private Function PluginIsDisabled() As ReturnCode _<br />
                    Implements IClientPluginMain.PluginIsDisabled<br />
        \' Set Returncode<br />
        Return New ReturnCode(ReturnCodeType.Internal, ReturnCodeValue.OK)<br />
    End Function<br />
<br />
    \' Plugin is enabled by the Client<br />
    Private Function PluginIsEnabled() As ReturnCode _<br />
                    Implements IClientPluginMain.PluginIsEnabled<br />
        \' Set Returncode<br />
        Return New ReturnCode(ReturnCodeType.Internal, ReturnCodeValue.OK)<br />
    End Function<br />
<br />
    \' Adds thw About Box for the Plugin<br />
    Private Function About(ByVal sender As Object, ByVal e As System.EventArgs) _<br />
                    As ReturnCode Implements IClientPluginMain.About<br />
        Dim AboutForm As New About()<br />
        Call AboutForm.ShowDialog()<br />
        \' Set Returncode<br />
        Return New ReturnCode(ReturnCodeType.Internal, ReturnCodeValue.OK)<br />
    End Function<br />
<br />
    \' Adds the Plugin About Menu Item to the Main Menu<br />
    Private Function SetAboutMenu(ByRef MenuAbout As ToolStripMenuItem) _  <br />
                     As ReturnCode Implements IClientPluginMain.SetAboutMenu<br />
<br />
        \' Mandatory About Box<br />
        With MenuAbout<br />
              .Name = \"About\"<br />
              .Text = \"About\"<br />
              .Image = My.Resources.About<br />
        End With<br />
        AddHandler MenuAbout.Click, AddressOf About<br />
<br />
        \' Set Returncode<br />
        Return New ReturnCode(ReturnCodeType.Internal, ReturnCodeValue.OK)<br />
    End Function<br />
<br />
    \' Add Other Menu Item(s) to the Main Menu<br />
    Private Function SetMainMenu(ByRef PluginMenu As List(Of ToolStripItem)) _<br />
                    As ReturnCode Implements IClientPluginMainMenu.SetMainMenu<br />
        \' Setup Menu Item<br />
        Dim HelloItem As New ToolStripMenuItem<br />
        With HelloItem<br />
              .Name = Me.ID & \"_Hello_World\"<br />
              .Text = \"Hello World!\"<br />
              .Image = My.Resources.World<br />
        End With<br />
<br />
        \' Add Menu Click Handler<br />
        AddHandler HelloItem.Click, AddressOf Hello<br />
<br />
        \' Add to the Menu List<br />
        PluginMenu.Add(HelloItem)<br />
<br />
        \' Set Success Returncode<br />
        Return New ReturnCode(ReturnCodeType.Internal, ReturnCodeValue.OK)<br />
    End Function<br />
<br />
    \' Payload<br />
    Private Sub Hello(ByVal sender As Object, ByVal e As System.EventArgs)<br />
        MsgBox(\"Hello World!\")<br />
    End Sub<br />
<br />
#End Region<br />
<br />
End Class</blockquote>
Ã¢â¬Æ<br />
<br />
<span style="font-weight: bold;" class="mycode_b">Produces this Plugin....</span><br /><!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.comfortforums.com/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=1086" target="_blank" title="">HelloWorld.png</a> (Size: 86 KB / Downloads: 61)
<!-- end: postbit_attachments_attachment -->]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[Example Use Case]]></title>
			<link>https://www.comfortforums.com/thread-2839.html</link>
			<pubDate>Sat, 21 Apr 2012 14:33:01 -0400</pubDate>
			<dc:creator><![CDATA[<a href="https://www.comfortforums.com/member.php?action=profile&uid=876"></a>]]></dc:creator>
			<guid isPermaLink="false">https://www.comfortforums.com/thread-2839.html</guid>
			<description><![CDATA[Here\'s an example in the Sample Plugin of a Slave Floorplan Monitor (see attached)<br />
<br />
If you want to see the short AVI of this running then download this zip file containing the MP4 videa;  was too big to post.<br />
<br />
<a href="http://www.futurehomesoftware.co.uk/development/test.zip" target="_blank" rel="noopener" class="mycode_url">http://www.futurehomesoftware.co.uk/deve...t/test.zip</a><br />
<br />
This is a simple case of the plugin requesting floorplan snapshots whenever the floorplan render event fires.  I\'m just taking the results and pushing to a new disconnected window.  The red areas are for debug and showing the hotspots that you can also request for linkage with ClickResponses back to ComfortClient.<br />
<br />
Imagine if you could use this to develop slave feeds for say remote panels,  or for browser client running on the other side of the world or an application running on a iPad taking feeds from the network into Appleland.  The plugin model opens up ideas like this!  <img src="https://www.comfortforums.com/images/smilies/smile.png" alt="Smile" title="Smile" class="smilie smilie_1" /><br />
<br />
Julian<br /><!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.comfortforums.com/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=1083" target="_blank" title="">SlaveMon.jpg</a> (Size: 159.83 KB / Downloads: 39)
<!-- end: postbit_attachments_attachment -->]]></description>
			<content:encoded><![CDATA[Here\'s an example in the Sample Plugin of a Slave Floorplan Monitor (see attached)<br />
<br />
If you want to see the short AVI of this running then download this zip file containing the MP4 videa;  was too big to post.<br />
<br />
<a href="http://www.futurehomesoftware.co.uk/development/test.zip" target="_blank" rel="noopener" class="mycode_url">http://www.futurehomesoftware.co.uk/deve...t/test.zip</a><br />
<br />
This is a simple case of the plugin requesting floorplan snapshots whenever the floorplan render event fires.  I\'m just taking the results and pushing to a new disconnected window.  The red areas are for debug and showing the hotspots that you can also request for linkage with ClickResponses back to ComfortClient.<br />
<br />
Imagine if you could use this to develop slave feeds for say remote panels,  or for browser client running on the other side of the world or an application running on a iPad taking feeds from the network into Appleland.  The plugin model opens up ideas like this!  <img src="https://www.comfortforums.com/images/smilies/smile.png" alt="Smile" title="Smile" class="smilie smilie_1" /><br />
<br />
Julian<br /><!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.comfortforums.com/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=1083" target="_blank" title="">SlaveMon.jpg</a> (Size: 159.83 KB / Downloads: 39)
<!-- end: postbit_attachments_attachment -->]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[Plugin Framework (API)]]></title>
			<link>https://www.comfortforums.com/thread-2819.html</link>
			<pubDate>Mon, 09 Apr 2012 11:18:18 -0400</pubDate>
			<dc:creator><![CDATA[<a href="https://www.comfortforums.com/member.php?action=profile&uid=876"></a>]]></dc:creator>
			<guid isPermaLink="false">https://www.comfortforums.com/thread-2819.html</guid>
			<description><![CDATA[Hi,<br />
<br />
Here in this thread is an initial Intro to the Plugin Framework to get your respective \"creative juices\" flowing.<br />
<br />
I\'m attaching in two parts to get around the attachment limitations in the community. <br />
<br />
Part A with this message, Part B to follow on.<br />
 <br />
<img src="https://www.comfortforums.com/images/smilies/smile.png" alt="Smile" title="Smile" class="smilie smilie_1" /><br />
<br />
Julian<br /><!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.comfortforums.com/images/attachtypes/pdf.png" title="Adobe Acrobat PDF" border="0" alt=".pdf" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=1072" target="_blank" title="">PluginFrameworkIntro - Part A.pdf</a> (Size: 247.32 KB / Downloads: 22)
<!-- end: postbit_attachments_attachment -->]]></description>
			<content:encoded><![CDATA[Hi,<br />
<br />
Here in this thread is an initial Intro to the Plugin Framework to get your respective \"creative juices\" flowing.<br />
<br />
I\'m attaching in two parts to get around the attachment limitations in the community. <br />
<br />
Part A with this message, Part B to follow on.<br />
 <br />
<img src="https://www.comfortforums.com/images/smilies/smile.png" alt="Smile" title="Smile" class="smilie smilie_1" /><br />
<br />
Julian<br /><!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.comfortforums.com/images/attachtypes/pdf.png" title="Adobe Acrobat PDF" border="0" alt=".pdf" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=1072" target="_blank" title="">PluginFrameworkIntro - Part A.pdf</a> (Size: 247.32 KB / Downloads: 22)
<!-- end: postbit_attachments_attachment -->]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[ComfortClient Plugin Development]]></title>
			<link>https://www.comfortforums.com/thread-2817.html</link>
			<pubDate>Mon, 09 Apr 2012 08:45:21 -0400</pubDate>
			<dc:creator><![CDATA[<a href="https://www.comfortforums.com/member.php?action=profile&uid=876"></a>]]></dc:creator>
			<guid isPermaLink="false">https://www.comfortforums.com/thread-2817.html</guid>
			<description><![CDATA[Hi,<br />
<br />
I asked Cytech to create this subforum for me because I wanted to seperate out questions and support related to ComfortClient plugin development from the operation side of plugins.<br />
<br />
So this is the place to ask questions, share development ideas and generally tackle me on anything related to either the plugins I develop or you the ones you are developing yourselves.<br />
<br />
<img src="https://www.comfortforums.com/images/smilies/smile.png" alt="Smile" title="Smile" class="smilie smilie_1" /><br />
<br />
Julian]]></description>
			<content:encoded><![CDATA[Hi,<br />
<br />
I asked Cytech to create this subforum for me because I wanted to seperate out questions and support related to ComfortClient plugin development from the operation side of plugins.<br />
<br />
So this is the place to ask questions, share development ideas and generally tackle me on anything related to either the plugins I develop or you the ones you are developing yourselves.<br />
<br />
<img src="https://www.comfortforums.com/images/smilies/smile.png" alt="Smile" title="Smile" class="smilie smilie_1" /><br />
<br />
Julian]]></content:encoded>
		</item>
	</channel>
</rss>