         self.commandDelegate!.runInBackground({
             
             self.push.retrieveAvailableTagsWithCompletionHandler { (response:IMFResponse!, error:NSError!) -> Void in
-                let tags = response.availableTags()
+                let tags = response.availableTags() as! [String]
                 let pluginResult = CDVPluginResult(status: CDVCommandStatus_OK, messageAsArray: tags)
                 // call success callback
                 self.commandDelegate!.sendPluginResult(pluginResult, callbackId:command.callbackId)

                return
            }
            self.push.subscribeToTags(tagsArray, completionHandler: { (response:IMFResponse!, error:NSError!) -> Void in

                let message = "Subscribed to the following tags: " + tagsArray.description
                let pluginResult = CDVPluginResult(status: CDVCommandStatus_OK, messageAsString: message)
                // call success callback

    
    /*
    * Registers the device on to the IMFPush Notification Server
    *
    func register(command: CDVInvokedUrlCommand) {
        
        self.commandDelegate!.runInBackground({
