                     
                 }
             } else{
-               self.push.registerWithDeviceToken(deviceToken: deviceToken, WithUserId: CDVBMSPush.pushUserId) { (response, statusCode, error) -> Void in
+               BMSPushClient.sharedInstance.registerWithDeviceToken(deviceToken: deviceToken, WithUserId: CDVBMSPush.pushUserId) { (response, statusCode, error) -> Void in
                     
                     if error.isEmpty {
                         

    func retrieveSubscriptions(command: CDVInvokedUrlCommand){
        self.commandDelegate.runInBackground({
            
            self.push.retrieveSubscriptionsWithCompletionHandler { (response, statusCode, error) -> Void in
                
                if error.isEmpty {
                    

                return
            }
            let tagsArray = [tag]
            BMSPushClient.sharedInstance.subscribeToTags(tagsArray, completionHandler: { (response, statusCode, error) -> Void in
                if error.isEmpty{
                    let pluginResult = CDVPluginResult(status: CDVCommandStatus_OK, messageAsArray: [response!.description])
                    // call success callback
