         }
     }
     
+    public func client(client: PubNub, didReceiveMessage message: PNMessageResult) {
+        print(message.debugDescription)
+    }
+    
     // MARK: - UINavigationItem
     
     public override var navBarTitle: String {

        guard let currentClient = self.client else {
            fatalError()
        }
        let section = BasicSection(items: [ConsoleLabelItem(consoleType: .Channels, client: currentClient), ConsoleLabelItem(consoleType: .ChannelGroups, client: currentClient)])
        self.dataSource = BasicDataSource(sections: [section])
        guard let collectionView = self.collectionView else { fatalError("We expected to have a collection view by now. Please contact support@pubnub.com") }
        collectionView.registerClass(LabelCollectionViewCell.self, forCellWithReuseIdentifier: LabelCollectionViewCell.reuseIdentifier)
        collectionView.reloadData() // probably a good idea to reload data after all we just did
        
        // TODO: clean this up later, it's just for debug

//        dispatch_after(delayTime, dispatch_get_main_queue()) {
//            self.client?.subscribeToChannels(["d"], withPresence: true)
//        }
    }
    
    // MARK: - Actions
    func subscribeButtonPressed(sender: UIButton!) {
        // TODO: clean this up
//        self.client?.unsubscribeFromAll() // bad idea to stack this?
        // this is hard-coded, need to fix that
        guard let channelsItem = dataSource[0][0] as? ConsoleLabelItem else {
            fatalError()
        }// this is hard-coded, need to fix that
        let channels = [channelsItem.contentsString]
        self.client?.subscribeToChannels(channels, withPresence: true)
        
    }
    
    // MARK: - CollectionViewControllerDelegate
