Okay, you're a new customer of Jive's and you'd like to receive some support, e.g. you need to ask, "How do I add a new status level icon?"


So you go to jivesoftware.com, login, then click on the 'Support' tab.  Then you see a link to "Create a case in your secure space."  Whoa!  What is that?  How did I get a secure space?  When I click it, why does it now say "Create a new case in Company Name" ??  How cool is that?!




Well, our support solution (named the Supportal) knows about you through your email address and connects your email address to your company through our CRM system.  After making that link and ensuring you are indeed a customer, the Supportal will then create a new account space which is visible to you and those in your company. So, after verifying your information with our CRM system, we create your space and set it up with the following code:


     Log.info("Creating a community for " + accountName +" under the support community with an ID of " + support.getID());

      community = communityManager.createCommunity(support, accountName, accountName, "Support community for " + accountName);

      // set content types to threads and documents only (no blogs)
      List<ContentRetrieval.ContentType> types = new ArrayList<ContentRetrieval.ContentType>(3);
      community.setContentTypes(types.toArray(new ContentRetrieval.ContentType[types.size()]));



It is secure and private because it uses Clearspace to setup permissions to grant access only to Jive and members of your company (who are also linked in the same way you are). How can you be sure? Well, you don't see a thousand other customer spaces, do you? We do that in the following manner:


//add the new group to the new account community
((ExtendedPermissionsManager)permissionsManager).addAnonymousUserPermission(JiveConstants.COMMUNITY, community.getID(), PermissionType.NEGATIVE, Permissions.VIEW_COMMUNITY);
((ExtendedPermissionsManager)permissionsManager).addAnonymousUserPermission(JiveConstants.COMMUNITY, community.getID(), PermissionType.NEGATIVE, Permissions.READ_DOCUMENT);
permissionsManager.addGroupPermission(JiveConstants.COMMUNITY, community.getID(), group, PermissionType.ADDITIVE, Permissions.VIEW_COMMUNITY);
permissionsManager.addGroupPermission(JiveConstants.COMMUNITY, community.getID(), group, PermissionType.ADDITIVE, Permissions.CREATE_THREAD);
permissionsManager.addGroupPermission(JiveConstants.COMMUNITY, community.getID(), group, PermissionType.ADDITIVE, Permissions.READ_DOCUMENT);

//add jive support group access
permissionsManager.addGroupPermission(JiveConstants.COMMUNITY, community.getID(), jiveSupportGroup, PermissionType.ADDITIVE, Permissions.VIEW_COMMUNITY);
permissionsManager.addGroupPermission(JiveConstants.COMMUNITY, community.getID(), jiveSupportGroup, PermissionType.ADDITIVE, Permissions.CREATE_THREAD);
permissionsManager.addGroupPermission(JiveConstants.COMMUNITY, community.getID(), jiveSupportGroup, PermissionType.ADDITIVE, Permissions.READ_DOCUMENT);



"So you mean to say that any cases that I create in my secure space are private to my company and members of Jive Software?"

Yup, and it's all done automatically the first time anyone from your company logs into Jivespace Community (where the Supportal lives).


We even have a Group Membership Widget that shows which accounts have access to your secure space.  It's not part of our default layout yet, so if you'd like it for your space, open a case and ask for it! (For more information on this feature, please read this blog post Jive's newest Supportal version


Stay tuned for continued information about Jive's support solution, which will happen about every two weeks!  And don't forget to subscribe to this blog! ( http://www.jivesoftware.com/jivespace/blogs/jivespace/ )