gpt4 book ai didi

IOS VoIP 推送不适用于 APNS 推送

转载 作者:行者123 更新时间:2023-12-04 07:44:46 26 4
gpt4 key购买 nike

我有一个项目,它使用 VoIP 推送进行调用,使用 APNS 推送进行简单通知。 APNS推送来了,但VoIP不来。当服务器尝试通过我的 VoiP token 服务器向我发送 VoiP 推送时,抛出异常“无效 token ”。请查看我的解决方案,让我知道我做的最糟糕的事情。
I created two certificates (APNS and VoiP)
I added certificate to identify, but I can add just APNS
接下来,我生成了 p12 key 并发送到服务器以使用它们。
在 UIApplicationDelegate 中,我检索 APNS token 并发送到服务器

    func application(_ application: UIApplication, didRegisterForRemoteNotificationsWithDeviceToken deviceToken: Data) {
let deviceTokenString = deviceToken.reduce("", {$0 + String(format: "%02X", $1)})

//next send APNS token
}
我在这里收到成功的 APNS token
func application(_ application: UIApplication, didReceiveRemoteNotification userInfo: [AnyHashable : Any], fetchCompletionHandler completionHandler: @escaping (UIBackgroundFetchResult) -> Void)
VoIP 推送通知我首先注册
    func registerForPushVoipNotifications() {
let voipRegistry = PKPushRegistry(queue: DispatchQueue.main)
voipRegistry.delegate = self
voipRegistry.desiredPushTypes = [.voIP]
}
在这里我收到 VoIP 推送 token
    public func pushRegistry(_ registry: PKPushRegistry, didUpdate credentials: PKPushCredentials, for type: PKPushType) {
let token:String? = credentials.token.map { String(format: "%02x", $0) }.joined()
//send VoiP token to server
}
通过发送 VoIP 推送的文档,我必须在这里接收
    func pushRegistry(_ registry: PKPushRegistry, didReceiveIncomingPushWith payload: PKPushPayload, for type: PKPushType, completion: @escaping () -> Void)
但是当服务器发送 VoIP 推送时,它会收到错误 无效 token .我最糟糕的是什么?

最佳答案

  • 首先,您应该使用 p8 authKey 发送推送通知
  • 其次,PKPushRegistry 是存储在 func 中的吗?这很奇怪。将其移动到您类(class)的领域
  • 第三,尝试通过以下代码从数据转换 token :
      class TokenConverter {

    static func token(from data: Data) -> String {

    let tokenParts = data.map { data -> String in
    return String(format: "%02.2hhx", data)
    }

    return tokenParts.joined()
    }
    }
  • 关于IOS VoIP 推送不适用于 APNS 推送,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67250944/

    26 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com