当前位置: 首页 > 知识库问答 >
问题:

注册iOS Twilio语音客户端时推送通知错误

田嘉澍
2023-03-14
    null

Twilio真的支持VoIP推送吗?如果是,这个设置会有什么问题?

谢谢,古文。

在Viktor的指导下编辑:我现在手动创建Voicegrant。我将key属性的值设置为'voice'。下面是赠款的样子:

{ 
    outgoing_application_sid: 'APXX',
    push_credential_sid: 'CRXX',
    endpoint_id: 'XX' 
}
{ outgoing:  { application_sid: 'APXX' },
  push_credential_sid: 'CRXX',
  endpoint_id: 'XX' 
}
  var accessToken = new twilio.AccessToken("ACXX", "SKXX", "PPXX", accessTokenOptions);

  var voiceGrantConfig = {"outgoingApplicationSid": "APXX", 
                                "endpointId": clientName,
                                "pushCredentialSid": "CRXX"};

  var voiceGrant = new VoiceGrant(voiceGrantConfig);
  voiceGrant.key = "voice";
  console.log(voiceGrant.toPayload());
  accessToken.addGrant(voiceGrant);

  var token = accessToken.toJwt();

编辑2:我实际上已经升级到twilio-node 2.11.0,但仍然得到错误。下面是生成JWT之前的访问令牌。

AccessToken {
  accountSid: 'ACXX',
  keySid: 'SKXX',
  secret: 'PPXX',
  ttl: 86400,
  identity: undefined,
  nbf: undefined,
  grants: 
   [ VoiceGrant {
       outgoingApplicationSid: 'APXX',
       outgoingApplicationParams: undefined,
       pushCredentialSid: 'CRXX',
       endpointId: 'XX' } ] }

共有1个答案

邹正阳
2023-03-14

[根据Guven的反馈编辑]

你需要一个“声音”资助。否则,语音产品将拒绝您的请求。您要么需要在签名之前手动将该部分添加到JSON中,要么需要升级到2.11.0版本。具体来说,您的令牌需要如下所示:

{
  "sub": "ACxxxx",
  "iss": "SKxxxx",
  "grants": {
    "voice": {
      "outgoing": {
         "application_sid": "APxxxx"
      },
      "push_credential_sid": "CRxxxxx"
    },
    "identity": "voice_test"
  },
  "jti": "SKxxxxx",
  "exp": 1479315711
}

注意,还有“identity”元素。这是您的用户的标识符。通常是它的用户名或系统中用户记录的ID。

 类似资料:
  • 我正在尝试使用parse.com推送通知服务向我的iOS应用添加推送通知,但我遇到了一些问题,我的一些设备没有收到通知。 当前代码 这似乎在某些设备上起作用(在同事的iPhone5上测试过--起作用了,在我老板的iPhone6上测试过--不起作用) 第43行: 警告2: /users/ds/code/rp-ios/rp/appdelegate.swift:44:25:iOS 8.0中不推荐使用“R

  • 问题内容: 我想创建一个应用程序,当超级用户单击链接时,用户应该获得通知或类似pdf的内容,以便他们在屏幕上访问。 用例:当教师想与他的学生共享PDF时,他应该能够通知他的学生有关可下载的pdf的信息,并且必须提供一个链接来做到这一点。 问题答案: 当您想在CakePHP中实现此功能(因此我假设它是基于Web的应用程序)时,用户必须打开“活动”页面才能接收推送消息。 值得一看前两个答案,但也只需考

  • 我正在尝试使用Azure通知中心向客户端发送推送通知。我读了这篇文章,它使用标签来识别每个用户。 https://azure.microsoft.com/en-us/documentation/articles/notification-hubs-aspnet-backend-windows-dotnet-notify-users/ 它可以完成这项工作,但标记的数量有限。我正在考虑存储和使用中心返

  • 在我的iOS应用程序中,我需要通知用户远程设备上的一些紧急事件。无论应用程序的状态如何,用户都需要获得警报:如果应用程序处于前台、后台模式,甚至被杀死。 根据Apple文档,只有“voip”后台模式允许“保持活动”功能在后台与服务器保持连接。但“voip”模式只允许用于真正的voip应用程序,我的应用程序不提供任何voip服务。因此,我认为我的案例的唯一选择是使用Apple推送通知。 当用户的iO

  • 我试图让我的应用程序在Xcode 8.0下运行,但遇到了一个错误。我知道这段代码在以前的swift版本中运行良好,但我假设新版本中的代码有所更改。以下是我试图运行的代码: 我得到的错误是“参数标签”(forTypes:,categories:)“不匹配任何可用的重载” 有没有其他命令可以让我试着让它工作?

  • 在Parse的推送通知中有一个奇怪的行为。您可以在这里下载一个空白项目和做一些实验https://parse.com/downloads/ios/parse-starter-project/latest 要注册推送通知,我们需要中的这段代码 然后,在中,我们包括: 以下是案例: 案例1。如果你的手机没有一个版本的应用程序,而你运行了代码,它会注册推送通知的设备--一切都运行得很好。 案例2。如果最