Get Started: Write your First mesibo Enabled Application
Estimated reading time: 6 minutes- Basic Concepts
- Real-Time Messaging
- Anatomy
- First App
- Android
- iOS
- Javascript
- C++
- Python
- Group Messaging
- Reading Messages
- Sync Messages
- Sending Media & Files
- Push Notification
- Voice & Video Calls
- Conferencing
- UI Modules
Now since we are familiar with the basic concepts and anatomy of a mesibo app, we will now start creating a simple real-time app using Mesibo API for various platforms including Android
, iOS
, Web (JavaScript)
, C++ (Linux, Mac, Raspberry Pi)
, and Python
.
Before we begin coding, let’s cover basic Mesibo Settings common across all the platforms.
Prerequisites
Ensure that you have gone through the following prerequisites before you read further.
- Read the Get Started Guide.
- Anatomy of a Mesibo App - essential elements of a Mesibo App and design pattern which are common across all the platforms.
- Read about Type of APIs
- Read about Backend APIs
- Signed-up and Logged-in to Mesibo Console
You are not required to go through Real-time APIs for now.
Preparation
Mesibo APIs are very simple to use. You only need to perform the following steps to use mesibo APIs.
-
Create a mesibo application that will host all your users and groups. Once you create a mesibo application, you will get an
App Token
that you can use it to create users and users tokens. Note that, App Token is secret and you should never expose it to your users. Hence, you MUST not use it in client-side APIs (Android, iOS, JS, etc). -
Create users using backend APIs and the App Token that you have generated in step 1.
-
Create a user access token for each user that you need to use in client-side real-time APIs.
-
That’s it! Start messaging and calling using mesibo APIs.
Let’s say you are creating a new app FirstApp for Android, iOS, and web. Login to Mesibo console and create a new application FirstApp.
Once your application is created, note down the App token
. The App Token looks like the following:
cn9cvk6gnm15e7lrjb2k7ggggax5h90n5x7dp4sam6kwitl2hmg4cmwabet4zgdw
We will need this app token
to create users and groups for this Application
.
App Token is secret and you should never expose it to your users. Hence, you MUST not use it in client-side APIs (Android, iOS, JS, etc)
Create Users (Endpoints)
Once you have created your application, it’s time to add users and groups. Typically, you will add users and groups dynamically on a need basis. However, for this sample app, you can create a few users and groups manually so that you can test messaging between them.
Note that all your users and groups are local and confined to an
Application
. So there is no conflict when the same user is created by another application.
There are two ways you can create users for your mesibo application.
- Option-1 (Recommended) Create users using Mesibo backend APIs. In a real app, you need to create users on-demand using these REST based APIs
- Option-2 Create users in the mesibo console
We will explain both the ways of creating users - using REST APIs & using the console.
Create Users using Mesibo Backend APIs
Now we will create two users by using Mesibo backend API and the app token obtained in the previous step. The user
is a string. It is not necessary to use a phone number, you can use whatever suits your app, as long as it’s unique across your Application.
- 123
- 456
Note that, you also need to pass the Android package name declared in the AndroidManifest.xml or iOS Bundle id declared in the Xcode project, for example, com.mesibo.firstapp
as appid while creating users. This is a security feature that restricts your users from using the user access token on intended platforms and the app only.
User Creation Request
https://api.mesibo.com/api.php?token=cn9cvk6gnm15e7lrjb2k7ggggax5h90n5x7dp4sam6kwitl2hmg4cmwabet4zgdw&op=useradd&appid=com.mesibo.firstapp&addr=123
Where
- token = Application Token
- appid = Android package name declared in the AndroidManifest.xml or iOS Bundle id declared in the Xcode project (for example, com.mesibo.xxx). In the case of C++, Python, and Javascript, you can pass whatever appid you prefer. However, the same app id you will need to pass in
setAppName
API call. Note that, for security reasons, the token generated for a particular appid will only be usable on app matching that appid. - addr = end point address, for example, a user phone number.
You can find more about backend API in the reference section. The above API returns a JSON response like this,
Response
{"user":{"uid":"5302","token":"cn9cvk6gnm15e7lrjb2k7ggggax5h90n5x7dp4sam6kwitl2hmg4cmwabet4zgdw"},"op":"useradd","result":true}
The token
returned in the above API JSON response is the access token
, that will be used by real-time API to connect to Mesibo real-time server (using setAccessToken
API).
You can now create more users in a similar fashion so that you can test messaging between them. You can also send messages to a particular user using the console in the ‘Users’ section.
Create Users in the mesibo Console
To create users in the console,
- Click on the Settings icon of your app
- Click on the Users section in your app. Click on the
+ NEW USER
button.
- To create a user, Enter a User Address and App ID. For example, the address can be
123
and the APP Id can be something likecom.mesibo.firstapp
- Once a user is created, if you click on the edit button for the user you will be able to view the access token for that user.
Similarly, you can create more users in the console.
You can also create users from the console by clicking on the ‘New User’ button from the Application settings page.
It’s coding time now! We are now all set to create our first mobile app which can send and receive real-time messages.
From the next section onwards, we will start coding basic Mesibo applications on various platforms, starting with Android in the next section.
First Mesibo Application - Android >>
mesibo, android, ios