Plug-in Chat -------------------------------------------------------------------------------- The blaxxun Contact plug-in consists of a VRML viewer and a chat multi-user plug-in. It uses multiple frames to display the plug-ins and additional information. The common chat interface can be used with version 6 or higher. Then only the VRML viewer is loaded getting the 3dchat.bxx parameter template as plugin parameter BXX-URL. Older plugins will use the following frame structure. The header frame contains only the chat buttons and the name of the current place. The next frame contains the 3D plug-in. This template (place/contact3d) also contains a JavaScript function that checks whether the blaxxun Contact plug-in is installed. It loads the template info/downloadcontact if it is not installed. It does not load the 3D world of a place immediately but loads an empty VRML file (blank.bx3) instead. The 3D world is defined as chat parameter. The 3D files for the communal chat places are loaded from the /commserv/community/places//vrml folders, the club uses a template club/vrml.wrl to read clubspecific information and homes are loaded from /commserv/community/home/vrml/home/ folders. The lower frame contains the chat and multi-user plug-in using the template place/3dchat.bxx. It contains all parameters identifying the chat place and the member and for defining the layout of the chat frame. See a description of all parameters below. Whenever the chat place is changed, this template is loaded for the new place. The chat plug-in searches for a 3D plug-in in the same browser and connects to it to load the 3D world, avatars, etc. An additional hidden frame has the sole purpose of providing a frame in which JavaScript "open new window" calls can be performed. This is used for displaying Contact help documents as well as Contact chat log documents. The name of this frame must match the htmlframe chat parameter. Plug-in check The template place/contactcheck is loaded after login. It checks whether the blaxxun Contact plugin is installed on the workstation of the user. If it is installed, the major version number, e.g. 6, is stored in the PLG attribute of the MemberData or Visitor table. If the member chose in his profile to use blaxxun3D instead of the plugin, PLG contains the value 0. Then the version number won't be stored. The attribute remains empty if the plugin isn't installed. After download and installation of the plugin, the member must login again. Plug-in chat parameters The chat parameter template place/3dchat.bxx will be loaded by the Contact plug-in on start up and when changing the chat place. The following list shows all parameters and examples and whether the parameter is mandatory. Some are not available with older versions of the Contact plug-in. server This parameter stores the name of the Community Server. (mandatory) server <$g_CServer> The network error -108 will be displayed if the address of the specified server name can not be resolved. port This is the port used by the Community Server.(mandatory) port <$g_CSPort> scene This parameter specifies the unique name of your scene used to log on to the Community Server. (mandatory) scene <$g_HttpServer><$g_cgiRoot>/print<$g_exe>?PLC=<$PLC>&DTY=<$DTY>&ID=<$ID>&TPL=3dchat.bxx sname This parameter specifies the logical scene name. This is the name that would appear in the places list in blaxxun Contact which is unused in the default community. (mandatory) sname <$NAM> 3dscene This parameter specifies the 3D world to be loaded in the 3D frame. Relative names will be resolved against the location of the bxx file itself. (mandatory) 3dscene <$g_HTMLRoot>/places/<$PLC>/vrml/<$PLC>.wrl htmlframe This parameter specifies the name of a frame defined in the frameset document which blaxxun Contact should use to display log and help documents. If a frame with the specified name does not exist in the currently loaded frameset, blaxxun Contact opens a new browser window for those documents. htmlframe HTML frameset The frameset parameter can be used to reference another frameset to be loaded whenever the place is changed. This might be useful if some places should use a different frameset. frameset <$g_HttpServer><$g_cgiRoot>/print<$g_exe>?PLC=<$PLC>&DTY=<$DTY>&ID=<$ID> framesizes The framesizes parameter specifies the size of the blaxxun Contact chat panel in percent relative to the total width of the blaxxun Contact frame. framesizes 60 helpindex The helpindex parameter specifies your worlds help index file to be shown in blaxxun Contact's help list panel. Each line of that file should contain a URL and the name of the menu entry. See the default URL below. helpindex http://www.blaxxun.com/products/contact/plugin/helpindex.html vrmldefavatar This parameter specifies the default VRML avatar for your 3D world. vrmldefavatar http://www.blaxxun.com/vrml/avatars/default.wrl visdefavatar This parameter specifies the default Viscape avatar for your 3D world. See the usage of Viscape for 3D below. visdefavatar http://www.blaxxun.com/vrml/avatars/default.svc noblaxxunhelp This parameter can be set to 1 in order not to add blaxxun's help documents to the blaxxun Contact help list panel. The default is 0. noblaxxunhelp 1 noblaxxunicon This parameter switches the blaxxun logo in the public chat panel off if set to 1. The default ist 0. noblaxxunicon 1 3dmenu This parameter specifies the menu mode for blaxxun Contact 3D. Valid values are 0 No menu 1 Trade show menu, showing only viewpoints and navigation panel 2 Standard menu 3 Expert menu (Contact 5.0 or higher) For Contact 4.4 or lower the default is 2, for 5.0 or higher the users setting (installation default is 2). 3dmenu 1 avatarworld This parameter specifies the avatar select page linked in the options panel. The parameter value may be followed by the name of the target frame (separated by a blank) in which the page is to be displayed. It is unused in th default platform. avatarworld http://www.blaxxun.com/vrml/avatars/pro_vrmlframe.htm avatarhorizoncount The next 3 parameters define the visibility update rate for avatars. Please be very careful when changing the default values mentioned in the examples to avoid using too much bandwidth on the server and client side. This parameter defines the maximum number of constantly visible avatars. avatarhorizoncount 6 avatarhorizon This parameter defines the update range for avatars. In this example you get updates for avatars in a 120-meter (=1200000 Viscape units) circle around you. The maximum value is 320. avatarhorizon 120 maxneighbourspp This parameter defines the number of moving avatars in each motion package from the server.The maximum value is 15. If you increase the value, bandwidth usage increases. maxneighbourspp 6 message This parameter contains a string which will be displayed in the public chat after a connection has been established. message <$NNM>, welcome to <$NAM>. Sorry, you can only watch the chat! joinmessage This parameter defines whether the " has joined/left the group" messages are displayed. Per default the messages are displayed. joinmessage 0 protectpublicinput This parameter protects the text input field in the public chat panel if set to 1. protectpublicinput 1 listtabflag This parameter defines which Contact tab panels are active/inactive. It is a string of 0's and 1's, where each digit represents the state of a panel. 0 Inactive, panel not displayed 1 Active, panel visible The tabs are displayed in the following order (left to right): People List Place List Group List Card List (unused) Chat Log List Help List Options List Public Objects List (Contact 4.0 or higher) Personal Objects List (Contact 4.0 or higher) listtabflag 1000101 settingslistflag This parameter defines which entries in the Contact Settings Panel are active/inactive. It is a string of 0's and 1's, where each digit represents the state of an entry. 0 Inactive, entry not displayed 1 Active, entry displayed The order is as follows (left to right): Firewall option Personal member data stored locally Gestures/Body Language Chat macros About blaxxun Contact Avatar Library link Language (Contact 4.0 or higher) Voice (Contact 4.0 or higher) settingslistflag 1011101 panelbackrgb This parameter specifies the RGB (red-green-blue) values for the list and chat panel background color. panelbackrgb 20,60,100 paneltextrgb This parameter specifies the RGB (red-green-blue) values for the list panel text color. paneltextrgb 255,255,255 inputtextchatrgb This parameter specifies the RGB (red-green-blue) values for the input chat text color. inputtextchatrgb 204,204,204 systemtextchatrgb This parameter specifies the RGB (red-green-blue) values for the text color of system chat messages in the chat output. systemtextchatrgb 204,204,255 historytextchatrgb This parameter specifies the RGB (red-green-blue) values for the text color of "history" chat in the chat output. historytextchatrgb 250,250,250 bottextchatrgb This parameter specifies the RGB (red-green-blue) values for the color of text sent by agents in the chat output. bottextchatrgb 255,255,255 owntextchatrgb This parameter specifies the RGB (red-green-blue) values for the color of own chat text in the chat output. owntextchatrgb 204,204,204 othertextchatrgb This parameter specifies the RGB (red-green-blue) values for the color of all other chat text in the chat output. othertextchatrgb 255,255,255 logcolor This parameter defines whether the chat text colors should be used when writing to chat log files. The default value is 1 (means yes). logcolor 0 chatgroup[n] This parameter enables you to define chat groups which will be displayed in the group panel. Chat groups can also be defined as spatial groups in 3D. See the de chatgroup1 myFirstGroup chatgroup2 mySecondGroup chatgroup3 myLastGroup moderation This parameter enables the moderation feature in Contact. It is unused in the blaxxun Virutal Worlds Platform since the moderation can be started there for the public chat from the HTML page. Note: In order to join a moderated group or to moderate a group, the group panel must be activated (see the listtabflag parameter). moderation open_mod.htm HTML loadworld This parameter defines a URL to be loaded in a specific frame after login/startup loadworld http://www.blaxxun.com _blank vrmlmyavatar This parameter defines the VRML avatar which will be used by this client. Normally it will be read from the member profile. vrmlmyavatar http://www.blaxxun.com/vrml/avatars/dave.wrl vismyavatar This parameter defines the Viscape avatar which will be used by this client. vismyavatar http://www.blaxxun.com/vrml/avatars/default.svc saveavatar (Contact 4.3 or higher) If used, the client's avatar as set by vrmlmyavatar is written back to the client's configuration file. In the blaxxun Platform, a member's avatar is stored in the member profile. saveavatar 1 nickname This parameter defines the nickname which will be used by the client in the chat. It will be validated together with the password by the authentication server. nickname <$NNM> prenickname (Contact 3.07 or higher) This parameter defines a string that will be displayed (in superscript) in front of the user's nickname in the chat panel. It will be validated by the authentication server. # set job prenickname <$MYR_NAM> postnickname (Contact 3.07 or higher) This parameter defines a string that will be displayed (in subscript) after the user's nickname in the chat panel. It will be validated by the authentication server. # set experience postnickname <$EXP> lastname This parameter defines the last name which will be set for this client. It can be displayed in the personal data for the member. The personal data dialog is not activated in the blaxxun Platform. It links to the member profile instead. lastname <$LNM> firstname This parameter defines the first name which will be set for this client. It can be displayed in the personal data for the member. The personal data dialog is not activated in the blaxxun Platform. It links to the member profile instead. firstname <$FNM> interests This parameter defines the interests which will be set for this client. It will be validated by the authentication server. interests <$INT> url This parameter defines the URL (home page) which will be used for this client. It can be displayed in the personal data for the member. The personal data dialog is not activated in the blaxxun Platform. It links to the member profile instead. url javascript:loadProfile('') action urt (Contact 3.07 or higher) This parameter defines the URL title which will be used in dialog boxes and menus instead of "URL" for the user's URL (home page). Member ProfileJavaScript protectnickname This parameter defines whether the nickname can be changed by the user. If it is set to 1, the user is unable to change the nickname. protectnickname 1 hideavatarprop This parameter defines whether the personal data dialog is never displayed. hideavatarprop 1 authenticationid This parameter defines the authentication ID which is the nickname of the member or visitor. authenticationid <$NNM> authenticationpw This parameter defines the authentication password which will be used by the authentication server to validate the nickname and other member data. The cookie or sessionID is used to pass the information. authenticationpw <$COOKIE> localavatarserver (Contact 3.07 or higher) In a Viscape world, you can set this parameter to cache all avatars from the specified server automatically to your hard disk. localavatarserver www.blaxxun.com Avatars from http://www.blaxxun.com will be cached and loaded into the directory /avatars. A subdirectory can be specified with the parameter localavatardirectory. localavatardirectory (Contact 3.07 or higher) The name of a subdirectory for locally cached Viscape avatars; see also localavatarserver above. localavatardirectory blaxxun Avatars will be cached in /avatars/blaxxun. voicesupport (Contact 4.0 or higher) This parameter defines whether voice will be supported for the clients. If the voice software is not installed, blaxxun Contact asks if it should be downloaded. If the parameter is set to 0, the blaxxun Contact voice interface will not be activated, even if the voice server is installed. The default setting is 1. voicesupport 1 voicelang (Contact 4.0 or higher) This parameter specifies the supported voice language. The default is US English (US). German (GR) is also supported. voicelang US botvoiceenable (Contact 4.0 or higher) This parameter defines whether agent (bot) voices should be enabled or not. If it is set to 1, agent voice will be enabled. This applies to every agent in the world. But each agent can define it separately in the agent configuration script. The default value is 0. botvoiceenable 1 botvoicetype (Contact 4.0 or higher) This parameter determines the voice type used by agents. Each agent can define it separately in the agent configuration script. The table below lists the agent voice types associated with different parameter values. 0 Default male voice 1 Full male voice 2 Aged male voice 3 Male voice 4 Full female voice 5 Aged female voice 6 Whispering female voice 7 Female voice 8 Child's voice botvoicetype 0 botvoicerate (Contact 4.0 or higher) This parameter determines the speed of agent speech in words per minute. The value can be between 75 and 600; the default value is 180 words per minute. botvoicerate 180 clientvoiceenable (Contact 4.0 or higher) This parameter defines whether the client's voice should be enabled or not. If it is set to 1, the client voice will be enabled. The default value is 0 clientvoiceenable 1 nochatdetails (Contact 4.0 or higher) This parameter disables the additional tool access button in the chat window if set to 1. nochatdetails 1 nochathistory (Contact 4.0 or higher) This parameter disables the display of chat history entries in the chat window if set to 1. The default is 0. nochathistory 1 nochatlog (Contact 4.0 or higher) This parameter disables the logging of chat entries to the session log files if set to 1. The default is 0 nochatlog 1 nochatinvite (Contact 4.0 or higher) This parameter disables the "invite to chat" menu in the avatar list if set to 1. The default is 0. nochatinvite 1 denychatinvite (Contact 4.4 or higher) If this parameter is set, all 1:1 chat requests are automatically denied. For instance, the star of a (moderated) chat might receive lots of these requests, which she/he has to deny manually unless this parameter is set. We recommend using this parameter only for special sessions and certain users. The default setting is off (0). denychatinvite 1 showbotwhisper (Contact 4.0 or higher) This parameter defines whether the user sees the chat text whispered by an agent as whispered text or as normal chat text. The default value is 0. showbotwhisper 1 chatgrouplang (Contact 4.0 or higher) For each chatgroup defined (see above), a different language can be specified. The chat text written by the users in this group will be spoken in that language. US English (default) GR German chatgrouplang1 GR chatgrouplang2 US chatgrouplang3 GR useversionserver (Contact 4.0 or higher) This parameter specifies whether blaxxun Contact accesses the blaxxun version server upon startup. The default value is 1. useversionserver 0 firewalloption (Contact 4.0 or higher) This parameter specifies the communication protocol used when entering the world. 0 UDP (default) 1 blaxxun proxy server 2 TCP 3 HTTP tunneling firewalloption 2 uselastscene This parameter can be used for pages which require reloading the last active scene (like avatar pages). The default value is 0. uselastscene 1 [ListTabs]tabPrivateObjName (Contact 4.2 or higher) This parameter specifies the name of the tab used to display private objects. The tab needs to be activated. The default is "My Backpack". An HTML page is used instead of this tab in the blaxxun Platform. [ListTabs]tabPrivateObjName My Backpack [ListTabs]tabPublicObjName (Contact 4.2 or higher) This parameter specifies the name of the tab used to display public objects. The default is 'Purchasable Objects'. An HTML page is used instead of this tab in the blaxxun Platform. [ListTabs]tabPublicObjName Purchasable Objects [World Params]objectpucolumntitle (Contact 4.2 or higher) This parameter holds the titles for the columns in the object tabs. An HTML page is used instead of this tab in the blaxxun Platform. [World Params]objectpucolumntitle Price,Count [World Params]objectpucolumnvalue (Contact 4.2 or higher) This parameter holds the attribute names to be read from the database, displayed in the columns of the object tabs and set in the respective objects. [World Params]objectpucolumnvalue TPR,CNT [World Params]objectpucolumnwidth (Contact 4.2 or higher) This parameter specifies the size of the columns in the object tab. [World Params]objectpucolumnwidth 20,20 nicknamecolsize (Contact 4.3 or higher) This parameter specifies the width of the nickname column as a percentage of total tab width in the people list. The default value is 70%. nicknamecolsize 50 noextlistcount (Contact 4.3 or higher) This parameter, when active, switches the extended people count off. Default is on (0). noextlistcount 1 showdocument (Contact 4.3 or higher) The specified file will be displayed upon scene entry in the specified target frame. Note: loaddocument has the same format and function and is supported starting with Contact 4.2, but supposedly works unreliably. showdocument http://www.blaxxun.com _blank helpindexfw (Contact 4.4 or higher) The specified URL is displayed when the user clicks the Help button in Contact's firewall dialog box. As the firewall topic is rather complicated, this is useful if you run a community with a special connection or simply want to provide firewall help in the user's native language. The default URL is http://www.blaxxun.com/support/faq/firewall.html. helpindexfw http://www.blaxxun.com/support showobjects (Contact 4.4 or higher) If this parameter is active, shared objects will be loaded in 3D even if the object panel is not displayed. Thus this parameter is only needed if you turn off the objects panel via the listtabflag parameter. The default is not to load if the objects panel is turned off. showobjects 1 #if version < version number #endif version < version number Parameters enclosed within this construct are ignored by clients having a higher version number. Since the last instance of any bxx parameter is used by Contact 4.3 (and lower), use it to provide different parameter values for older clients within the same configuration file. listtabflag 11001 #if version < 4.4 listtabflag 11111 #endif version < 4.4 This sets the value for the listtabflag parameter to 11111 if Contact 4.3 (or earlier) is used; for Contact 4.4 it will be set to 11001. menutitle(Contact 5.0 or higher) The label of an additional menu entry added to the popup menu of the people list. If selected, the URL defined through the corresponding menu1..nUrl parameter will be displayed. See the description of menu1..Url below. Example: menu1title Visit home Default: none menuurl(Contact 5.0 or higher) Defines a target and a URL that will be displayed if the corresponding menu entry defined by menu1..title is selected. The numbers 1..n must start with 1 up to the maximal value 5 AND have a corresponding parameter menu1..title. If the URL definition string contains the string %nickname%, this substring will be replaced by the nickname from the currently selected people list entry. Example: menu1url http://www.cybertown.com/home/%nickname% Default: none Any other local client setting Any other local client setting defined in the /ccpro.ini file can be overwritten by using lines of the form [section name]keyname value. This should be used very carefully since it might overwrite personal settings of the client if she/he chooses to save settings while visiting the world. Or it will overwrite the member's local language preferences. [CommonString]publicChatTitle Chat Viscape Viscape (from Superscape) can be used instead of blaxxun Contact 3D as 3D browser. Viscape supports display of avatars but none of the enhanced features like shared objects supported in VRML. The Viscape world has to be referenced in the blaxxun Contact frameset instead of the blaxxun Contact 3D frame. It can be used embedded or directly as a frame. The plug-in check in the template place/contact3d does not work with Viscape. blaxxun Contact will check the extension of the 3dscene parameter to determine which 3D browser should be used. It uses the frame named "World " for loading a new place after selecting it from the places list. The name of the frame "World" can be changed by the parameter 3dframename in the bxx file. The Viscape world must define a special viewpoint to activate multi-user avatar display. See Superscape's authoring tool documentation for details. Chat without 3D Chat places without 3D that should use the blaxxun Contact plug-in can be defined by specifying an HTML frame instead of the world frame. Like Viscape, blaxxun Contact will use the frame name "World" for loading a new HTML place after selecting it from the places list. Linking to other places Links in 3D can go directly to a ".wrl" file or an ".svr" file. In this case blaxxun Contact loads the new world into the 3D frame. In VRML files you can use Anchor parameters as shown in the following example in order to reference not only a new VRML world but also a whole new bxx file or even a complete frameset. Links to files with the extension .bxx will be interpreted automatically as place changes in the chat. Anchor { url "./home.wrl" description "... back to home world" parameter [ "scene=../home/contact.bxx" ] # use a reference to a Contact bxx file for this anchor