nit: improve user handling
diff --git a/staffeln/common/openstack.py b/staffeln/common/openstack.py
index efdb060..9f412e8 100644
--- a/staffeln/common/openstack.py
+++ b/staffeln/common/openstack.py
@@ -48,10 +48,16 @@
         members = self.get_role_assignments(project_id)

         emails = []

         for member in members:

-            if member.user and "id" in member.user:

-                user = self.get_user(member.user["id"])

-                if user and hasattr(user, "email"):

-                    emails.append(user.email)

+            if hasattr(member, "user"):

+                user_id = None

+                if type(member.user) is dict and "id" in member.user:

+                    user_id = member.user["id"]

+                elif type(member.user) is str:

+                    user_id = member.user

+                if user_id:

+                    user = self.get_user(user_id)

+                    if user and hasattr(user, "email") and user.email:

+                        emails.append(user.email)

         return emails

 

     def get_projects(self):

diff --git a/staffeln/conductor/result.py b/staffeln/conductor/result.py
index 2bb0f57..34d9660 100644
--- a/staffeln/conductor/result.py
+++ b/staffeln/conductor/result.py
@@ -48,7 +48,7 @@
                     return False

             except Exception as ex:

                 LOG.warn(

-                    f"Failed to fetch emails from project members with exception: {ex}"

+                    f"Failed to fetch emails from project members with exception: {str(ex)} "

                     "As also no receiver email or project receiver domain are "

                     "configured. Will try to report later."

                 )