A popular adaptation to web interface is created, the client name in the session uses rewrite rules to allow or local scripts to make a user-defined business requirements.
Some adjustments are quite simple. For example, would copy some user name in the client's name, but other customer uses complex logic to encode many different fields in this data. In WI, here the changes were made directly by changing WI. To achieve the same Rewrite with storefront, it is necessary to use the opening individualization SDK. This SDK requires some C # code, with a full range of contextual information so that to write fairly complex changes if needed are made.
Simple changes are easy and a set of sample changes are included. The SDK interface will be maintained over storefront versions, the problem of removing upgrades are recoded require adjustments, which was a risk to the WI mechanism. For more details of the SDK http://www.citrix.com/go/citrix-developer/storefront-receiver-developer-community/store-customization-sdk.html. Note that the SDK includes a sample that demonstrates how to change the client name.
In conversations with some customers, they have mentioned that they are concerned that with this SDK to get a grip for a while, they take even if the adjustment want it is very easy to use. This delays the transition to storefront. To support this, I would like the following adaptation DLL to offer new versions client names to apply based on a template.
To use this feature, you must copy the downloaded DLL in the appropriate store directory and provide the appropriate template using Config. Full instructions are below and in the download.
The adjustment template can be any string, but where this string contains a particular token, the token will be replaced with some information from the user context as shown in the table
token: under appropriate data
$ U Username $ D user domain $ N Existing client name variable $ R roaming status - "I": internal or "e": external $ A recognized address $ S Delivery address $ V $ DeviceID G gateway names (without domain). Empty string if the connection is not made via a gateway. $ P Receiver Platform ( WI ndows MA c LI Nux, IO s, TO droid, CH romebook BR owser BL ackberry W indows R t W [1945007indowsE] P hone UN known)
$ copied to the result.
A few examples :.
If the intention was only to replace with the user name the client, the template just
is then "$ U" But if you wanted to use to know the existing client, if the connection is a gateway was then one could "$ N_ $ R" to use that "would lead _I ', or' in the client with a _E" suffix
Normal ClientName apply: 20 characters max. (something about to be cut off) from the list, and no reserved characters: "/ []:; | = , + * <> ?. Each template containing these characters will be rejected.
To the DLL install
Find the existing placeholder DLL Adjustment SDK to provide ( inetpub wwwroot Citrix store name bin StoreCustomization_Input.dll). Save this file, so that you can restore the provision, if necessary, to the default. Move the backup file to a different directory, do not rename it to avoid risks of DLL conflicts in the same directory. Copy the StoreCustomization_Input.dll from the download zip in the bin directory. , Note: If you use a storefront group to lead to the spread action you push the new module to the other members of the group
to create the template
are the existing web.config fie for the store ( inetpub wwwroot Citrix store name web.config).
make a backup.
to the file in a text editor to edit.
locate the following line in the file
to change this XML to look like this
[1945016[
, remember to, the first line no longer ensure that contains a trailing slash.
now the
start
, change the setting "overrideIcaClientName" to "on".
to save the file changes.
If you use a storefront group now propagate these changes to all members of the group.
should your application now working ... exactly the same as before! What can you do now, the original value of the "$ N" old top as you like, and observe the changes in the included client names. The changes will take the next operation after the web.config file was saved
Update :. Is there a limit here for the user via a web browser storefront access. The client, which is used as input to this case, the facade creates a (WR_ xxxxx ). The reason for this is that the browser can not make the client computer name in the Storefront service. Without the adjustment in place, the client name, the winds in the meeting itself controlled by the overrideICAClientName setting - if set, the SF of the client name is generated (it params back to the client in the ICA launch will be handed over). If this setting is incorrect, SF has no data is passed to the client and the client can enter the computer name as part of the native ICA hearing. works For customization, the override setting must be on (so that the new client name is passed back to the client). So, if I suggested above with $ N achieve still the same result, I should have made it clear that it ... would be placed with override client name the same as before! Apologies if this has caused any confusion. Native Receivers deliver storefront as part of the introduction params their client names and do not suffer the same limitation.
Please note that this adjustment comes with no warranty and is not officially supported. I have tested it with Storefront 2.6 and 3.0 versions
, seeDownload here :. Https://citrix.sharefile.com/d-s3fe22c5036b4d3fa.
MD5 hash of the zipper is 98eb1130b5844123088f0ac58f08e92b.
Update for the source of the adjustment I have had a few inquiries. I had not intended to write it, as I had assumed that if someone was comfortable to work this level, they would approach the template do not need. However, I am happy to share it, see download link below. although what I would ask is that if you modify the sample to the template change approach, leave a comment on this blog fall know me by what additional information you have added in the template, as I interested am to learn about the requirements here.
was a specific question of what to read the appSettings element, the source was art. It is very simple: the System.Configuration.ConfigurationManager class used as follows:
string clientNameRewriteRule = ConfigurationManager.AppSettings [ "clientNameRewriteRule"];
The version 3.0 to Store Customisation SDK contains a few new examples to illustrate this technique
download link Customisation Source: , https://citrix.sharefile.com/d-seef1930a2ef45aab
hoping that someone!
Simon
0 Komentar