Skip to main content

Creating a bilingual environment using IBM Lotus Sametime

Lesley McLoughlin, Premium Support Manager, IBM
Lesley McLoughlin is a Premium Support Manager for IBM Lotus software. She works at the Markham, ON, Canada site. You can reach her at lmclough@ca.ibm.com.

Summary:  This article discusses how to change an existing IBM® Lotus® Sametime® 6.5.x or 7.x server environment to have a multilanguage environment; note that the multilanguage Lotus Sametime server was not made available until the R8 code stream. The article covers basic information on the languages supported, installation requirements, and the list of files that require developer changes to have a true multilanguage set-up. Illustrated in this article are step-by-step instructions and samples that you can use to make the changes needed in a single-language Lotus Sametime environment to have a multilingual Lotus Sametime server environment without upgrading IBM Lotus Domino®. Steps include copying files, making subform and template changes, and renaming views.

Date:  29 Jun 2009 (Published 08 Jan 2009)
Level:  Intermediate
Activity:  4239 views

Editor's note: Know a lot about this topic? Want to share your expertise? Participate in the IBM Lotus software wiki program today.

Lotus Sametime wiki

Introduction

For an existing Lotus Sametime 6.5.x or 7.x server environment where the preferred language is not English, users by default see the Lotus Sametime server as English. This article takes you through each step to set up the language content, including a custom language home page, sample LotusScript® code, and formulas to set up a Lotus Sametime multilingual server.

This article explains how you can can give users the option of specifying the language that they prefer with a click of a button at the STcenter.nsf database.

When you install Lotus Sametime, all of its files are coded in English for the STenter.nsf database and the Lotus Sametime Meeting room. If your user community is bilingual, requiring both Lotus Sametime instant messaging and meetings in two languages, you can meet this requirement through file conversion.


Start with the basic requirements for installing Lotus Sametime

Before starting, ensure that your Lotus Sametime server environment is configured to meet the documented system requirements and ports, as detailed in the following documentation links.


Language considerations for Lotus Domino

You should install the English version of Lotus Domino and the Lotus Domino language pack that corresponds to the language version of Lotus Sametime that you plan to install. Keep in mind that for some Lotus Domino releases, there might be a language version of Lotus Domino available that does not require installation of a language pack. For example, if you plan to install French as the version of Lotus Sametime, you should install either one of the following:

  • The language (for example, French) version of Lotus Domino.
  • The global English version of Lotus Domino, plus the language files (for example, French) from the Lotus Domino language pack. Instructions for installing language files are available on the Lotus Domino language pack CD.

NOTE: The Lotus Domino server locale settings are set automatically when you install a Lotus Domino language version or Lotus Domino language pack.

The next sections of this article show you how to create your Lotus Sametime language versions.


Create templates to be used for a second language

Using the existing Lotus Sametime server files, start by making a duplicate of specific files, giving each file a different suffix (for example, fr for French), then edit the contents of each file into the text language to be presented.

Use the English files from the Lotus Sametime directory and make a copy of the English templates, changing the file extension or directory path of each to have a fr extension to identify the French version.

Table 1 shows a list of the templates and files to be created as a duplicate set for the language that you are setting up, which in this example is French.


Table 1. List of templates and files
English (installed)French (files or directories to create)
notes\data\domino\html\sametime\stavtestnotes\data\domino\html\sametime\stavtestfr\*.*
notes\data\domino\html\sametime\stbroadcastclient notes\data\domino\html\sametime\stbroadcastclientfr\*.*
notes\data\domino\html\sametime\stdirectoryapplet notes\data\domino\html\sametime\stdirectoryappletfr\*.*
notes\data\domino\html\sametime\sthelpnotes\data\domino\html\sametime\sthelpfr\*.*
notes\data\domino\html\sametime\stlinks.savenotes\data\domino\html\sametime\stlinks.savefr\*.*
notes\data\domino\html\sametime\stmeetingroomclientnotes\data\domino\html\sametime\stmeetingroomclientfr
notes\data\domino\html\sametime\stquickstartguidenotes\data\domino\html\stquickstartguide.fr\*.*
notes\data\domino\html\sametime\stvmverifier notes\data\domino\html\sametime\stvmverifierfr\*.*

Customize the language

To modify the files that are needed for the language customization, use the root user of the server in the following instructions.

  1. Create your language directory. Create a directory called sthelpfr under conf01/domino/html/sametime within the directory <server name>/domino/html/sametime, type mkdir sthelpfr.

    Ensure that the new directory is owned by root of the system (root.sytem).

    Copy the files from the directory CD1/Languagepack/French/data/domino/html/sametime/sthelp into the sthelpfr directory that you just created. Use this command:

    cp * /conf01/domino/html/sametime/sthelpfr/.
  2. Copy GIF files to the sthelpfr directory. Copy the following GIF files from the sthelp directory into your new sthelpfr directory. Make sure that you do not overwrite the files you have copied in the previous step.

    The files should display as follows:

    notes\data\domino\html\sametime\sthelpfr\
    notes\data\domino\html\sametime\sthelpfr\active.gif
    notes\data\domino\html\sametime\sthelpfr\addpeople.gif
    notes\data\domino\html\sametime\sthelpfr\align.gif
    notes\data\domino\html\sametime\sthelpfr\announcement.gif
    notes\data\domino\html\sametime\sthelpfr\aol_active.gif
    notes\data\domino\html\sametime\sthelpfr\arrow.gif
    notes\data\domino\html\sametime\sthelpfr\attachfile.gif
    notes\data\domino\html\sametime\sthelpfr\awaystatus.gif
    notes\data\domino\html\sametime\sthelpfr\b-contents.gif
    notes\data\domino\html\sametime\sthelpfr\b-index.gif
    notes\data\domino\html\sametime\sthelpfr\back.gif
    notes\data\domino\html\sametime\sthelpfr\background.gif
    notes\data\domino\html\sametime\sthelpfr\banner.gif
    notes\data\domino\html\sametime\sthelpfr\banner_index.gif
    notes\data\domino\html\sametime\sthelpfr\bold.gif
    notes\data\domino\html\sametime\sthelpfr\bullet.gif
    notes\data\domino\html\sametime\sthelpfr\calendar-month.gif
    notes\data\domino\html\sametime\sthelpfr\calendar-week.gif
    notes\data\domino\html\sametime\sthelpfr\calendar.gif
    notes\data\domino\html\sametime\sthelpfr\char.gif
    notes\data\domino\html\sametime\sthelpfr\chaticon.gif
    notes\data\domino\html\sametime\sthelpfr\check.gif
    notes\data\domino\html\sametime\sthelpfr\colorchoose.gif
    notes\data\domino\html\sametime\sthelpfr\control.gif
    notes\data\domino\html\sametime\sthelpfr\delete.gif
    notes\data\domino\html\sametime\sthelpfr\details2.gif
    notes\data\domino\html\sametime\sthelpfr\disconnect.gif
    notes\data\domino\html\sametime\sthelpfr\donotdisturb.gif
    notes\data\domino\html\sametime\sthelpfr\dot_clear.gif
    notes\data\domino\html\sametime\sthelpfr\faded_divider_big.gif
    notes\data\domino\html\sametime\sthelpfr\fillbutton.gif
    notes\data\domino\html\sametime\sthelpfr\fillcolorwell.gif
    notes\data\domino\html\sametime\sthelpfr\fitshared.gif
    notes\data\domino\html\sametime\sthelpfr\fitsharedsm.gif
    notes\data\domino\html\sametime\sthelpfr\font.gif
    notes\data\domino\html\sametime\sthelpfr\forward.gif
    notes\data\domino\html\sametime\sthelpfr\handup.gif
    notes\data\domino\html\sametime\sthelpfr\indent.gif
    notes\data\domino\html\sametime\sthelpfr\italic.gif
    notes\data\domino\html\sametime\sthelpfr\line.gif
    notes\data\domino\html\sametime\sthelpfr\linecolorwell.gif
    notes\data\domino\html\sametime\sthelpfr\linewidth.gif
    notes\data\domino\html\sametime\sthelpfr\link.gif
    notes\data\domino\html\sametime\sthelpfr\lowerallhands.gif
    notes\data\domino\html\sametime\sthelpfr\lowerhand.gif
    notes\data\domino\html\sametime\sthelpfr\maximize.gif
    notes\data\domino\html\sametime\sthelpfr\maximizesm.gif
    notes\data\domino\html\sametime\sthelpfr\mobile_active.gif
    notes\data\domino\html\sametime\sthelpfr\mobile_away.gif
    notes\data\domino\html\sametime\sthelpfr\moderator.gif
    notes\data\domino\html\sametime\sthelpfr\n-next.gif
    notes\data\domino\html\sametime\sthelpfr\n-previous.gif
    notes\data\domino\html\sametime\sthelpfr\otherscontrol.gif
    notes\data\domino\html\sametime\sthelpfr\oval.gif
    notes\data\domino\html\sametime\sthelpfr\pen.gif
    notes\data\domino\html\sametime\sthelpfr\prefs.gif
    notes\data\domino\html\sametime\sthelpfr\raisehand.gif
    notes\data\domino\html\sametime\sthelpfr\rectangle.gif
    notes\data\domino\html\sametime\sthelpfr\rtfattach.gif
    notes\data\domino\html\sametime\sthelpfr\select.gif
    notes\data\domino\html\sametime\sthelpfr\shareframe.gif
    notes\data\domino\html\sametime\sthelpfr\shareprogram.gif
    notes\data\domino\html\sametime\sthelpfr\sharescreen.gif
    notes\data\domino\html\sametime\sthelpfr\sharing.gif
    notes\data\domino\html\sametime\sthelpfr\speaking.gif
    notes\data\domino\html\sametime\sthelpfr\sthelpabout.html
    notes\data\domino\html\sametime\sthelpfr\stopshare.gif
    notes\data\domino\html\sametime\sthelpfr\swbattach.gif
    notes\data\domino\html\sametime\sthelpfr\takecontrol.gif
    notes\data\domino\html\sametime\sthelpfr\text.gif
    notes\data\domino\html\sametime\sthelpfr\trayicon.gif
    notes\data\domino\html\sametime\sthelpfr\tskbarbut.gif
    notes\data\domino\html\sametime\sthelpfr\underline.gif
    notes\data\domino\html\sametime\sthelpfr\vidwin_float.gif
    notes\data\domino\html\sametime\sthelpfr\viewparticipantlist.gif
    notes\data\domino\html\sametime\sthelpfr\waittalk.gif
    notes\data\domino\html\sametime\sthelpfr\wbattach.gif
    notes\data\domino\html\sametime\sthelpfr\wbpointer.gif
    notes\data\domino\html\sametime\sthelpfr\temp\b-contents.gif
    notes\data\domino\html\sametime\sthelpfr\temp\b-index.gif
    notes\data\domino\html\sametime\sthelpfr\temp\banner.gif
    notes\data\domino\html\sametime\sthelpfr\temp\banner_index.gif
    notes\data\domino\html\sametime\sthelpfr\temp\bold.gif
    notes\data\domino\html\sametime\sthelpfr\temp\chaticon.gif
    notes\data\domino\html\sametime\sthelpfr\temp\disconnect.gif
    notes\data\domino\html\sametime\sthelpfr\temp\fillbutton.gif
    notes\data\domino\html\sametime\sthelpfr\temp\fillcolorwell.gif
    notes\data\domino\html\sametime\sthelpfr\temp\italic.gif
    notes\data\domino\html\sametime\sthelpfr\temp\linecolorwell.gif
    notes\data\domino\html\sametime\sthelpfr\temp\linewidth.gif
    notes\data\domino\html\sametime\sthelpfr\temp\text.gif
    notes\data\domino\html\sametime\sthelpfr\temp\underline.gif

  3. Copy the Lotus Domino language pack.

    Ensure that the language files (French in this case) are owned by the Lotus Domino server (that is, <server name>.notes).

    Copy the stcenter.nsf from CD1/ Languagepack/French/data/stcenter.nsf to your local drive.

    Rename the file stcenter.nsf as stcenterfr.nsf.

    Copy the file stcenterfr.nsf into the Lotus Domino data directory.

    Ensure that the file is owned by the Lotus Domino server, <server name>.notes.

  4. Create the preferred language stquickstartguide directory.

    Create a directory in <server name>/domino/html/sametime called stquickstartguidefr. Copy the files from the CD1/Languagepack/French/data/domino/html/sametime/stquickstartguide to the directory that you just created.

    Ensure that the file is owned by the Lotus Domino server, <server name>.notes.

  5. Create files in the preferred language.

    Copy the following files from the stquickstartguide directory into your new stquickstartguidefr directory. Make sure that you do not overwrite the files that you copied in the previous step.

    addpeople.gif
    attachfile.gif
    background.gif
    chaticon.gif
    check.gif
    control.gif
    guideen.txt
    handup.gif
    lowerallhands.gif
    lowerhand.gif
    moderator.gif
    prefs.gif
    raisehand.gif
    rtfattach.gif
    shareframe.gif
    shareprogram.gif
    sharescreen.gif
    sharing.gif
    speaking.gif
    swbattach.gif
    takecontrol.gif
    viewparticipantlist.gif
    waittalk.gif
    wbattach.gif

  6. Create a default home page for the preferred language in which you give your clients the opportunity to select their preferred language.

    Copy this home page to the Lotus Domino data directory.

    Change the server document, under Internet Protocols - Mapping, to include the new home page as the default home URL as shown in figure 1.



    Figure 1. Server Doc: Internet Protocols – Mapping tab
    Server Doc: Internet Protocols – Mapping tab

  7. Create a template for both language links on the home page.

    Create a template on your local drive from the stcenterfr.nsf file. This template can be modified to change the links for the French HTML links. This step is necessary because Lotus Sametime creates language packs with the same file name, links, and aliases in all languages.

    The home page (default.nsf) links both NSF files to allow users to click their choice of language for Lotus Sametime as shown in figure 2. The script on the button links users to the NSF file based on the language that they select. For example, selecting stcenter.nsf and French takes the user to stcenterfr.nsf.



    Figure 2. Example of custom Lotus Sametime home page
    Example of custom Lotus Sametime home page

  8. Create a link to the sthelpfr directory.

    The majority of Lotus Sametime developers have set up the software on an Intel platform. As of Lotus Domino 7 and later, UNIX® is a supported platform.

    If you are testing Unix (that is, SUSE SUSE Linux Enterprise Server, sles9 or sles10), you need to create the following directory link:

    STHelpfr link that point to <servername>//domino/html/sametime/sthelpfr

    The UNIX command is:

    ln -s /<servername>//domino/html/sametime/sthelpfr STHelpfr
  9. Modify the STCenterfr.ntf.

    Open your IBM Lotus Domino Designer client, and modify the local stcenterfr.ntf template.

    Modify the following in the form called Logiciel Sametime Client as shown in listing 1. When users click the print screen in Lotus Sametime from Microsoft® Windows®, the following French text subform for the users that selectes French requires this code.



    Listing 1. sthelpfr subform: Print Capture - English to French text
    
    <p><font face="Arial" size=2>Pour plus d'informations sur les deux versions 
    de Sametime Connect, reportez-vous à la section <a href="<Computed 
    Value>sametime/sthelpfr/H_CONNECT_VERSION_OVER.html">Identification 
    de la version de Sametime Connect que vous utilisez</a> dans le Guide 
    de l'utilisateur Sametime.</font></p>
    
    <a href="<Computed Value>sametime/sametimeprintcapture.exe">Télécharger 
    Sametime Print Capture</a><br><br>
    Sametime Print Capture est une "imprimante virtuelle" qui permet de convertir des 
    fichiers à attacher sur le tableau blanc Sametime. Sametime Print Capture 
    convertit des fichiers d'applications Windows® en fichiers Sametime 
    (fichiers .swb, pour "Sametime whiteboard") en évitant d'avoir à les imprimer sur 
    papier. Utilisez Sametime Print Capture pour rattacher un fichier au tableau 
    blanc et Sametime n'a plus besoin de convertir automatiquement le fichier 
    pour l'adapter à votre tableau blanc. Pour obtenir la liste des fichiers convertis 
    automatiquement, reportez-vous à la section <a href="<Computed
    
    Value>sametime/sthelpfr/H_ATTACHING_FILES_TO_THE_MEETING_1695_OVER.html">
    Fichiers : rattachement au tableau blanc</a> dans le Guide de l'utilisateur Sametime.
    

    Modify the subform called SametimeHomePageContent as shown in listing 2.



    Listing 2. Lotus Sametime guide subform
    
    <!-- 7)  Documentation -->
    <DIV ID = "item7" CLASS = "navigatorstyle">
    	<DIV CLASS="navigatoralignstyle">
    	<A
    		NAME="item7link"
    		CLASS="dnstyle"
    		HREF = "<Computed Value>sametime/STHelpfr/
    		H_THE_SAMETIME_USER_S_GUIDE_6913_OVER.html"
    		onMouseOver = "handleMouseOverEvent(item7, desc7);"
    		onMouseOut = "handleMouseOutEvent(item7, desc7);"
    	>
    	<Computed Value>&nbsp;&nbsp;
    	</A>
    	</DIV>
    </DIV>
    
    <!-- Documentation-->
    <DIV ID = "desc7" CLASS = "descriptionstyle">
    <A CLASS="introheaderstyle" HREF="<Computed Value>sametime/STHelpfr/
    H_THE_SAMETIME_USER_S_GUIDE_6913_OVER.html"><Computed Value></A>
    <P><Computed Value></P>
    </DIV>
     

  10. Create the LotusScript code shown in listing 3.



    Listing 3. Lotus Sametime Quick Start Guide
    
    <!-- 6)  Quick Start Guide -->
    <DIV ID = "item6" CLASS = "navigatorstyle">
    	<DIV CLASS="navigatoralignstyle">
    	<A
    		NAME="item6link"
    		CLASS="dnstyle" 
    		HREF = "<Computed Value>sametime/stquickstartguidefr/
    		H_QSG_OVERVIEW_8515_OVER.html"
    		onMouseOver = "handleMouseOverEvent(item6, desc6);"
    		onMouseOut = "handleMouseOutEvent(item6, desc6);"
    	>
    	<Computed Value>&nbsp;&nbsp;
    	</A>
    	</DIV>
    </DIV>
    
    <!-- Quick Start Guide-->
    <DIV ID = "desc6" CLASS = "descriptionstyle">
    <A CLASS="introheaderstyle" HREF="<Computed Value>
    sametime/stquickstartguidefr/H_QSG_OVERVIEW_8515_OVER.html">
    <Computed Value></A>
    <P><Computed Value></P>
    </DIV>
    

  11. Set up the conference form template.

    Copy the French stconf651.ntf template to your local drive.

    Open the Lotus Domino Designer client, and modify your local stconf651.ntf template.

    Open the form called webConference and go to the Form properties. Change the form name and alias to include fr suffix. This step is required to avoid duplicated forms in the stconf.nsf database. See the example shown in figure 3.



    Figure 3. Web conference form properties
    Web Conference form properties


How to configure Web conferencing: LotusScript and formulas

To help customize the Web meetings for your users in French, the webconferencefr form needs these changes so that what users see in English (for example, dates, subject, meeting password, and more) is now viewable in French. Follow these steps to make the necessary changes to the webConferencefr form and subforms:

  1. Copy the form webConferencefr to your clipboard, and then open stconf651.ntf on the server by using Lotus Domino Designer.
  2. Copy the new form into the English template.
  3. Open the webconferencefr form, and modify the code shown in listing 4. Note the comments in the marked sections.



    Listing 4. Computed subform: Navigation for all UI layers
    
    <Computed Subform>
    <!-- Navigation Bar -->
    <Computed Subform> <--- Modify ….. Formula1 below (changes in bold)
    
    <Script language="JavaScript">
    <!--
    todayDate = new Date();
    zoneSeconds = todayDate.getTimezoneOffset();
    document.frmMtg.BrowserTimeZone.value = zoneSeconds/60;
    //-->
    </Script>
    
    <!-- Dup form fields on all UI layers -->
    <!-- Only needed for Netscape -->
    <input type=hidden name="uimeetingtype">
    <input type=hidden name="Subject">
    <input type=hidden name="kydStart">
    <input type=hidden name="date">
    <input type=hidden name="time">
    <input type=hidden name="duration">
    <input type=hidden name="attachnames">
    <input type=hidden name="uiattdelete">
    <input type=hidden name="Body">
    <input type=hidden name="Password">
    <input type=hidden name="ConfirmPassword">
    <input type=hidden name="uiisunlisted">
    <input type=hidden name="uirecord">
    <input type=hidden name="kydIsEncryption">
    <input type=hidden name="kydIsInternetMeeting">
    <input type=hidden name="kydIsEnterpriseMeeting">
    <input type=hidden name="uitoolwb">
    <input type=hidden name="uitoolss">
    <input type=hidden name="uitoolchat">
    <input type=hidden name="uitoolsendweb">
    <input type=hidden name="uitoolpoll">
    <input type=hidden name="kydOptions">
    <input type=hidden name="uiaudiovideo">
    <input type=hidden name="uiconnectionprofile">
    <input type=hidden name="uistinvitedinterneturls">
    <input type=hidden name="uistinvitedenterpriseurls">
    <input type=hidden name="panel_cn"> <!-- Directory applet UI fields -->
    <input type=hidden name="invitees_cn">
    <input type=hidden name="moderator_cn">
    <input type=hidden name="STAudioBridgeClientID">
    <input type=hidden name="STAudioBridgePasscode">
    <input type=hidden name="STAudioBridgeClientPassword">
    
    <!-- Storing directory applet hidden fields -->
    <input type=hidden name="STPanel" value="">
    <input type=hidden name="InviteeList" value="">
    <input type=hidden name="invitees_ug" value="">
    <input type=hidden name="panel_ug" value="">
    
    <!-- Insert Nav bar - !IE -->
    <table width=625 valign=top border=0>
    <tr>
    <!--Col1-->
    <td width=170>
    <Computed Subform> <--- Modify ….. Formula2 below (changes in bold)
    </td>
    <!--Col2-->
    <td valign=top width=455 class="f"><a name="main"><big>
    <b><Computed Value></b></big></a><br>
    <Computed Value></td>
    </tr>
    </table>
    
    <!-- Insert Nav bar - IE -->
    <div id="navbar" style="position:absolute">
    <Computed Subform> <--- Modify ….. Formula3 below (changes in bold)
    </div>
    <div id="viewtitle" style="position:relative; left: 180px;"><a 
    name="main"><big><b><Computed Value></b>
    </big></a></div>
    
    <!--Load Correct WebMeeting subform-->
    
    <Computed Subform><--- Modify ….. Formula4 below (changes in bold)
    
    <Computed Subform>
    
    
    <!--Load the Sametime 1.5 Applet if this is an invited 1.5 meeting-->
    
    <Computed Subform>
    
    <!-- Use a table for details -->
    <table width=625 valign=top border=0>
    <tr>
    <!-- Col 1 -->
    <td width=170 valign=top>
    <!-- Insert Nav bar -->
    <Computed Subform><--- Modify ….. Formula5 below (changes in bold)
    
    </td>
    
    <!-- Col 2 -->
    <td valign=top width=455>
    <a name="main"><big><b><Computed Value></b>
    </big></a><br>
    <!-- Include Nav -->
    <Computed Subform><--- Modify ….. Formula6 below (changes in bold)
    
    <!-- Insert Content -->
    <form>
    <br><b>Veuillez patienter ici.<br>
    La salle de réunion s'ouvre automatiquement dans une nouvelle fenêtre.</b>
    <b>La réunion a lieu maintenant.</b><br>
    <input type="button" value="Participer à la réunion" 
    onClick="<Computed Value>">
    </form>
    
    <!--WebMeetingDetails-->
    
    <Computed Subform>
    <!--WebPasswordPrompt-->
    <Computed Subform>
    
    <script language="JavaScript">
    <!--
    checkReload();
    // -->
    </script>
    
    <!--
    
    -->
    =====================================================================================
    
    Formula 1
    @If(@IsDocBeingEdited & state != 2;"WebNavBarfr";"WebBlank")
    
    Formula 2
    @If((@IsDocBeingEdited) & (state != 2) & (password = "" | 
    uipasswordverified != 0) & browserversion != "ie4+";"WebNewNavfr";"WebBlank")
    
    Formula 3
    @If((@IsDocBeingEdited) & (state != 2) & (password = "" | 
    uipasswordverified != 0) & browserversion = "ie4+";"WebNewNavfr";"WebBlank")
    
    Formula 4
    @If((@IsDocBeingEdited & state != 2) & (password = "" | 
    uipasswordverified != 0); @If(browserversion = "ie4+";"WebMeeting-IEfr";
    browserversion = "nav4";"WebMeeting-N4fr";browserversion = "moz5+";
    "WebMeeting-Mozfr";browserversion = "old";"WebMeeting-Old";
    "WebMeeting-UN");"WebBlank")
    
    Formula 5
    @If((!@IsDocBeingEdited) | (state=2) | (password != "" & uipasswordverified = 0);
    "WebNewNavfr";";"WebBlank")
    
    Formula 6
    @If((!@IsDocBeingEdited | state=2) & (password = "" | uipasswordverified != 0);"
    WebNavBarfr";";"WebBlank")
    

  4. Next, open the subform WebNewNav, in the French template, and modify the code shown in listing 5 (see changes in bold).



    Listing 5. Conference and Active Meetings: frmConferencefr and vwwebActiveMeetingsfr subform scripts
    
    
    <table>
    <tr><td align=right><a href="#principal"><img src="<Computed 
    Value>icons/ecblank.gif" width="1" height="1" border="0" alt="<Computed 
    Value>" title=""></a><img src="<Computed 
    Value>sametime/images/dot.gif" alt="*" title="" width=9 height=9 
    vspace=2></td><td class="f"><small><Computed 
    Value></small></td></tr>
    <tr><td><a href="#principal"><img src="<Computed 
    Value>icons/ecblank.gif" width="1" height="1" border="0" alt="<Computed 
    Value>" title=""></a></td><td class="f"><small>
    <a href="<Computed Value>frmConferencefr?Openform<Computed 
    Value>"><Computed Value></a></small></td></tr>
    
    <tr><td colspan=2>&nbsp;</td></tr>
    
    <tr><td align=right><img src="<Computed Value>
    sametime/images/dot.gif" alt="*" title="" width=9 height=9 vspace=2>
    </td><td class="f"><small><Computed Value>
    </small></td></tr>
    <tr><td></td><td class="f"><small><a href="<Computed 
    Value>vwWebActiveMeetingsfr?Openview<Computed Value>"><Computed 
    Value></a></small></td></tr>
    
    <tr><td align=right><img src="<Computed Value>
    sametime/images/dot.gif" alt="*" title="" width=9 height=9 vspace=2></td>
    <td class="f"><small><Computed 
    Value></small></td></tr>
    <tr><td></td><td class="f"><small><a href="<Computed 
    Value>vwWebScheduledMeetingsfr?Openview<Computed Value>"><Computed 
    Value></a></small></td></tr>
    
    <tr><td align=right><img src="<Computed 
    Value>sametime/images/dot.gif" alt="*" title="" width=9 height=9 vspace=2>
    </td><td class="f"><small><Computed Value></small>
    </td></tr>
    <tr><td></td><td class="f"><small><a href="<Computed 
    Value>vwWebFinishedMeetingsfr?Openview<Computed Value>">
    <Computed Value></a></small></td></tr>
    
    <tr><td align=right><img src="<Computed 
    Value>sametime/images/dot.gif" alt="*" title="" width=9 height=9 
    vspace=2></td><td class="f"><small><Computed 
    Value></small></td></tr>
    <tr><td></td><td class="f"><small><a href=
    "javascript:goToTodayOnlyView()"><Computed Value></a>
    </small></td></tr>
    
    <tr><td colspan=2>&nbsp;</td></tr>
    
    <tr><td align=right><img src="<Computed 
    Value>sametime/images/dot.gif" alt="*" title="" width=9 height=9 vspace=2>
    </td><td class="f"><small><Computed Value>
    </small></td></tr>
    <tr><td></td><td class="f"><small><a href="<Computed 
    Value>($WebSearchfr)?OpenView<Computed Value>"><Computed 
    Value></a></small></td></tr>
    
    <tr><td align=right><img src
    
     
    <tr><td align=right><img src="<Computed 
    Value>sametime/images/dot.gif" alt="*" title="" width=9 height=9 vspace=2>
    </td><td class="f"><small><Computed Value></small>
    </td></tr><!-- Admin Only -->
    <tr><td></td><td class="f"><small><a href="
    <Computed Value>vwWebAdminHiddenMeetings?Openview<Computed 
    Value>"><Computed Value></a></small></td>
    </tr><!-- Admin Only -->
    
    <tr><td align=right><img src="<Computed 
    Value>sametime/images/dot.gif" alt="*" title="" width=9 height=9 
    vspace=2></td><td class="f"><small><Computed 
    Value></small></td></tr><!-- Admin Only -->
    <tr><td></td><td class="f"><small><a href=
    "JavaScript: goToView('vwWebAdminAllMeetings')"><Computed Value>
    </a></small></td></tr><!-- Admin Only -->
    
    <tr><td align=right><img src="<Computed 
    Value>sametime/images/dot.gif" alt="*" title="" width=9 height=9 
    vspace=2></td><td class="f"><small><Computed 
    Value></small></td></tr>
    <tr><td></td><td class="f"><small><a href=
    "JavaScript: goToView('vwWebAllMeetingsfr')"><Computed Value></a>
    </small></td></tr>
    
    <tr><td align=right><img src="<Computed 
    Value>sametime/images/dot.gif" alt="*" title="" width=9 height=9 
    vspace=2></td><td class="f"><small><Computed 
    Value></small></td></tr>
    <tr><td></td><td class="f"><small><a href=
    "<Computed Value>vwWebMyMeetingsfr?Openview<Computed 
    Value>"><Computed Value></a></small></td></tr>
    
    <tr><td align=right><img src="<Computed 
    Value>sametime/images/dot.gif" alt="*" title="" width=9 height=9 
    vspace=2></td><td class="f"><small><Computed 
    Value></small></td></tr>
    <tr><td></td><td class="f"><small><a href="<Computed 
    Value>vwWebRecordedMeetings?Openview<Computed Value>">
    <Computed Value></a></small></td></tr>
    
    <tr><td align=right><img src="<Computed 
    Value>sametime/images/dot.gif" alt="*" title="" width=9 height=9 
    vspace=2></td><td class="f"><small><Computed 
    Value></small></td></tr>
    <tr><td></td><td class="f"><small><a href=
    "<Computed Value>vwCalendarfr?Openview<Computed Value>">
    <Computed Value></a></small></td></tr>
    
    <tr><td colspan=2>&nbsp;</td></tr>
    
    <tr><td></td><td class="f"><small><a href=
    "javascript:importRecording();"><Computed Value></a>
    </small></td></tr>
    
    //use hide-when to determine if AVWizard link should be displayed
    <tr><td></td><td class="f"><small><a href=
    "javascript:AVWizardLaunch(<Computed Value>);"><Computed 
    Value></a></small></td></tr>
    
    <tr><td></td><td class="f"><small><a href="<Computed
    Value>sametime/sthelpfr/H_ATTENDING_A_SCHEDULED_MEETING_3566_OVER.html" 
    onClick="helpBox('<Computed Value>sametime/sthelpfr/
    H_ATTENDING_A_SCHEDULED_MEETING_3566_OVER.html');return false" target="helpbox">
    <Computed Value></a></small></td></tr>
    
    <tr><td></td><td class="f"><small><a href="<Computed
    Value>sametime/sthelpfr/H_VIEWING_MEETING_DETAILS_2343.html" 
    onClick="helpBox('<Computed Value>sametime/sthelpfr/
    H_VIEWING_MEETING_DETAILS_2343.html');return false" target="helpbox">
    <Computed Value></a></small></td></tr>
    
    <tr><td></td><td class="f"><small><a href="<Computed
    Value>sametime/sthelpfr/H_CREATING_A_SCHEDULED_MEETING_2563_OVER.html" 
    onClick="helpBox('<Computed Value>sametime/sthelpfr/' + 
    helpTabURL[currentTab]);return false"><Computed Value>
    </a></small></td></tr>
    </table> 
    


Change the subforms required to load the language

Each subform that you have created for the language (fr) suffix now needs to be renamed so that the original English files and subforms have an identical French language counterpart. This approach gives your users the language to load for all Lotus Sametime components with the click of a button.

  1. Open the French stconf651.ntf file.
  2. Rename the subforms as shown in table 2.

Table 2. Old and new names for subforms
Old nameNew name
WebMeeting-IEWebMeeting-IEfr
WebMeeting-N4WebMeeting-N4fr
WebMeeting-MozWebMeeting-Mozfr
WebNewNavWebNewNavfr
  1. Copy the four subforms that you just renamed to your clipboard, and then open the stconf651.ntf file on the server using Lotus Domino Designer. Copy the new subforms into the English template.
  2. Rename the forms listed in table 3.

Table 3. Old and new names for forms
Old nameNew name
$$ViewTemplate for vwWebActiveMeetings$$ViewTemplate for vwWebActiveMeetingsfr
$$ViewTemplate for vwWebScheduledMeetings$$ViewTemplate for vwWebScheduledMeetingsfr
$$ViewTemplate for vwWebFinishedMeetings $$ViewTemplate for vwWebFinishedMeetingsfr
$$ViewTemplate for vwTodayConf $$ViewTemplate for vwTodayConffr
$$ViewTemplate for vwWebAllMeetings $$ViewTemplate for vwWebAllMeetingsfr
$$ViewTemplate for vwWebMyMeetings $$ViewTemplate for vwWebMyMeetingsfr
$$ViewTemplate for vwCalendar$$ViewTemplate for vwCalendarfr
$$ViewTemplate for vwWebTodaysMeetings$$ViewTemplate for vwWebTodaysMeetingsfr
$$ViewTemplate for ($WebSearch) | webSearch $$ViewTemplate for ($WebSearchfr) | webSearchfr
  1. Copy the seven forms that you just renamed to your clipboard, and then open the stconf651.ntf file on the server using Lotus Domino Designer. Copy the new forms into the English template.

    After the new forms are pasted, open each form and modify the following code as shown in listing 6. Note that you need to use different code for $$ViewTemplate for vwTodayConffr. This exception is covered next.



    Listing 6. Subform code change: navigator bar
    
    <table width=625 valign=top border=0>
    <tr>
    <!-- Col 1 -->
    <td width=170 valign=top>
    <!-- Insert Nav bar -->
    <Computed Subform><--- Modify ….. Formula below (changes in bold)
    </td>
    
     Formula 
    
    "WebNewNavfr" 
     

    Use the code shown in listing 7 for the form $$ViewTemplate for vwTodayConffr.



    Listing 7. $$ViewTemplate code change for vwTodayConffr
    
    "<script language=\"JavaScript\" type=\"text/javascript\">" + @NewLine +
    "<!--" + @NewLine +
    "if (parseInt(navigator.appVersion) >= 4 || window.location.replace)" + @NewLine +
    "	window.location.replace(\"vwWebActiveMeetingsfr?OpenView\");" + @NewLine +
    "else" + @NewLine +
    "	window.location.href=\"vwWebActiveMeetingsfr?OpenView\";" + @NewLine +
    "// -->" + @NewLine +
    "</script><noscript> <meta http-equiv=\"refresh\" content=\"0; 
    url=vwWebActiveMeetingsfr?OpenView\"></noscript>"
    


Modify the STCenterfr.ntf filefor meetings

Open the stcenterfr.ntf file and modify the following code as shown in listing 8.


Listing 8. STCenterfr meetings code

<!-- 2) Schedule a Meeting -->
<DIV ID = "item2" CLASS = "navigatorstyle">
	<DIV CLASS="navigatoralignstyle">
	<A
		NAME="item2link"
		CLASS="dnstyle"
		HREF="<Computed Value><Computed Value>/frmConferencefr?OpenForm"
		onMouseOver = "handleMouseOverEvent(item2, desc2);"
		onMouseOut = "handleMouseOutEvent(item2, desc2);"
	>
	<Computed Value>&nbsp;&nbsp;
	</A>
	</DIV>
</DIV>

<!-- Schedule a Meeting-->
<DIV ID = "desc2" CLASS = "descriptionstyle">
<A CLASS="introheaderstyle" HREF="<Computed Value><Computed 
Value>/frmConferencefr?OpenForm"><Computed Value></A>
<P><Computed Value></P>
</DIV>


Modify the views

Take each of the following views and rename the title and the alias as shown in table 4.


Table 4. Old and new titles and aliases
Old titleNew titleOld aliasNew alias
(Web Active Meetings)(Web Active Meetings French)vwWebActiveMeetingsvwWebActiveMeetingsfr
(Web Scheduled Meetings)(Web Scheduled Meetings French)vwWebScheduledMeetingsvwWebScheduledMeetingsfr
(Web Finished Meetings) (Web Finished Meetings French)vwWebFinishedMeetingsvwWebFinishedMeetingsfr
(Web Today's Meetings)(Web Today's Meetings French)vwWebTodaysMeetingsvwWebTodaysMeetingsfr
(Web All Meetings) (Web All Meetings French)vwWebAllMeetingsvwWebAllMeetingsfr
(Web My Meetings) (Web My Meetings French)vwWebMyMeetingsvwWebMyMeetingsfr
AgendaAgenda FrenchvwCalendarvwCalendarfr
Reunions du jourReunions du jourvwTodayConfvwTodayConffr
($WebSearch)($WebSearchfr)($WebSearch)($WebSearchfr)

Conclusion

In this article, we demonstrated how to create a multilingual Lotus Sametime environment in French with versions 7.0 or 6.5 and later. We included sample LotusScript and the commands needed to get Web meetings working and to create a custom language home page. To further expand your Lotus Sametime knowledge, we included documentation and reference material to help you with your Lotus Sametime configuration.


Appendix: Expand your Lotus Sametime environment

Extending Lotus Sametime using the Web or multiple Lotus Sametime servers

Previously, you had created a custom login form for HTTP in the Lotus Domino Web server configuration database (domcfg.nsf). After installing Lotus Sametime, you notice that when Web users authenticate over HTTP, they see the standard Lotus Sametime log-in form instead of the customized form. By default, the Lotus Sametime installation creates a Lotus Domino Web server configuration (domcfg.nsf) database that overwrites an existing domcfg.nsf file.

Before you install Lotus Sametime, make a backup copy of the Lotus Domino Web server configuration database.

Reference: Technote # 1157469: Installing Sametime on Domino creates new DOMCFG.nsf overwriting current one

What if I want to have more users on Lotus Sametime and I need more Lotus Sametime servers?

By default, Lotus Sametime Connect launches only as a single instance. This fact means that clicking the icon more than once launches the same Lotus Sametime Connect client and not a second instance of it.

NOTE: Running multiple instances of the Lotus Sametime 7.5 Connect client is an unsupported configuration and should be used only for testing purposes.

Technote # 1086931 Connecting to multiple ST servers

Technote # 1095988 Is Sametime supported on partitioned servers


Resources

About the author

Lesley McLoughlin is a Premium Support Manager for IBM Lotus software. She works at the Markham, ON, Canada site. You can reach her at lmclough@ca.ibm.com.

Comments (Undergoing maintenance)



Trademarks  |  My developerWorks terms and conditions

Help: Update or add to My dW interests

What's this?

This little timesaver lets you update your My developerWorks profile with just one click! The general subject of this content (AIX and UNIX, Information Management, Lotus, Rational, Tivoli, WebSphere, Java, Linux, Open source, SOA and Web services, Web development, or XML) will be added to the interests section of your profile, if it's not there already. You only need to be logged in to My developerWorks.

And what's the point of adding your interests to your profile? That's how you find other users with the same interests as yours, and see what they're reading and contributing to the community. Your interests also help us recommend relevant developerWorks content to you.

View your My developerWorks profile

Return from help

Help: Remove from My dW interests

What's this?

Removing this interest does not alter your profile, but rather removes this piece of content from a list of all content for which you've indicated interest. In a future enhancement to My developerWorks, you'll be able to see a record of that content.

View your My developerWorks profile

Return from help

static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=1
Zone=Lotus
ArticleID=362370
ArticleTitle=Creating a bilingual environment using IBM Lotus Sametime
publish-date=06292009
author1-email=lmclough@ca.ibm.com
author1-email-cc=

My developerWorks community

Tags

Help
Use the search field to find all types of content in My developerWorks with that tag.

Use the slider bar to see more or fewer tags.

Popular tags shows the top tags for this particular content zone (for example, Java technology, Linux, WebSphere).

My tags shows your tags for this particular content zone (for example, Java technology, Linux, WebSphere).

Use the search field to find all types of content in My developerWorks with that tag. Popular tags shows the top tags for this particular content zone (for example, Java technology, Linux, WebSphere). My tags shows your tags for this particular content zone (for example, Java technology, Linux, WebSphere).

Special offers