Messaging Server

Messaging server that transfers data between mobile clients and datacenter consumers/producers

License

License

Categories

Categories

Ant Build Tools
GroupId

GroupId

com.github.antennaesdk.server
ArtifactId

ArtifactId

message-server
Last Version

Last Version

0.1.4
Release Date

Release Date

Type

Type

war
Description

Description

Messaging Server
Messaging server that transfers data between mobile clients and datacenter consumers/producers

Download message-server

How to add to project

<!-- https://jarcasting.com/artifacts/com.github.antennaesdk.server/message-server/ -->
<dependency>
    <groupId>com.github.antennaesdk.server</groupId>
    <artifactId>message-server</artifactId>
    <version>0.1.4</version>
    <type>war</type>
</dependency>
// https://jarcasting.com/artifacts/com.github.antennaesdk.server/message-server/
implementation 'com.github.antennaesdk.server:message-server:0.1.4'
// https://jarcasting.com/artifacts/com.github.antennaesdk.server/message-server/
implementation ("com.github.antennaesdk.server:message-server:0.1.4")
'com.github.antennaesdk.server:message-server:war:0.1.4'
<dependency org="com.github.antennaesdk.server" name="message-server" rev="0.1.4">
  <artifact name="message-server" type="war" />
</dependency>
@Grapes(
@Grab(group='com.github.antennaesdk.server', module='message-server', version='0.1.4')
)
libraryDependencies += "com.github.antennaesdk.server" % "message-server" % "0.1.4"
[com.github.antennaesdk.server/message-server "0.1.4"]

Dependencies

compile (22)

Group / Artifact Type Version
com.github.antennaesdk.common : client-api jar 0.1.4
com.github.antennaesdk.common : server-api jar 0.1.4
javax.servlet : javax.servlet-api jar 3.1.0
javax.inject : javax.inject jar 1
javax.websocket : javax.websocket-api jar 1.0
javax.el : el-api jar 2.2.1-b04
org.springframework.boot : spring-boot-starter-web jar 1.3.0.RELEASE
org.springframework.boot : spring-boot-starter-tomcat jar 1.3.0.RELEASE
org.springframework.boot : spring-boot-starter-data-jpa jar 1.3.0.RELEASE
org.springframework : spring-jdbc jar 4.2.3.RELEASE
org.springframework.boot : spring-boot-starter-websocket jar 1.3.0.RELEASE
org.apache.tomcat : tomcat-websocket jar 8.0.23
org.springframework.integration : spring-integration-java-dsl jar 1.0.2.RELEASE
org.springframework.integration : spring-integration-websocket jar 4.2.1.RELEASE
org.igniterealtime.smack : smack-core jar 4.1.1
org.igniterealtime.smack : smack-extensions jar 4.1.1
org.igniterealtime.smack : smack-tcp jar 4.1.1
org.igniterealtime.smack : smack-java7 jar 4.1.1
org.igniterealtime.smack : smack-im jar 4.1.1
commons-cli : commons-cli jar 1.3
com.googlecode.json-simple : json-simple jar 1.1.1
com.h2database : h2 jar 1.4.190

Project Modules

There are no modules declared in this project.

MMS Mobile Messaging Server

MMS acts as bridge between client apps and server apps, while abstracting the complexities of real-world networks from server applications.

Architecture

MMS seamlessly abstracts the complexities of real-world networks where client apps exist from the server applications.

For more details, please read the Architecture

Features

  1. Client Apps use one TCP connection to interact with the server(s) whether they are REST APIs or messaging APIs
  2. The messages from Server(s) are routed based on priority and availability of the client
  3. Client Apps can talk to legacy server apps without compromising performance

Setup

Java 8 should be installed.

Download MMS.war file

Download latest version of MMS.war from maven central

Usage

java -jar mms-<m.n.p>.war --help

Configuration File

MMS needs to be supplied with following configuration

  1. GCM senderId and ApiKey
  2. If SSL is enabled, SSL certificate, keystore and passwords
  3. Port numbers ( default http port is 8080, default https port is 8443 )

A sample configuration file can be generated

Generate sample configuration file

generates the sample config files under "config" folder

java -jar mms-<m.n.p>.war -g

Start MMS

## make sure java 8 is available
java -version

## start mms
java -jar mms-<m.n.p>.war -c <config-dir>

FAQ

  1. How to create the keystore and store certificates? Official documentation from java provides the details, besides there are several online resources that provide documenation about keytool.

    Official Keytool Docs

    Command to create a keystore and self-signed certificate

  2. How to create GCM senderId and apiKey? Click on "Get A Configuration file button" https://developers.google.com/cloud-messaging/android/client#get-config

Versions

Version
0.1.4
0.1.3