Instrument Pendo Track Events#42
Open
novus-by-dhruv[bot] wants to merge 1 commit into
Open
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Adds Pendo Track Event instrumentation across the CourseHive application to capture 21 key user interactions. These client-side pendo.track() calls cover authentication flows, course management, content contributions, FAQ engagement, skill management, and notification handling to enable product analytics and user behavior insights.
Changes
pendo.track('user_signup_completed')in login.component.ts to capture new user registrations with email domain, roll number, department, browser, and mobile metadatapendo.track('user_login_completed')in login.component.ts to track successful email/password logins with browser and mobile metadatapendo.track('password_reset_requested')in login.component.ts to track password reset email requestspendo.track('push_notification_subscribed')in login.component.ts to capture push notification opt-ins with browser and device type metadatapendo.track('course_search_executed')in search.component.ts to track course searches with query and source metadatapendo.track('homepage_search_executed')in homepage.component.ts to track searches from the homepage with query and category metadatapendo.track('skill_search_executed')in homepage.component.ts to track when users switch to the Skills search categorypendo.track('course_created')in add-acourse.component.ts to capture new course creation with course details metadatapendo.track('course_review_submitted')in course-details.component.ts to track course reviews with course ID, review length, and reviewer metadatapendo.track('course_content_uploaded')in course-details.component.ts to capture content uploads with course, document type, and uploader metadatapendo.track('faq_question_submitted')in course-details.component.ts to track new FAQ questions with course ID and question lengthpendo.track('faq_answer_submitted')in course-details.component.ts to track FAQ answers with course, question, and answer metadatapendo.track('course_pinned')in course-details.component.ts to capture course bookmarking with course details and pin sourcependo.track('course_unpinned')in course-details.component.ts to track course unbookmarking with course ID and sourcependo.track('faq_answer_deleted')in course-details.component.ts to track FAQ answer deletions with course, question, and answer IDspendo.track('review_deleted')in myprofile.component.ts to track review deletions with course and review IDspendo.track('content_deleted')in myprofile.component.ts to track content deletions with course, content ID, and document typependo.track('skill_added_to_profile')in myprofile.component.ts to capture skill additions with skill details and expertise levelpendo.track('skill_removed_from_profile')in myprofile.component.ts to track skill removals with skill ID and namependo.track('notifications_cleared')in myprofile.component.ts to track notification clearing with count of cleared notificationspendo.track('skill_created')in add-skill.component.ts to capture new skill creation with skill name and sourcedeclare let pendo: any;to all instrumented component files for TypeScript compatibilityNotes
pendoobject — the Pendo agent must be initialized before these components loadthis.courseId,this.course.name)notifications_clearedevent fires before the array is emptied to capture the correct countGenerated by Novus.