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.

Note:  The admin functionality is performed in the Contestants workspace. Ensure that you have both the admin and raffle admin roles assigned.

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.