| ECS-L Home Automation and Security Archives |
| Subject: From: Date: | RE: [ECS] ECS + Fax? David Kindred Fri, 19 May 2000 16:04:29 -0400 |
Martin,
Here's a look at my phone processing event. Please let me know if any of the
items are not self explanatory. Following it is my cell phone
paging/E-mailing event. That part doesn't do much of anything yet. It just
calls my cell phone and then hangs up. I haven't had much luck getting my
PhoneBlaster 56K to speak anything or play a WAV file with an outgoing call.
I need to install the 14.4 modem I got off of Ebay.
As I said, not much but stolen bits of code from here and there, but, you
get to see it. :-)
--David
PHONE PROCESSING EVENT
Do Remote Phone Sess. Set Remote-Phone-Button
;----------------------------------------------------------------
;--Turn off vacuum cleaner
If Phone-Rings Is Now 1
Then Appl: Vacuum Set Off
;
If Phone-Rings Is 0
Then CID-C Set None
Then Event-Exit Set True
;should send out a mute here
;----------------------------------------------------------------
;--Answer after second ring if during sleeping hours,
;--otherwise, answer after 'answer ring count' rings
BEGINIF CID-C Is Not 0
If Time Is LE Time: Bedtime
And Phone-Rings Is GT Now 2
Or Time Is GE Time: Pre-wake
And Phone-Rings Is GT Now 2
Or Phone-Rings Is GE Now Answer Ring Count
Then Remote Phone Sess. Set Remote-Phone-Button
Then Phone-Answer Set Answer
;Then Log: Telephone Set Local-Phone-Button
;set local and remote phone sessions?
ENDIF
;----------------------------------------------------------------
;--Immediate answering for blocked Caller-ID
If Flag: Call Screen Is True
And CID-C Is Now 0
Then "Blocked Caller-ID Set Speak->VC
Then Local-Phone-Button Set Pick-Up
Then "Reject Blocked CID Set Speak/W->PC:Ln
Then Local-Phone-Button Set Hang-Up
;----------------------------------------------------------------
;--Immediate answering for solicitors
If Flag: Call Screen Is True
And CID-C Is GE 9000
And CID-C Is LE 9999
Then WAV: Rej Solicitor Set Play/W->Sp
Then Local-Phone-Button Set Pick-Up
Then WAV: Phone Disco Set Play/W->PC:Ln
Then Local-Phone-Button Set Hang-Up
Then "Reject solicitor Set Log
Then CID-C Set None
Then Log: Telephone Set Time: Phn H/M elaps
;----------------------------------------------------------------
;--Call timing and log file recording
If Local-Phone-Button Is Now Pick-Up
Then Phone line status Set On
Then Time: Phn start Set Time
Then Cntr: phn sec elaps Set 0
Then Cntr: phn sec elaps Set Start
Then Time: Phn H/M elaps Set 0:00
If Cntr: phn sec elaps Is Now 60
Then Cntr: phn sec elaps Set 0
Then Time: Phn H/M elaps Add 1
BEGINIF Local-Phone-Button Is Now Hang-Up
Then Phone line status Set Off
BEGINIF Cntr: phn sec elaps Is Not Stop
Then Cntr: phn sec elaps Set Stop
Then Text-B T1<-T1 "Phone "On-"
Then Text-B T1/A<-Stt Time: Phn start
Then Text-B T1/A<-T1 "Phone "Off-"
Then Text-B T1/A<-Stt Time
Then Text-B T1/A<-T1 "Phone "Time-"
Then Text-B T1/A<-Stt Time: Phn H/M elaps
Then Text-B Set :
If Cntr: phn sec elaps Is LE 9
Then Text-B Set 0
Do Text-B T1/A<-Stt Cntr: phn sec elaps
If Time: Phn H/M elaps Is GT 0:00
Or Cntr: phn sec elaps Is GT 9
Then Log: Telephone Set Text-B
Then Text-B Set Log
Then Cntr: phn sec elaps Set Stop
ENDIF
ENDIF
;----------------------------------------------------------------
;--Caller-ID retrieval and logging
BEGINIF CID-C Is Not Now None
Then CID-C Set Log
;Then CID-C Set Speak/W->VC
Then Text-B T1<-T1 CID-Name
Then Text-B Set <Space>
Then Text-B T1/A<-T1 CID-Number
Then Log: Telephone Set Text-B
;----------------------------------------------------------------
;--Send Caller-ID data to ACE
Do CID-ACE-Scratch Set Re-Define Text
Do CID-ACE-Scratch Set A
Do CID-ACE-Scratch Set C
Do CID-ACE-Scratch Set E
Do CID-ACE-Scratch Set C
Do CID-ACE-Scratch Set :
Do CID-ACE-Scratch Set 0
Do CID-ACE-Scratch Set :
Do CID-ACE-Scratch Set M
Do CID-ACE-Scratch Set S
Do CID-ACE-Scratch Set G
Do CID-ACE-Scratch Set 3
Do CID-ACE-Scratch Set :
Do CID-ACE-Scratch Set 3
Do CID-ACE-Scratch Set 0
Do CID-ACE-Scratch Set ,
Then CID-ACE-Scratch T1/A<-T1 CID-Name
Then CID-ACE-Scratch Set <Space>
Then CID-ACE-Scratch T1/A<-T1 CID-Number
Do CID-ACE-Scratch Set Send->ID:D
Do CID-Last Caller4 T1<-T1 CID-Last Caller3
Do CID-Last Caller3 T1<-T1 CID-Last Caller2
Do CID-Last Caller2 T1<-T1 CID-Last Caller
Do CID-Last Caller T1<-T1 CID-Name
Do CID-Last Caller Set <Space>
Do CID-Last Caller T1<-T1 CID-Number
Do CID-Last Caller Set <Space>
Do CID-Last Caller T1/A<-Stt Day/Time
;Do CID-Last Caller Set <Space>
;Do CID-Last Caller T1/A<-Stt Time
;----------------------------------------------------------------
;--Caller ID announcement (except solicitors)
BEGINIF Flag: Someone Home Is True
If CID-C Is GE 9000
And CID-C Is LE 9999
Then Event-Line Set LABEL1
;----------------------------------------------------------------
;--Announce if CID not blocked and it's during waking hours
If Time Is LE Time: Bedtime
And Time Is GE Time: Pre-wake
And CID-C Is Not 0
And Flag: Call Screen Is True
Or Flag: Call Screen Is False
And CID-C Is LE 1000
And CID-C Is GE 1
Then Text-B T1<-T1 CID-Name
Then Text-B T1/A<-T1 "Is calling
Then Text-B Set Speak
ENDIF
ENDIF
;----------------------------------------------------------------
LABEL1:
If Phone-Rings Is Now 0
Then CID-C Set None
;
;****************************************************************
; Handle newly recorded message:
;----------------------------------------------------------------
;
;****************************************************************
; Monitor for ISP disconnect:
;----------------------------------------------------------------
BEGINIF ISP Status Is A
; When ISPSTAT.DAT exists, we have disconnected:
Do Character-A Set ISPSTAT.DAT
If Character-A Is Not None
Then ISP Status Set Character-A
Then ISPSTAT.DAT Set Delete
Then ISPSTAT.DAT Set Reset
Then Shell: RAS Disco Set Execute
Then Pause Set 500
Then Phone-Interface-C Set Reset
ENDIF
;
BEGINIF Email Status Is A
And ISP Status Is Not A
Do Email Status Set ISP Status
If Email Status Is D
And Email Ack Is True
Then New-Phone-Messages Set Acknowledge
Else If Email Status Is Not D
Then Email Error Set Log
ENDIF
Page Cell Phone and/or E-mail message
;****************************************************************
; Handle newly recorded message:
;
;--Handle Cell Phone paging
BEGINIF Tmr: New Phone-Call Is Now 0
If Flag: Page New Msg Is True
Then Phone-Call Set Call
ENDIF
;
BEGINIF Phone-Answer Is Now Message Recorded
;----------------------------------------------------------------
; Announce that we have a message and setup
; for periodic reminder (handled below):
Do Phone Messages Msg Set Speak->VC
Do Tmr: New Phone-Call Set 8
Do Phone Message Timer Set Reminder Frequency
Do New Msgs Reminder Set True
;----------------------------------------------------------------
; If desired, send message to pager denoting name/number of caller:
If Page on call Is True
And CID-C Is Not None
Then Text-B T1<-T1 CID-Name
Then Text-B Set :
Then Text-B T1/A<-T1 CID-Number
Then Text-B Set Send->Pager
;----------------------------------------------------------------
; If desired, email recording as a .WAV file attachment:
If Email on call Is True
And ISP Status Is Not A
Then Phone-Interface-C Set Disconnected
; When ISP disconnects, LMEMAIL.BAT will re-create ISPSTAT.DAT:
Then ISPSTAT.DAT Set Delete
Then ISPSTAT.DAT Set Reset
; Email the message:
Then Shell: LMEMAIL.BAT Set Execute/NW
Then ISP Status Set A
Then Email Status Set A
ENDIF
-----Original Message-----
From: Martin Terry [mailto:Martin.Terry@mail.tribnet.com]
Sent: Friday, May 19, 2000 3:40 PM
To: 'ecs-list@netbloc.com'
Subject: RE: [ECS] ECS + Fax?
David can you post the event?
Well, my favorite event is also the Garnet Bailey modified phone event,
with similar modifications as David. I use mailboxes, so each of my kids
have their own mailboxes with their own outgoing messages, and in ACE each
has a button that indicates their new messages. There are also separate
phone logs for each person and the family as a whole. When one of the kids
is out there is a button in ACE which makes ECS take a message without any
phones in the house ringing.
One of the addons I have is a home built box that prevents the phone from
ringing unless ECS says it can. This kicks in when we are in "dinner mode"
or late at night. It also prevents the first ring (prior to CID) from
ringing the phones.
My new project involves a home built PBX that will interface with ECS so
that if my 16 year old gets a call, only her phone will ring, or only her
phone and the kitchen phone will ring. It will also be able to answer the
phone, ask for input, then ring an extension based on the input given. I'm
hoping to use this to stop solicitors dead. I'll also use this setup to
revive "local control" for ECS phones.
My favorite NON EVENT is the perl code one of the ECSers provided to
"extract" an event, along with the associated items into a single file. This
is a great way to easily cut and paste other users events into ECS without
much work.
In fact, maybe Mark can whip up a command line executable that is included
with ECS, I think this would make swapping events much less painful.
It would even be helpful in merging updates into an existing config. Mark?
-----Original Message-----
From: David Kindred [mailto:davidkindred@bigfoot.com]
Sent: Friday, May 19, 2000 10:55 AM
To: ecs-list@netbloc.com
Subject: RE: [ECS] ECS + Fax?
Well, I'm afraid I'm going to sound really ordinary, but, since no one
else is piping in, my favorite event is my modified Garnet Bailey phone
event. It does the following:
* Based on entries in a text file, announces Caller-ID info
-- For regular callers between 7AM and 10:15PM
-- For family, around the clock
-- For solicitors, never
* Solicitors get the phone picked up as soon as they are identified,
and are played a recording of the phone company's "The number you have
reached has been disconnected" message.
* Blocked Caller-ID callers are played a curt TTS message telling them
we don't accept their calls, then it hangs up.
* All calls are logged into a text file
* Caller-ID info is sent to ACE where it pops up on the screen
* If we're not home, and a message is taken, our cell phone is called
to alert us of it (not completely functional, but it does the trick)
* If a flag is set, phone messages are E-mailed to me (loved this
while we were on vacation at the beach)
* The vacuum cleaner is killed when the phone rings
* Call conversation lengths are logged
I stole almost all the code from other people, but you're welcome to it,
if you want.
C'mon guys, tell us what your favorite is. Now that you've seen my plain
Jane description, let's hear yours!
--David
-----Original Message-----
From: A.J. Griglak [mailto:aj@griglak.com]
Sent: Friday, May 19, 2000 1:39 PM
To: ecs-list@netbloc.com
Subject: RE: [ECS] ECS + Fax?
LOL... It seems the more I do, the uglier it gets!
I'm just trying to stir up some creative discussion...
-=A.J.
-----Original Message-----
From: Martin Terry [mailto:Martin.Terry@mail.tribnet.com]
Sent: Friday, May 19, 2000 3:40 PM
To: 'ecs-list@netbloc.com'
Subject: RE: [ECS] ECS + Fax?David can you post the event?Well, my favorite event is also the Garnet Bailey modified phone event, with similar modifications as David. I use mailboxes, so each of my kids have their own mailboxes with their own outgoing messages, and in ACE each has a button that indicates their new messages. There are also separate phone logs for each person and the family as a whole. When one of the kids is out there is a button in ACE which makes ECS take a message without any phones in the house ringing.One of the addons I have is a home built box that prevents the phone from ringing unless ECS says it can. This kicks in when we are in "dinner mode" or late at night. It also prevents the first ring (prior to CID) from ringing the phones.My new project involves a home built PBX that will interface with ECS so that if my 16 year old gets a call, only her phone will ring, or only her phone and the kitchen phone will ring. It will also be able to answer the phone, ask for input, then ring an extension based on the input given. I'm hoping to use this to stop solicitors dead. I'll also use this setup to revive "local control" for ECS phones.My favorite NON EVENT is the perl code one of the ECSers provided to "extract" an event, along with the associated items into a single file. This is a great way to easily cut and paste other users events into ECS without much work.In fact, maybe Mark can whip up a command line executable that is included with ECS, I think this would make swapping events much less painful.It would even be helpful in merging updates into an existing config. Mark?-----Original Message-----
From: David Kindred [mailto:davidkindred@bigfoot.com]
Sent: Friday, May 19, 2000 10:55 AM
To: ecs-list@netbloc.com
Subject: RE: [ECS] ECS + Fax?Well, I'm afraid I'm going to sound really ordinary, but, since no one else is piping in, my favorite event is my modified Garnet Bailey phone event. It does the following:* Based on entries in a text file, announces Caller-ID info-- For regular callers between 7AM and 10:15PM-- For family, around the clock-- For solicitors, never* Solicitors get the phone picked up as soon as they are identified, and are played a recording of the phone company's "The number you have reached has been disconnected" message.* Blocked Caller-ID callers are played a curt TTS message telling them we don't accept their calls, then it hangs up.* All calls are logged into a text file* Caller-ID info is sent to ACE where it pops up on the screen* If we're not home, and a message is taken, our cell phone is called to alert us of it (not completely functional, but it does the trick)* If a flag is set, phone messages are E-mailed to me (loved this while we were on vacation at the beach)* The vacuum cleaner is killed when the phone rings* Call conversation lengths are loggedI stole almost all the code from other people, but you're welcome to it, if you want.C'mon guys, tell us what your favorite is. Now that you've seen my plain Jane description, let's hear yours!--David-----Original Message-----
From: A.J. Griglak [mailto:aj@griglak.com]
Sent: Friday, May 19, 2000 1:39 PM
To: ecs-list@netbloc.com
Subject: RE: [ECS] ECS + Fax?LOL... It seems the more I do, the uglier it gets!I'm just trying to stir up some creative discussion...-=A.J.