Raffle
This solution helps with organizing a raffle by allowing participants to register only one time each and extracting one or multiple winners.
The participants will join from a custom page where the bot is hosted and the extraction will be done from the workspace area by an admin user.
Solution Skills
This solution template provides a wide range of skills:
Functionality |
Target audience |
Description |
---|---|---|
Register contestant |
The participants that want to join the raffle |
This flow allows a participant to join the raffle by providing first name, last name and company name. They will be allowed only one entry per participant. |
Pick a winner |
The raffle organizer |
This flow allows the raffle organizer to pick one or multiple winners from the contestant list based on their unique index. After a contestant is selected, he is marked as a winner and won’t be selected in future draws. |
Generate report |
The raffle organizer |
You are able to generate an excel report with all the contestants that joined the raffle. Can be done from the Contestant workspace. |
Format contestant list |
The raffle organizer |
In case the index for each contestant was generated incorrectly or one/multiple contestants have been selected as winners by accident, this flow serves as a backup solution that will assign new indexes for each contestant and reset their win status. To be used before starting the raffle extraction. |
Prerequisites
- Tenant Druid community (open new tenant here) or Druid subscription.
- You should have a Druid bot. For information on how to create a bot, see Creating Druid Bots.
- Enable the API Resources for Druid WebView and Druid Data Service. Then, activate the Druid Data Service in your tenant by navigating to Administration > Settings > Druid Data Service, and selecting Is enabled and clicking the Save all button at the top right of the page.
- Have the DRUID Starter solution imported.
Configuring the Skill Template
To configure the skill template, follow these steps:
Step 1. Install the solution from the Solutions Library
Go to the Solutions Library, search for solution Raffle and import it following the instructions provided in section Installing Solution Templates.
Wait until the import status shows as “Success.”
Once the import is successful, click Save & Close.
Step 2. Set up the bot special flows
Go to the bot settings, Details page and click the Dialog management section header. The section expands. Select the following special flows:
Special Flow |
Select |
---|---|
Welcome flow |
welcomeFlow |
Intent not found flow |
IntentNotRecognizedV2 |
Scroll down and click Save & Close.
Step 3. Change special messages
Go to Dialogue Management – Special Messages and change the InactivityCancelConversation message to “Due to inactivity, this conversation has ended. To continue picking winners, say "Pick a winner".”
Step 4. Train your bot
From the NLU menu, click Configurations and then click the Intents tab. Click the Train button.
Step 5. Set the index counter
Each participant will get an index when registering for the raffle.
To start the index from 0, before the event begins, go to Contestants workspace – RaffleHelper and set the Counter – Index generator to 0.
Step 6. Deploy the chatbot on a custom web page
To separate the functionality, deploy the chatbot on a custom web page where the users can register. Since they only have the “user” role, they will not have access to admin flows.
See the chatbot in action
The list below provides you with an extensive list of things you can say to the chatbot in English.
Functionality |
Intent (EN) |
---|---|
Pick a winner (raffle admin only, use it from Chat workspace) |
Pick a winner / I want to pick a winner |
Register contestant |
I want to join the raffle How to join the raffle I want to register |
Generate report (raffle admin only) |
GenerateReport Note: The GenerateReport functionality must be initiated from the Contestant view, not from the chat.
|
Format contestant list (raffle admin only) |
FormatContestantList Note: The FormatContestantList functionality must be initiated from the Contestant view, not from the chat.
|