
Chat in the application or game is a hot topic
at all times . A huge number of various solutions have been created for their implementation, incl. based on the XMPP standard. However, all of them, in my opinion, have a high enough entry threshold: it requires an understanding of the client API, especially the settings and server support.
In the case of mobile applications, everything is still worse - there are no easy-to-use solutions adapted for their features. Our team last year in i-Free has been developing the messenger Salut (
salut.im ), which, unfortunately, has not yet become a competitor for the well-known WhatsApp, Viber, and so on. However, in the course of working on it, we have traveled a very interesting way, and now we know a lot and are able to design messaging on mobile devices. The server backend created by us turned out to be very productive, reliable and scalable, and the client-server protocol was easy to implement on the client. Therefore, we decided to make the Salut Cloud service, which will allow mobile game and application developers to quickly create full-featured chats in their application. In this article, I will outline the concept of our service and ask the habrovchan to supplement it with your own wishes — whatever see him.
What is Salut Cloud?
We see the Salut Cloud communication platform for quickly creating chat rooms in mobile games and web applications. It all started with the fact that another project in the company began to use our backend to implement chats in its product - it turned out to be easier for them than building their own bicycle.
Who is it for?
Our service is designed for anyone who wants to quickly implement in their product a modern reliable chat, reduce the cost of creating and maintaining server infrastructure and bring their product to the market faster, while minimizing technical risks. As an example of applications in which our service will be useful, you can bring games that need to create chats (p2p, clan chats, location chats), dating applications, etc.
')
Why should I use Salut Cloud if I can make chats in my application myself?
Creating an application messaging system is often a time consuming process with many risks. A separate question: the organization and support of reliable hosting, which can withstand the load with the growth of the audience. For example, the back-end of the above-mentioned Salut messenger, on the technologies of which the Salut Cloud infrastructure is created, consists of 12 servers and provides processing of up to 8,000 messages per second. Thus, the use of our solution will reduce the labor costs and financial costs of implementing messaging to a minimum and pay more attention to the core functionality of the product.
What exactly can be done with the help of this service?
You can create in your application or game (mobile or web) a full-featured messaging, which will include:
• Chats with different types of content: video chats, audio chats, text, photos, and any other user content;
• Providing information on the status of message delivery;
• Group chats;
• Guaranteed deferred delivery of messages with support for push-notifications from Google and Apple.
At the same time, technical support and performance monitoring of the service will be carried out in 24 * 7 mode.
Why use Salut Cloud when you have mBaas solutions?
We see our solution as a platform for creating chats. If the developer needs only chats and does not need all the mBaaS functionality, it will be much easier to use Salut Cloud. We have implemented an extremely low threshold of entry - it is easy to connect our service, for this you do not need to understand the heap of documentation and surf the tabs in your personal account. For example, our iOS SDK contains only about ten methods, including user identification, administration of group chats, filling in custom message content and, in fact, the methods of working with messages. To connect to the service it will be enough to get an API key on the site.
How it works?
The infrastructure is based on a high-performance HTTP-based solution on the Erlang, which exchanges messages through the web-tips interface, as well as the business logic of node.js, which implements message processing, sending delivery status and push notifications, managing group chats. The interaction between the HTTP server and node.js logic is carried out through the RabbitMQ queues, which allows us to scale all parts of our infrastructure independently of each other, depending on the current load. Access to the capabilities of the system by using the SDK, embedded in the game or application.
As I have already said, data exchange between the SDK and the Salut Cloud infrastructure is carried out via the web-sockets protocol, which allows the SDK to access the infrastructure via an HTTP / HTTPS connection.
Free access to the service
A free base rate will be available for all developers, including a limit on the number of simultaneous connections. This limit will be sufficient not only for debugging the application, but also for final releases designed for a relatively small (up to several tens of thousands) audience. If the base tariff is exceeded, a transition to a paid tariff plan will be offered. We expect its minimum price to be around $ 100- $ 150 per month.
What platforms does Salut Cloud support?
At the moment, prototypes of the SDK for Android and iOS, as well as a JavaScript client for Web applications, are ready. We are ready for requests for porting the SDK to other platforms: Windows Phone, Unity (C #), PC, etc.
When will the service be available?
We plan to open the Salut Cloud to the public in summer 2014, but now we can test it in our products.
How to test the SDK prototype
The purpose of this publication is to talk about your idea and collect your suggestions and constructive criticism. Anyone who is interested in more information about the capabilities of the SDK and wants to participate in the beta testing of the service - write in the comments or on
hi@salut.im