> Fetch clean Markdown by appending `.md` to any page URL under https://signalwire.com/docs or requesting it with the HTTP header `Accept: text/markdown`. The root index at https://signalwire.com/docs/llms.txt lists the available documentation indexes. # Queue [``](/docs/compatibility-api/cxml/reference/voice/dial) verb's `` noun specifies what queue to dial. ## Noun attributes **`method`** `string` — default: POST The `method` attribute specifies whether the request to action is a `GET` or a `POST`. Valid values are `GET` or `POST`. --- **`url`** `string` A specified URL for a document that runs on the caller's end before the call is connected. This allows the caller to inform the dialed number that the call will be connected to an agent or that the call may be monitored or recorded. See [below](#queue_Url) for request parameters. --- #### Request parameters for `url` \[#queue\_Url] The `url` request contains the [Standard Request Parameters](/docs/compatibility-api/cxml/reference/voice#request-parameters) as well as: **`CallSid`** `string` The unique identifier for the dequeued call. --- **`DequeingCallSid`** `string` The unique identifier for the call dequeueing the caller. --- **`QueueSid`** `string` The unique identifier for the Queue. --- **`QueueTime`** `string` The time, in seconds, spent waiting in a queue. --- ## Examples ### Dialing a queue ```xml support ``` **`Node.js`** ```javascript title="Node.js" const { RestClient } = require("@signalwire/compatibility-api"); const response = new RestClient.LaML.VoiceResponse(); dial = response.dial(); dial.queue({ url: "https://example.com/about_to_connect.xml" }, "support"); console.log(response.toString()); ``` ```csharp using Twilio.TwiML; using Twilio.TwiML.Voice; using System; class Example { static void Main() { var response = new VoiceResponse(); var dial = new Dial(); dial.Queue("support", url: new Uri("https://example.com/about_to_connect.xml")); response.Append(dial); Console.WriteLine(response.ToString());; } } ``` ```python from signalwire.voice_response import VoiceResponse, Dial, Queue response = VoiceResponse() dial = Dial() dial.queue('support', url='https://example.com/about_to_connect.xml') response.append(dial) print(response) ``` ```ruby require 'signalwire/sdk' response = Signalwire::Sdk::VoiceResponse.new do |response| response.dial do |dial| dial.queue('support', url: 'https://example.com/about_to_connect.xml') end end puts response.to_s ``` This is an example of a caller in the 'support' queue waiting to be dequeued. ### Bridging out of a queue ```xml You will now be connected to an agent. ``` **`Node.js`** ```javascript title="Node.js" const { RestClient } = require("@signalwire/compatibility-api"); const response = new RestClient.LaML.VoiceResponse(); response.say("You will now be connected to an agent."); console.log(response.toString()); ``` ```csharp using Twilio.TwiML; using System; class Example { static void Main() { var response = new VoiceResponse(); response.Say("You will now be connected to an agent."); Console.WriteLine(response.ToString());; } } ``` ```python from signalwire.voice_response import VoiceResponse, Say response = VoiceResponse() response.say('You will now be connected to an agent.') print(response) ``` ```ruby require 'signalwire/sdk' response = Signalwire::Sdk::VoiceResponse.new do |response| response.say(message: 'You will now be connected to an agent.') end puts response.to_s ``` Once a caller is first in line in the queue and ready to be bridged, they will be informed of the connection to an agent. --- \*Twilio and TwiML are trademarks of Twilio, Inc. SignalWire, Inc. and its products are not affiliated with or endorsed by Twilio, Inc.