Introduction

Welcome to EMG Portal, an add-on to an existing EMG installation, providing a web based interface to common tasks.

EMG Portal is to be considered a starting point which can be enhanced and modified to fit customer-specific requirements.

Throughout this manual we use a number of terms that is described here.

Terminology

TermDescription
CustomerA customer in the platform. Normally corresponds to one company, a billing entity.
EMG accountA sender account in the EMG server. Each EMG Account is tied to exactly one Customer.
Web userA user that can log in to the EMG Portal web application. Each User is tied to exactly one EMG Account.

User roles

Each user can have one of three roles: User, admin and owner. Role “user” has the least privilege and role “owner” the highest privilege.

The privileges accumulate so that role “admin” is allowed everything to perform all tasks that role “user” is allowed plus its own tasks. Role “owner” has all privileges.

File paths

Sometimes we refer to files in the distribution. These are referred to using relative paths from the directory where you have installed EMG Portal.

For example, if you have installed EMG Portal in “/opt/emgportal” and the path specified is “protected/views/layouts/main.php” the full path of that file would be “/opt/emgportal/protected/views/layouts/main.php”.

Features

EMG Portal includes the following features:

Role “user”

  • Send messages (SMS) via web interface
  • Schedule messages for later delivery
  • Send history for user
  • Phone books

Role “admin”

  • Message log (per customer, per EMG account and system-wide)
  • Reports (for own EMG accounts)
  • Manage web users

Role “owner”

  • Manage EMG accounts
  • Manage customers (companies)
  • Monitor connectors
  • Reports (per customer, per EMG account and system-wide)
  • Manage connector status and connector queues
  • Manage routes (requires billing plugin)
  • Manage prices (requires billing plugin and proper license)
  • Manage connectors
  • Start and stop EMG server (via EMG watchdog)
  • Display EMG log files

Other

  • Daily e-mail reports
  • Multi-lingual (support for english and swedish “out of the box”)
  • Customizable layout (layout file and style sheet)

EMG integration

EMG Portal integrates with the EMG server in two ways, via database and via MGP (Messaging Gateway Protocol).

Database

EMG Portal introduces its own database schema (tables prefixed with “emgp_”) which extends the EMG server schema.

The schema includes information about web users, phone books and more high-level objects which links to the lower-level EMG server tables.

EMG Portal never writes in the tables that are part of the EMG server schema, but rather uses them read-only.

MGP

MGP is a proprietary protocol providing an API to obtain information about connectors etc in a running EMG server.

The EMG server must have a MGP connector defined that uses database authentication (keyword USERDB instead of USERS).

Routing and billing

EMG Portal can be used for easy administration of routes and price information. This requires the billing plugin to be installed.

In addition in order to set per-message price from a plugin the biling plugin integration must be licensed.

API

Clients can connect to EMG Portal via a HTTP/JSON-based API to check credits balance.