Jump to content

Polisy Node development


mike2545

Recommended Posts

Hello all, this is exciting and I wish that I was as adept at writing Python code as I am at PicBasic ? I have looked at the node store and see that there are a few Nodes that deal with Google Calendar API's and was wondering if anyone here could develop another.  I went so far as to get a PI and start here https://developers.google.com/calendar/quickstart/python But quickly got in over my head.

The idea is to have ISY respond to specific Calendar entries. Say you don't work a normal 9-5 and want lights/heat/Jacuzzi to be on & ready for your schedule, or your shop to automatically adjust heat/AC for odd scheduling events. The Node would have many applications. 

 

The basic outline would be:

  • Set up- Which Google calendar to use
  • IF statement
    • Time Before event is scheduled to begin or end
    • Different conditions (filter)
      • Event location
      • Event Description
      • Event Begins
      • Event Ends
      • Etc...
    • Filter by string - input parameter
      • Equals -ignore case
      • Not equals
      • Contains
      • Doesn't contain
      • <>= (number)
      • Equals Date
  • Then
    • Run insteon code here

Is this something that anyone here is willing to tackle?

I realize the IFTTT site has a similar 'app' but does not allow any more than a 30 minute 'time before' event trigger also Automate IO has most of this but starts to charge a monthly fee for any more that 5 'bots'. I would also not like to rely on 3rd party cloud based sites triggering ISY events.

 

Thoughts? Comments?

 

Regards,

 

Mike2545

 

Link to comment
Share on other sites

10 hours ago, mike2545 said:

Hello all, this is exciting and I wish that I was as adept at writing Python code as I am at PicBasic ? I have looked at the node store and see that there are a few Nodes that deal with Google Calendar API's and was wondering if anyone here could develop another.  I went so far as to get a PI and start here https://developers.google.com/calendar/quickstart/python But quickly got in over my head.

The idea is to have ISY respond to specific Calendar entries. Say you don't work a normal 9-5 and want lights/heat/Jacuzzi to be on & ready for your schedule, or your shop to automatically adjust heat/AC for odd scheduling events. The Node would have many applications.

The basic outline would be:

  • Set up- Which Google calendar to use
  • IF statement
    • Time Before event is scheduled to begin or end
    • Different conditions (filter)
      • Event location
      • Event Description
      • Event Begins
      • Event Ends
      • Etc...
    • Filter by string - input parameter
      • Equals -ignore case
      • Not equals
      • Contains
      • Doesn't contain
      • <>= (number)
      • Equals Date
  • Then
    • Run insteon code here

Is this something that anyone here is willing to tackle?

Hi @mike2545, I have a plan to develop something like this. I currently use the HolidaysGoogle poly but would like be able to respond to events that are scheduled for less than a full day. Trouble is I am a python novice and me time is limited currently but I plan to reduce my work hours in the next few months. So as long as your wish for 2020 includes the whole year, my goal is to have something done within that time frame ?

On the filter by string, that would have to be built out on the Polyglot configuration of the nodes. It wouldn't be able to be dynamic from within programs given ISY limitations.

I do have a question for you, what's your use case for location?

Link to comment
Share on other sites

DaveStLou , Thank you for the reply, the location filter condition is necessary in my case because I manage a a facility with many different Buildings that get booked at random times. (e.g. (1/06/2020, 9:00 AM - 3:00PM, Building A), (1/06/2020, 1:00PM -5:00PM, Building B ) ) etc... then the facility might sit a few days unused so I don't want to leave the HVAC on for an empty building. The schedule gets hectic at times and with 12 Insteon thermostats, automation is the way to go.

Insteon also controls the Parking lot lights. Depending on what facility is booked after sunset the lights would be able to stay on for that parking lot until the event is done.

 

Regards,

 

Mike2545

Link to comment
Share on other sites

I'd like to see a really simple node server that just provides a date node.  

-date

   --year (probably not needed but why not)

   --month number

   --day of month number

It could incorporate a holiday flag, (although I'd rather not have a google dependency) via reading a text file somewhere with some format, or holiday's could be included as key|data pairs in the node server config perhaps.

  --holiday (boolean: true|false)

It might also be worthwhile to include Day of week (1..7) however ISY is already Day of week aware, just not date aware.

The date can be read from whatever is hosting polygot (polisy or rpi) and it really only needs to update ISY once a day.

.

 

Link to comment
Share on other sites

 

 

Quote

I'd like to see a really simple node server that just provides a date node.  

-date

   --year (probably not needed but why not)

   --month number

   --day of month number

It could incorporate a holiday flag, (although I'd rather not have a google dependency) via reading a text file somewhere with some format, or holiday's could be included as key|data pairs in the node server config perhaps.

  --holiday (boolean: true|false)

It might also be worthwhile to include Day of week (1..7) however ISY is already Day of week aware, just not date aware.

The date can be read from whatever is hosting polygot (polisy or rpi) and it really only needs to update ISY once a day.

MrBill, have you seen this function in ISY?

Date Node.png

Link to comment
Share on other sites

1 hour ago, MrBill said:

I'd like to see a really simple node server that just provides a date node.  

-date

   --year (probably not needed but why not)

   --month number

   --day of month number

It could incorporate a holiday flag, (although I'd rather not have a google dependency) via reading a text file somewhere with some format, or holiday's could be included as key|data pairs in the node server config perhaps.

  --holiday (boolean: true|false)

It might also be worthwhile to include Day of week (1..7) however ISY is already Day of week aware, just not date aware.

The date can be read from whatever is hosting polygot (polisy or rpi) and it really only needs to update ISY once a day.

.

 

Lots of options already out there.

1) write programs that set dates using ISY system variables.  Set the programs to run at midnight.

2) install io_guy nodelink on a pc or rpi and run his date node server.  This will makes actual nodes out of the dates rather than variables.

3) install the programs I wrote many years ago.  Again, dates all go in as variables.  These are on the wiki.

image.thumb.png.470de59278fc3b853b564d087ec990a0.png

image.thumb.png.ec33e2585b6c253d8a5cb60b6025b5b8.png

Link to comment
Share on other sites

2 hours ago, mike2545 said:

MrBill, have you seen this function in ISY?

Date Node.png

Actually, to be honest... I had NOT found that yet.  It doesn't appear until "daily" gets unchecked, and I have not really changed any scheduling since upgrading to 5.x.   On the other hand, I did go LOOK for that after upgrading to 5.x some months ago and didn't think date sensitivity existed yet.  While this forum is wonderful I'm one of this that just doesn't have enough time in the day to keep up with all the posts here and to honest I quit trying.

2 hours ago, apostolakisl said:

Lots of options already out there.

1) write programs that set dates using ISY system variables.  Set the programs to run at midnight.

2) install io_guy nodelink on a pc or rpi and run his date node server.  This will makes actual nodes out of the dates rather than variables.

3) install the programs I wrote many years ago.  Again, dates all go in as variables.  These are on the wiki.

image.thumb.png.470de59278fc3b853b564d087ec990a0.png

image.thumb.png.ec33e2585b6c253d8a5cb60b6025b5b8.png

Sorry I wasn't aware of any of these, other than the programs you wrote many years ago, that I used for awhile but later got rid of because something happened and i never had time to chase what went wrong.   I've been waiting for Polisy to arrive to run nodeservers, while I do have an rPi I've never been comfortable using it for anything that counts like polygot, because I just don't have enough hours in the day to maintain a production level server.  will the "ISY Data" node server you linked run in Polisy?  I guess not or it would be in the store?  

Thanks for the info at any rate.

Link to comment
Share on other sites

  • 2 weeks later...

Archived

This topic is now archived and is closed to further replies.


  • Recently Browsing

    • No registered users viewing this page.
  • Forum Statistics

    • Total Topics
      36.8k
    • Total Posts
      369.9k
×
×
  • Create New...