How to collect & display event guest data info - survey, interaction, APIs, something else?
Options
Hi all!
I am working on a guest information collection form for seating management for our events. Each "table host" for our sponsors will be filling out the info for all the sponsor's guests while in a logged-in state. Some might have as many as 50 guests. I want the form to be able to:
For the first step, I am planning on generating the form fields using jquery and I'm not too worried about the element of dynamically producing the correct number of rows. But not too sure where to write the data upon submit. Any ideas?
Thanks much!
I am working on a guest information collection form for seating management for our events. Each "table host" for our sponsors will be filling out the info for all the sponsor's guests while in a logged-in state. Some might have as many as 50 guests. I want the form to be able to:
1. Dynamically create the correct number of guest data rows based on the count of seats I'll pre-load in custom fields on the sponsor table host's constituent record.
2. Re-populate any prior submitted guest info - so ideally, the table host can log back in and keep adding or updating info.
3. Frosting on the cake: it would be great to be able to expose what has been submitted so far to the user on a confirmation page and email.
2. Re-populate any prior submitted guest info - so ideally, the table host can log back in and keep adding or updating info.
3. Frosting on the cake: it would be great to be able to expose what has been submitted so far to the user on a confirmation page and email.
For the first step, I am planning on generating the form fields using jquery and I'm not too worried about the element of dynamically producing the correct number of rows. But not too sure where to write the data upon submit. Any ideas?
- I can't use constituent custom fields to store the guest data, since those are extremely character-limited, so that is out.
- I'm kicking around the idea of using a non-TR survey, but not sure I can call the prior submitted info back out. S28 doesn't seem to do this. Survey APIs don't seem to let us call the user's answers, except during submission. Is that true?
- Also debated writing the data as json objects to custom interactions (though unfortunately interactions have a 1500 character limit - I'm anticipating needing more like 5000 max, so I'd have to break the data across several interactions), since I can get and update them through the interaction APIs, but it is unclear to me if I can do the initial create from the user's first data submission through one of the APIs... Does anyone know?
Thanks much!
Tagged:
1
Comments
-
All your reasoning seems right to me. It's always hard to find a data store for stuff like this!
You could break out of LO and use something like AWS to save your results, but then you have to worry about security and all that stuff. I found the learning curve to be pretty steep.
" it is unclear to me if I can do the initial create from the user's first data submission through one of the APIs "
You can create custom interactions with logInteraction. Here's an example using Luminate Extend:
// Add an interaction to the constituent's record.
var LogInteraction = function (interaction_type_id, interaction_subject, interaction_body, cons_id, handle_success, handle_error) {
// Build api parameter string
var apiParameters = '&interaction_type_id=' + interaction_type_id;
apiParameters += '&interaction_subject=' + interaction_subject;
apiParameters += '&interaction_body=' + interaction_body;
apiParameters += '&cons_id=' + cons_id;
// Define callbacks
var logInteractionCallback = {
success: function (data) {
if (typeof data.updateConsResponse.interaction_id !== 'undefined') {
console.log("LogInteraction: Successful");
if (handle_success) { handle_success(data.updateConsResponse); }
} else {
console.warn("LogInteraction: Unsuccessful");
if (handle_error) { handle_error(data.updateConsResponse.errors); }
}
},
error: function (data) {
console.error("LogInteraction: Error");
if (handle_error) { handle_error(data.errorResponse); }
}
};
// Call API
luminateExtend.api({
api: 'cons',
callback: logInteractionCallback,
data: 'method=logInteraction' + apiParameters,
requestType: 'POST',
requiresAuth: true
});
};1 -
I would have each seat be a separate interaction. The data in each interaction could be a standard JSON record, with the guest name, meal preference, etc.
One issue is that the user can't get other peoples interactions. So you couldn't show summary data like Total Seats sold and available, nor could you tell if a specific seat or table is available.
I'm also not sure about showing interactions on an email. I wouldn't bet on it though.0 -
As expected, our amazing Mr. Brian Mucha does not disappoint. Thank you so much for logInteraction pointer + example - I hadn't noticed it! At least I know now this is a possible route and I can give it a shot!
For your second note, for most of our events, each table/group has ten or fewer seats (and individual seat purchasers do not purchase more than 9), so I'm hoping the cumulative data for ten guests will fit comfortably in one interaction - fingers crossed that ends up a logical and functional way to carve them up, and make them easier to manage and call and retire. It will probably only be first name, last name, email + a checkbox for if they don't want to use the seat, so I'm hoping I can get ten of them within 1500 characters with a realistic cushion. Perhaps should set character limits on the inputs to help manage it. We shall see. Wish me luck!
No worries on inventory or seat map, we manage that separately. And the guest data collection step usually happens well after point-of-sale, in the few weeks just before the event, and generally the user doesn't get too much say in placementSo definitely fine (and probably best) that the user only sees their own data!
Will let you know if I have luck with the email confirmation. Ages ago I saw a weird survey autoresponder hack which may or may not work, but since that is *extra* at this stage, probably not this version. For now, will likely just email a link!
THANKS SO MUCH, B!0
Categories
- All Categories
- Shannon parent
- shannon 2
- shannon 1
- 21 Advocacy DC Users Group
- 14 BBCRM PAG Discussions
- 89 High Education Program Advisory Group (HE PAG)
- 28 Luminate CRM DC Users Group
- 8 DC Luminate CRM Users Group
- Luminate PAG
- 5.9K Blackbaud Altru®
- 58 Blackbaud Award Management™ and Blackbaud Stewardship Management™
- 409 bbcon®
- 2.1K Blackbaud CRM™ and Blackbaud Internet Solutions™
- donorCentrics®
- 1.1K Blackbaud eTapestry®
- 2.8K Blackbaud Financial Edge NXT®
- 1.1K Blackbaud Grantmaking™
- 527 Education Management Solutions for Higher Education
- 1 JustGiving® from Blackbaud®
- 4.6K Education Management Solutions for K-12 Schools
- Blackbaud Luminate Online & Blackbaud TeamRaiser
- 16.4K Blackbaud Raiser's Edge NXT®
- 4.1K SKY Developer
- 547 ResearchPoint™
- 151 Blackbaud Tuition Management™
- 1 YourCause® from Blackbaud®
- 61 everydayhero
- 3 Campaign Ideas
- 58 General Discussion
- 115 Blackbaud ID
- 87 K-12 Blackbaud ID
- 6 Admin Console
- 949 Organizational Best Practices
- 353 The Tap (Just for Fun)
- 235 Blackbaud Community Feedback Forum
- 55 Admissions Event Management EAP
- 18 MobilePay Terminal + BBID Canada EAP
- 36 EAP for New Email Campaigns Experience in Blackbaud Luminate Online®
- 109 EAP for 360 Student Profile in Blackbaud Student Information System
- 41 EAP for Assessment Builder in Blackbaud Learning Management System™
- 9 Technical Preview for SKY API for Blackbaud CRM™ and Blackbaud Altru®
- 55 Community Advisory Group
- 46 Blackbaud Community Ideas
- 26 Blackbaud Community Challenges
- 7 Security Testing Forum
- 1.1K ARCHIVED FORUMS | Inactive and/or Completed EAPs
- 3 Blackbaud Staff Discussions
- 7.7K ARCHIVED FORUM CATEGORY [ID 304]
- 1 Blackbaud Partners Discussions
- 1 Blackbaud Giving Search™
- 35 EAP Student Assignment Details and Assignment Center
- 39 EAP Core - Roles and Tasks
- 59 Blackbaud Community All-Stars Discussions
- 20 Blackbaud Raiser's Edge NXT® Online Giving EAP
- Diocesan Blackbaud Raiser’s Edge NXT® User’s Group
- 2 Blackbaud Consultant’s Community
- 43 End of Term Grade Entry EAP
- 92 EAP for Query in Blackbaud Raiser's Edge NXT®
- 38 Standard Reports for Blackbaud Raiser's Edge NXT® EAP
- 12 Payments Assistant for Blackbaud Financial Edge NXT® EAP
- 6 Ask an All Star (Austen Brown)
- 8 Ask an All-Star Alex Wong (Blackbaud Raiser's Edge NXT®)
- 1 Ask an All-Star Alex Wong (Blackbaud Financial Edge NXT®)
- 6 Ask an All-Star (Christine Robertson)
- 21 Ask an Expert (Anthony Gallo)
- Blackbaud Francophone Group
- 22 Ask an Expert (David Springer)
- 4 Raiser's Edge NXT PowerUp Challenge #1 (Query)
- 6 Ask an All-Star Sunshine Reinken Watson and Carlene Johnson
- 4 Raiser's Edge NXT PowerUp Challenge: Events
- 14 Ask an All-Star (Elizabeth Johnson)
- 7 Ask an Expert (Stephen Churchill)
- 2025 ARCHIVED FORUM POSTS
- 322 ARCHIVED | Financial Edge® Tips and Tricks
- 164 ARCHIVED | Raiser's Edge® Blog
- 300 ARCHIVED | Raiser's Edge® Blog
- 441 ARCHIVED | Blackbaud Altru® Tips and Tricks
- 66 ARCHIVED | Blackbaud NetCommunity™ Blog
- 211 ARCHIVED | Blackbaud Target Analytics® Tips and Tricks
- 47 Blackbaud CRM Higher Ed Product Advisory Group (HE PAG)
- Luminate CRM DC Users Group
- 225 ARCHIVED | Blackbaud eTapestry® Tips and Tricks
- 1 Blackbaud eTapestry® Know How Blog
- 19 Blackbaud CRM Product Advisory Group (BBCRM PAG)
- 1 Blackbaud K-12 Education Solutions™ Blog
- 280 ARCHIVED | Mixed Community Announcements
- 3 ARCHIVED | Blackbaud Corporations™ & Blackbaud Foundations™ Hosting Status
- 1 npEngage
- 24 ARCHIVED | K-12 Announcements
- 15 ARCHIVED | FIMS Host*Net Hosting Status
- 23 ARCHIVED | Blackbaud Outcomes & Online Applications (IGAM) Hosting Status
- 22 ARCHIVED | Blackbaud DonorCentral Hosting Status
- 14 ARCHIVED | Blackbaud Grantmaking™ UK Hosting Status
- 117 ARCHIVED | Blackbaud CRM™ and Blackbaud Internet Solutions™ Announcements
- 50 Blackbaud NetCommunity™ Blog
- 169 ARCHIVED | Blackbaud Grantmaking™ Tips and Tricks
- Advocacy DC Users Group
- 718 Community News
- Blackbaud Altru® Hosting Status
- 104 ARCHIVED | Member Spotlight
- 145 ARCHIVED | Hosting Blog
- 149 JustGiving® from Blackbaud® Blog
- 97 ARCHIVED | bbcon® Blogs
- 19 ARCHIVED | Blackbaud Luminate CRM™ Announcements
- 161 Luminate Advocacy News
- 187 Organizational Best Practices Blog
- 67 everydayhero Blog
- 52 Blackbaud SKY® Reporting Announcements
- 17 ARCHIVED | Blackbaud SKY® Reporting for K-12 Announcements
- 3 Luminate Online Product Advisory Group (LO PAG)
- 81 ARCHIVED | JustGiving® from Blackbaud® Tips and Tricks
- 1 ARCHIVED | K-12 Conference Blog
- Blackbaud Church Management™ Announcements
- ARCHIVED | Blackbaud Award Management™ and Blackbaud Stewardship Management™ Announcements
- 1 Blackbaud Peer-to-Peer Fundraising™, Powered by JustGiving® Blogs
- 39 Tips, Tricks, and Timesavers!
- 56 Blackbaud Church Management™ Resources
- 154 Blackbaud Church Management™ Announcements
- 1 ARCHIVED | Blackbaud Church Management™ Tips and Tricks
- 11 ARCHIVED | Blackbaud Higher Education Solutions™ Announcements
- 7 ARCHIVED | Blackbaud Guided Fundraising™ Blog
- 2 Blackbaud Fundraiser Performance Management™ Blog
- 9 Foundations Events and Content
- 14 ARCHIVED | Blog Posts
- 2 ARCHIVED | Blackbaud FIMS™ Announcement and Tips
- 59 Blackbaud Partner Announcements
- 10 ARCHIVED | Blackbaud Impact Edge™ EAP Blogs
- 1 Community Help Blogs
- Diocesan Blackbaud Raiser’s Edge NXT® Users' Group
- Blackbaud Consultant’s Community
- Blackbaud Francophone Group
- 1 BLOG ARCHIVE CATEGORY
- Blackbaud Community™ Discussions
- 8.3K Blackbaud Luminate Online® & Blackbaud TeamRaiser® Discussions
- 5.7K Jobs Board