Hmm, I don't think I saw that.  Let me check that out tomorrow

On Aug 12, 2014 6:27 PM, "George Clark" <> wrote:
Hi Joel,

This is due to a change in the Perl SSL libraries.  They no longer allow
you to take the default of using unverified certificates. You have to
explicitly set that option.

When calling IO::Socket::SSL, you need to pass the in the SSL options:
  SSL_verify_mode => IO::Socket::SSL::SSL_VERIFY_NONE(),

I think that some versions might refuse to make the connection if you
have not set this option.  I know we had a heck of a time getting this
option set when using Net::SMTP::SSL.  It took some perl object trickery
to get that option inserted when send mail to an SSL server.

Verification of peer certificates can be a challenge,   I wonder if NEST
uses a certificate generated from an authority where you could verify
it,  or if they use a self-signed cert.

George Clark

On 08/12/2014 09:14 PM, Joel Davidson wrote:
> Thanks Kevin.  This is what happens when you don't write any perl for
> a couple of months...  Things are working now.
> One other question.  I'm seeing this in my log from the nest code:
> *******************************************************************
>   Using the default of SSL_verify_mode of SSL_VERIFY_NONE for client
>   is deprecated! Please set SSL_verify_mode to SSL_VERIFY_PEER
>   together with SSL_ca_file|SSL_ca_path for verification.
>   If you really don't want to verify the certificate and keep the
>   connection open to Man-In-The-Middle attacks please set
>   SSL_verify_mode explicitly to SSL_VERIFY_NONE in your application.
> *******************************************************************
> at /opt/misterhouse/misterhouse_git/bin/../lib/ line 254.
> Are you seeing this?  I understand the message and the concern - is
> there something we should be doing differently?  Thanks.
> Joel
> On Tue, 12 Aug 2014, it would appear that Kevin Robert Keegan wrote:
>> Joel,
>> Those are objects and not variables.  So you should interact with them in
>> the same way as you would any other Generic_Item.
>> In short, try:
>> print_log "target temp: ". $target_temp->state;
>> print_log "mode: " . $hvacMode->state;
>> You can also do things like add those objects to groups
>> $group->add($target_temp), or tie events to occur when the state of those
>> objects change $target_temp->tie_event(sub {print_log("hi");});
>> On Tue, Aug 12, 2014 at 4:02 PM, Joel Davidson <> wrote:
>>> I've got my nest code mostly set up, but I'm having trouble reading
>>> the current state of the thermostat.  As per the examples in
>>> I've got thermostat set up correctly, as when I set debug=Nest:3
>>> I can see the current state of the thermostat dumped in my log file.
>>> I've got this in my code:
>>> $targetTemp     = new Nest_Thermo_Target($nest_thermo);         #noloop
>>> $targetTempHigh = new Nest_Thermo_Target_High($nest_thermo);    #noloop
>>> $targetTempLow  = new Nest_Thermo_Target_Low($nest_thermo);     #noloop
>>> $hvacMode       = new Nest_Thermo_Mode($nest_thermo);           #noloop
>>> $fanState       = new Nest_Thermo_Fan($nest_thermo);            #noloop
>>> but when I try to print the current values with
>>> print_log "target temp: $target_temp";
>>> print_log "mode: $hvacMode";
>>> I'm seeing:
>>> target temp: Nest_Thermo_Target=HASH(0x49e0988)
>>> mode : Nest_Thermo_Mode=HASH(0x49e1318)
>>> I'm sure this is a simple oversight on my part, but I'm stumped at
>>> the moment.  Any suggestions?  Thanks.
>>> Joel
>>> --
>>> Joel Davidson
>>> Austin, TX
> ------------------------------------------------------------------------------
> ________________________________________________________
> To unsubscribe from this list, go to:

To unsubscribe from this list, go to: