         updateEmptyState()
 
         chatTitleView?.state = SocketManager.sharedInstance.state
-
-        if let subscription = subscription {
-            subscribe(for: subscription)
-        }
     }
 
     override func viewDidAppear(_ animated: Bool) {

        updateMessagesQueryNotificationBlock()
        loadMoreMessagesFrom(date: nil)
        subscribe(for: subscription)
    }

    func registerTypingEvent(_ subscription: Subscription) {
        // TODO: Replace
//        typingIndicatorView?.interval = 0
        guard let user = AuthManager.currentUser() else { return Log.debug("Could not register TypingEvent") }

        let loggedUsername = user.username
        SubscriptionManager.subscribeTypingEvent(subscription) { [weak self] username, flag in
            guard let username = username, username != loggedUsername else { return }

            DispatchQueue.main.async {
                let isAtBottom = self?.chatLogIsAtBottom()

                // TODO: Replace
                if flag {
//                    self?.typingIndicatorView?.insertUsername(username)
                } else {
//                    self?.typingIndicatorView?.removeUsername(username)
                }

                if let isAtBottom = isAtBottom,
                    isAtBottom == true {
                    self?.scrollToBottom(true)
                }
            }
        }
    }

    private func updateMessagesQueryNotificationBlock() {

        API.current()?.client(SubscriptionsClient.self).markAsRead(subscription: subscription)
    }

    internal func updateEmptyState() {
        if self.subscription == nil {
            title = ""
