无法使用自定义参数创建会议参与者

时间:2020-10-08 12:56:46

标签: c# .net twilio twilio-api

在twilio中使用ReST API创建会议参与者时遇到麻烦。以下是我的要求:

participant = ParticipantResource.Create(
                    new CreateParticipantOptions(
                        "conferenceName",
                        new PhoneNumber("client:791ecf-263c-49eb-9b9b-b6a265ee28d8"),
                        new PhoneNumber("client:59191ecf-263c-49eb-9b9b-b6a265ee28d8?agentFirstName=Michael&agentLastName=Scott++"))
                    {
                        Beep = Conference.BeepEnum.True.ToString(),
                        EndConferenceOnExit = true,
                        ConferenceStatusCallback = new Uri(statusCallbackUrl),
                        ConferenceStatusCallbackMethod = HttpMethod.Post,
                        ConferenceStatusCallbackEvent = new List<string>()
                        {
                            Conference.EventEnum.Start.ToString(),
                            Conference.EventEnum.Join.ToString(),
                            Conference.EventEnum.Leave.ToString(),
                            Conference.EventEnum.End.ToString()
                        }
                    }
                );

我相信这是调用此方法创建参与者的正确方法。我想从座席1拨号到座席2,以使座席2进入电话会议。

电话会议,我遵循的创建参与者参考是:https://www.twilio.com/docs/voice/api/conference-participant-resource

我想将自定义参数传递给从Web客户端登录的代理2,以便显示正在呼叫他的代理2。

1 个答案:

答案 0 :(得分:1)

代码实现是正确的,但是您不能使用连字符“-”提供客户端名称。尽管通过回调URL返回TwiML时可以使用此方法,但不能通过ReST API进行操作。

  • 客户端名称只能是字母数字和下划线。
  • 自定义参数不能包含字母数字以外的任何内容 字符和下划线。
  • 自定义参数不能具有null值,例如: param1=Hello&param2=&param3=World这里的参数2为空。

正确的客户参考示例是

new PhoneNumber("client:59191ecf_263c_49eb_9b9b_b6a265ee28d8?agentFirstName=Michael&agentLastName=Scott"))

p.s。确保还使用不带连字符的客户端ID创建了功能令牌。