| ECS-L Home Automation and Security Archives |
| Subject: From: Date: | RE: [ECS] Item : Phone Call A.J. Griglak Thu, 21 Dec 2000 14:42:44 -0500 |
Here it is:
Event: Phone Service Called ?:No
;****************************************************************
; This Event performs various phone-related tasks:
;----------------------------------------------------------------
; Send remote phone keystrokes to it's session processor:
Do Remote Phone Sess. Set Remote-Phone-Button
;----------------------------------------------------------------
;
;
If At home:AJ Is Now True
Or Awake Is Now True
Then Answer Ring Count Set 5
If At home:AJ Is Now False
Or Awake Is Now False
Then Answer Ring Count Set 2
;
If Remote Phone Sess. Is Now Hang-Up
Then Phone-Interface-C Set Reset
;
If Minute Is Now 16
And Phone-Answer Is Not Answering
And Phone-Answer Is Not Session Begun
And Phone-Rings Is 0
Then Phone-Interface-C Set Reset
;
; Log CID info soon as it comes in:
If CID-C Is Not Now None
Then CID-C Set Log
Then Old Phone-Rings Set 0
;
;----------Get CID Info for logging and cell notify
Then Phone:CID Info Set Reset
Then Phone:CID Info T1<-Stt Month
Then Phone:CID Info Set <Space>
Then Phone:CID Info T1/A<-Stt Date
Then Phone:CID Info Set :
Then Phone:CID Info Set <Space>
Then Phone:CID Info T1/A<-Stt Current Time
Then Phone:CID Info Set .
Then Phone:CID Info Set <Space>
Then Phone:CID Info T1/A<-T1 CID-Name
Then Phone:CID Info Set .
Then Phone:CID Info Set <Space>
Then Phone:CID Info T1/A<-T1 CID-Number
;
;----------AJ added this section 5/12/00
;----------If Sonia is calling
If CID-C Is 1002
And At home:AJ Is False
Then Phone:Ans-Sonia Set Answer/W
Then CID-C Set None
;
;----------If Mike is calling
If CID-C Is 3001
And At home:AJ Is False
Then Phone:Ans-Mike Set Answer/W
Then CID-C Set None
;
;----------------------------------------------------------------
; Display/announce the caller every time the phone rings therafter:
If CID-C Is Not None
And Phone-Rings Is GT Old Phone-Rings
And Phone-Answer Is Not Answering
Then CID-C Set Speak->SC
Then msg:is calling Set Speak->SC
Do Old Phone-Rings Set Phone-Rings
;
;----------------------------------------------------------------
;10 seconds after Phone-Rings has reverted to 0, reset CID-C to
NONE:
If Phone-Rings Is Now 0
Then CID Timer Set 10
If CID Timer Is Now 0
Then CID-C Set None
;----------------------------------------------------------------
; Answer phone after enough rings:
If Phone-Rings Is GE Answer Ring Count
Then Phone-Answer Set Answer
;
;Start message length timer
If Phone-Answer Is Now Answering
Then phone-msg:lngth tim Set Start
;
;****************************************************************
; Handle newly recorded message:
;----------------------------------------------------------------
BEGINIF Phone-Answer Is Now Message Recorded
Or Phone:Ans-Sonia Is Now Message Recorded
Or Phone:Ans-Mike Is Now Message Recorded
;
;----------------------------------------------------------------
; Announce that we have a message and setup
; for periodic reminder (handled below):
If Awake Is True
And At home:AJ Is True
Then Phone Messages Msg Set Speak->SC
Do Phone Message Timer Set Reminder Frequency
Do New Msgs Reminder Set True
;----------Start timer for text pager notify---------------------
Do Phone-notify timer Set 10
;----------------------------------------------------------------
; If desired, email recording as a .WAV file attachment:
If Email on call Is True
Then LMEMAIL.BAT Set Execute/NW
;Forward voice messages to cell, if not at home
If At home:AJ Is False
Then Phone-Notify:Cell Set Call
ENDIF
;----------------------------------------------------------------
; Issue periodic new-message reminder until acknowledged:
BEGINIF New Msgs Reminder Is True
If New-Phone-Messages Is Now 0
Then Phone Message Timer Set 0
Then New Msgs Reminder Set False
Then Phone Message:None Set Speak->SC
Then Reminder Ack Msg Set Speak->SC
;
Else If Phone Message Timer Is 0
And Awake Is True
And At home:AJ Is True
Then Phone Messages Msg Set Speak->SC
Then Phone Message Timer Set Reminder Frequency
;
If At home:AJ Is Now True
Then Phone Messages Msg Set Speak
ENDIF
;
If New-Phone-Messages Is Now 0
Then phone-msg:play timer Set phone-msg:length
;
If phone-msg:play timer Is Now 0
And aud-flag:On/Off Is On
Then aud-ctrl Set Pause
;
; If desired, send message to pager denoting name/number of caller:
BEGINIF Phone-notify timer Is Now 0
If New-Phone-Messages Is 0
Or At home:AJ Is True
Then Event-Exit Set True
If Page on call Is True
And phone-msg:length Is GT 21
Then LM_to_cell.bat Set Execute/NW
ENDIF
;
If Phone-Answer Is Now Message Recorded
Or Phone-Answer Is Now Aborted
Or Phone-Answer Is Now Session Begun
Or Phone-Answer Is Now Fax Detected
Or Phone-Answer Is Now Dialtone Detected
Then phone-msg:lngth tim Set Stop
Then phone-msg:length Set phone-msg:lngth tim
Then phone-msg:length Subtract 5
Then phone-msg:lngth tim Set 0
Then Phone:CID Info Set ,
Then Phone:CID Info Set <Space>
Then Phone:CID Info T1/A<-Stt phone-msg:length
Then Log:Telephone Set Phone:CID Info
;
If Phone-Answer Is Now Caller Hung-Up
Then phone-msg:lngth tim Set Stop
Then phone-msg:lngth tim Set 0
Then Phone:CID Info Set ,
Then Phone:CID Info Set <Space>
Then Phone:CID Info T1/A<-T1 msg:Caller Hung Up
Then Log:Telephone Set Phone:CID Info
End
-----Original Message-----
From: J Gary Mull [mailto:jgary@mindspring.com]
Sent: Thursday, December 21, 2000 9:25 AM
To: ecs-list@netbloc.com
Subject: RE: [ECS] Item : Phone Call
AJ I would like to see your event that does this .......
.com Gary at Work
Here it is:
Event: Phone Service
Called
?:No
;****************************************************************
; This Event performs various phone-related
tasks:
;----------------------------------------------------------------
; Send remote phone keystrokes to it's session
processor:
Do Remote Phone
Sess. Set
Remote-Phone-Button
;----------------------------------------------------------------
;
;
If
At home:AJ
Is Now
True
Or Awake
Is Now
True
Then Answer
Ring Count Set
5
If
At home:AJ
Is Now
False
Or Awake
Is Now
False
Then
Answer Ring Count
Set
2
;
If
Remote Phone Sess. Is Now
Hang-Up
Then
Phone-Interface-C
Set
Reset
;
If
Minute
Is Now
16
And
Phone-Answer Is
Not
Answering
And Phone-Answer
Is Not
Session
Begun
And
Phone-Rings
Is
0
Then
Phone-Interface-C
Set
Reset
;
; Log CID info soon as it comes
in:
If CID-C
Is Not
Now
None
Then
CID-C
Set
Log
Then Old
Phone-Rings
Set
0
;
;----------Get CID Info for
logging and cell notify
Then Phone:CID Info
Set
Reset
Then
Phone:CID Info T1<-Stt
Month
Then
Phone:CID Info
Set
<Space>
Then Phone:CID Info
T1/A<-Stt
Date
Then
Phone:CID Info
Set
:
Then Phone:CID
Info
Set
<Space>
Then Phone:CID Info
T1/A<-Stt Current
Time
Then
Phone:CID Info
Set
.
Then Phone:CID
Info
Set
<Space>
Then Phone:CID Info
T1/A<-T1
CID-Name
Then
Phone:CID Info
Set
.
Then Phone:CID
Info
Set
<Space>
Then Phone:CID Info
T1/A<-T1
CID-Number
;
;----------AJ added this section
5/12/00
;----------If Sonia is
calling
If CID-C
Is
1002
And
At home:AJ
Is
False
Then
Phone:Ans-Sonia
Set
Answer/W
Then
CID-C
Set
None
;
;----------If Mike is
calling
If CID-C
Is
3001
And
At home:AJ
Is
False
Then
Phone:Ans-Mike
Set
Answer/W
Then
CID-C
Set
None
;
;----------------------------------------------------------------
; Display/announce the caller every time the phone rings
therafter:
If CID-C
Is Not
None
And
Phone-Rings
Is GT Old
Phone-Rings
And Phone-Answer
Is Not
Answering
Then
CID-C
Set
Speak->SC
Then msg:is calling
Set
Speak->SC
Do Old Phone-Rings
Set
Phone-Rings
;
;----------------------------------------------------------------
;10 seconds after Phone-Rings has reverted to 0, reset CID-C to
NONE:
If Phone-Rings
Is Now
0
Then CID
Timer
Set
10
If CID Timer
Is Now
0
Then
CID-C
Set
None
;----------------------------------------------------------------
; Answer phone after enough rings:
If Phone-Rings
Is GE
Answer Ring
Count
Then
Phone-Answer
Set
Answer
;
;Start message length
timer
If Phone-Answer
Is Now
Answering
Then
phone-msg:lngth tim Set
Start
;
;****************************************************************
; Handle newly recorded message:
;----------------------------------------------------------------
BEGINIF Phone-Answer
Is Now
Message
Recorded
Or Phone:Ans-Sonia
Is Now
Message
Recorded
Or Phone:Ans-Mike
Is Now
Message
Recorded
;
;----------------------------------------------------------------
; Announce that we have a message and
setup
; for periodic reminder
(handled below):
If Awake
Is
True
And
At home:AJ
Is
True
Then Phone
Messages Msg Set
Speak->SC
Do Phone Message Timer
Set Reminder
Frequency
Do New Msgs
Reminder Set
True
;----------Start timer for
text pager
notify---------------------
Do Phone-notify
timer Set
10
;----------------------------------------------------------------
; If desired, email recording as a .WAV file
attachment:
If Email on call
Is
True
Then
LMEMAIL.BAT
Set
Execute/NW
;Forward voice messages
to cell, if not at home
If At home:AJ
Is
False
Then
Phone-Notify:Cell
Set
Call
ENDIF
;----------------------------------------------------------------
; Issue periodic new-message reminder until
acknowledged:
BEGINIF New Msgs
Reminder Is
True
If
New-Phone-Messages Is Now
0
Then Phone
Message Timer Set
0
Then New Msgs
Reminder Set
False
Then Phone
Message:None Set
Speak->SC
Then Reminder Ack
Msg Set
Speak->SC
;
Else If Phone Message
Timer Is
0
And
Awake
Is
True
And
At home:AJ
Is
True
Then Phone
Messages Msg Set
Speak->SC
Then Phone Message Timer
Set Reminder
Frequency
;
If
At home:AJ
Is Now
True
Then Phone
Messages Msg Set
Speak
ENDIF
;
If
New-Phone-Messages Is Now
0
Then
phone-msg:play timer Set
phone-msg:length
;
If
phone-msg:play timer Is Now
0
And
aud-flag:On/Off
Is
On
Then
aud-ctrl
Set
Pause
;
; If desired, send message to
pager denoting name/number of
caller:
BEGINIF Phone-notify
timer Is Now
0
If
New-Phone-Messages
Is
0
Or
At home:AJ
Is
True
Then
Event-Exit
Set
True
If Page on call
Is
True
And
phone-msg:length Is GT
21
Then
LM to cell.bat
Set
Execute/NW
ENDIF
;
If
Phone-Answer Is
Now Message
Recorded
Or Phone-Answer
Is Now
Aborted
Or Phone-Answer
Is Now
Session
Begun
Or Phone-Answer
Is Now
Fax
Detected
Or Phone-Answer
Is Now
Dialtone
Detected
Then
phone-msg:lngth tim Set
Stop
Then
phone-msg:length
Set
phone-msg:lngth tim
Then
phone-msg:length
Subtract
5
Then
phone-msg:lngth tim Set
0
Then Phone:CID
Info
Set
,
Then Phone:CID
Info
Set
<Space>
Then Phone:CID Info
T1/A<-Stt
phone-msg:length
Then Log:Telephone
Set
Phone:CID
Info
;
If
Phone-Answer Is
Now Caller
Hung-Up
Then
phone-msg:lngth tim Set
Stop
Then
phone-msg:lngth tim Set
0
Then Phone:CID
Info
Set
,
Then Phone:CID
Info
Set
<Space>
Then Phone:CID Info
T1/A<-T1 msg:Caller Hung
Up
Then
Log:Telephone
Set Phone:CID
Info
End
-----Original Message-----
From: J Gary Mull [mailto:jgary@mindspring.com]
Sent: Thursday,
December 21, 2000 9:25 AM
To: ecs-list@netbloc.com
Subject: RE: [ECS] Item
: Phone Call
AJ I would like to see your event that does this
.......
.com Gary at
Work