def get_periodically_active_users(self, start_date, end_date, period_actions, days): result = {} data = self.active_users_req(start_date, end_date).get('values') for email, actions_data in data.iteritems(): result.update( Counter(get_by_period(actions_data, period_actions, days)) + Counter(result)) return dic_to_sorted_array(result)
def get_engaged_users_by_period(self, start_date, end_date, period_actions, days): result = {} created_users = self.new_users_req(start_date, end_date).get("results") active_users = self.active_users_req(start_date, end_date).get('values') for user in created_users: user_email = user['$properties']['$email'] if user_email in active_users: result.update(Counter(get_by_period(active_users[user_email], period_actions, days)) + Counter(result)) active_users.pop(user_email) return dic_to_sorted_array(result)
def get_engaged_users_by_period(self, start_date, end_date, period_actions, days): result = {} created_users = self.new_users_req(start_date, end_date).get("results") active_users = self.active_users_req(start_date, end_date).get('values') for user in created_users: user_email = user['$properties']['$email'] if user_email in active_users: result.update( Counter( get_by_period(active_users[user_email], period_actions, days)) + Counter(result)) active_users.pop(user_email) return dic_to_sorted_array(result)
def get_periodically_active_users(self, start_date, end_date, period_actions, days): result = {} data = self.active_users_req(start_date, end_date).get('values') for email, actions_data in data.iteritems(): result.update(Counter(get_by_period(actions_data, period_actions, days)) + Counter(result)) return dic_to_sorted_array(result)