app->processEvents();
          if (m_api_set && m_console->is_messagesPending() && is_notify_enabled() && m_console->hasFocus()) {
             if (mainWin->m_commDebug) Pmsg1(000, "conn %i process_events\n", m_conn);
-            m_console->write_dir(m_conn, ".messages", false);
             m_console->messagesPending(false);
+            m_console->write_dir(m_conn, ".messages", false);
          }
       }
       if (!m_sock) {
       switch (m_sock->msglen) {
       case BNET_MSGS_PENDING :
          if (is_notify_enabled() && m_console->hasFocus()) {
+            m_console->messagesPending(false);
             if (mainWin->m_commDebug) Pmsg1(000, "conn %i MSGS PENDING\n", m_conn);
             m_console->write_dir(m_conn, ".messages", false);
             m_console->displayToPrompt(m_conn);
-            m_console->messagesPending(false);
             continue;
          }
          m_console->messagesPending(true);
 
 {
    m_timer = new QTimer(this);
    QWidget::connect(m_timer, SIGNAL(timeout()), this, SLOT(poll_messages()));
-   m_timer->start(mainWin->m_checkMessagesInterval*1000);
+   m_timer->start(mainWin->m_checkMessagesInterval*30000);
 }
 
 void Console::stopTimer()
 
    DirComm *dircomm = m_dircommHash.value(conn);
    if (mainWin->m_checkMessages && dircomm->m_at_main_prompt && hasFocus() && !mainWin->getWaitState()){
-      messagesPending(true);
       dircomm->write(".messages");
       displayToPrompt(conn);
       messagesPending(false);