For Skylight to be used to its maximum potential, it is necessary to develop AddIns. As I previously mentioned, AddIns work with Skylight to provide additional information such as guides, directions, or sensor data that is directly linked to the company using it. Through AddIns, tasks, messages, and even points can be automatically sent to specific users depending on other circumstances, making Skylight an incredibly useful asset to any individual worker or team.
I went through the process of creating a basic “Hello World” AddIn (for Skylight R4, not R5), which helped me to understand the extents to which Skylight could be used. To create the AddIn, I got access to the Skylight server, created a user account, and downloaded the client application on the Vuzix M100 smart glasses that Progress Software had purchased for this purpose.
I also downloaded the files for the AddIn Host Component, which acts as an intermediary between the AddIn and Skylight (for those familiar with Android development, its function is similar to that of an adapter). The existence of the host component makes it incredibly easy to use an AddIn, because as long as all the files are set up and linked to each other correctly on the computer, virtually anything can be done with the AddIn, from sending sensor data to processing images and using machine learning to send relevant directions to a user.
To use the AddIn Host it had to be configured through the XMPP server. This involved creating an account for an external component (an AddIn) and changing the settings to match those of the AddIns, and adding certain privileges to allow messages to be sent and received.
To actually write the AddIn, I used Microsoft Visual Studio; the code was all written in C#. While AddIns can be written in Python or Java, that requires additional libraries, so at the moment C# is the most straightforward choice. The code I wrote first initialized an instance of the host, enabling communication with Skylight. Then, it checks to see if a presence is received, meaning that a user is connected to the server. If true, and if the user is currently online, then another event is triggered which sends a message to the user’s glasses. The user can then open and read the message.
While the AddIn I wrote was extremely basic, I learned an incredible amount about the preparation that goes into enabling the entire Skylight process to securely and reliably use an AddIn. Throughout the entire process, I also had the incredibly good fortune to have direct access to some of the core employees of APX Labs, all of whom provided me with immediate and thorough assistance every step of the way. I came away from this experience with a newfound appreciation for Skylight; with R5 and further development in progress, it has enormous potential to simplify and enhance the way industry is currently run.