예제 #1
0
        public void Can_Generate_Gather_With_No_Options()
        {
            var response = new TwilioResponse();
            response.Gather();

            Assert.True(IsValidTwiML(response.ToXDocument()));
        }
예제 #2
0
        public void Example_1()
        {
            var response = new TwilioResponse();
            response.Gather();

            Assert.IsTrue(IsValidTwiML(response.ToXDocument()));
        }
예제 #3
0
        public HttpResponseMessage Post(VoiceRequest request)
        {
            var response = new TwilioResponse();
            var option   = (request != null) ? request.Digits : string.Empty;

            switch (option)
            {
            case "1":
                response.Say("Please say your name and provide your feedback. Press the pound key when you are finished.");
                response.Record(new { playBeep = "true", transcribe = "true", finishOnKey = "#", action = CallCreateController.URL });
                break;

            case "2":
                response.Say("Enter the feedback id number followed by pound.");
                response.Gather(new { finishOnKey = "#", action = CallLookupController.URL });
                break;

            default:
                response.Say("You've entered an invalid option.");
                response.Redirect(CallHomeController.URL);
                break;
            }

            return(this.Request.CreateResponse(
                       HttpStatusCode.OK, response.Element, new XmlMediaTypeFormatter()));
        }
예제 #4
0
        public void Can_Generate_Gather_With_All_Options()
        {
            var response = new TwilioResponse();
            response.Gather(new { action = "example.xml", timeout = 10, method = "GET", finishOnKey = "#", numDigits = 3 });

            Assert.True(IsValidTwiML(response.ToXDocument()));
        }
예제 #5
0
        public void Can_Generate_Gather_With_No_Options()
        {
            var response = new TwilioResponse();

            response.Gather();

            Assert.IsTrue(IsValidTwiML(response.ToXDocument()));
        }
예제 #6
0
        public void Can_Generate_Gather_With_All_Options()
        {
            var response = new TwilioResponse();

            response.Gather(new { action = "example.xml", timeout = 10, method = "GET", finishOnKey = "#", numDigits = 3 });

            Assert.IsTrue(IsValidTwiML(response.ToXDocument()));
        }
예제 #7
0
    public HttpResponseMessage Post(VoiceRequest request)
    {
        var response = new TwilioResponse();

        response.Say("Welcome to Dhaval demo app. Please enter your 5 digit ID.");
        response.Gather(new { numDigits = 5, action = string.Format("/api/Authenticate") });
        return(this.Request.CreateResponse(HttpStatusCode.OK, response.Element, new XmlMediaTypeFormatter()));
    }
예제 #8
0
        public void Example_1()
        {
            var response = new TwilioResponse();

            response.Gather();

            Assert.IsTrue(IsValidTwiML(response.ToXDocument()));
        }
예제 #9
0
        public HttpResponseMessage Post(VoiceRequest request)
        {
            var response = new TwilioResponse();

            response.Say("Welcome to this Twilio demo app. Please enter your 3 digit pin code.");
            response.Gather(new { numDigits = 3, action = string.Format("/api/Authenticate") });

            return(this.TwiMLResponse(response));
        }
예제 #10
0
        public HttpResponseMessage Post(VoiceRequest request)
        {
            var response = new TwilioResponse();

            response.Say("Welcome to the MTS mobile feedback reporting system.");
            response.Say("Press 1 to enter feedback.");
            response.Say("Press 2 to look up an item.");
            response.Gather(new { numDigits = 1, action = CallRoutingController.URL });

            return(this.Request.CreateResponse(
                       HttpStatusCode.OK, response.Element, new XmlMediaTypeFormatter()));
        }
예제 #11
0
        private void AddRecordOrGatherCommands(TwilioResponse response)
        {
            var questionType = _question.Type;

            switch (questionType)
            {
            case QuestionType.Voice:
                response.Record(new { action = GenerateUrl(_question) });
                break;

            case QuestionType.Numeric:
            case QuestionType.YesNo:
                response.Gather(new { action = GenerateUrl(_question) });
                break;
            }
        }