Conversations are at the heart of any transaction involving humans. This holds true of business processes as well. Based on this insight, uShare.to has been architected as a “conversation layer” which seamlessly plugs into applications used in different business processes across different application categories.
Integrations in uShare.to fall under the following broad categories.
- Out-of-the-Box Connections
- Developer Tools
- Create Your Own App
- Ready-to-use Apps
- Special Integrations
Out-of-the-Box Connections
These are pre-built connections with popular third-party file systems, which allow users to easily pull files, images, forms, etc., stored in their file management system into their conversations. All uShare.to users have access to these connections, which may simply be accessed in each Share by clicking on “+” next to the message field.
Developer Tools
These are stand-alone tools which allow developers to achieve diverse integrations.
Incoming Webhooks
Incoming Webhooks gives developers the ability to send messages to specific Shares via a unique URL by posting a payload in a pre-defined format. For example, third-party applications can post change notifications into a specific Share via Incoming Webhooks. We will discuss messages more later.
Outgoing Webhooks
Outgoing Webhooks send an HTTP POST request specified URLs in third-party applications when a message matches specified conditions like originating from a specified Share, starting with defined keywords, etc. This can be used in tandem with Incoming Webhooks, where a request sent to the third-party application triggers a response which posts a structured message into the Share.
Outgoing Webhooks practically allow messages in uShare.to to trigger events in third-party systems depending on available APIs. For example, typing “conference” in a Share could send a request to a specified URL in a conferencing system which creates a new meeting.
There are two ways for creating Outgoing Webhooks. First, you can create a new “Outgoing Webhook” in the Apps Console (you'll need to be logged in to access the Apps Console).
Second, if you are creating a new Application, you can define an event subscriber. In that page, provide a URL and select events for which the URL will be triggered. Currently, the only available event is sending a message (message.create) event, but these options will be expanded. When a message is sent in a Share which is integrated with your application, the URL defined by you will be triggered. If it responds with a valid message it will be posted to the Share with your application as the “poster”.
Slash Commands
By Slash Commands, users can define their own commands and appoint a URL to each command. A request would be sent to the specified URL, with everything typed after the command as payload, when one of the users in the Share uses the command. Again the response of the request could have a message to the Share.
Create Your Own App
The Application Directory provides developers with a toolset to build their own applications and make them available throughout the uShare.to community. Users can just browse the directory and “install” apps and make them available in Specific shares. The application builder includes the following tools:
Slash Commands
Slash Commands are custom operators in uShare.to that can be defined and configured by developers. When users type a slash command in a Share, it can be configured to trigger defined actions in third-party systems. Developers can appoint a unique URL to each command. When the command is typed by a user, a request is sent to the specified URL in a third-party system with everything typed after the command as payload. The third-party system can post a response to the request as a message in the Share.
For example, when a user types "/gotomeeting", it creates a new conference in GoToMeeting, and GoToMeeting sends a response with a link that allows everyone in the Share to join the meeting.
Incoming Webhooks
Incoming Webhooks give users and third-party applications the privilege to send messages to specific Shares via a link in a pre-defined format. Messages can be structured objects with rich formatting and can include attachments. Messages will be discussed in more detail later. Whenever a developer builds a new app, an Incoming Webhook is created and sent to the application creator. This can be stored and used in the future to send messages to Shares that are integrated with their Application as responses to triggers or anything else.
For example a business account on a conferencing service can post a link to a conference recording to a specified share every time a meeting ends.
Event Subscription
An application creator can also appoint a URL in a third-party system to be called when a specific event has occurred in uShare.to. Currently, the only available event is posting a message with many more coming. When a message is posted a request with the message as its payload will be sent to a specified URL.
Messages
Responses from all of the requests sent from uShare.to to third-party services are parsed to catch the messages in their payload. Messages could have title, body, and attachments. Messages can be formatted using markup to make them actionable and differentiate them from a regular uShare.to message.
How Are Apps Built?
Apps can be built using our simple “Build an App” console.
Here is an example of a uShare.to App in action - the Google Hangouts App.
Posting Formatted Messages in uShare.to
Posting Formatted Messages in uShare.to
Messages can contain any displayable Unicode sequence of characters (all messages must use UTF-8 encoding).
The message must be well-formed JSON. Here's an example:
{
"body" : "This is a line of text.\nAnd this is another one.",
}
Share.to supports a simple form of Markdown for formatting the body of messages.
and can have title field,
{
"title": "Title",
"body" : "This a **bold** message. [Share.to](http://ushare.to)",
}
Attachments let you add more context to a message, making them more useful and effective.
Messages can have zero or more attachments, defined as an array. Each hash in that array will contain multiple properties:
The output of that attachement will be something like this:
Messages can be permanent or ephemeral, the Permanent messages will be stored and are available for ever, on the other hand ephemeral messages are only available for the current session of the user who called the command.
For defining a message type you should provide it by messageType field name which accepts either ephemeral or permanent value, the default value of messageType is permanent.
{ "body" : "This is a line of text.",
"messageType" : "ephemeral"
}
Ready-To-Use Apps
These are applications written and configured by the uShare.to team using the App Platform allowing users to integrate with popular third-party tools right out of the box. These include:
Google Calendar
This app allows users to keep their Google Calendars in sync with their uShare.to calendars.
Trello
This app allows users to get notifications in specific Shares whenever anything changes in their selected Trello boards and projects. They can also fine-tune exactly the kind of notifications they want.
Special Integrations
The uShare.to Team has created two custom integrations with third party services which add high value to our customer base.
eSignature
uShare.to is commonly leveraged by our user base to improve customer facing processes like Sales Enablement, Customer Experience, Claims Processing, Wealth Management and Partner Management etc. Often, these processes involve prolonged conversations which end in a contract – for example a sales cycle ending with a sales contract being signed.
To streamline this process, uShare.to allows users to effect legally binding contracts via eSignatures right in the flow of their conversations. This is achieved via a custom-built integration with third-party eSignature solutions.
SIP Integration
uShare.to is a multi-modal communication platform which allows users to interact via a variety of channels like audio, video, chat, mobile messaging, email etc. In some cases, a company might want to allow users to have the option of calling via regular phone lines while retaining the benefit of consolidating all communications in uShare.to’s unified environment.
The SIP integration allows users to call into uShare.to meetings via regular phone lines while other users continue to use web channels like audio and video. uShare.to achieves this by integrating with third-party SIP servers, and connecting SIP requests to WebRTC meetings.