/// <summary> /// Generate the necessary parameters /// </summary> public List <KeyValuePair <string, string> > GetParams() { var p = new List <KeyValuePair <string, string> >(); if (EnableTurn != null) { p.Add(new KeyValuePair <string, string>("EnableTurn", EnableTurn.Value.ToString().ToLower())); } if (Type != null) { p.Add(new KeyValuePair <string, string>("Type", Type.ToString())); } if (UniqueName != null) { p.Add(new KeyValuePair <string, string>("UniqueName", UniqueName)); } if (StatusCallback != null) { p.Add(new KeyValuePair <string, string>("StatusCallback", Serializers.Url(StatusCallback))); } if (StatusCallbackMethod != null) { p.Add(new KeyValuePair <string, string>("StatusCallbackMethod", StatusCallbackMethod.ToString())); } if (MaxParticipants != null) { p.Add(new KeyValuePair <string, string>("MaxParticipants", MaxParticipants.ToString())); } if (RecordParticipantsOnConnect != null) { p.Add(new KeyValuePair <string, string>("RecordParticipantsOnConnect", RecordParticipantsOnConnect.Value.ToString().ToLower())); } if (VideoCodecs != null) { p.AddRange(VideoCodecs.Select(prop => new KeyValuePair <string, string>("VideoCodecs", prop.ToString()))); } if (MediaRegion != null) { p.Add(new KeyValuePair <string, string>("MediaRegion", MediaRegion)); } return(p); }