private void AddCallOptions(CallOptions options, RestRequest request)
{
request.AddParameter("From", options.From);
request.AddParameter("To", options.To);
if (options.ApplicationSid.HasValue())
{
request.AddParameter("ApplicationSid", options.ApplicationSid);
}
else
{
request.AddParameter("Url", options.Url);
}
if (options.StatusCallback.HasValue()) request.AddParameter("StatusCallback", options.StatusCallback);
if (options.StatusCallbackMethod.HasValue()) request.AddParameter("StatusCallbackMethod", options.StatusCallbackMethod);
if (options.FallbackUrl.HasValue()) request.AddParameter("FallbackUrl", options.FallbackUrl);
if (options.FallbackMethod.HasValue()) request.AddParameter("FallbackMethod", options.FallbackMethod);
if (options.Method.HasValue()) request.AddParameter("Method", options.Method);
if (options.SendDigits.HasValue()) request.AddParameter("SendDigits", options.SendDigits);
if (options.IfMachine.HasValue()) request.AddParameter("IfMachine", options.IfMachine);
if (options.Timeout.HasValue) request.AddParameter("Timeout", options.Timeout.Value);
if (options.Record) request.AddParameter("Record", "true");
if (options.RecordingStatusCallback.HasValue())
{
request.AddParameter("RecordingStatusCallback", options.RecordingStatusCallback);
}
if (options.RecordingStatusCallbackMethod.HasValue())
{
request.AddParameter("RecordingStatusCallbackMethod", options.RecordingStatusCallbackMethod);
}
if (options.RecordingChannels.HasValue()) request.AddParameter("RecordingChannels", options.RecordingChannels);
}