<Redirect>
The <Redirect>
verb transfers control from the current document to another. It is effectively an exit statement from the current document, as there is no way to return to any instructions listed after the <Redirect>
verb.
An example message that redirects next XML instruction to another document:
- XML
- JavaScript
- PHP
- C#
- Python
- Ruby
<?xml version="1.0" encoding="UTF-8"?>
<Response>
<Redirect>https://your-application.com/next-instructions</Redirect>
</Response>
const { RestClient } = require("@signalwire/compatibility-api");
const response = new RestClient.LaML.VoiceResponse();
response.redirect("https://your-application.com/next-instructions");
console.log(response.toString());
<?php
use SignalWire\LaML;
$response = new LaML;
$response->redirect('https://your-application.com/next-instructions');
echo $response;
?>
using Twilio.TwiML;
using System;
class Example
{
static void Main()
{
var response = new VoiceResponse();
response.Redirect(new Uri("https://your-application.com/next-instructions"));
Console.WriteLine(response.ToString());;
}
}
from signalwire.voice_response import Redirect, VoiceResponse
response = VoiceResponse()
response.redirect('https://your-application.com/next-instructions')
print(response)
require 'signalwire/sdk'
response = Signalwire::Sdk::VoiceResponse.new do |response|
response.redirect('https://your-application.com/next-instructions')
end
puts response.to_s
Verb Attributes
The following attribute is available for the verb <Redirect>
:
Attribute | |
---|---|
method optional | Specifies whether the redirect is a GET or a POST . Default value is POST . |
Nouns
The following item is accepted as a noun for the <Redirect>
verb:
Noun | |
---|---|
plain text | The URL, in plain text, of the document to execute. |
Nesting
No other verbs can be nested within <Redirect>
and you cannot nest <Redirect>
within any other verbs.
Examples
Redirect to absolute URL
- XML
- JavaScript
- PHP
- C#
- Python
- Ruby
<?xml version="1.0" encoding="UTF-8"?>
<Response>
<Redirect>http://www.somesite.com/NextDoc.xml</Redirect>
</Response>
const { RestClient } = require("@signalwire/compatibility-api");
const response = new RestClient.LaML.VoiceResponse();
response.redirect("http://www.somesite.com/NextDoc.xml");
console.log(response.toString());
<?php
use SignalWire\LaML;
$response = new LaML;
$response->redirect('http://www.somesite.com/NextDoc.xml');
echo $response;
?>
using Twilio.TwiML;
using System;
class Example
{
static void Main()
{
var response = new VoiceResponse();
response.Redirect(new Uri("http://www.somesite.com/NextDoc.xml"));
Console.WriteLine(response.ToString());;
}
}
from signalwire.voice_response import Redirect, VoiceResponse
response = VoiceResponse()
response.redirect('http://www.somesite.com/NextDoc.xml')
print(response)
require 'signalwire/sdk'
response = Signalwire::Sdk::VoiceResponse.new do |response|
response.redirect('http://www.somesite.com/NextDoc.xml')
end
puts response.to_s
To continue processing this message using the instructions in another document, specify the absolute URL of that document as the noun to the <Redirect>
verb.