Install Guide - Redwood rFloorplan Manager 1.3 Toggle Menu


General Overview:

A Master Copy of the Commscope Redwood rFloorplan infrastructure is kept on http://jaguar4.redwoodcs.com/rfloorplan/

This install description is for a previous version of Redwood rFloorplan, for the new Redwood floorplan 2.0 infrastructure, [USER] floorplan_i55.htm onwards, and [ADMIN] index_1_2_63.html onwards, please see Install Guide - Redwood Floorplan Manager 1.4.

The Redwood rFloorplan Manager consists of three distinct components:

  • A password protected viewing component accessed from /rfloorplan/user/index.html based on the main install directory [USER].
  • A non-password protected restricted viewing component accessed from /rfloorplan/kiosk/index.html based on the main install directory [KIOSK].
  • A password protected creation component accessed from /rfloorplan/admin/index.html based on the main install directory [ADMIN].

The rFloorplan viewing component uses a combination of JavaScript and SVG for its visualization technology, which is supported uniformly among all browsers and platforms, including browsers on tablets running on iPad (iOS), Android and Windows Phone.

The rFloorplan creation component uses Java for its visualization and editing component. Java is supported on Windows Linux and Mac, but not embedded in browsers on iPad and Android.

The rFloorplan creation component is developed on Firefox and Chrome, and runs additionally on IE and Safari


The visualization part of the [USER] and [KIOSK] components are built around the CADViewer JS framework, this modular framework is set up so that new Redwood applications can be developed based on this framework.

The install guidance for CADViewer JS API and CADViewer JS Redwood API extensions will guide you through on how to build your own visualization component

The [ADMIN] creation component can be set up in two modes, one where a cluster host is present and locations are populated based on cluster host settings, and a second off-line mode, where the [ADMIN] tool is used to

Server Side Structure:


For simplification, the home directory in this document is called /home/redwood/.

A number of executable programs, cgi and php script files in several of the server side install directories needs to set with access rights for the software to function properly.


Install Directories

Directory: /home/redwood/rfloorplan

This directory contains a number of library files used for file conversions.


Directory:/home/redwood/rfloorplan/admin

This directory contains index files associated with the [ADMIN] component. The index.html file should not be read/write protected as the file’s timestamp is dynamically updated.

Access to the [ADMIN] component is done with the credentials defined in the [ADMIN] Settings Section, if no credentials are defined, for example in a clean system, using admin/admin as username/password will allow access to [ADMIN].


Directory:/home/redwood/rfloorplan/user

This directory contains index files associated with the [USER] component. The index_iXX.html file should not be read/write protected as the file’s timestamp is dynamically updated.

Access to the [USER] component requires the user to actively select a Username/Password. The system will check the credentials against the Cluster Host defined in [ADMIN]. If no Cluster Host is defined it will default to an information page, if the Username/Password does not match the user will be informed.


Directory:/home/redwood/rfloorplan/kiosk

This directory contains index files associated with the [KIOSK] component. The index_iXX.html file should not be read/write protected as the file’s timestamp is dynamically updated.

Access to the [KIOSK] component does not require the user to actively select a Username/Password. The system will check using the credentials defined in [ADMIN]. If no Cluster Host is defined or can be accessed it will default to an information page.


Directory:/home/redwood/rfloorplan/cadviewer

This directory contains the structure for the Java floor plan editor component used in [ADMIN].

NOTE: Several of the auxiliary CADViewer files are in full Unicode, but with extension .txt. Some upload tools may change the formatting of these files making CADViewer unable to run. This is commonly happening with english.txt uploading to Linux servers. One workaround is to rename to a neutral format such as .gif and rename on server when uploaded.

License key: CADViewer needs a license key (license.key/license.txt files in the /cadviewer directory) coded to the current Url, this will be the Url of the home directory of the installation. If in doubt, opening the Java Console while CADViewer is running will list the running codebase and running docbase which is what Java reads up as the Url of the installation.


Directory: /home/redwood/rfloorplan/converters

This directory contains the structure for file converter components and temporary files when uploading and converting to DWF, the internal CAD format used in the [ADMIN] component.

The executable converter ax201X_X_YY_dwf.exe (ax2011_1_19.exe) must be set up with full read/write access rights.

The executable converter acroxchange_X_YY (acroxchange_1_40) must be set up with full read/write access rights.

The converter acroxchange_X_YY need the following symbolic link defined:

ln -s libstdc++.so.5.0.3 libstdc++.so.5
						

On RHEL, in /etc/ld.so.conf.d/ edit the file myapp.conf to contain the path:

home/redwood/rfloorplan/converters
						

Run ldconfig -v with sudo rights to give the path setting global reach. This will allow acroX to load in its auxiliary libraries.


Directory:/home/redwood/rfloorplan/img

This directory contains the boothstrap images files


Directory: /home/redwood/rfloorplan/images

This directory contains the rFlooplan image files


Directory: /home/redwood/rfloorplan/stylesheets

This directory contains the stylesheets for the rFloorplan components


Directory: /home/redwood/rfloorplan/javascripts

This directory contains Java Script libraries for both viewer and creator components. Furthermore, contains functional infrastructure developed in .js files to set up both viewer and creator component.

In this directory, the file save-file-p1.php must be set up with read/write server access rights.

This directory contains the main configuration file: rfloorplan_settings.js

All variables in the configuration file are accessible through the 'Settings' interface in the [ADMIN] component.

The three variables, api_proxy_url, usr and pwd are mandatory for any configuration of the rfloorplan component. The system will do an online check against the Cluster Host to check if the combination of proxy Url, Username and Password are valid.

NOTE: The variable building_data_identifier must be a name that is a qualified XML identifier, which means whitespaces, or any escape character combination, cannot be used in this variable name. In version 1.1, this variable is currently not accessible through the admin interface.

Variables in rfloorplan_settings.js:

var usr = "admin";
var pwd = "RedTailor";
var api_proxy_url = "https://alfa2.redwoodsystems.com";

var building_data_identifier = " BUILDING_DATA_IDENTIFIER";
var building_name = "Spinnaker Office Building";
var company = "Redwood Systems";
var address = "181 Spinnaker Court";
var city = "Fremont";
var zipcode = "94538";
var state = "CA";
var country = "USA";
var FacMgr_name = "Melinda Doe";
var FacMgr_title = "Facilities Manager";
var FacMgr_email = "admin@redwoodsys.com";
var FacMgr_phone = "+1 408 555 1212";
var refresh_rate = "30";
						

In the file: axuploader_X_YY.js , the following two lines must be edited to correspond to the home directory:

  'remotePath' : '/home/redwood/rfloorplan/drawings/floorplans/',
  'url':'/home/redwood/rfloorplan/drawings/upload_2.php',
						

Directory: var/www/cgi-bin/

The cgi-bin directory (location may vary depending on how the server cgi-bin directory is set up) contains the file conversionCGI_RW.cgi. This cgi file controls settings for the conversion when uploading DWG files to server for processing.

In an installation, the following variables in conversionCGI_RW.cgi must be manually edited, and set up for the properly defined home directory.

variables in conversionCGI_RW.cgi

$inputFileFolder = "/home/redwood/rfloorplan/drawings/floorplans/";
$tempFolder = "/home/redwood/ rfloorplan/converters/tempdrawings/";
$autoxchange_path = "/home/redwood/ rfloorplan/converters/";
$acroxchange_path = "/home/redwood/rfloorplan/converters/";
						

The conversionCGI_RW.cgi file must be set up with read/write server access rights.


Directory: /home/redwood/rfloorplan/drawings

This directory contains all drawing and overlay information used by the viewing component.

In this directory, all .php files must be set up with read/write server access rights.

In an installation, the following variables in file list-directory.php must be manually edited, so they correspond to the name of home directory and current location of the file:

Variables in list-directory.php

$path = "/home/redwood/ rfloorplan/drawings/";
$path_url = "/drawings/";
						

Directory: /home/redwood/rfloorplan/drawings/floorplans

This directory contains all original drawing uploaded to the server.

In this directory, all .php files must be set up with read/write server access rights.

In an installation, the following variables in file list-directory.php must be manually edited, so they correspond to the name of home directory and current location of the file:

Variable in list-directory.php

$path = "/home/redwood/drawings/floorplans/";
$path_url = "/drawings/floorplans/";
						

Directory: /home/redwood/rfloorplan/drawings/floorplans/dwfs-space-data

This directory contains all drawing and space polygon content produced by the . Content from this directory is converted into the .js format used by the viewer in the /home/redwood/drawings/ directory.

In this directory:

  • All .php files must be set up with read/write server access rights.
  • Executable file painter_xx_yy must be set up with full read/write access rights.
  • File filenames.rw must be set up with full read/write access rights.

Configured Floor-Plan Structure:


A configured floor-plan structure for a given file (fileX) will create the following files over the following directories:

Directory: /home/redwood/rfloorplan/drawings

In this directory there are four files associated with fileX used by [USER] and [KIOSK] for display:

fileX.js    (data structure in XML, contains identifier information, locations, attributes: occupancy, type, tags)
fileX-full.js (contains the full drawing image in JS/SVG)
fileX-nodes.js  (contains the overlay location images in JS/SVG)
fileX-thumb.js (contains a thumb image file in JS/SVG used for fast panning)
						

Directory: /home/redwood/rfloorplan/drawings/floorplans/

This directory contains the uploaded originating file (fileX) .

fileX  (original file, typically DWF)
						

Directory: /home/redwood/rfloorplan/drawings/floorplans/dwfs-space-data

This directory contains all the server side admin components for file creation. Note that the file name will be encoded if it contains non-standard but allowed characters, such as space, ampersand, etc.

fileX.rw    (data structure, contains identifier information, locations, attributes)
fileX.dwf   (contains the created locations)
fileX-full.dwf   (contains the drawing structure used to create fileX-full.js)

fileX.js    (data structure in XML, contains identifier information, locations, attributes (occupancy, type, tags)
fileX-full.js (contains the full drawing image in JS/SVG)
fileX-nodes.js  (contains the overlay location images in JS/SVG)
fileX-thumb.js (contains a thumb image file in JS/SVG used for panning)
						

To move a given file structure over to a new environment, all the above files must be moved over.

Note that the [ADMIN], [USER] and [KIOSK] is additionally using a file called filenames.rw located in the /home/redwood/drawings/floorplans/dwfs-space-data directory to associate a given file with its display name in the pull-down list in [USER] and [KIOSK].

If a file set is moved over to a new environment, the filenames.rw needs to be updated to reflect that fileX has been updated. Opening [ADMIN] , renaming the list will update the filenames.rw file. Note that the updated display name must exactly match the original one for the [USER]/[KIOSK] side to work properly.

Alternatively the filenames.rw file (or RW-2 file) can be manually edited:

(RW-2)|1|E_LT-DC-102 & 103 AS BUILT-1_Sector_1_and_3.dwf;|Level 01 Sector 1 &|
						

The data entries are separated with | , first data entry tells the number of files in the list, the second data entry is the filename, the third data entry contains the display name used in [USER]/[KIOSK].

Data structure of floor-plan specific .rw file:


The fileX.rw file contains the associations made between available cluster host information and objects created with the [ADMIN] floor-editor component.

The fileX.rw file (or RW-1 file) contains the following data fields:

The 1st date entry lists the number of cluster host redwood locations and their name
The 2nd date entry lists the number of redwood locations and their id
The 3rd date entry lists the redwood location ids, for assignment, where unassigned are set to -1
The 4th date entry lists with layer number which NODE_xx layer associates to which redwood location id.
The 5th to 7th data entry lists the three set of attribute data, no data can be either comma separated, undefined or -1.
						

Data structure RW-1 sample for Redwood Office Cluster Host

(RW-1)
|36|All Locations;Amber's Abode;Anne Alexander;Anne's Domain;Breakroom;CBR;CBR Downlights;CBR Lightbulb;commissioned;Common Areas;Cubicles;Customer Advocacy;Data Center;Dave's office;Davy;Derek's Office;Edison;Emergency Lights;Frank's Office;Gene Test;Gene's Lights;Karen's Office;Kirks Office;Lobby;Lobby Night Lights;Main Corridors;Marketing;Meeting Rooms;New Tesla;Offices;Open Cube Area;Randy's Office;Restroom Corridors;Stacey's office;Training Area;Westinghouse;

|36|0;108;107;105;137;170;171;178;181;160;104;109;165;115;182;127;114;110;125;179;173;126;130;111;112;102;106;113;128;123;161;129;103;124;132;116;

|36|-1;108;107;105;137;-1;-1;-1;-1;-1;-1;-1;-1;-1;-1;-1;-1;-1;-1;-1;-1;-1;-1;-1;-1;-1;-1;-1;-1;-1;-1;-1;-1;-1;-1;-1;

|36|none;NODE_2;NODE_3;NODE_4;NODE_5;none;none;none;none;none;none;none;none;none;none;none;none;none;none;none;none;none;none;none;none;none;none;none;none;none;none;none;none;none;none;none;

|36|undefined;;;;;;1 person;undefined;-1;-1;undefined;;;;1 person;;;undefined;;undefined;undefined;;;;undefined;;-1;undefined;;undefined;;;;;;;

|36|undefined;;;;;;test;undefined;-1;-1;undefined;;;;sales, admin;;;undefined;;undefined;undefined;;;;undefined;;-1;undefined;;undefined;;;;;;;

|36|undefined;;;;;;Room;undefined;-1;-1;undefined;;;;Single Office;;;undefined;;undefined;undefined;;;;undefined;;-1;undefined;;undefined;;;;;;;|

						
<