protected void selectScreenCast()
        {
            //4:Screen cast

            Guid   guid      = new Guid();
            string agentName = "";

            IncidentDS.IncidentDSDataTable dt = BllProxyIncident.SelectIncident(profileId);
            if (dt.Rows.Count != 0)
            {
                guid      = dt[0].incident_guid;
                agentName = dt[0].agent_full_name;
            }

            String conferenceName = guid.ToString();


            ConferenceStartupParameters parameters = ConferenceHelper.GetParametersForScreenCast(conferenceName, agentName, true);


            //parameters.ShouldCreateConference = false;
            //parameters.ShouldStartAppShare = false;
            //parameters.UseJavascript = false;

            //string tempConferenceName = Convert.ToString(1000000 + profileId);
            //parameters.ConferenceName = tempConferenceName;


            IncidentHelper.SetIncidentStateScreenCast(profileId);
        }
Ejemplo n.º 2
0
        public static IncidentHelper MakeIncident(StoreIncidentSimple def)
        {
            IncidentHelper helper = (IncidentHelper)Activator.CreateInstance(def.incidentHelper);

            helper.storeIncident = def;
            return(helper);
        }
        protected void selectNotes()
        {
            //5:Notes

            NoteControl.IncidentId = this.profileId;
            IncidentHelper.SetIncidentStateActive(profileId);
        }
        protected void selectConference()
        {
            //case 3: // Video session

            Guid   sessionGUID = new Guid();
            string agentName   = "";

            IncidentDS.IncidentDSDataTable dt = BllProxyIncident.SelectIncident(profileId);
            if (dt.Rows.Count != 0)
            {
                sessionGUID = dt[0].incident_guid;
                agentName   = dt[0].agent_full_name;
            }



            String conferenceName = sessionGUID.ToString();


            ConferenceStartupParameters parameters = ConferenceHelper.GetParametersForMultiVideo(conferenceName, "USER");


            string tempConferenceName = Convert.ToString(1000000 + profileId);

            parameters.ConferenceName = tempConferenceName;
            //VideoChatControl.Parameters = parameters;

            IncidentHelper.SetIncidentStateVideoSession(profileId);
        }
        protected void selectTextChat()
        {
            //2:Text Chat


            string agentName      = "";
            string conferenceName = "";

            IncidentDS.IncidentDSDataTable dt = BllProxyIncident.SelectIncident(profileId);
            if (dt.Rows.Count != 0)
            {
                conferenceName = dt[0].incident_guid.ToString();
                agentName      = dt[0].agent_full_name;
            }


            if (this.UcPage.UserRoleId != 2)   // Agent
            {
                UserDS.UserDSDataTable dtU = BllProxyUser.SelectUser(this.UcPage.UserId);
                if (dtU.Rows.Count != 0)
                {
                    string userRoleTitle = "";


                    switch (this.UcPage.UserRoleId)
                    {
                    case 1:     // Administrator
                        userRoleTitle = "ADMN";
                        break;

                    case 2:     // Agent
                        userRoleTitle = "AGNT";
                        break;

                    case 3:     // Manager
                        userRoleTitle = "MNGR";
                        break;

                    case 4:     // User
                        userRoleTitle = "USER";
                        break;

                    case 5:     // Supervisor
                        userRoleTitle = "SPVR";
                        break;
                    }


                    agentName = dtU[0].full_name + " [" + userRoleTitle + "]";
                }
            }


            TextChatControl.ConfSessionId   = conferenceName;
            TextChatControl.ConfSessionUser = agentName;


            IncidentHelper.SetIncidentStateTextChat(profileId);
        }
        protected void timerRefresh_Tick(object sender, EventArgs e)
        {
            //-----------------------------------------------------------------------
            bool checkState = BllProxyIncidentState.SetIncidentState1(incidentId, this.interval);

            btnDisconnect.Enabled = checkState;
            upDiconnect.Update();

            //-----------------------------------------------------------------------
            DateTime t    = DateTime.Now;
            DateTime last = new DateTime(t.Subtract(startTime).Ticks);
            TimeSpan span = t.Subtract(startTime);

            ltTimeSpan.Text = string.Format("{0:00}:{1:00}:{2:00}", (int)span.TotalHours, span.Minutes, span.Seconds);

            Int32  currentStatusId = 0;
            string state           = "";
            bool   isActive        = IncidentHelper.GetIncidentState(incidentId, ref currentStatusId, ref state);

            //btnDisconnect.Enabled = isActive;
            //upDiconnect.Update();

            bool isSessionFinished = false;

            if (currentStatusId != statusId)
            {
                switch (currentStatusId)
                {
                case 1:     //New
                    break;

                case 2:     //In-Progress
                    break;

                case 3:     //Canceled
                    isSessionFinished = true;
                    break;

                case 4:     //Closed
                    isSessionFinished = true;
                    break;
                }

                statusId = currentStatusId;
            }


            if (statusId == 2) //In-Progress
            {
                //this.setContentPanel(state);
            }



            if (isSessionFinished)
            {
                FinishConference();
            }
        }
        protected void ucIncident_IncidentOpen(object sender, UcControlArgs e)
        {
            Int32 agentId    = ProxyHelper.GetUserAgentId(this.UserId);
            Int32 incidentId = e.Id;

            IncidentHelper.SetIncidentStateActive(incidentId);

            this.showVideo(incidentId);
        }
        protected void mvOpenSession_ActiveViewChanged(object sender, EventArgs e)
        {
            switch (mvOpenSession.ActiveViewIndex)
            {
            case 0:     // Incident details
                selectIncident();
                break;

            case 1:     // Contact details
                selectContact();
                break;

            //case 2: // Video session
            //    selectConference();
            //    break;

            case 3:     // Text Chat
                selectTextChat();
                break;


            //case 4: // Screen cast
            //    selectScreenCast();
            //    break;



            case 5:     // Transfer
                selectTransfer();
                break;


            case 6:     // Notes
                selectNotes();
                break;



            case 7:     // AppShare send
                selectAppShareSend();
                break;

            case 8:     // AppShare receive
                selectAppShareReceive();
                break;



            default:
                IncidentHelper.SetIncidentStateInactive(profileId);
                break;
            }
        }
        protected void selectTransfer()
        {
            //6:Transfer

            IncidentDS.IncidentDSDataTable dt = BllProxyIncident.SelectIncident(profileId);
            if (dt.Rows.Count != 0)
            {
                statusId = dt[0].status_id;
            }

            TransferIncident.IncidentId = this.profileId;
            TransferIncident.StatusId   = this.statusId;
            IncidentHelper.SetIncidentStateActive(profileId);
        }
        //-----------------------------------------------------------------------------
        //-----------------------------------------------------------------------------
        //-----------------------------------------------------------------------------

        #endregion



        /////---------------------------------------------------------------------------------



        protected override void save()
        {
            EditContact.Save();
            Int32 contactId = EditContact.ContactId;

            if ((contactId == 0) && (!EditContact.IsAnonymous))
            {
                this.showErrorMessage("Contact must be defined!");
                mvOpenSession.ActiveViewIndex = 1;
            }
            else
            {
                IncidentHelper.SetIncidentStateInactive(profileId);
                EditIncident.Save(contactId);
                InfoAboutCall.Save();

                UcControlArgs args = new UcControlArgs();
                dataSaved(args);

                SaveAudioRecord();
            }
        }
Ejemplo n.º 11
0
        private static bool TryMakeIncident(StoreIncidentSimple incident, Viewer viewer, string message, out IncidentHelper incidentHelper)
        {
            incidentHelper = StoreIncidentMaker.MakeIncident(incident);

            if (incidentHelper == null)
            {
                return(false);
            }

            incidentHelper.Viewer  = viewer;
            incidentHelper.message = message;

            return(true);
        }
 protected void selectAppShareReceive()
 {
     //8:AppShare receive
     IncidentHelper.SetIncidentStateAppShareReceive(profileId);
 }
 protected void selectAppShareSend()
 {
     //7:AppShare send
     IncidentHelper.SetIncidentStateAppShareSend(profileId);
 }
 protected void selectContact()
 {
     //1:Contact details
     IncidentHelper.SetIncidentStateActive(profileId);
 }
        //-----------------------------------------------------------------------------
        //-----------------------------------------------------------------------------
        //-----------------------------------------------------------------------------

        protected void selectIncident()
        {
            //0:Incident details
            IncidentHelper.SetIncidentStateActive(profileId);
        }