Frequently Asked Questions - Message and File Storage

Where are messages stored?

mesibo utilizes three storage layers for message data:

  • Local Device Storage: Messages can be saved locally on each user's device in a database for fast, offline access. This is enabled via the setDatabase() API when initializing mesibo.

  • Server-Side Storage: If a recipient is offline, mesibo will store messages on servers until delivery when the user comes back online. By default, messages are deleted from servers post-delivery unless retention policies are set. Enabling retention saves all communications on servers. If you are hosting mesibo on your servers using mesibo on-premise, all the messages will be saved on your own database.

  • File Storage: All the files your app transfers using mesibo are stored in a file server. The mesibo does not mandate where you store your files. You can store your files on your private file server or AWS, Azure, or any such cloud host. Refer to File Transfer and Hosting page for details.

Can I store all the messages on my own server?

Yes, you can self the mesibo platform. All the messages and calls will go through your servers and will be saved in your database. Refer to On-Premise Installation to learn more.

What is the retention period of messages stored in the database?

mesibo provides unlimited message retention for active accounts. As long as your account and users remains active, mesibo preserves all your messaging data reliably. However, individual messages can also be selectively cleared via the backend APIs at any time per your requirements.

Where does mesibo stores all the files?

Mesibo does not store any files on Mesibo servers. Instead, Mesibo lets you store all your files (images, videos, documents etc.) on your server(s). This allows you to control your files and protect your sensitive data.

Refer to File Transfer and Hosting page for details.

Can I store my files on public cloud platforms like Amazon S3, Google etc?

Absolutely, first, you need to write a file upload handler.

Refer to File Transfer and Hosting page for details.

After that, you have two options:

  • once you upload files on your server, you can then upload them to one of the cloud providers of your choice and send the link back to your upload handler.
  • Sign the request from the server and then directly send it. Refer to the documentation of your cloud provider. If you are using Amazon S3, refer hereopen_in_new

Which protocol should I use to upload files?

mesibo does not mandate protocol or how and where you store your files. You can use HTTPS or any property protocol. As long as you provide upload and download hander, Mesibo will work with any kind of protocols.

Does Mesibo provide any APIs for uploading and downloading files?

Yes, mesibo provides an API to specify your server. Once you set your server URL, mesibo will automatically upload and download from there.

Refer to File Transfer and Hosting page for details.

In case you decide to write your own upload and download handler, you can use Mesibo HTTP which is a very fast cross-platform HTTP library to upload and download files to or from your server.

Android File Upload Example

  Mesibo.Http http = new Mesibo.Http();
  http.url = "https://example.com";
  http.postBundle = b;
  http.uploadFile = filePath;
  http.execute();

iOS File Upload Example

  MesiboHttp *http = [MesiboHttp new];
  http.url = @"https://example.com";
  http.uploadFile = filePath;
  http.postBundle = post;
  [http execute];