Difference between revisions of "AppSuite:Mobile API Facade"

(Proxy configuration)
Line 108: Line 108:
 
         SetEnv proxy-sendchunked
 
         SetEnv proxy-sendchunked
 
  </Proxy>
 
  </Proxy>
 
+
 
  ProxyPass /services/api-facade balancer://oxcluster_facade/services/api-facade
 
  ProxyPass /services/api-facade balancer://oxcluster_facade/services/api-facade
  
 
== Traffic compression ==
 
== Traffic compression ==

Revision as of 06:44, 21 June 2017

API status: In Development

IN PROGRESS - OX Facade for Mobile

General Information

The Mobile API Facade is an additional server component for OX App Suite which is required for OX Mail App v2.0. The component proxies the requests of apps to the middleware and optimizes them for usage by mobile clients by limiting their number and size.

Requirements

The OX Facade has to be installed alongside an OX App Suite installation. It requires at least OX App Suite v7.8.4.

OX Facade API

Further information about the OX Facade API can be found at: https://documentation.open-xchange.com/components/facade/develop/

OX Mail Server-side Installation and Configuration on OX App Suite v7.8.x

This chapter describes how the backend components of OX Mail are installed and configured on the server.

Available packages

OX Facade is available with the following backend packages:

  • open-xchange-mobile-api-facade

Installation on the server varies depending on the underlying distribution, details are available in the following chapters.

Redhat Enterprise Linux 6 or CentOS 6

Add the following repositories to your Open-Xchange yum configuration:

 [open-xchange-mobile-api-facade]
name=Open-Xchange-mobile-api-facade
baseurl=https://software.open-xchange.com/products/mobile-api-facade/stable/mobile-api-facade/RHEL6/
gpgkey=https://software.open-xchange.com/oxbuildkey.pub
enabled=1
gpgcheck=1
metadata_expire=0m

if you have a valid maintenance subscription, please add also following repositories by replacing the credentials.

 [open-xchange-mobile-api-facade-updates]
name=Open-Xchange-mobile-api-facade-updates
baseurl=https://LDBUSER:LDBPASSWORD@software.open-xchange.com/products/mobile-api-facade/stable/mobile-api-facade/updates/RHEL6/
gpgkey=https://software.open-xchange.com/oxbuildkey.pub
enabled=1
gpgcheck=1
metadata_expire=0m

$ yum install open-xchange-mobile-api-facade

Redhat Enterprise Linux 7 or CentOS 7

Add the following repositories to your Open-Xchange yum configuration:

 [open-xchange-mobile-api-facade]
name=Open-Xchange-mobile-api-facade
baseurl=https://software.open-xchange.com/products/mobile-api-facade/stable/mobile-api-facade/RHEL7/
gpgkey=https://software.open-xchange.com/oxbuildkey.pub
enabled=1
gpgcheck=1
metadata_expire=0m

if you have a valid maintenance subscription, please add also following repositories by replacing the credentials.

 [open-xchange-mobile-api-facade-updates]
name=Open-Xchange-mobile-api-facade-updates
baseurl=https://LDBUSER:LDBPASSWORD@software.open-xchange.com/products/mobile-api-facade/stable/mobile-api-facade/updates/RHEL7/
gpgkey=https://software.open-xchange.com/oxbuildkey.pub
enabled=1
gpgcheck=1
metadata_expire=0m

$ yum install open-xchange-mobile-api-facade

Debian GNU/Linux 8.0

Add the following repositories to your Open-Xchange apt configuration:

deb https://software.open-xchange.com/products/mobile-api-facade/stable/mobile-api-facade/DebianJessie /

if you have a valid maintenance subscription, please add also following repositories by replacing the credentials.

deb https://LDBUSER:LDBPASSWORD@software.open-xchange.com/products/mobile-api-facade/stable/mobile-api-facade/updates/DebianJessie /
$ apt-get update
$ apt-get install open-xchange-mobile-api-facade

SUSE Linux Enterprise Server 12

$ zypper ar https://software.open-xchange.com/products/mobile-api-facade/stable/mobile-api-facade/SLE_12 mobile-api-facade

if you have a valid maintenance subscription, please add also following repositories by replacing the credentials.

$ zypper ar https://LDBUSER:LDBPASSWORD@software.open-xchange.com/products/mobile-api-facade/stable/mobile-api-facade/updates/SLE_12 mobile-api-facade-updates
$ zypper ref
$ zypper install open-xchange-mobile-api-facade

Configuration OX Facade for Mobile

Introduction

To be able to use the native mail apps the Mobile API Facade needs to be installed in front of the OX App Suite middleware. This document describes how to configure the Mobile API Facade.

The Mobile API Facade stores its configuration in the files /opt/open-xchange/mobile-api-facade/etc/facade.properties (the global configuration) and in /opt/open-xchange/mobile-api-facade/etc/mobile-api-facade-config.yml (hostname specific configuration). Both files support the same configuration properties as can be seen on http://documentation.open-xchange.com.

Connection to the OX App Suite Middleware

After installation of the facade package ("open-xchange-mobile-api-facade") the property com.openexchange.mobile.api.facade.MiddlewareBaseUrl needs to get set to the correct URL. This property needs to be explicitly configured by the administrator. It has no default value. Its possible to connect the Mobile API Facade directly to a middleware process, but this is highly discouraged. The Mobile API Facade should always connect to a middleware process through a load balancer.

An example:

com.openexchange.mobile.api.facade.MiddlewareBaseUrl=https://appsuite.example.com/appsuite/api

After this configuration the open-xchange-mobile-api-facade needs to get restarted.

Proxy configuration

<Proxy balancer://oxcluster_facade>
        Order Allow,Deny
        Allow from all
        BalancerMember http://appsuite-dev-gw1.open-xchange.com:8007 timeout=100 smax=0 ttl=60 retry=60 
loadfactor=50 keepalive=On route=FOX1
        BalancerMember http://appsuite-dev-gw2.open-xchange.com:8007 timeout=100 smax=0 ttl=60 retry=60 
loadfactor=50 keepalive=On route=FOX2

        ProxySet stickysession=JSESSIONID|jsessionidscolonpathdelim=On
        SetEnv proxy-initial-not-pooled
        SetEnv proxy-sendchunked
</Proxy>

ProxyPass /services/api-facade balancer://oxcluster_facade/services/api-facade

Traffic compression