Hannah was built to assist with hackathons! She has 3 main capabilities:
- Handing out Azure Passes to students
- Introducing students to the hack team members onsite
- Answering questions about specific MS Technologies
You can customize the technologies and team members for each hackathon so Hannah can be more reusable.
Hannah's hackathon specific settings are in the data/hackSpecificData.js
file. You can customize the data for each hackathon by modifying the data in the following format. Please make sure you keep the appropriate article preceding the hack prize and the appropriate preposition preceding the booth location for the bot's grammar to make sense. Each team member will be picked up by the app/dialogs/teamInfo
dialog and added to the card of team members automatically.
{
hackName: 'CalHacks',
surveyLink: 'aka.ms/CalHacksSurvery',
teamEmail: '[email protected]',
prize: 'an XBox One',
boothLocation: 'near the support desk on the first floor',
teamMembers: [
{
name: 'Jane Doe',
techFocus: ['Azure', 'Bot Framework'],
photoLink: 'samplelink.com'
},
...
]
}
You can also customize the technologies Hannah knows how to help with by edititng the data/techResources
file. Add, delete or modify the technologies listed here to change how the bot responds in the app/dialogs/techHelp
dialog.
[
{
name: 'ChatBots',
prompt: 'You want to know how to build a bot like me? Head to https://docs.botframework.com/en-us/. You can also head to booth where various team members can help you!'
},
...
]
Follow this guide to create your storage account. Once it is created, add two tables with the naming specified below. Changes to capitalization and spelling might break the existing code so be sure to create the correct tables.
Create a table to store all of the azure codes for the event.
- Name:
AzureCredits
- Required Columns
Partition Key
The values here will always beCredit
Row Key
The azure code, it is primary key for the tableUsed
Boolean value to represent whether the credit has been given out or notTimestamp
Create a second table to store the student information.
- Name:
AzureCreditStudents
- Required Columns
Partition Key
The values here will always beStudent
Row Key
The student's email, it is the primary key for the tableAzureCode
The code that was assigned to the studentName
University
PhoneNumber
ProjectDetails
Timestamp
There are several variables that need to be set in order for the app to run properly. For local testing, start by creating a .env
file in the root directory, use the .env.example
as a template for the values you need. When you deploy the bot to Azure be sure to enter these key value pairs in Application Settings to be configured as environment variables in your deployed app as the .env
file only works locally.
- APP_ID= The app id that you got after you register your bot on botframework.com
- APP_PASS= The app password that you got after you register your bot on botframework.com
- LUIS_ID= The id for your https://luis.ai model
- LUIS_KEY= The subscription key for your https://luis.ai model
- LUIS_ENDPOINT= The endpoint for your https://luis.ai model
- EMAIL_PASS= The password for the email account you will send confirmation emails from
- EMAIL_USERNAME= The email account you will send confirmation emails from
- AZURE_STORE_CONNSTR= The primary connection string for your storage account (obtainment and setup info above)