我正在尝试使用他们的RingCentral SDK与RingCentral拨打电话。我基本上是在这里找到他们的教程:
https://developers.ringcentral.com/guide/voice/quick-start/c-sharp
除了我试图在MVC Web应用而不是控制台应用中执行此操作的事实外,我的代码基本上与他们的代码相同:
List<T>
但是由于某种原因,当我运行此代码时,执行到达“授权”行时出现以下错误:
public async Task<JsonResult> Call(string number)
{
var rc = new RestClient(RingCentralCredentials.ClientId, RingCentralCredentials.ClientSecret, false);
var tokenInfo = await rc.Authorize(RingCentralCredentials.Username, RingCentralCredentials.Extension, RingCentralCredentials.Password);
// The above line throws the exception.
var parameters = new MakeRingOutRequest();
parameters.from = new MakeRingOutCallerInfoRequestFrom { phoneNumber = RingCentralCredentials.Username };
parameters.to = new MakeRingOutCallerInfoRequestTo { phoneNumber = number };
parameters.playPrompt = false;
var resp = await rc.Restapi().Account().Extension().RingOut().Post(parameters);
return Json(resp.status, JsonRequestBehavior.AllowGet);
}
有人对此有任何建议吗?我使用的SDK版本是1.2.1:
答案 0 :(得分:0)
本教程中的原始应用是控制台应用。您还可以使用控制台应用程序重现该问题吗?还是这仅是网络应用程序的问题? 我看到您打开了RingCentral支持案例。在该支持案例中,我会答复您。找到根案例后,我将在此处发布更新。
更新:我已经尝试了Marko提供的示例代码,并且我想找到了根本原因。当我们尝试通过密码授权时,正在使用的RingCentral应用程序不允许密码流。有关此问题的更多信息:https://forums.developers.ringcentral.com/questions/452/http-400-unauthorized-for-this-grant-type.html