Sinch CallBack API:在 ICE 事件中挂断

Sinch CallBack API : Hangup in ICE event

我在两个 Android 设备之间进行了通话 运行 成功。现在我想实现 Callback Rest API 因为一些服务器端在调用之前的决定。如此 imageICE 事件触发和开发人员后端响应 SVAML 响应。

现在我只想挂断电话,为此我做了以下代码:

[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 下写了操作 class 但响应相同。

[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 and https://developers.sinch.com/docs/further-securing-your-sinch-calling-functionality-app-with-rest-api 中给出的所有步骤进行操作,但没有成功。

您好,您的代码看起来是正确的,您能否捕获并发送您的后端作为 ICE POST 响应发送的 HTTP 响应? 还要添加呼叫的 callID。

Sinch 语音和视频团队

正在将 return 类型从 SvamletModel 转换为 string

所以我改变了

[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;
    }

[System.Web.Http.HttpPost]
    public string 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;

        string json = JsonConvert.SerializeObject(svaml, Formatting.Indented);

        return json;
    }