com.bandwidth.voice.bxml.verbs.Forward Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of bandwidth-sdk Show documentation
Show all versions of bandwidth-sdk Show documentation
The official client SDK for Bandwidth's Voice, Messaging, MFA, and WebRTC APIs
package com.bandwidth.voice.bxml.verbs;
import lombok.Builder;
import javax.xml.bind.annotation.XmlAttribute;
import javax.xml.bind.annotation.XmlType;
import java.time.Duration;
/**
* Forwards an unanswered incoming call to another number.
*
*/
@Builder
@XmlType(name = Forward.TYPE_NAME)
public class Forward implements Verb {
public static final String TYPE_NAME = "Forward";
/**
* Number to forward the call to. Must be in E.164 format (e.g. +15555555555)
*/
@XmlAttribute
private String to;
/**
* (optional) Number to use for caller ID on the outgoing leg. Must be in E.164 format (e.g. +15555555555). If omitted, assumes the "to" number of the original leg.
*/
@XmlAttribute
private String from;
/**
* (optional) Number of seconds to wait for an answer before abandoning the call. Default: 30.
*/
@XmlAttribute
private long callTimeout;
/**
* (optional) Can be any of the following:
*
* none: No diversion headers are sent on the outbound leg of the transferred call.
*
* propagate: Copy the Diversion header from the inbound leg to the outbound leg. Ignored if there is no Diversion header present on the inbound leg.
*
* stack: After propagating any Diversion header from the inbound leg to the outbound leg, stack on top another Diversion header based on the Request-URI of the inbound call.
*
*/
@XmlAttribute
private String diversionTreatment;
/**
* (optional) This parameter is considered only when diversionTreatment is set to stack.
*
* Can be any of the following Strings:
*
* unknown
*
* user-busy
*
* no-answer
*
* unavailable
*
* unconditional
*
* time-of-day
*
* do-not-disturb
*
* deflection
*
* follow-me
*
* out-of-service
*
* away
*
*/
@XmlAttribute
private String diversionReason;
}