我在成功运行的两个Android设备之间进行了通话。现在,我要实现Callback Rest API,因为在进行调用之前,服务器端会做出一些决定。如此image中所述,ICE事件触发,开发人员后端响应SVAML响应。
现在我想简单地Hangup Call,为此,我完成了以下代码:
[System.Web.Http.HttpPost]
public SvamletModel MakeCall(CallbackEventModel model)
{
var sinch = SinchFactory.CreateCallbackResponseFactory(Locale.EnUs);
var reader = sinch.CreateEventReader();
var evt = reader.ReadModel(model);
var builder = sinch.CreateIceSvamletBuilder();
SvamletModel svaml = builder.Hangup().Model;
return svaml;
}
但通话仍然发出。我也曾在SvamletModel下编写动作类,但响应相同。
[System.Web.Http.HttpPost]
public SvamletModel MakeCall(CallbackEventModel model)
{
var sinch = SinchFactory.CreateCallbackResponseFactory(Locale.EnUs);
var reader = sinch.CreateEventReader();
var evt = reader.ReadModel(model);
var builder = sinch.CreateIceSvamletBuilder();
SvamletModel svaml = builder.Build().Model;
SvamletActionModel actionModel = new SvamletActionModel();
actionModel.Name = "Hangup";
svaml.Action = actionModel;
return svaml;
}
注意,我没有遵循Callback API和https://developers.sinch.com/docs/further-securing-your-sinch-calling-functionality-app-with-rest-api中给出的所有步骤。
您的代码看起来正确,可以捕获后端发送的HTTP响应作为ICE POST的响应并将其发送到此处吗?同时添加通话的callID。
Sinch语音和视频团队