Просмотр исходного кода

Update Notification call token

kevin 5 месяцев назад
Родитель
Сommit
035b506858

+ 1 - 1
NexilisLite/NexilisLite.podspec

@@ -24,7 +24,7 @@ Pod::Spec.new do |spec|
   spec.resource_bundles = { 'NexilisLite' => ['NexilisLite/Resource/**/*']}
   spec.swift_version = '5.5.1'
   spec.dependency 'FMDB', '~> 2.7.12'
-  spec.dependency 'nuSDKService', '4.0.7'
+  spec.dependency 'nuSDKService', '4.0.9'
   spec.dependency 'NotificationBannerSwift'
   spec.dependency 'Alamofire', '~> 5.10.2'
   spec.dependency 'SDWebImage', '~> 5.20.0'

+ 10 - 0
NexilisLite/NexilisLite.xcodeproj/project.pbxproj

@@ -13,7 +13,10 @@
 		1241AEBD2D017E8C0088175A /* FileEncryption.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1241AEBA2D017E8C0088175A /* FileEncryption.swift */; };
 		125363982D8031C30006C3D2 /* pb_call_busy.mp3 in Resources */ = {isa = PBXBuildFile; fileRef = 125363972D8031C30006C3D2 /* pb_call_busy.mp3 */; };
 		1258BCB62D82D71200EFF5BD /* ChatWallpaperViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1258BCB52D82D71200EFF5BD /* ChatWallpaperViewController.swift */; };
+		12B1D84E2D8806C400313CCA /* pb_call_in_ios.mp3 in Resources */ = {isa = PBXBuildFile; fileRef = 12B1D84A2D8806C400313CCA /* pb_call_in_ios.mp3 */; };
+		12B1D84F2D8806C400313CCA /* pb_call_out_ios.mp3 in Resources */ = {isa = PBXBuildFile; fileRef = 12B1D84B2D8806C400313CCA /* pb_call_out_ios.mp3 */; };
 		12C36CEB2D0299630095BEC1 /* SecureFolderView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 12C36CEA2D02995F0095BEC1 /* SecureFolderView.swift */; };
+		12CB2E472D82F5660071E594 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = CD46A0172A0CE2DE009E4C87 /* Assets.xcassets */; };
 		B71100C03F3EE76CC1FFC618 /* Pods_NexilisLite.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 56F0A46991FE6BE0FDE74132 /* Pods_NexilisLite.framework */; };
 		CD1E6E6D2A0B7C3600BF871F /* NexilisLite.docc in Sources */ = {isa = PBXBuildFile; fileRef = CD1E6E6C2A0B7C3600BF871F /* NexilisLite.docc */; };
 		CD1E6E732A0B7C3600BF871F /* NexilisLite.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = CD1E6E682A0B7C3600BF871F /* NexilisLite.framework */; };
@@ -282,6 +285,8 @@
 		1241AEBB2D017E8C0088175A /* MasterKeyUtil.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MasterKeyUtil.swift; sourceTree = "<group>"; };
 		125363972D8031C30006C3D2 /* pb_call_busy.mp3 */ = {isa = PBXFileReference; lastKnownFileType = audio.mp3; path = pb_call_busy.mp3; sourceTree = "<group>"; };
 		1258BCB52D82D71200EFF5BD /* ChatWallpaperViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ChatWallpaperViewController.swift; sourceTree = "<group>"; };
+		12B1D84A2D8806C400313CCA /* pb_call_in_ios.mp3 */ = {isa = PBXFileReference; lastKnownFileType = audio.mp3; path = pb_call_in_ios.mp3; sourceTree = "<group>"; };
+		12B1D84B2D8806C400313CCA /* pb_call_out_ios.mp3 */ = {isa = PBXFileReference; lastKnownFileType = audio.mp3; path = pb_call_out_ios.mp3; sourceTree = "<group>"; };
 		12C36CEA2D02995F0095BEC1 /* SecureFolderView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SecureFolderView.swift; sourceTree = "<group>"; };
 		56F0A46991FE6BE0FDE74132 /* Pods_NexilisLite.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_NexilisLite.framework; sourceTree = BUILT_PRODUCTS_DIR; };
 		5AFDB202A2CA7FE864B0B1C2 /* Pods-NexilisLite-NexilisLiteTests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-NexilisLite-NexilisLiteTests.debug.xcconfig"; path = "Target Support Files/Pods-NexilisLite-NexilisLiteTests/Pods-NexilisLite-NexilisLiteTests.debug.xcconfig"; sourceTree = "<group>"; };
@@ -952,6 +957,8 @@
 		CDE3BED82C86E3A000B0BF36 /* Sound */ = {
 			isa = PBXGroup;
 			children = (
+				12B1D84A2D8806C400313CCA /* pb_call_in_ios.mp3 */,
+				12B1D84B2D8806C400313CCA /* pb_call_out_ios.mp3 */,
 				1236B6842D81465800A97809 /* pb_call_in_long.mp3 */,
 				125363972D8031C30006C3D2 /* pb_call_busy.mp3 */,
 				CD2585B72D59DA60002AB416 /* Dutifully.mp3 */,
@@ -1126,6 +1133,8 @@
 				CD2585CA2D59DA60002AB416 /* Relax.mp3 in Resources */,
 				CD2585CB2D59DA60002AB416 /* Eventually.mp3 in Resources */,
 				CD2585CC2D59DA60002AB416 /* Upset.mp3 in Resources */,
+				12B1D84E2D8806C400313CCA /* pb_call_in_ios.mp3 in Resources */,
+				12B1D84F2D8806C400313CCA /* pb_call_out_ios.mp3 in Resources */,
 				125363982D8031C30006C3D2 /* pb_call_busy.mp3 in Resources */,
 				CD2585CD2D59DA60002AB416 /* Elegant.mp3 in Resources */,
 				CD2585CE2D59DA60002AB416 /* Strong_Minded.mp3 in Resources */,
@@ -1211,6 +1220,7 @@
 				CDB21B2F2BA9998400EC5280 /* pb_def_icon_mode4.gif in Resources */,
 				CD46A0AC2A0CE320009E4C87 /* sticker_30000000_22.png in Resources */,
 				CD46A0AD2A0CE320009E4C87 /* sticker_30000000_36.png in Resources */,
+				12CB2E472D82F5660071E594 /* Assets.xcassets in Resources */,
 				CD46A0AE2A0CE320009E4C87 /* sticker_20000000_10.png in Resources */,
 				CD46A0AF2A0CE320009E4C87 /* sticker_20000000_3.png in Resources */,
 				CD46A0B02A0CE320009E4C87 /* sticker_10000000_9.png in Resources */,

+ 17 - 6
NexilisLite/NexilisLite/Source/APIS.swift

@@ -880,15 +880,26 @@ public class APIS: NSObject {
         Nexilis.openmailAction()
     }
     
-    public static func sendPushToken(_ token: String, isResend: Bool = false) {
+    public static func sendPushToken(_ token: String, isResend: Bool = false, isCall: Bool = false) {
         DispatchQueue.global().async{
             var isResend = isResend
-            if Utils.getTokenAPN().isEmpty || token != Utils.getTokenAPN() || isResend {
-                Utils.setTokenAPN(value: token)
-                isResend = true
+            if !isCall {
+                if Utils.getTokenAPN().isEmpty || token != Utils.getTokenAPN() || isResend {
+                    Utils.setTokenAPN(value: token)
+                    isResend = true
+                }
+                if isResend {
+                    _ = Nexilis.write(message: CoreMessage_TMessageBank.getToken(token: token))
+                }
             }
-            if isResend {
-                _ = Nexilis.write(message: CoreMessage_TMessageBank.getToken(token: token))
+            else {
+                if Utils.getTokenCall().isEmpty || token != Utils.getTokenCall() || isResend {
+                    Utils.setTokenCall(value: token)
+                    isResend = true
+                }
+                if isResend {
+                    _ = Nexilis.write(message: CoreMessage_TMessageBank.getToken(token: token, isCall: true))
+                }
             }
         }
     }

+ 7 - 2
NexilisLite/NexilisLite/Source/CoreMessage_TMessageBank.swift

@@ -2613,13 +2613,18 @@ public class CoreMessage_TMessageBank {
         return tMessage
     }
     
-    public static func getToken(token: String) -> TMessage {
+    public static func getToken(token: String, isCall: Bool = false) -> TMessage {
         let tMessage = NexilisLite.TMessage()
         let me = User.getMyPin() ?? ""
         tMessage.mPIN = me
         tMessage.mCode = CoreMessage_TMessageCode.APN_TOKEN
         tMessage.mStatus = CoreMessage_TMessageUtil.getTID()
-        tMessage.mBodies[CoreMessage_TMessageKey.TOKEN] = token
+        if !isCall {
+            tMessage.mBodies[CoreMessage_TMessageKey.TOKEN] = token
+        }
+        else {
+            tMessage.mBodies[CoreMessage_TMessageKey.CALL_TOKEN] = token
+        }
         tMessage.mBodies[CoreMessage_TMessageKey.DEVICE_BRAND] = "iOS"
         tMessage.mBodies[CoreMessage_TMessageKey.ANDROID_ID] = Utils.M_USER_ANDROID_ID
         return tMessage

+ 10 - 0
NexilisLite/NexilisLite/Source/Utils.swift

@@ -1324,6 +1324,16 @@ public final class Utils {
         return ""
     }
     
+    public static func setTokenCall(value: String) {
+        SecureUserDefaults.shared.set(value, forKey: "token_call")
+    }
+    public static func getTokenCall() -> String {
+        if let value: String = SecureUserDefaults.shared.value(forKey: "token_call") {
+            return value
+        }
+        return ""
+    }
+    
     public static func setLastTabSelected(value: Int) {
         SecureUserDefaults.shared.set(value, forKey: "last_selected_tab")
     }

+ 1 - 1
NexilisLite/Podfile

@@ -7,7 +7,7 @@ target 'NexilisLite' do
 
   # Pods for NexilisLite
 
-  pod 'nuSDKService', '4.0.7'
+  pod 'nuSDKService', '4.0.9'
   pod 'FMDB', '~> 2.7.12'
   pod 'NotificationBannerSwift', :git => 'https://github.com/Daltron/NotificationBanner.git', :tag => '4.0.0'
   pod 'Alamofire', '~> 5.10.2'