10 Replies Latest reply on Jun 12, 2009 11:06 AM by pierattc

    "Generic" access to Self Service


      We are trying to implement a new process for our external customers that would allow them to request accounts for some of our systems thru Self Service.  Since a majority of these customers will never access Self Service ever again, we don't want to add them as end users due to licensing.  Any suggestions on the best approach to accomplish this.


      We currently have an End User created for logging phone calls from non-employees, is there a way to create a link on the login page that would use that accounts username and password?


      Best case scenario would be that the customer could create their own Contact record from Self Service, similar to how Service Desk will create a Contact from an unknown email address.


      Thanks for any help,


        • 1. Re: "Generic" access to Self Service
          aparker Employee

          Hi Chris,


          Here's a few thoughts for you on this. I would create a single 'generic' login ID that would be linked to its own portal tab that just had the ability to start the new process that you would create to request the access. In the process you make sure that there are all the mandatory fields that collect all of their contact details and then those that define the request itself. Back that up with specific queries linked to that process that focus on the fields they have filled in rather than the account name, which is irrlevant, and you can manage those requests.


          Also, if you want to control people access to that account, you could either send them a link that automatically logs them in (you can put this in the url) and they can just copy it into the address on their browser. Alternately you could place the hyperlink on the outside of the portal on the login page and that would work just as well.


          Hope that helps.



          1 of 1 people found this helpful
          • 2. Re: "Generic" access to Self Service
            DarkmatterSFO Apprentice

            We use something like this at my agency. We have outside people who are applying for jobs that send an e-mail to a specific address. Touchpaper then looks to see if they have an account with us. If not, the system creates the end user and the request is sent to a specific group for handling.


            There are problems with doing this:



            1) Users are created as "Guests", and even though the "Guest" is not using the service portal, they take up an end-user license

            2) Because we are limited on end user licence's we have to periodically delete the guest

            3) If the guest writes back AFTER we have deleted them (usually one or two months) Touchpaper will first look to see if they are a user, if they are not listed, they will then check the deleted users. If the system finds them as a deleted user then an error is generated and the request is not created.

            • 3. Re: "Generic" access to Self Service

              We just set up our Test system to create a Contact whenever we receive an email from an unknown sender.  When it tries to create the contact though, it says that it can't because the Company field is mandatory.  This field is set to mandatory by default, but obviously the built-in user creator doesn't give you a way to fill that value.  Any ideas of how to work around that?  We ran into the same problem when we tried to import some non-employees as Contacts from AD.


              Touchpaper Error Code: Exception.Data.MandatoryAttributeNull (-2147220422)
              Null value set for attribute Company of class type System.Contact. This attribute is mandatory and must contain a non-null value.



              • 4. Re: "Generic" access to Self Service
                aparker Employee

                Hi Chris,


                From what I am reading, you are wanting to create these users when the first access the system. Is that correct? If that is the case, then there may well be some process related design that will deliver what you are wanting to achieve.


                As a note about the creation of the accounts when an email is recieved by an unknown user, they are placed in the Guest without any priviledges to ensure that you don't just get anyone having access to the system without some form of control.



                • 5. Re: "Generic" access to Self Service

                  Since the "Guests" role is listed under the Analyst user type, I'm assuming this would count against our licenses.  Is there a script to then change anyone in the "Guests" role, to a role that we create under the Contacts user type?  Also, is there a way to control what the system uses as the login id for these unknown accounts?

                  • 6. Re: "Generic" access to Self Service
                    DarkmatterSFO Apprentice

                    In our installation of Touchpaper, the "Guests" role is applied to end users from the outside, not to analysts.

                    • 7. Re: "Generic" access to Self Service
                      DarkmatterSFO Apprentice

                      Can you make the Company Field not be mandatory?

                      • 8. Re: "Generic" access to Self Service

                        We're using 7.2.6 pretty much OOTB and the Guests role is under Analyst.  I guess we could create a new role under End User that we could tell the system to create unknown users under as a workaround.


                        The manadatory field question is a recurring nightmare in parts of the system.  Since random fields have been set as mandatory throughout the system, we have run into this problem before.  In this case, on the Contact object, the Company attribute (relationship) is set to mandatory and unable to be removed from the object.  Of course, the Company attribute (relationship) is already on the User object, so I'm not sure why it was added again.  On a side note, the Company relationship on the User object is not mandatory.  It would be nice if there was a way to change mandatory fields at the Object level, and just control it at the Window level where it should be done.


                        Is there anyway to change that mandatory field value?

                        • 9. Re: "Generic" access to Self Service
                          Stu McNeill Employee

                          Hi Chris,


                          I think the issue of the Company relationship stopping users being generated has been raised before.  You can't make it non-mandatory unless you fiddle with the database, and even then if you run the MDM (or upgrade) it will be reverted back to mandatory.


                          However, there is a better (yet still slightly non-supported) workaround which is to set a default value for Company.  At the moment you can't do this via Object Designer but I wrote a SQL script to accomplish it a while ago for what I assume was the same issue you're facing.  I've uploaded it to the community as a seperate document, you'll find it at: Cannot create Contacts from inbound mails - How to set a default value for Company and for Primary Group

                          On the query of generic access to ServicePortal one option is to have a tab available to "All users" which maens its visible without logging in.  On that tab you can create incidents as normal, the only thing to note is that the ServicePortal will connect to TPS as whichever user is set in your portal configuration - Normally SA.  Therefore you need to be careful with window publishing to ensure they don't see anything they shouldn't.


                          The easiest way to lock it down would be to use a different process with its own window.  If you need to use your main process use Re-initialise when in the Console to move it across accordingly.  The Re-initialise action is not possible in ServicePortal so there is no way your end users could abuse that.

                          • 10. Re: "Generic" access to Self Service

                            Our next question related to this "project" is whether or not it is possible to capture a new contact's information thru Self Service and have it create a new Contact record?