【问题标题】:Twilio Voice - Client to client calls failTwilio Voice - 客户端到客户端呼叫失败
【发布时间】:2022-01-04 18:01:35
【问题描述】:

每当在电话应用程序上从客户端向另一个客户端发出呼叫时,呼叫都会以错误结束,并且 Twilio 控制台会将拨出的客户端号码显示为转换为数字而不是 client:name。例如:client:adam.weissert 在 Twilio 控制台上显示为 254368232693477378。如果有帮助,我目前正在手机上运行该应用程序,并正在尝试在我们相应的 Web 应用程序上呼叫登录用户。

根据我对注册 twilio 客户端的了解,他们都需要注册访问令牌。对于我进行的呼叫尝试,这应该不是问题,这让我不知道这是如何发生的。

这是用于拨打外线电话的代码

// Code that helps reproduce the issue
 private fun placeCall(callerID: String) {
        val nonAlphaNum = "[^a-zA-Z0-9]".toRegex()
        var callIdFormat = ""

        if (!callerID.contains(".")) { //if it is not a client id and is a number
            callIdFormat = callerID.replace(" ", "")
            callIdFormat = callIdFormat.replace(nonAlphaNum, "")
        } else {
            callIdFormat = callerID
        }

        params["To"] = callIdFormat

        val connectOptions = ConnectOptions.Builder(UserService.twilioAccessToken!!)
            .params(params)
            .build()

        activeCall = Voice.connect(requireContext().applicationContext, connectOptions, callListener)
    }

Twilio 尝试拨打客户端 ID,成功拨打了我们的 twilio 号码,但未能拨出客户端。

此日志不会在前端产生,而是显示在 twilio 控制台中,并且只显示在拨出电话上

Dial: Twilio does not support calling this number or the number is invalid

我会说这是 SDK 的一个关键功能,这让我觉得我可能只是在错误地处理这个问题。如有任何建议,我将不胜感激。

【问题讨论】:

    标签: android twilio twilio-api


    【解决方案1】:

    我发现我们用来拨打电话的 twiml 应用程序会强制所有拨出电话使用 twiml.dial() 函数,该函数会将给定的字符串转换为可读的电话号码。

    我切换它以区分它和 twiml.client(),这取决于是客户端 ID 还是 ptsn。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-12-07
      相关资源
      最近更新 更多