Frequently Asked Questions - Message and File Storage
- Where are messages stored?
- Can I store all the messages on my own server?
- What is the retention period of messages stored in the database?
- Where does mesibo stores all the files?
- Can I store my files on public cloud platforms like Amazon S3, Google etc?
- Which protocol should I use to upload files?
- Does Mesibo provide any APIs for uploading and downloading files?
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.
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.
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 here
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];