示例#1
0
            $roommate = $config['roommates'][$index];
            $twiml->addSay("Connecting you to " . $roommate['name'], array("voice" => $config['voice']));
            $twiml->addDial($roommate['number']);
        }
        // not a valid input, send back to the menu
        $twiml->addRedirect($config['filename']);
        break;
    case "secret":
        // handle the secret code entry
        if ($config['secret'] && $_REQUEST['Digits'] == $config['secret']) {
            // secret code matches, buzz the caller in
            $twiml->addSay("Buzzing you in now.", array("voice" => $config['voice']));
            $twiml->addPlay("http://www.dialabc.com/i/cache/dtmfgen/wavpcm8.300/" . $config['gate_code'] . ".wav");
        }
        // either the feature is disabled or they didn't enter the proper code, send back to the menu
        $twiml->addRedirect($config['filename']);
        break;
    default:
        // provide the main menu
        $twiml->addPause(array("length" => "2"));
        $gather = $twiml->addGather(array("action" => $config['filename'] . "?page=gather", "numDigits" => "1", "method" => "POST"));
        $gather->addSay($config['greeting'], array("voice" => $config['voice']));
        // loop through each roommate for the menu
        foreach ($config['roommates'] as $num => $roommate) {
            $gather->addPause(array("length" => "1"));
            $gather->addSay("For " . $roommate['name'] . ", press " . ($num + 1) . ".", array("voice" => $config['voice']));
        }
        break;
}
// output all of the XML generated
$twiml->Respond();