Announcement

Collapse
No announcement yet.

Plugin License Issue

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Plugin License Issue

    I'm seeing the following error when trying to connect a remote plugin:

    Jul-04 1:28:19 PM Error Cannot load plugin Blue-Iris, no license or trial expired

    This happens when I call

    Code:
    host.Connect(IFACE_NAME, "")
    AccessLevel is set to return 2 (it works if I set AccessLevel to 1)

    I've tried deleting licenses.bin and restarting HS3, but no joy.

    Any ideas?
    Author of Highpeak Plugins
    SMS-Gateway Plugin
    Blue Iris Plugin
    Paradox (Beta) Plugin
    Modbus Plugin
    Yamaha Plugin

  • #2
    I don't know the answer but I am sure there is some licencing stuff in the development webinars somewhere if you struggle.
    My Plugins:

    Pushover 3P | DoorBird 3P | Current Cost 3P | Velleman K8055 3P | LAMetric 3P | Garadget 3P | Hive 3P |
    Yeelight 3P | Nanoleaf 3P

    Comment


    • #3
      Yup, watched that. My other plugins are fine, I just can't fathom why HS3 is bleating about this one.


      Sent from my iPad using Tapatalk HD
      Author of Highpeak Plugins
      SMS-Gateway Plugin
      Blue Iris Plugin
      Paradox (Beta) Plugin
      Modbus Plugin
      Yamaha Plugin

      Comment


      • #4
        if you are trying to run the plugin from the debugger or remotely, make sure there is a copy of the exe file in the HS3 directory as well

        Comment


        • #5
          Thanks spud, I am remote debugging. I thought we'd overcome the 'must have a local copy too' issue. What if I want to runs remote windows plugin against a Linux installation?


          Sent from my iPad using Tapatalk HD
          Author of Highpeak Plugins
          SMS-Gateway Plugin
          Blue Iris Plugin
          Paradox (Beta) Plugin
          Modbus Plugin
          Yamaha Plugin

          Comment


          • #6
            not 100% sure but I think you always have to put a local copy exe on your HS3 folder, the fact that it's windows or linux does not matter

            Comment


            • #7
              You do not need to have the EXE in the directory, just key DLLs, in which case it is easy to get them by installing HS3. You need HomeSeerAPI.dll, HSCF.dll, Scheduler.dll, and I think HomeSeerUtil.dll too.

              Once those DLLs are in place, then the plug-in tries to connect to HomeSeer, and so if the username and password are not right, that dog won't hunt. If it does connect, then HomeSeer checks the license, and if the plug-in is not licensed, whether it is connecting remotely or not, then it won't work either.

              I am running a remote plug-in and as I said, I just ran the HS3 installer, then put the plug-in in the same directory and I run it there. HS3 is never run and the copy I installed there is not licensed.
              Regards,

              Rick Tinker (a.k.a. "Tink")

              Comment


              • #8
                Originally posted by Rick Tinker View Post
                You do not need to have the EXE in the directory, just key DLLs, in which case it is easy to get them by installing HS3. You need HomeSeerAPI.dll, HSCF.dll, Scheduler.dll, and I think HomeSeerUtil.dll too.

                Once those DLLs are in place, then the plug-in tries to connect to HomeSeer, and so if the username and password are not right, that dog won't hunt. If it does connect, then HomeSeer checks the license, and if the plug-in is not licensed, whether it is connecting remotely or not, then it won't work either.

                I am running a remote plug-in and as I said, I just ran the HS3 installer, then put the plug-in in the same directory and I run it there. HS3 is never run and the copy I installed there is not licensed.
                we are not talking about the HS3.exe but about the plugin exe.
                let's say you want to run the kinect plugin remotely, if you have never installed HSPI_KINECT.exe on your local HS3 machine and you try to start it remotely, you always get the following error in the logs
                Cannot load plugin Kinect, no license or trial expired

                it seems that you need to see the kinect plugin from the manage page before it is possible to run it remotely, and to do that the only solution I found is to install it locally.

                Comment


                • #9
                  OK - now I see what is happening.

                  Yes, you need to have a copy on the HS machine. The reason is that when the remote plug-in tries to connect, the copy on the HS machine is what is used to determine the licensing that it uses. If it is a licensed plug-in, then HS has to check to see if there is a license.

                  If you are coding a plug-in to only run under Linux, this is not right that you have to also code an EXE for Windows just for the licensing. I will raise the issue with Rich to see if there is a way around this, but for now I know there is not - there are some queries done on the EXE to check licensing that will have to be there for it to work. It will not run the plug-in on the HS machine, but it will load the EXE to check some things.
                  Regards,

                  Rick Tinker (a.k.a. "Tink")

                  Comment


                  • #10
                    Rick, you've hit the nail on the head. To make matters worse, if the plugin has dependencies, then it all those need to be in place on the server too. This makes debug workflow a little ugly as we essentially end up 'salting' an otherwise nice clean HS3 install to test against.

                    Never mind the issue you identified, that I have to build a Linux version when I may not need one. Also that the reason users may want a remote plugin is because it can't or won't run on the hS3 server, but now still needs to be installed there.

                    It looks like we need a 'give me a unique identifier to check licensing against' function call and then track that, rather than using what looks like some system reflection calls to get the EXE details for licensing.

                    We appreciate your attention to this though, it's something that helps enable 3rd party plugin devs more than the core HST team right now.
                    Author of Highpeak Plugins
                    SMS-Gateway Plugin
                    Blue Iris Plugin
                    Paradox (Beta) Plugin
                    Modbus Plugin
                    Yamaha Plugin

                    Comment

                    Working...
                    X