Announcement

Collapse
No announcement yet.

DTMF Triggering Multiple Events

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

    DTMF Triggering Multiple Events

    Gurus,

    I have three events in HSPro each triggered by a DTMF 5 digit number. i.e. 12341, 12342, and 12343. I enter #, wait for the voice response, and press 12341#. By watching the HS window I note all three of the events are triggered, not just the one corresponding to the entered digits. At first I though maybe because the first few digits were the same it couldn't resolve them. I set up some other test events and found that they all trigger, even with different initial numbers. Any idea what I'm doing wrong?

    I suppose this is driven by the Internal.txt script, are there any newer versions available?


    Thanks in advance,

    Leo

    #2
    What version of HomeSeer are you running? What phone modem are you using?
    💁‍♂️ Support & Customer Service 🙋‍♂️ Sales Questions 🛒 Shop HomeSeer Products

    Comment


      #3
      HSPro 2.5.0.52, Way2Call Hi-Phone firmware 4.03.36.


      Any support is much appreciated.

      Leo

      Comment


        #4
        I just read somewhere that the DTMF strings need to be 2-4 digits. I tried events triggered by 1231, 1232, and 1233 and again all three are triggered after entering # (waiting for reponse) 1231#. All three trigger.

        I'm trying to set my alarm system modes by phone. I'm used to picking up the phone, entering a 5 digit number and having the alarm mode go to the correct setting with no other interaction. Ultimately I would prefer not to have to hit the # key and wait for the response and follow with a # key, but I would like to get HS DTMF working properly first.


        Thanks again,

        Leo

        Comment


          #5
          Hi Leo,

          Can you post the DTMF section from your internal.txt file? I believe the default is for 2 DTMF digits (number plus # symbol). Here's what mine look like (it's the default one):

          Code:
          LABEL:VRDTMF
          # pound key pressed while waiting for VR, check buffer
          IF:$DTMF_COUNT=2;GOTO:DTMF_COMMAND;NEXT:
          # assume it might be an HS DTMF event command
          # this will trigger an event in HS if set for the entered DTMF sequence
          DODTMFEVENT:
          # need to reload the VR commands
          GOTO:INTERNAL
          #
          # DTMF IVR commands
          #
          LABEL:DTMF_COMMAND
          IF:$DTMF=1#;GOTO:VRMESSAGES_SETUP;NEXT:
          IF:$DTMF=2#;GOTO:VRHELP;NEXT:
          IF:$DTMF=3#;GOTO:X10;NEXT:
          IF:$DTMF=4#;GOTO:PAGE;NEXT:
          IF:$DTMF=9#;HANGUP:;NEXT:
          CLEAR_KEY:
          SPEAK:Unknown key sequence, press two pound for help
          GOTO:WAITVR
          Cheers
          Al
          HS 4.2.8.0: 2134 Devices 1252 Events
          Z-Wave 3.0.10.0: 133 Nodes on one Z-Net

          Comment


            #6
            Al,

            Thanks for your reponse. I posted the Internal.txt code excerpt below, I believe it is identical to yours. I've been studying the script and I'm starting to suspect the DODTMVEVENT subroutine.

            I set up 3 events with DTMF strings of 11, 12, and 13. I notice that when I enter #12# it runs all of the events first in reverse order but ends by running event 12 last. If I enter #13#, again all the events in reverse order but ends with event 13. Another piece to the puzzle? Other aspects of the script such as recovering voice mail with key presses works fine.


            Thanks in advance,

            Leo


            LABEL:START

            #######################
            # handle internal call#
            #######################
            LABEL:INTERNAL
            WAIT_TIMEOUT:0
            #
            # load all VR commands as enabled in the options
            LOADVR:#VR_INTERNAL
            CLEAR_KEY:
            SPEAK:$INTERNAL_PROMPT
            GOTO:WAITVR
            # just start listening without speaking prompt, but reload the VR commands
            LABEL:RELOAD_VR
            LOADVR:#VR_INTERNAL
            CLEAR_KEY:
            #
            # wait for any VR command
            #
            LABEL:WAITVR
            WAITVR:
            CHECKVR:#VRCMD_HELP;GOTO:VRHELP;NEXT:
            CHECKVR:#VRCMD_EXIT;GOTO:VREXIT;NEXT:
            CHECKVR:#VRCMD_LEAVE_MESSAGE;GOTO:VRLEAVE_MESSAGE;NEXT:
            CHECKVR:#VRCMD_DEVICE;GOTO:VRDEVICE;NEXT:
            CHECKVR:#VRCMD_DIAL;GOTO:VRDIAL;NEXT:
            CHECKVR:#VRCMD_EVENT;GOTO:VREVENT;NEXT:
            CHECKVR:#VRCMD_MESSAGES;GOTO:VRMESSAGES;NEXT:
            CHECKVR:#VRCMD_REMINDER;GOTO:VRREMINDERS;NEXT
            CHECKVR:#VRCMD_DEVSTAT;GOTO:VRDEVSTAT;NEXT
            CHECK_KEY:#;NEXT:;GOTO:WAITVR
            LABEL:VRDTMF
            # pound key pressed while waiting for VR, check buffer
            IF:$DTMF_COUNT=2;GOTOTMF_COMMAND;NEXT:
            # assume it might be an HS DTMF event command
            # this will trigger an event in HS if set for the entered DTMF sequence
            DODTMFEVENT:
            # need to reload the VR commands
            GOTO:INTERNAL
            #
            # DTMF IVR commands
            #
            LABELTMF_COMMAND
            IF:$DTMF=1#;GOTO:VRMESSAGES_SETUP;NEXT:
            IF:$DTMF=2#;GOTO:VRHELP;NEXT:
            IF:$DTMF=3#;GOTO:X10;NEXT:
            IF:$DTMF=4#;GOTO:PAGE;NEXT:
            IF:$DTMF=9#;HANGUP:;NEXT:
            CLEAR_KEY:
            SPEAK:Unknown key sequence, press two pound for help
            GOTO:WAITVR
            #

            ETC...

            Comment

            Working...
            X