campaign scheduler on/off state

Discussions about development of VICIDIAL and astGUIclient

Moderators: gerski, enjay, williamconley, Op3r, Staydog, gardo, mflorell, MJCoate, mcargile, Kumba, Michael_N

campaign scheduler on/off state

Postby dreedy » Fri May 12, 2023 9:13 am

Hello,

I wanted to see what the community thought of this idea. From the admin side in the system settings. i am thinking there should be a enable/disable for campaign schedular.

This is where i am debating.

1st control the time of the campaign schedule from the campaign.

or

2nd more granular function with the user groups. Have scheduled time from each group to interact with the campaigns that are listed. with also fully enabled or disabled.

The way I am thinking is to help admin and manager mantain the campaigns without them having to manually enable or disable each time.


what does everyone this of this?
1- mysql/apache Server (ViciBox 11) Dell R640
1- Dialer (Vicibox 11) Dell R620
1- Archive Server Drobo 810n

Asterisk 16.30.0-vici |VERSION: 2.14-900a | BUILD: 231115-1636 | svn 3787 |dbschema 1702
dreedy
 
Posts: 164
Joined: Tue Nov 24, 2015 10:16 pm

Re: campaign scheduler on/off state

Postby mflorell » Fri May 12, 2023 10:46 am

How would this interact with the current User Group Shift Enforcement options?
mflorell
Site Admin
 
Posts: 18325
Joined: Wed Jun 07, 2006 2:45 pm
Location: Florida

Re: campaign scheduler on/off state

Postby dreedy » Fri May 12, 2023 11:32 am

that is a good question. I am think about this as i wasn't aware of that possibility. from what i am reading the shift enforcement would turn on/off the user group ability to see campaigns.
What i am looking for more is the ability to queue the start and stop times of individual campaigns. so that all campaign are not all on or off. or having someone change the selection throughout the day.
1- mysql/apache Server (ViciBox 11) Dell R640
1- Dialer (Vicibox 11) Dell R620
1- Archive Server Drobo 810n

Asterisk 16.30.0-vici |VERSION: 2.14-900a | BUILD: 231115-1636 | svn 3787 |dbschema 1702
dreedy
 
Posts: 164
Joined: Tue Nov 24, 2015 10:16 pm

Re: campaign scheduler on/off state

Postby martinch » Fri May 12, 2023 11:44 am

Hey dreedy,

I've heard of this type of request from dialler managers before and sure you could set a schedule for turning the campaign off and on using a daily, weekly, monthly cycle. However, let's consider an example. We want a campaign to be active from Monday through to Wednesday from 6AM to 6PM. What happens if agents are still logged in past 6PM on Tuesday?
Project Lead @ mDial -> https://github.com/TheBlode/mDial
martinch
 
Posts: 273
Joined: Thu Nov 15, 2018 9:14 am
Location: England, UK

Re: campaign scheduler on/off state

Postby dreedy » Fri May 12, 2023 1:33 pm

I would say something like this logic.

If agent was logged into campaign and the call scheduler was set from 6 am to 6 pm. The agent would be kicked with a statement that this campaign's time restriction has been exceeded.
1- mysql/apache Server (ViciBox 11) Dell R640
1- Dialer (Vicibox 11) Dell R620
1- Archive Server Drobo 810n

Asterisk 16.30.0-vici |VERSION: 2.14-900a | BUILD: 231115-1636 | svn 3787 |dbschema 1702
dreedy
 
Posts: 164
Joined: Tue Nov 24, 2015 10:16 pm

Re: campaign scheduler on/off state

Postby RBecker » Sat May 13, 2023 4:30 pm

dreedy wrote:I would say something like this logic.

If agent was logged into campaign and the call scheduler was set from 6 am to 6 pm. The agent would be kicked with a statement that this campaign's time restriction has been exceeded.


What you are describing is exactly what the Agent Shift Enforcement function does. However, it does have its limitations if you have agents that work across multiple campaigns in the same user group. It also does not prevent agents from seeing the campaign, simply whether or not they are able to log into it outside of specified times.
Managed & Dedicated ViciDial Hosting | VoIP Trunking and Termination | https://www.dial-fusion.com/
Main Cluster: 21 Agent Servers | Dedicated DB and Separate Reports Server | 2 Web Servers | HAProxy Load Balancing | Dedicated Archive Server
RBecker
 
Posts: 38
Joined: Mon Aug 30, 2021 3:05 pm

Re: campaign scheduler on/off state

Postby martinch » Mon May 15, 2023 7:14 am

dreedy wrote:I would say something like this logic.

If agent was logged into campaign and the call scheduler was set from 6 am to 6 pm. The agent would be kicked with a statement that this campaign's time restriction has been exceeded.


The main concern with that is...sometimes we I've seen agents who are the unfortunate ones that get calls right before the end of the shift...and they always end up being on long calls lol :) now we cannot kick those agents as suggested as every customer contact is as important as any other. My take on it would be to kick the agent after the call has been handled and dispositioned.

I think Matt and RBecker have described a feature that can potentially fulfill what you're asking for...but could you clarify a bit more what functionality you'd like from disabling the campaigns. When I've seen people disabling campaigns, the campaigns tend to disappear from a number of areas of the ViCi stack which can help keep things more focused on a busy cluster...the CRON scripts won't process anything, the hopper and auto dial engine won't bother with the disabled campaigns, the reporting will skip the inactive campaigns...I can see lots of performance enhancements from disabling campaign.

What I can for you is, I can build the feature in Admin > Campaign States Scheduler (not the final name) that will give you the option of toggling a campaigns state based on the times you specify...here's a mock up design for you;

Image

Is that something you'd like? Thanks.
Project Lead @ mDial -> https://github.com/TheBlode/mDial
martinch
 
Posts: 273
Joined: Thu Nov 15, 2018 9:14 am
Location: England, UK

Re: campaign scheduler on/off state

Postby dreedy » Tue May 16, 2023 8:44 am

Thanks for the post. I am discussing this with the people onsite and will get back to you after i talk to them about it.
1- mysql/apache Server (ViciBox 11) Dell R640
1- Dialer (Vicibox 11) Dell R620
1- Archive Server Drobo 810n

Asterisk 16.30.0-vici |VERSION: 2.14-900a | BUILD: 231115-1636 | svn 3787 |dbschema 1702
dreedy
 
Posts: 164
Joined: Tue Nov 24, 2015 10:16 pm

Re: campaign scheduler on/off state

Postby dreedy » Tue May 16, 2023 2:34 pm

Everyone here like what you have put together here. There is one thing that would need to be added and that would be a selection for the user group. preferably a drop down selection under the campaign drop down selection.

How would we proceed with this ? would this be part of the svn update ?
1- mysql/apache Server (ViciBox 11) Dell R640
1- Dialer (Vicibox 11) Dell R620
1- Archive Server Drobo 810n

Asterisk 16.30.0-vici |VERSION: 2.14-900a | BUILD: 231115-1636 | svn 3787 |dbschema 1702
dreedy
 
Posts: 164
Joined: Tue Nov 24, 2015 10:16 pm

Re: campaign scheduler on/off state

Postby martinch » Wed May 17, 2023 6:39 am

dreedy wrote:Everyone here like what you have put together here. There is one thing that would need to be added and that would be a selection for the user group. preferably a drop down selection under the campaign drop down selection.

How would we proceed with this ? would this be part of the svn update ?


Hey dreedy, awesome news. :)

May I ask what the purpose of the user group will have in relation to this feature? I would like clarity on that please.

The way it would go is I've built the feature and I will propose that feature to the ViCiDial team and they will assess on it's merits, make suggestions, tweaks, even overhaul the piece where required or they may reject the piece. If the piece is accepted, that feature would likely be published into the current SVN trunk. But the team is very busy so no timescales are given and no guarantees are made for community contributions seeing any kind of release.

With that said, back to this feature...seems like's a great feature to me. I did some work on this last night and I've done some this morning and here is where I'm at in the development cycle;

  • A specific admin page to set enable administrators to set campaign state schedules. ✅
  • A new table has been proposed `vicidial_campaign_state_scheduler` which will hold our campaign state schedule times ✅
  • A form that will allow you to input times in hours and minutes on any day of the week you wish to enable or disable your campaigns. ✅
  • I've placed a button on the form that will reset the inputs so you can fully disable the schedule for a campaign in one click. ✅
  • Error handling is present...so no non-numeric inputs, and no massive numbers. ✅
  • Keepalive script has logic to pick these settings and will toggle your campaigns based on the schedules provided. ✅
  • Admin panel menu options (pending) ⏳
  • Usergroup binding (need your input on that please) ⏳

Here are some insights into what I have developed so far;

Log from the keepalive script;

Code: Select all
Today is Wednesday! Checking whether or not to disable the HELPLINE campaign...
Minutes Since Midnight: 683
Campaign Active Start Time (in minutes): 676
Campaign Active Stop Time (in minutes): 677
The campaign schedule for HELPLINE campaign is active. Setting the campaign active flag to N

Today is Wednesday! Checking whether or not to disable the TEST campaign...
Minutes Since Midnight: 683
Campaign Active Start Time (in minutes): 682
Campaign Active Stop Time (in minutes): 683
The campaign schedule for TEST campaign is active. Setting the campaign active flag to Y


Image

I welcome any feedback on the piece. I have a view to have this submitted on Mantis at some point this week, next week at stretch. Thank you :)
Project Lead @ mDial -> https://github.com/TheBlode/mDial
martinch
 
Posts: 273
Joined: Thu Nov 15, 2018 9:14 am
Location: England, UK

Re: campaign scheduler on/off state

Postby dreedy » Wed May 17, 2023 8:21 am

what we are looking to do is limit the usage to specific user group.

Example
user group A schedule would be m,w,f 10 to 1 of campaign 1
user group B schedule would be m,w,f 1 to 2 of campaign 1
user group C would no be limited. so no schedule.


This way we could setup a schedule time for campaigns to be available for reps that are assigned to specific user group. an not have to micro manage what campaign are on or off and what times to turn them on/off.


Does this help explain what i am looking to do ? if not i will work a different way to explain it. thanks.
1- mysql/apache Server (ViciBox 11) Dell R640
1- Dialer (Vicibox 11) Dell R620
1- Archive Server Drobo 810n

Asterisk 16.30.0-vici |VERSION: 2.14-900a | BUILD: 231115-1636 | svn 3787 |dbschema 1702
dreedy
 
Posts: 164
Joined: Tue Nov 24, 2015 10:16 pm

Re: campaign scheduler on/off state

Postby martinch » Wed May 17, 2023 9:44 am

dreedy wrote:what we are looking to do is limit the usage to specific user group.

Example
user group A schedule would be m,w,f 10 to 1 of campaign 1
user group B schedule would be m,w,f 1 to 2 of campaign 1
user group C would no be limited. so no schedule.


This way we could setup a schedule time for campaigns to be available for reps that are assigned to specific user group. an not have to micro manage what campaign are on or off and what times to turn them on/off.


Does this help explain what i am looking to do ? if not i will work a different way to explain it. thanks.


Hey dreedy,

Ah thank you for the clarity. I do indeed understand what you're saying (or at least I think I do! :) ) and what I have proposed here is probably not suitable for that ask. That said, I could spin up another development that could fulfill what you're asking but yeah...what we currently have wouldn't really suit your ask there.

Would probably want a scheduler for the Allow Campaigns on User Groups;

Image

I'll plan a different development run to suit the ask and I'll update with the progress. :)
Project Lead @ mDial -> https://github.com/TheBlode/mDial
martinch
 
Posts: 273
Joined: Thu Nov 15, 2018 9:14 am
Location: England, UK

Re: campaign scheduler on/off state

Postby martinch » Fri May 19, 2023 12:50 pm

Hey dreedy,

I managed to rejig the feature to suit your requirements. Let me know if it suits now please.

Image

Description. When we select the Spanish Usergroup (which has 3 campaigns assigned to it; English, Spanish and Test), we select the Test to only run on Fridays between 12PM and 10PM. The English and Spanish campaigns will run 24/7.

Let me know if that works for ya and I can submit that during the weekend. Thank you :)
Project Lead @ mDial -> https://github.com/TheBlode/mDial
martinch
 
Posts: 273
Joined: Thu Nov 15, 2018 9:14 am
Location: England, UK

Re: campaign scheduler on/off state

Postby martinch » Fri May 26, 2023 4:44 am

Hey dreedy, apologies for the delay on the feature development here. I have submitted the feature now on Mantis and you can track the progress here -> https://www.vicidial.org/VICIDIALmantis/view.php?id=1474. Let me know if there anything you would like me to change. Here's an overview of what has been done here;

  • I've added a new User Group sub header on the admin panel named "Group Campaign Scheduler". ✅
  • I've added a new admin page (100000000000777 - not set in stone as of right now). ✅
  • There is error handling when using the new page;
    • You must select a user group that exists on your setup to begin setting times. ✅
    • You must select a campaign assigned to that user group to begin setting times. ✅
    • Setting times out of bounds is handled (setting the time beyond 24 hours for example). ✅
    • Handling non-numeric time inputs. ✅
  • Setting your campaign schedule to all zeroes will disable the feature for that campaign. ✅
  • A handy reset button is available if you've got a campaign set on a schedule and you want to disable the feature for that campaign, click the Reset button and it will be disabled.
  • This feature is enabled and accessible by all ViCiDial admins but I would like the ViCi team to decide on whether to make access configurable based on admin user profile. ⏳

Here are a few screenshot for you to puruse.

Screenshot of the admin panel subheader;

Image
Screenshot of the main user interface for the user group campaign scheduler;

Image
Of course, this feature isn't guaranteed to be released and is subject to change if it is ever released. It's all down to the ViCiDial team but I hope it sees some form of release so you can get your scheduling groove on :)

Thank you and feedback is welcome. Thanks.
Project Lead @ mDial -> https://github.com/TheBlode/mDial
martinch
 
Posts: 273
Joined: Thu Nov 15, 2018 9:14 am
Location: England, UK


Return to Development

Who is online

Users browsing this forum: No registered users and 5 guests

cron