Esri’s open source CampusViewerTools package includes the 3D Campus Viewer JavaScript web application written using the Esri JavaScript API. The application shows a 3D view of an office campus, and enables users to navigate through the campus, viewing the layout of each building, and more. The 3D Campus Viewer’s sample data set shows the Esri Redlands, CA, campus, and the package also has information to create your own custom building layouts and floors using CAD data.
Since the GeoDecisions Notify web application was created with compatible technologies, including JavaScript, Angular, and Bootstrap, it was easy to fold it in to the 3D Campus Viewer. With the component based approach becoming very popular in the front end world where each screen area in a single page application is a component, we decided that the first step was to create a widget area (component) within the 3D Campus Viewer app. This allowed the GeoDecisions Notify widget serve as a seamless part of the 3D Campus Viewer while keeping it loosely coupled. Advantages of this approach are listed below.
When the 3D Campus Viewer code is updated, it is easier to merge the GeoDecisions Notify widget into the new version of codebase.
When the GeoDecisions Notify widget code is updated, it is easier to pull in to the 3D Campus Viewer code.
The same widget can be reused in other applications such as Esri’s Web AppBuilder or any other application that would need GeoDecisions Notify functionality. Maybe yours!
Users log in to the GeoDecisions Notify widget using their ArcGIS Online account credentials. In the 3D Campus Viewer, users select contacts in rooms on any given floor. They could also search and select rooms or contacts from the search menu. After selection, the contact info is pushed to the GeoDecisions Notify widget, and from that point onwards all user interaction and the campaign placement workflow happens inside the widget. The contact names to be notified are shown within the widget. The user then types in the SMS, email and/or Text-to-Speech voice messages they wish to transmit to the selected contacts. The notifications are sent to the selected contacts in the list after the Deliver Campaign button is pressed.