quicklycosmic
New Member
CentOS 5.2, ELK-M1G
	
	
	
		
	
	
	
		
Sources
				
			
		Code:
	
	cd /opt
wget http://voxel.dl.sourceforge.net/sourceforge/elkm1control/ElkM1-Control-0.02.tar.gz
tar xzvf ElkM1-Control-0.02.tar.gz
cd ElkM1-Control-0.02
less README
perl Makefile.PL
make
make test
make install
cpan
> install Net::SSLeay
> install IO::Socket::SSL
quit
		Code:
	
	#!/usr/bin/perl
use ElkM1::Control;
   my $elkhost = '192.168.1.5';
   my $elkport = '2601'; #2101
   my $elkssl = 1;		  #0
   my $elkdebug = 0;
   my $units = "F";
   my @zonelist = ('one','two','three','four');
   my $elk = ElkM1::Control->new('host' => $elkhost, 'port' => $elkport, 'use_ssl' => $elkssl, 'debug' => $elkdebug);
   my $msg;
   while(1) {
	  $msg = $elk->readMessage();
	  if(!defined($msg)) {
		 sleep .5;
	  } else {
		 switch(ref($msg)) {
			case 'ElkM1::Control::Message::ZoneChangeUpdateReport' {
			   $zonenumber = $msg->getZone;
			   $zoneloc = $zonelist[$zonenumber+1];
			   $zonestate = $msg->getState;
			   print $zoneloc." zone (".$zonenumber.") is now ".$zonestate."\n";
			}
			case 'ElkM1::Control::Message::TemperatureReply' {
			   $groupname = $msg->getGroupName;
			   $groupnumber = $msg->getGroup;
			   $groupdevice = $msg->getDevice;
			   $temperature = $msg->getTemperature;
			   print $groupname." ".$groupnumber." ".$groupdevice.": ".$temperature.$units."\n";
			}
			else {
			   print "Message not known.  ".$msg->toString."  ".ref($msg)."\n";
			}
		 }
	  }
   }
   @zonelist;
   $elk->disconnect;Sources
- http://www.cocoontech.com/index.php?showtopic=8920
- http://search.cpan.org/dist/IO-Socket-SSL/SSL.pm
- http://www.charmedquark.com/vb_forum/showthread.php?t=6516
- http://forum.homesecuritystore.com/index.php?topic=7014.msg34304
- http://www.linuxha.com/ElkM1/index.html
 
	 
 
		 LCStatusReply.
LCStatusReply. 
 
		