Exemple #1
0
        public void WhenGenerateConnectConference_ThenGeneratesTwiMLWithDialAndConference()
        {
            var response   = TwiMLGenerator.GenerateConnectConference("conference-id", "wait-url", true, false);
            var conference = XDocument.Parse(response.ToString()).XPathSelectElement("Response/Dial/Conference");

            Assert.That(conference.Value, Is.EqualTo("conference-id"));
            Assert.That(conference.Attribute("waitUrl").Value, Is.EqualTo("wait-url"));
            Assert.That(conference.Attribute("startConferenceOnEnter").Value, Is.EqualTo("true"));
            Assert.That(conference.Attribute("endConferenceOnExit").Value, Is.EqualTo("false"));
        }
Exemple #2
0
        public void WhenGenerateWait_ThenGeneratesTwiMLWithSayAndPlay()
        {
            var response = TwiMLGenerator.GenerateWait();
            var document = XDocument.Parse(response.ToString());

            Assert.That(
                document.XPathSelectElement("Response/Say").Value,
                Is.EqualTo("Thank you for calling. Please wait in line for a few seconds. An agent will be with you shortly."));
            Assert.That(
                document.XPathSelectElement("Response/Play").Value,
                Is.EqualTo("http://com.twilio.music.classical.s3.amazonaws.com/BusyStrings.mp3"));
        }
        public async Task <TwiMLResult> ConnectClient(string callSid)
        {
            const string agentOne     = "agent1";
            var          conferenceId = callSid;
            var          callBackUrl  = GetConnectConfereceUrlForAgent(agentOne, conferenceId);
            await _callCreator.CallAgentAsync(agentOne, callBackUrl);

            await _callsRepository.CreateOrUpdateAsync(agentOne, conferenceId);

            var response = TwiMLGenerator.GenerateConnectConference(conferenceId, WaitUrl, false, true);

            return(TwiML(response));
        }
        public TwiMLResult ConnectAgent2(string conferenceId)
        {
            var response = TwiMLGenerator.GenerateConnectConference(conferenceId, WaitUrl, true, true);

            return(TwiML(response));
        }
 public TwiMLResult Wait()
 {
     return(TwiML(TwiMLGenerator.GenerateWait()));
 }