« Bringing Intercom to the physical world


We live in a world where innovation happens on the daily and new technology trends affect our everyday lives. These days we rely heavily on technology and when something breaks or stops working it could potentially result in huge losses for a company or individual. Fast and effective customer support is vital to minimizing losses. The Internet of Things and the proliferation of connected devices has dramatically increased the complexity of customer service needs across industries. At niolabs, we are feeling the pressure. Since we are a small company, members of our development team are asked to wear multiple hats all while staying focused on customer support. It goes without saying that other priorities and distractions often impact the effectiveness and timeliness of responses.


The challenge is to figure out a way to increase the efficiency of our customer support team and increase customer satisfaction and retention. niolabs Application Engineer, Tom Young, was inspired by this challenge and took matters into his own hands with a little help from the nio platform, IBM Watson, and a spare stack light. nio is able to integrate these disparate data sources and contextualize the streams to provide team members with something more than an average message notification. If one or several team members are busy, any of our experts are able to see the notification and address the issue quickly resulting in no missed messages. Additionally, Tom utilized IBM Watson Tone Analyzer and several other nio blocks to control the color of a stack light based on overall tone(s) of the sender’s message. This helps the team know what approach will be needed and which team member is best able to help solve the issue.


We use Intercom to communicate and engage with our customers. To ensure fast service, we wanted to bring the notifications into our workspace using a tricolor light array. Any good alert should tell you what you need to know (and nothing that you don’t) at a glance, so we’ll be using different colored lights based on the message tones, detected by IBM’s Watson. When a customer opens a new conversation within Intercom, the light turns on, indicating the emotional tone of the customer while notifying the entire workspace that there is an outstanding support message that needs a response.

Features Shown

Rapid prototyping

Multi-API integration

Integrated management of remote Intercom service

Intelligent customer support

In-depth look at the service


In order to configure your remote service and get data flowing into your blocks, you have to first visit https://developers.intercom.com/ and set up your credentials. When the nio service is started, it creates the event subscriptions at the remote Intercom API and opens a web server to receive and then parse those events into a usable signal. Then, when the service stops, the subscriptions are cleaned up automatically.

NOTE: In addition to extended scope permissions from Intercom, this block needs to be externally accessible. Call your IT department!! We enabled port-forwarding in our firewall so that external requests to this service are routed to the correct machine. Your solution will depend on your network.


The Intercom API offers optional authentication for source and app. A filter block allows only signals from our intercom app through logging a warning for all others (i.e. Russian hackers, other apps, etc.)


The StateChange block tracks each message thread by its unique identifier and changes its state when a team member replies so that further messages in the same thread do not trigger a new notification.


Depending on the state of a thread we either need to analyze tones for a new message or shut off the lights because we’ve responded. The Filter block directs signals into different logical paths based on the state of each signal.


Signals coming out of the Filter block have one of two states, and if that state shows that we've responded to the thread, the light(s) is shut off.


Messages waiting for a response are sent through Watson’s Tone Analyzer Customer Engagement service. The returned value is a list of detectable tones in the message, ranging from excitement to frustration to impoliteness. In addition to helping our support team, this can offer valuable insight into user experiences which can then be tracked, analyzed, and acted upon.


The Conditional Modifier block sets a value for red, yellow and green lights based on Watson results and/or conversation state. Tones considered generally positive are mapped to the green light, negative to red, and neutral and/or general excitement tones are set to yellow.


We have a highly-connected workspace, so the hardware and lights were already there waiting for commands. Actuation could be anything from a light to a television to an air raid siren. For the purpose of this demonstration and the sanity of our dev team, we chose to go with a simple stack light.

The complete connected service

This is the complete service from the System Designer. The Logger block that is displayed, but was not covered in the above list of blocks, is there to make sure the data is flowing without any errors and to help troubleshoot if anything goes wrong when building the service.

Next steps for improvement:

  • If a comment hasn’t been answered in a certain period of time, the stack light will start blinking to ensure responses are timely.
  • Based on the tone and content of the message, i.e. happy customer with a common question, predetermined messages could be sent by nio through Intercom to limit the workload for customer service personnel - freeing up time and resources for more pressing issues. Or, if the customer is upset, our best customer support team member could be assigned to the ticket to ensure things go smoothly.
  • Monitoring and management of all connected devices within a nio system and provide the user with a dashboard to troubleshoot problems.
  • Message counts and analysis of historical customer sentiment which could then be used to pinpoint problems areas in the product and customer service efforts.

Partner with us

We are in the process of building out our partner ecosystem. Visit our partner page and learn how we can help you deliver digital transformation.