Genesys CTI User Forum

Genesys CTI User Forum => Genesys CTI Technical Discussion => Topic started by: fredf on October 05, 2016, 10:17:35 AM

Title: [WDE] Focus on a specific CaseViewSideButtonRegion
Post by: fredf on October 05, 2016, 10:17:35 AM
Hi,

I'm having trouble finding out if it's possible to actually set which of the regions that will be open when a new interaction pops up. The only thing I found is the views.CaseViewSideButtonRegion.order option that only allows me to change the order of the tabs, not which one who should have focus.

Is this possible with options and if not is it possible with custom code?

Thanks in advance.

Br,
Fredrik
Title: Re: [WDE] Focus on a specific CaseViewSideButtonRegion
Post by: Kubig on October 05, 2016, 10:21:13 AM
Why do you want to achieve that through customization only? There is default function providing this funcionality - check WDE guide carefuly.
Title: Re: [WDE] Focus on a specific CaseViewSideButtonRegion
Post by: fredf on October 05, 2016, 11:04:48 AM
Well I'm not sure about that. I see you can use the .active-order option for other regions that will select the first in the defined list.

But active-order does not exist for views.CaseViewSideButtonRegion or views.ToolbarWorksheetButtonRegion, I'm thinking that active-order was the default functionality you where referring to?
Title: Re: [WDE] Focus on a specific CaseViewSideButtonRegion
Post by: Kubig on October 05, 2016, 11:21:00 AM
I think, you want to open a specific caseview with any next interaction - this should be easily configured on WDE level (on application object level or higher agent, agent groups, etc.),because of the WDE is storing information about latest window and caseview composite. So, if you run WDE for first time and arrange your windows/caseview as you want, with each next login the arrange will be always same.
So easy, why reinvent the wheel...
Title: Re: [WDE] Focus on a specific CaseViewSideButtonRegion
Post by: fredf on October 06, 2016, 06:55:08 AM
Yes ok, I see your point now. Though I have another problem with that, in our test environment this works, all is saved in the agents Annex as expected but not in production. Even though have checked all options for this that I can think of. Any clues to why this is?

Any role privileges or somethings like that?
Title: Re: [WDE] Focus on a specific CaseViewSideButtonRegion
Post by: Kubig on October 06, 2016, 06:57:36 AM
This must be allowed on WDE level (option options.record-option-locally-only) and of course the agents must have write permission on own agent objects.
Title: Re: [WDE] Focus on a specific CaseViewSideButtonRegion
Post by: petitspirou on December 05, 2016, 11:09:31 AM
Do you find how to focus ?
WDE focuses on the last tab opened in the previous interaction
I need to focus always on my custom tab, regardless the previous one
Thus, how to desactivate the last-information-panel process ?
Title: Re: [WDE] Focus on a specific CaseViewSideButtonRegion
Post by: daniel_san on December 07, 2016, 11:35:10 AM
[quote author=petitspirou link=topic=9881.msg45363#msg45363 date=1480936171]
Do you find how to focus ?
[b]WDE focuses on the last tab opened in the previous interaction[/b]
I need to focus always on my custom tab, regardless the previous one
Thus, how to desactivate the last-information-panel process ?
[/quote]

That. As petitspirou said, our WDE works on that way, opening last tab on the previous interaction.

You can try to work launching and event on load like the button "splitToggleButton" of the views (if you work with customized view, i supose you have one) works whenever you click on it.

See the interaction example on WDE samples, but must be something like:

private void splitToggleButton_Click(object sender, System.Windows.RoutedEventArgs e)
        {

// Lock MinSize
viewEventManager.Publish(new GenericEvent()
{
SourceId = null,
Target = GenericContainerView.ContainerView,
Context = Model.Case.CaseId,
TargetId = null,
Action = new GenericAction[]
{
new GenericAction ()
{
Action = ActionGenericContainerView.LockMinSize,
Parameters = new object[] { true, "InteractionContainerView" }
}
}
});

            viewEventManager.Publish(new GenericEvent()
            {
                Target = GenericContainerView.ContainerView,
                Context = Model.Case.CaseId,
                Action = new GenericAction[]
{
new GenericAction ()
{
Action = ActionGenericContainerView.ShowHidePanelRight,
Parameters = new object[] { splitToggleButton.IsChecked ?? false ? Visibility.Visible : Visibility.Collapsed, "Interaction" }
},
new GenericAction ()
{
Action = ActionGenericContainerView.ActivateThisPanel,
Parameters = new object[] { "Interaction" }
}
}
            });

// Unlock MinSize
viewEventManager.Publish(new GenericEvent()
{
SourceId = null,
Target = GenericContainerView.ContainerView,
Context = Model.Case.CaseId,
TargetId = null,
Action = new GenericAction[]
{
new GenericAction ()
{
Action = ActionGenericContainerView.LockMinSize,
Parameters = new object[] { false, "InteractionContainerView"  }
}
}
});
        }

Regards.
Title: Re: [WDE] Focus on a specific CaseViewSideButtonRegion
Post by: petitspirou on December 08, 2016, 05:27:51 PM
Thanks for replying

Tested but it didnt work

Actually the problem is the following. My custom view loads a CRM page and it takes sometimes severals seconds
If I can start loading the CRM before the tab is selected, it could be ok

Any idea?
Title: Re: [WDE] Focus on a specific CaseViewSideButtonRegion
Post by: daniel_san on December 09, 2016, 03:32:05 PM
Where are you loading your crm?

I supose that you are loading into UserView on UserControl_Load (WPF), maybe you can try to do that on Create.

Regards.