Skip to content
This repository has been archived by the owner on Apr 3, 2019. It is now read-only.

jonathanmtran/project-x

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

99 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Project X - Message Center

About Project X

Project X is a web application that attempts to tackle the challenges of mass messaging across diverse channels including: e-mail, SMS messaging, mobile app notifications, and native smartphone push notifications.

Prerequisites

  • Git
  • Java Development Kit (JDK)

Installation

  1. Clone this repository
  2. Create overrides.properties
  • See configuration.properties and jdbc.properties
  1. Update applicationContext.xml, if necessary
  2. Execute ./gradlew assemble to build message-center.war
  3. Deploy

Services

E-mail

Add the appropriate properties to overrides.properties.

stdout

This service does not have properties to configure.

Telegram

Add the bot's token to overrides.properties

Other Services

To implement your own messaging service(s)

  • Extend AbstractMessagingService
  • Configure a bean in applicationContext.xml
  • Add the bean to the messagingServices bean (in applicationContext.xml)

REST API

Project X has a REST API for applications to use to retrieve a user's mailbox messages

GET /api/v0/mailbox?userId={userId}

This endpoint retrieves the messages sent to {userId} using Project X.