none
Problems with CustomizedHelpUrl in ClientPolicy

Answers

  • There apears to be a bug in the CSClientPolicy and that it will only accept addresses with an aspx extension.

     

    Here is a similar post on the subject:

     

    http://social.technet.microsoft.com/Forums/en-US/ocsplanningdeployment/thread/ea86d7b3-0e7d-422c-9542-6c520ff16a77/

     

     

    Now to fix the issue for the time being, you need to create a redirect.

    Copy the below into notepad and rename to c_redir.aspx. Replace http://your-sharepoint-site.contoso.com/pages/userguides.aspx with the URL of your custom help page and point the page to rolodex.html(you do this for all instances in the file). Your URL should now be http://<servername>/lync/rolodex.html now save and place in the same directory as rolodex.html.

     

    Now run your command:

    Set-CsClientPolicy -Identity Test -EnableEnterpriseCustomizedHelp $True -CustomizedHelpUrl http://xxx.xxx.com/lync/c_redir.aspx

     

    That should work now

     

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
     
    <%@ Page Language="C#" %>
     
    <html>
     
    <head>
     
    <meta name="WebPartPageExpansion" content="full" />
     
    <script type="text/javascript">
     
    //<![CDATA[
     
    function geturl()
     
    {
     
    var parts = location.search.split("&"); //Number of paramaters
     
    var redirid = "";
     
    for(var i=0;i < parts.length;i++)
     
    {
     
    redirid += parts[i].split("=")[1];
     
    }
     
    var retval = "dddd";
     
    switch(redirid)
     
    {
     
    case "103341028":
     
    retval = "http://your-sharepoint-site.contoso.com/pages/userguides.aspx";
     
    break;
     
    case "103341034":
     
    retval = "http://your-sharepoint-site.contoso.com/pages/userguides.aspx";
     
    break;
     
    case "103341036":
     
    retval = "http://your-sharepoint-site.contoso.com/pages/userguides.aspx";
     
    break;
     
    case "103341037":
     
    retval = "http://your-sharepoint-site.contoso.com/pages/userguides.aspx";
     
    break;
     
    case "103341038":
     
    retval = "http://your-sharepoint-site.contoso.com/pages/userguides.aspx";
     
    break;
     
    case "103341040":
     
    retval = "http://your-sharepoint-site.contoso.com/pages/userguides.aspx";
     
    break;
     
    case "103341041":
     
    retval = "http://your-sharepoint-site.contoso.com/pages/userguides.aspx";
     
    break;
     
    case "103341042":
     
    retval = "http://your-sharepoint-site.contoso.com/pages/userguides.aspx";
     
    break;
     
    case "103341043":
     
    retval = "http://your-sharepoint-site.contoso.com/pages/userguides.aspx";
     
    break;
     
    case "103341044":
     
    retval = "http://your-sharepoint-site.contoso.com/pages/userguides.aspx";
     
    break;
     
    case "103341045":
     
    retval = "http://your-sharepoint-site.contoso.com/pages/userguides.aspx";
     
    break;
     
    case "103341046":
     
    retval = "http://your-sharepoint-site.contoso.com/pages/userguides.aspx";
     
    break;
     
    case "103341047":
     
    retval = "http://your-sharepoint-site.contoso.com/pages/userguides.aspx";
     
    break;
     
    case "103341050":
     
    retval = "http://your-sharepoint-site.contoso.com/pages/userguides.aspx";
     
    break;
     
    case "103341052":
     
    retval = "http://your-sharepoint-site.contoso.com/pages/userguides.aspx";
     
    break;
     
    case "103341054":
     
    retval = "http://your-sharepoint-site.contoso.com/pages/userguides.aspx";
     
    break;
     
    case "103341055":
     
    retval = "http://your-sharepoint-site.contoso.com/pages/userguides.aspx";
     
    break;
     
    case "103341059":
     
    retval = "http://your-sharepoint-site.contoso.com/pages/userguides.aspx";
     
    break;
     
    case "103341060":
     
    retval = "http://your-sharepoint-site.contoso.com/pages/userguides.aspx";
     
    break;
     
    case "103341061":
     
    retval = "http://your-sharepoint-site.contoso.com/pages/userguides.aspx";
     
    break;
     
    case "103341062":
     
    retval = "http://your-sharepoint-site.contoso.com/pages/userguides.aspx";
     
    break;
     
    case "103341054":
     
    retval = "http://your-sharepoint-site.contoso.com/pages/userguides.aspx";
     
    break;
     
    case "103341050":
     
    retval = "http://your-sharepoint-site.contoso.com/pages/userguides.aspx";
     
    break;
     
    case "103341052":
     
    retval = "http://your-sharepoint-site.contoso.com/pages/userguides.aspx";
     
    break;
     
    case "103341054":
     
    retval = "http://your-sharepoint-site.contoso.com/pages/userguides.aspx";
     
    break;
     
    case "103341055":
     
    retval = "http://your-sharepoint-site.contoso.com/pages/userguides.aspx";
     
    break;
     
    case "103341059":
     
    retval = "http://your-sharepoint-site.contoso.com/pages/userguides.aspx";
     
    break;
     
    case "103341060":
     
    retval = "http://your-sharepoint-site.contoso.com/pages/userguides.aspx";
     
    break;
     
    case "103341061":
     
    retval = "http://your-sharepoint-site.contoso.com/pages/userguides.aspx";
     
    break;
     
    case "103341062":
     
    retval = "http://your-sharepoint-site.contoso.com/pages/userguides.aspx";
     
    break;
     
    case "103341054":
     
    retval = "http://your-sharepoint-site.contoso.com/pages/userguides.aspx";
     
    break;
     
    default:
     
    retval = "http://your-sharepoint-site.contoso.com/pages/userguides.aspx"; }
     
    return retval;
     
    }
     
    window.navigate(geturl());
     
    //]]>
     
    </script>
     
    </head>
     
    </html>
    

     


    Tuesday, July 26, 2011 5:24 PM

All replies

  • There apears to be a bug in the CSClientPolicy and that it will only accept addresses with an aspx extension.

     

    Here is a similar post on the subject:

     

    http://social.technet.microsoft.com/Forums/en-US/ocsplanningdeployment/thread/ea86d7b3-0e7d-422c-9542-6c520ff16a77/

     

     

    Now to fix the issue for the time being, you need to create a redirect.

    Copy the below into notepad and rename to c_redir.aspx. Replace http://your-sharepoint-site.contoso.com/pages/userguides.aspx with the URL of your custom help page and point the page to rolodex.html(you do this for all instances in the file). Your URL should now be http://<servername>/lync/rolodex.html now save and place in the same directory as rolodex.html.

     

    Now run your command:

    Set-CsClientPolicy -Identity Test -EnableEnterpriseCustomizedHelp $True -CustomizedHelpUrl http://xxx.xxx.com/lync/c_redir.aspx

     

    That should work now

     

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
     
    <%@ Page Language="C#" %>
     
    <html>
     
    <head>
     
    <meta name="WebPartPageExpansion" content="full" />
     
    <script type="text/javascript">
     
    //<![CDATA[
     
    function geturl()
     
    {
     
    var parts = location.search.split("&"); //Number of paramaters
     
    var redirid = "";
     
    for(var i=0;i < parts.length;i++)
     
    {
     
    redirid += parts[i].split("=")[1];
     
    }
     
    var retval = "dddd";
     
    switch(redirid)
     
    {
     
    case "103341028":
     
    retval = "http://your-sharepoint-site.contoso.com/pages/userguides.aspx";
     
    break;
     
    case "103341034":
     
    retval = "http://your-sharepoint-site.contoso.com/pages/userguides.aspx";
     
    break;
     
    case "103341036":
     
    retval = "http://your-sharepoint-site.contoso.com/pages/userguides.aspx";
     
    break;
     
    case "103341037":
     
    retval = "http://your-sharepoint-site.contoso.com/pages/userguides.aspx";
     
    break;
     
    case "103341038":
     
    retval = "http://your-sharepoint-site.contoso.com/pages/userguides.aspx";
     
    break;
     
    case "103341040":
     
    retval = "http://your-sharepoint-site.contoso.com/pages/userguides.aspx";
     
    break;
     
    case "103341041":
     
    retval = "http://your-sharepoint-site.contoso.com/pages/userguides.aspx";
     
    break;
     
    case "103341042":
     
    retval = "http://your-sharepoint-site.contoso.com/pages/userguides.aspx";
     
    break;
     
    case "103341043":
     
    retval = "http://your-sharepoint-site.contoso.com/pages/userguides.aspx";
     
    break;
     
    case "103341044":
     
    retval = "http://your-sharepoint-site.contoso.com/pages/userguides.aspx";
     
    break;
     
    case "103341045":
     
    retval = "http://your-sharepoint-site.contoso.com/pages/userguides.aspx";
     
    break;
     
    case "103341046":
     
    retval = "http://your-sharepoint-site.contoso.com/pages/userguides.aspx";
     
    break;
     
    case "103341047":
     
    retval = "http://your-sharepoint-site.contoso.com/pages/userguides.aspx";
     
    break;
     
    case "103341050":
     
    retval = "http://your-sharepoint-site.contoso.com/pages/userguides.aspx";
     
    break;
     
    case "103341052":
     
    retval = "http://your-sharepoint-site.contoso.com/pages/userguides.aspx";
     
    break;
     
    case "103341054":
     
    retval = "http://your-sharepoint-site.contoso.com/pages/userguides.aspx";
     
    break;
     
    case "103341055":
     
    retval = "http://your-sharepoint-site.contoso.com/pages/userguides.aspx";
     
    break;
     
    case "103341059":
     
    retval = "http://your-sharepoint-site.contoso.com/pages/userguides.aspx";
     
    break;
     
    case "103341060":
     
    retval = "http://your-sharepoint-site.contoso.com/pages/userguides.aspx";
     
    break;
     
    case "103341061":
     
    retval = "http://your-sharepoint-site.contoso.com/pages/userguides.aspx";
     
    break;
     
    case "103341062":
     
    retval = "http://your-sharepoint-site.contoso.com/pages/userguides.aspx";
     
    break;
     
    case "103341054":
     
    retval = "http://your-sharepoint-site.contoso.com/pages/userguides.aspx";
     
    break;
     
    case "103341050":
     
    retval = "http://your-sharepoint-site.contoso.com/pages/userguides.aspx";
     
    break;
     
    case "103341052":
     
    retval = "http://your-sharepoint-site.contoso.com/pages/userguides.aspx";
     
    break;
     
    case "103341054":
     
    retval = "http://your-sharepoint-site.contoso.com/pages/userguides.aspx";
     
    break;
     
    case "103341055":
     
    retval = "http://your-sharepoint-site.contoso.com/pages/userguides.aspx";
     
    break;
     
    case "103341059":
     
    retval = "http://your-sharepoint-site.contoso.com/pages/userguides.aspx";
     
    break;
     
    case "103341060":
     
    retval = "http://your-sharepoint-site.contoso.com/pages/userguides.aspx";
     
    break;
     
    case "103341061":
     
    retval = "http://your-sharepoint-site.contoso.com/pages/userguides.aspx";
     
    break;
     
    case "103341062":
     
    retval = "http://your-sharepoint-site.contoso.com/pages/userguides.aspx";
     
    break;
     
    case "103341054":
     
    retval = "http://your-sharepoint-site.contoso.com/pages/userguides.aspx";
     
    break;
     
    default:
     
    retval = "http://your-sharepoint-site.contoso.com/pages/userguides.aspx"; }
     
    return retval;
     
    }
     
    window.navigate(geturl());
     
    //]]>
     
    </script>
     
    </head>
     
    </html>
    

     


    Tuesday, July 26, 2011 5:24 PM
  • Michael,

    In your post, wheredoes rolodex.html come into use? As I read your post I assume we went Custom URL = c_redir.aspx and c_redit.aspx redirects to my own Web site with new customer help on it?

    As my custom web site can be reached by directing it to default.aspx I tried pointing to that as that then provides a fully defined URL. Lync still adds the additional strings at the end of the URL so even then it breaks the URL. I tried pointing to an htm and html file also, same issues still present.

    Am I missing something here?

    Jed

    Tuesday, August 09, 2011 11:09 AM
  • OK, I've got this working now. I don't see any need for any references to rolodex.html so I'll ignore that piece.

    It looks to me that providing either an htm, html or aspx fulldefined URL does not stop the addiitonal parameters being added by Lync to the URL. This is why the c_redir.aspx is required as this extracts the variables from the URL and then directs the user to the correct help file URL, irrespective of what variables are passed in.

    So, I don't see how the other post referenced works as it didn't work for me. Maybe a patch has broken this feature even more!

    Either way, the workaround mostly described above worked for me,

    Thanks

    jed

    Tuesday, August 09, 2011 12:23 PM
  • I have followed these steps and no matter what extension, the CsClientPolicy adds in the extra parameters, making any Customized URL inaccessible. is the Rolodex.html special? or recognized URL inside Lync? is there a bug fix coming out for this. any help would be a good thing:)
    Thursday, September 22, 2011 3:02 PM
  • Here's a repeat of what you need to do:

    1 - Use Set-CsClientPolicy to set the help URL as below:

    CustomizedHelpUrl                      : http://<WEBserver>/<Lync2010 (if requried)>/c_redir.aspx

    2 - Create c_redir.aspx and store it in the Lync WEB site pointed to above

    3 - Edit the c_redir.aspx so all of the retval statements return a pointer to your Lync help web site (http://<WEBserver>/<Lync2010 (if requried)>/default.aspx)

    Note: All the c_redir.aspx is doing is running a script to redirect you to the relevant WEBsite based on the version of Lync client you are running. When you press the Lync client help button, the URL gets appended with additional variables based on the version of client)

    4 - Default.aspx will then load the rolodex file.

    You could point direct to the rolodex file too instead of default.aspx.

    So, to determine why yours is not working, have you gone through all the steps above?

    Have you checked that the appended variables to the URl are listed in the c_redir.aspx script? It should always match as there is a default case statement at the bottom of the switch block.

    Try pasting in the help URL you get sent to and make sure it contains c_redir.aspx in the link. If it doesn't retype the URL as http://<WEBserver>/<Lync2010 (if requried)>/c_redir.aspx/rlidOC10?clid=1033&p1=4&p2=1034&pc=oc&ver=4&subver=0&bld=7577&bldver=280 and see if it works. You could paste in the additional variables that get tagged into your URl instead, that wouyld be better. If it does work then you know you haven't set up client policy URL pointer correctly and that is where you should focus your effort.

    Jed


    Jed Please take a second to hit the green arrow on the left if the post was helpful, or mark it as an answer if it resolved your issue.
    Tuesday, September 27, 2011 9:59 AM
  • Hi,

    I also have a quick solution for this problem. Using the Adoption and Training Kit help package, the context sensitive redirection rules are already defined, you don't need to create any new file.

    1. You download the help package, which you may customize later. http://lync.microsoft.com/Adoption-and-Training-Kit/tools-and-apps/Pages/Lync-SharePoint-Intranet-Templates.aspx
    2. Unpack and copy to the web server's disk (E.g. c:\Lync_Custom_Intranet_Site). If you use IIS, you can create a virtual folder for that. (E.g. /Help)
    3. Fix the c:\Lync_Custom_Intranet_Site\redirection-table.js:
      - change window.navigate(geturl()); to window.location = geturl();
      - set the default URL to https://YourWebServer/Help
    4. Create a rewrite rule in IIS for the /Help virtual directory: pattern: rlidOC10.* , Rewrite URL: contextual-help.htm , Append query string: checked , Stop processing...: checked
    5. On Lync FE server run powershell command:
      Set-CsClientPolicy -CustomizedHelpUrl "https://YourWebServer/Help" -EnableEnterpriseCustomizedHelp $True

    Now this should be fine, you can customize the web site to your needs.

    In some cases the redirection-table.js redirects to http://r.office.microsoft.com...
    I need to figure out, why local help content is not available in those cases.

    Attila


    If you find my comment helpful or downright solved your problem, mark it as helpful or propose as answer. Thanks.

    • Edited by Attila_HUN Thursday, October 27, 2011 7:42 PM
    Thursday, October 27, 2011 7:10 PM
  • Maybe CU5 with this Update will fix the issue: http://support.microsoft.com/kb/2666338
    Monday, March 05, 2012 8:30 AM