diff --git a/app/server/appsmith-server/src/main/java/com/appsmith/server/services/UserServiceImpl.java b/app/server/appsmith-server/src/main/java/com/appsmith/server/services/UserServiceImpl.java index 418319ccf5..f87b372dc2 100644 --- a/app/server/appsmith-server/src/main/java/com/appsmith/server/services/UserServiceImpl.java +++ b/app/server/appsmith-server/src/main/java/com/appsmith/server/services/UserServiceImpl.java @@ -638,7 +638,23 @@ public class UserServiceImpl extends BaseService i //Lets save the updated user object return repository.save(invitedUser); }) - .collectList(); + .collectList() + .flatMap(users -> Mono.zip(Mono.just(users), currentUserMono)) + .flatMap(tuple -> { + List users = tuple.getT1(); + User currentUser = tuple.getT2(); + + HashMap analyticsProperties = new HashMap<>(); + long numberOfUsers = users.size(); + List invitedUsers = new ArrayList<>(); + for (User user: users) { + invitedUsers.add(user.getEmail()); + } + analyticsProperties.put("numberOfUsersInvited", numberOfUsers); + analyticsProperties.put("userEmails", invitedUsers); + analyticsService.sendEvent("execute_INVITE_USERS", currentUser.getEmail(), analyticsProperties); + return Mono.just(users); + }); // Trigger the flow to first add the users to the organization and then update each user with the organizationId // added to the user's list of organizations.