[Message Prev][Message Next][Thread Prev][Thread Next][Message Index][Thread Index]
Re: Help needed with Sockets, using Mister House...
Hello,
And thank you for making the effort!
You've written in Perl, and I need it in Mister House... Similar..?
In MH there is a "Socket_Item" and it has Parameters O'plenty, separated
by commas - very much like your "socket" command, maybe more...
I suspect much of your code example will work. The definition of your
variables, etc. I tried putting them in quotes within the Socket_item
statement. Wasn't certain if I wanted Single (') or double (") quotes.
I found an example (earlier - for the RF portion) which I copied and
pasted into my code file. Bruce was kind enough to correct it for me.
The example used a "=" and it should have been an "eq". Who knew?!!
Currently Bruce is too busy to reply. I understand, but now I'm high and
dry!
Again; thanks for all of your efforts...
Sincerely,
Jack
;-)
rlsusenet@xxxxxxxxxxxxxxxxxxxxxxxx wrote:
> You need to open and print to a socket. I haven't actually tried
> this, but adapting from some code in "Programming Perl", it might
> go something like this...
>
> require 5.002;
> use strict;
> use Socket;
> my $remote = "192.168.1.123"; # can be a domain name
> my $port = 2101;
> my $iaddr = inet_aton($remote);
> my $paddr = sockaddr_in($port, $iaddr);
> my $proto = getprotobyname('tcp'); # unless your device takes 'udp'
> socket(MYSOCK, PF_INET, SOCK_STREAM, $proto) or die "socket: $!";
> connect(SOCK, $paddr);
> print SOCK "Mail\n";
> close(SOCK);
> Jack Edin wrote:
>
>> Hello,
>>
>> Please excuse the newbie question...
>>
>> I want to send the word "Mail", followed by a CR over the Ethernet to
>> IP address 192.168.1.123 on Port 2101.
>>
>> I searched the MH Docs to no avail...
>>
>> I looked at various code examples, and tried many things.
>> I can't get it right!
>>
>> The code I use now looks like this:
>>
>> # Window/Door sensor items
>>
>> if ($state = state_now $Mailbox_sensor) {
>> $state = "open" if ($state =~ /^alert/i);
>> $state = "closed" if ($state =~ /^normal/i);
>> print_log "Mailbox's front door is now $state";
>>
>> if ($state eq "open"){play(`file` => "GOTMAIL.wav")}
>> }
>>
>> I'm using an X10 DS10A embedded into the door of my new plastic mailbox.
>>
>> Here is a picture:
>>
>> http://www.logicunlimited.com/images/sModdedDoor-Front&Back+.jpg
>>
>> I have an Elk M1 panel. It can listen to port 2101 on the Ethernet...
>>
>> I want Mister House to trigger the mighty M1, via Ethernet in this manor.
>>
>> Can anybody help?
>>
>> I'm such a newbie I may need you to show me where to insert it into my
>> code, too.
>>
>> Just get one "(" in the wrong place, or forget a "}" and you're not
>> getting there!
>>
>> Been doing alot of head scratchin. Please help!
>>
>> Thankx, in advance!
>>
>> Jack
>> :)
alt.home.automation Main Index |
alt.home.automation Thread Index |
alt.home.automation Home |
Archives Home