code: def getResponsible(self):
          
          managers = {}
          for department in self.getDepartments():
              manager = department.getManager()
              if manager is None:
                  continue
              manager_id = manager.getId()
              if manager_id not in managers:
                  managers[manager_id] = {}
                  managers[manager_id]['salutation'] = safe_unicode(
                      manager.getSalutation())
                  managers[manager_id]['name'] = safe_unicode(
                      manager.getFullname())
                  managers[manager_id]['email'] = safe_unicode(
                      manager.getEmailAddress())
                  managers[manager_id]['phone'] = safe_unicode(
                      manager.getBusinessPhone())
                  managers[manager_id]['job_title'] = safe_unicode(
                      manager.getJobTitle())
                  if manager.getSignature():
                      managers[manager_id]['signature'] = \
                          '{}/Signature'.format(manager.absolute_url())
                  else:
                      managers[manager_id]['signature'] = False
                  managers[manager_id]['departments'] = ''
              mngr_dept = managers[manager_id]['departments']
              if mngr_dept:
                  mngr_dept += ', '
              mngr_dept += safe_unicode(department.Title())
              managers[manager_id]['departments'] = mngr_dept
          mngr_keys = managers.keys()
          mngr_info = {'ids': mngr_keys, 'dict': managers}
  
          return mngr_info
docs: Return all manager info of responsible departments