I predict you might hit the 5 contacts limit if you use it to send to a lot of contacts. This is limitation from Whatsapp, there is nothing you can do with this limitation.
However you can use workaround by looping the start activity multiple times until you send to all your contacts.
The reclist above is for demonstration purpose. Of course, don't put the list inside the control UI. Instead change it automatically by selecting or other method, before the variable is passed to the Control UI.
I have to know first how do you define the contacts to send? How do you trigger the flow?
I imagine a simple trigger shortcut. Then you choose from several groups. Each groups contains a list of contacts to send. Example : "Family", "Office", "Gym" and etc.
You can create a nested map-list to store the contact for each group.
Code: Select all
group = newMapFromValues(
"Family", newList("Andy", "Bob", "Chris", "Dennis", "Eva", "Feny", "George", "Hilda"),
"Office", newList("Pat", "Quill", "Randy", "Shella"),
"Gym", newList("Xavier", "Yankee", "Zoe"));
choice = getMapKeys(group);
Use {choice} in the input dialog. Then after choosing the value, use script to get the list
The reclist now will contain the list of the names of the group you have chosen.
For the repeated start activty when list is more than 5, you have to use loop checking recgroup to process only 5 per instance. replace the reclist in the Control UI to be
Code: Select all
reclist = removeElements(recgroup, 0, if(length(recgroup) > 5) 5 else length(recgroup));
This will take first 5 names from the recgroup, remove it and stored in the reclist. The Control UI loop process these 5 names.
Then after the Control UI, add expression
True, do nothing (stop the flow). False, loop back to the Start Activity. This mean if you have 16 names in the chosen group, the flow will loop process 5 names per loop for 4 times (5, 5, 5, 1)