예제 #1
0
        public void HandleDirectoryListReceived(Object s, EventArgs e)
        {
            JADA.EventArgs args = (JADA.EventArgs)e;

            if (System.IO.File.Exists(args.FileName))
            {
                string[] textData = System.IO.File.ReadAllLines(args.FileName);

                if (lstAgent.InvokeRequired)
                {
                    lstAgent.Invoke(new MethodInvoker(delegate
                    {
                        for (int i = 0; i < textData.Length; i++)
                        {
                            lstAgent.Items.Add(textData[i]);
                        }
                        lstAgent.Refresh();
                    }));
                }
                else
                {
                    for (int i = 0; i < textData.Length; i++)
                    {
                        lstAgent.Items.Add(textData[i]);
                    }
                    lstAgent.Refresh();
                }

                System.IO.File.Delete(args.FileName);
            }
        }
예제 #2
0
        public void HandleSupportAccepted(Object s, EventArgs e)
        {
            int    iRet;
            string szMessage, szChatText;

            JADA.EventArgs args = (JADA.EventArgs)e;

            myAgentUsaAudio = args.UsaAudio;

            szMessage = string.Format("{0}: richiesta {1} di {2} presa in gestione",
                                      args.Time, args.RequestId, args.Utente);
            JADA.GUI.AddControlText(txtStatus, szMessage);

            PrintRequestInfo(args.Utente, args.ChatText, args.Area, args.Description);

            SetRequestStatus(JADA.Common.TRUE);

            szChatText = GetWelcomeMessage();
            iRet       = winmanager.Globals.suppSelf.SendChat(szChatText);
            if (iRet == 0)
            {
                PrintChat(winmanager.Globals.connSelf.Nome, szChatText);
            }

            MessageBox.Show(String.Format("La richiesta di supporto {0} e' stata presa in gestione.", args.RequestId), winmanager.Globals.PROCESS_NAME);
        }
예제 #3
0
        public void HandleDesktopOpened(Object s, EventArgs e)
        {
            string szMessage;

            JADA.EventArgs args = (JADA.EventArgs)e;

            szMessage = string.Format("{0}: desktop remoto {1} aperto",
                                      args.Time, args.RequestId);
            JADA.GUI.AddControlText(txtStatus, szMessage);
        }
예제 #4
0
        //*********************************************************************
        //
        //     G E S T I O N E     E V E N T I
        //
        //*********************************************************************
        public void HandleConnectionOpened(Object s, EventArgs e)
        {
            string szMessage;

            JADA.EventArgs args = (JADA.EventArgs)e;

            szMessage = string.Format("{0}: sessione {1} aperta",
                                      args.Time, args.SessionId);
            JADA.GUI.AddControlText(txtStatus, szMessage);
        }
예제 #5
0
        public void HandleSupportSolicited(Object s, EventArgs e)
        {
            string szMessage;

            JADA.EventArgs args = (JADA.EventArgs)e;

            szMessage = string.Format("{0}: richiesta {1} sollecitata",
                                      args.Time, args.RequestId);
            JADA.GUI.AddControlText(txtStatus, szMessage);

            MessageBox.Show("La tua precedente richiesta di supporto e' stata sollecitata.", winagent.Globals.PROCESS_NAME);
        }
예제 #6
0
        public void HandleSupportSuspended(Object s, EventArgs e)
        {
            string szMessage;

            JADA.EventArgs args = (JADA.EventArgs)e;

            szMessage = string.Format("{0}: richiesta {1} sospesa, avendo perso la connessione con l'utente {2}",
                                      args.Time, args.RequestId, args.Utente);
            JADA.GUI.AddControlText(txtStatus, szMessage);
            SetRequestStatus(JADA.Common.FALSE);

            MessageBox.Show(String.Format("Ho perso la connessione con {0}: attendi che si riconnetta.", args.Utente), winmanager.Globals.PROCESS_NAME);
        }
예제 #7
0
        public void HandleSupportConnected(Object s, EventArgs e)
        {
            string szMessage;

            JADA.EventArgs args = (JADA.EventArgs)e;

            szMessage = string.Format("{0}: richiesta {1} nuovamente aperta, sei connesso con {2}",
                                      args.Time, args.RequestId, args.Utente);
            JADA.GUI.AddControlText(txtStatus, szMessage);
            SetSupportStatus(JADA.Common.TRUE);

            MessageBox.Show("La tua precedente richiesta di supporto e' stata ripresa.", winagent.Globals.PROCESS_NAME);
        }
예제 #8
0
        public void HandleConnectionClosed(Object s, EventArgs e)
        {
            string szMessage;

            JADA.EventArgs args = (JADA.EventArgs)e;

            szMessage = string.Format("{0}: sessione {1} caduta",
                                      args.Time, args.SessionId);
            JADA.GUI.AddControlText(txtStatus, szMessage);
            SetSupportStatus(JADA.Common.FALSE);

            MessageBox.Show("La connessione con il server e' caduta, per favore chiudi l'agent e riaprilo per ripristinarla.", winagent.Globals.PROCESS_NAME);
        }
예제 #9
0
        public void HandleSupportAccepted(Object s, EventArgs e)
        {
            string szMessage;

            JADA.EventArgs args = (JADA.EventArgs)e;

            szMessage = string.Format("{0}: richiesta {1} presa in gestione da {2}",
                                      args.Time, args.RequestId, args.Utente);
            JADA.GUI.AddControlText(txtStatus, szMessage);
            SetSupportStatus(JADA.Common.TRUE);

            MessageBox.Show(String.Format("La tua richiesta di supporto {0} e' stata presa in gestione,\na breve sarai contattato da un nostro operatore.", args.RequestId), winagent.Globals.PROCESS_NAME);
        }
예제 #10
0
        public void HandleSupportOpened(Object s, EventArgs e)
        {
            string szMessage;

            JADA.EventArgs args = (JADA.EventArgs)e;

            szMessage = string.Format("{0}: richiesta {1} aperta",
                                      args.Time, args.RequestId);
            JADA.GUI.AddControlText(txtStatus, szMessage);
            SetSupportStatus(JADA.Common.TRUE);

            MessageBox.Show(String.Format("Una nuova richiesta di supporto (id {0}) e' stata aperta.", args.RequestId), winagent.Globals.PROCESS_NAME);
        }
예제 #11
0
        public void HandleSupportLoaded(Object s, EventArgs e)
        {
            string szMessage;

            JADA.EventArgs args = (JADA.EventArgs)e;

            myAgentUsaAudio = args.UsaAudio;

            szMessage = string.Format("{0}: richiesta pending {1} presa in carico",
                                      args.Time, args.RequestId, args.Utente);
            JADA.GUI.AddControlText(txtStatus, szMessage);

            MessageBox.Show(String.Format("La richiesta di supporto precedente {0} e' stata ripresa.", args.RequestId), winmanager.Globals.PROCESS_NAME);
        }
예제 #12
0
        public void HandleSupportClosed(Object s, EventArgs e)
        {
            string szMessage;

            JADA.EventArgs args = (JADA.EventArgs)e;

            szMessage = string.Format("{0}: richiesta {1} chiusa dall'utente {2}",
                                      args.Time, args.RequestId, args.Utente);
            JADA.GUI.AddControlText(txtStatus, szMessage);

            winmanager.Globals.vncSelf.CloseDesktop();
            SetRequestStatus(JADA.Common.FALSE);

            MessageBox.Show(String.Format("La richiesta di supporto {0} e' stata chiusa.", args.RequestId), winmanager.Globals.PROCESS_NAME);
        }
예제 #13
0
        public void HandlePingReply(Object s, EventArgs e)
        {
            JADA.EventArgs args = (JADA.EventArgs)e;

            if (lblDelay.InvokeRequired)
            {
                lblDelay.Invoke(new MethodInvoker(delegate
                {
                    lblDelay.Text = args.PointX.ToString();
                    if (args.PointX > 400)
                    {
                        lblDelay.ForeColor = System.Drawing.Color.Red;
                        toolTip.SetToolTip(lblDelay, "Connessione molto lenta: evita la chiamata audio/video");
                    }
                    else if (args.PointX > 200)
                    {
                        lblDelay.ForeColor = System.Drawing.Color.Yellow;
                        toolTip.SetToolTip(lblDelay, "Connessione lenta: sconsiglio la chiamata audio/video");
                    }
                    else
                    {
                        lblDelay.ForeColor = System.Drawing.Color.Green;
                        toolTip.SetToolTip(lblDelay, "Connessione accettabile: la chiamata audio/video e' possibile");
                    }
                }));
            }
            else
            {
                lblDelay.Text = args.PointX.ToString();
                if (args.PointX > 400)
                {
                    lblDelay.ForeColor = System.Drawing.Color.Red;
                    toolTip.SetToolTip(lblDelay, "Connessione molto lenta: evita la chiamata audio/video");
                }
                else if (args.PointX > 200)
                {
                    lblDelay.ForeColor = System.Drawing.Color.Orange;
                    toolTip.SetToolTip(lblDelay, "Connessione lenta: sconsiglio la chiamata audio/video");
                }
                else
                {
                    lblDelay.ForeColor = System.Drawing.Color.Green;
                    toolTip.SetToolTip(lblDelay, "Connessione accettabile: la chiamata audio/video e' possibile");
                }
            }
        }
예제 #14
0
        public void HandleSupportResumed(Object s, EventArgs e)
        {
            string szMessage;

            JADA.EventArgs args = (JADA.EventArgs)e;

            szMessage = string.Format("{0}: richiesta {1} ripresa in gestione ",
                                      args.Time, args.RequestId);
            JADA.GUI.AddControlText(txtStatus, szMessage);
            SetSupportStatus(JADA.Common.TRUE);

            if (args.Result != 0)
            {
                MessageBox.Show(String.Format("La richiesta di supporto {0} e' stata ripresa in gestione,\nsono connesso al partner.", args.RequestId), winagent.Globals.PROCESS_NAME);
            }
            else
            {
                MessageBox.Show(String.Format("La richiesta di supporto {0} e' stata ripresa in gestione,\nsono in attesa di connessione del partner.", args.RequestId), winagent.Globals.PROCESS_NAME);
            }
        }
예제 #15
0
        public void HandleSupportConnected(Object s, EventArgs e)
        {
            int    iRet;
            string szMessage, szChatText;

            JADA.EventArgs args = (JADA.EventArgs)e;

            myAgentUsaAudio = args.UsaAudio;

            szMessage = string.Format("{0}: richiesta pending {1} in gestione, sei connesso con {2}",
                                      args.Time, args.RequestId, args.Utente);
            JADA.GUI.AddControlText(txtStatus, szMessage);

            SetRequestStatus(JADA.Common.TRUE);

            szChatText = GetWelcomeMessage();
            iRet       = winmanager.Globals.suppSelf.SendChat(szChatText);
            if (iRet == 0)
            {
                PrintChat(winmanager.Globals.connSelf.Nome, szChatText);
            }

            MessageBox.Show(String.Format("L'utente è collegato, la richiesta di supporto {0} e' stata presa in gestione.", args.RequestId), winmanager.Globals.PROCESS_NAME);
        }
예제 #16
0
        public void HandleDrawPointerReset(Object s, EventArgs e)
        {
            JADA.EventArgs args = (JADA.EventArgs)e;

            winagent.Globals.frmDraw.ResetPointer();
        }
예제 #17
0
        public void HandleDrawPointerMoved(Object s, EventArgs e)
        {
            JADA.EventArgs args = (JADA.EventArgs)e;

            winagent.Globals.frmDraw.SetPointer(args.ItemType, args.PointX, args.PointY);
        }
예제 #18
0
        public void HandleChatTextReceived(Object s, EventArgs e)
        {
            JADA.EventArgs args = (JADA.EventArgs)e;

            PrintChat(winagent.Globals.suppSelf.YourName, args.ChatText);
        }
예제 #19
0
        public void HandleFileReceived(Object s, EventArgs e)
        {
            int iProgress, iIndex;

            JADA.EventArgs args = (JADA.EventArgs)e;

            iProgress = (args.CurrFrame * 100) / args.Frames;
            if (txtReceivingFile.InvokeRequired)
            {
                txtReceivingFile.Invoke(new MethodInvoker(delegate
                {
                    if (iProgress < 100)
                    {
                        txtReceivingFile.Text = args.FileName;
                        progGetFile.Value     = iProgress;
                    }
                    else
                    {
                        txtReceivingFile.Text = "";
                        progGetFile.Value     = 0;
                        iIndex = lstAgent.FindString(Path.GetFileName(args.FileName));
                        if (iIndex != -1)
                        {
                            lstAgent.SetSelected(iIndex, false);
                        }

                        if (btnCancel.Enabled == true)
                        {
                            if (lstAgent.SelectedItems.Count > 0)
                            {
                                string szLocalFile  = txtManagerCurrDir.Text + lstAgent.SelectedItems[0].ToString();
                                string szRemoteFile = txtAgentCurrDir.Text + lstAgent.SelectedItems[0].ToString();
                                int iRet            = winmanager.Globals.suppSelf.GetFile(szRemoteFile, szLocalFile);
                            }
                        }
                        else
                        {
                            LoadLocalDir(txtManagerCurrDir.Text);
                        }
                    }
                }));
            }
            else
            {
                if (iProgress < 100)
                {
                    txtReceivingFile.Text = args.FileName;
                    progGetFile.Value     = iProgress;
                }
                else
                {
                    txtReceivingFile.Text = "";
                    progGetFile.Value     = 0;
                    iIndex = lstAgent.FindString(Path.GetFileName(args.FileName));
                    if (iIndex != -1)
                    {
                        lstAgent.SetSelected(iIndex, false);
                    }

                    if (btnCancel.Enabled == true)
                    {
                        if (lstAgent.SelectedItems.Count > 0)
                        {
                            string szLocalFile  = txtManagerCurrDir.Text + lstAgent.SelectedItems[0].ToString();
                            string szRemoteFile = txtAgentCurrDir.Text + lstAgent.SelectedItems[0].ToString();
                            int    iRet         = winmanager.Globals.suppSelf.GetFile(szRemoteFile, szLocalFile);
                        }
                    }
                    else
                    {
                        LoadLocalDir(txtManagerCurrDir.Text);
                    }
                }
            }
        }
예제 #20
0
        public void HandleListCountersReceived(Object s, EventArgs e)
        {
            JADA.EventArgs args = (JADA.EventArgs)e;
            string         myText;

            myText = String.Format("Aggiornamento di contatori: totali {0}/{1}, pending {2}/{3}\n",
                                   args.AreaRequests.ToString(), args.TotalRequests.ToString(), args.AreaRequests.ToString(), args.TotalRequests.ToString());
            JADA.Common.LogMessage(myText);

            if (btnSupports.InvokeRequired)
            {
                btnSupports.Invoke(new MethodInvoker(delegate
                {
                    myText           = btnSupports.Text.Substring(0, btnSupports.Text.IndexOf("("));
                    btnSupports.Text = myText + "(" + args.AreaRequests.ToString() + "/" + args.TotalRequests.ToString() + ")";
                    if (args.TotalRequests == 0)
                    {
                        btnSupports.BackColor = Color.Green;
                    }
                    else if ((args.AreaRequests == 0) && (args.TotalRequests > 0))
                    {
                        btnSupports.BackColor = Color.Yellow;
                    }
                    else if (args.AreaRequests > 0)
                    {
                        btnSupports.BackColor = Color.Red;
                    }
                }));
            }
            else
            {
                myText           = btnSupports.Text.Substring(0, btnSupports.Text.IndexOf("("));
                btnSupports.Text = myText + "(" + args.AreaRequests.ToString() + "/" + args.TotalRequests.ToString() + ")";
                if (args.TotalRequests == 0)
                {
                    btnSupports.BackColor = Color.Green;
                }
                else if ((args.AreaRequests == 0) && (args.TotalRequests > 0))
                {
                    btnSupports.BackColor = Color.Yellow;
                }
                else if (args.AreaRequests > 0)
                {
                    btnSupports.BackColor = Color.Red;
                }
            }

            if (btnPendingSupports.InvokeRequired)
            {
                btnPendingSupports.Invoke(new MethodInvoker(delegate
                {
                    myText = btnPendingSupports.Text.Substring(0, btnPendingSupports.Text.IndexOf("("));
                    btnPendingSupports.Text = myText + "(" + args.AreaPendingRequests.ToString() + "/" + args.TotalPendingRequests.ToString() + ")";
                    if (args.TotalPendingRequests == 0)
                    {
                        btnPendingSupports.BackColor = Color.Green;
                    }
                    else if ((args.AreaPendingRequests == 0) && (args.TotalPendingRequests > 0))
                    {
                        btnPendingSupports.BackColor = Color.Yellow;
                    }
                    else if (args.AreaPendingRequests > 0)
                    {
                        btnPendingSupports.BackColor = Color.Red;
                    }
                }));
            }
            else
            {
                myText = btnPendingSupports.Text.Substring(0, btnPendingSupports.Text.IndexOf("("));
                btnPendingSupports.Text = myText + "(" + args.AreaPendingRequests.ToString() + "/" + args.TotalPendingRequests.ToString() + ")";
                if (args.TotalPendingRequests == 0)
                {
                    btnPendingSupports.BackColor = Color.Green;
                }
                else if ((args.AreaPendingRequests == 0) && (args.TotalPendingRequests > 0))
                {
                    btnPendingSupports.BackColor = Color.Yellow;
                }
                else if (args.AreaPendingRequests > 0)
                {
                    btnPendingSupports.BackColor = Color.Red;
                }
            }
        }