MEP User Guide

Overview

MEP offers external interfaces and handlers for integration and communication with external platforms. These enable MEP to invoke independent, third party systems. Similarly, MEP can also react to requests and receive data from such external systems. The information on this page describes how the MEP interfaces and handlers are integrated.

Integration

All of these interfaces and handlers are available now but are not added to MEP accounts by default. If you want access to these interfaces, get in touch with your OpenMarket account manager.

Handlers to push and fetch data

These handlers require a URL that MEP can send an HTTP or HTTPS GET request to. We recommend providing an HTTPS URL for security.

HTTP Poke handler

The HTTP Poke handler enables MEP to push data to an external platform. The HTTP Poke handler uses the most common HTTP methods - POST, GET, PUT, and DELETE to perform create, read, update, and delete operations. Since the URL and parameters are fully customizable you can use the handler to send a diverse range of data, from the text contents of an SMS, to an end user’s profile, to event notifications generated during the execution of a service, such as a notification when a new user joining a subscription. Some other common implementations include pushing to a platform:

  • An end user’s mobile number and mobile operator details
  • An end user’s details with a random pin code or password generated by MEP (also sent to the end user)
  • An SMS message after MEP has processed the message in some way, for example, sending the end user an auto-response or premium SMS
  • Only details of end users that have reached a certain point in the service, for example, only those users who have correctly answered questions in a competition

The handler supports Expression Language when creating or modifying the handler. See Use Expressions in the HTTP Poke and Get External Data Handlers for more information.

In addition, see

Get External Data handler

The Get External Data handler can fetch data from an external platform when a service is triggered. Like the HTTP Poke handler, the service uses the most common HTTP methods - POST, GET, PUT, and DELETE to perform create, read, update, and delete operations. Since the parameters and URL are fully customizable, so you can set MEP to fetch any data from your external platform in response to a service being triggered. This also means that the handler can push data to the external platform in its request; for example you could customize the request to send user-specific data which then determines the data sent back.

You can use the handler to power SMS search engines or almost any service where an external data source needs to be polled during the message flow. Some common implementations include fetching:

  • Data from your platform such as news, daily horoscopes, or updates on traffic and public transport congestion
  • RSS feeds that are then sent as an alert service to subscribed end users, such as news, weather, and sports headlines
  • Price information for a product that an end user is interested in, for example, based on the barcode number or product name, enabling the user to make an immediate, informed decision

The handler supports Expression Language when creating or modifying the handler. See Use Expressions in the HTTP Poke and Get External Data Handlers for more information.

In addition, see

External interfaces for receiving requests

Invoke service API

The Invoke Service API enables you to trigger an existing MEP service for a specified end user. In the request you can include variables related to the end user or the service, letting you both add and update variables as required. Use Invoke Service for any kind of integration where you want an external system, such as a website or CRM system, to initiate a MEP service for a specific end user.

See Making Invoke Service Requests.

Inject message API

The Inject Message API enables you to send messages into MEP, via an HTTP request, as if they were sent from an end user. MEP then processes the message as if it had been sent directly from the end user rather than from your platform. This enables you to use an external platform, such as a web service, to trigger a MEP service for an end user. Variables related to the end user or service can also be set in the same request.

One common use of this interface is sending mobile numbers to MEP that end users have submitted through a web form, triggering a double opt-in service that responds to the end user via SMS. As well as sending an automatic SMS response message to the end user, MEP could also add the end user to a subscription list and verify the mobile number’s existence.

See Making Inject Message Requests.

Broadcast API

The Broadcasts API enables you to easily manage broadcasts remotely using HTTP and HTTPS GET requests. Through this API, you can create:

  • SMS broadcasts
  • MMS broadcasts
  • Service broadcasts

Broadcast requests must include the ID for a subscription. These are the broadcast recipients. You can also specify in each request:

  • When you want the broadcast to initiate
  • An originator that replaces your default originator. This is an option for international messaging, but not messaging in the US or Canada.
  • (For SMS only): The character encoding, and whether to allow multipart messages

See Making Broadcast Requests

Subscriptions API

The Subscriptions API enables you to easily manage subscriptions remotely using HTTP and HTTPS GET requests. You can:

  • Create and disable subscriptions
  • Retrieve details of subscribed end users
  • Add or remove end users from subscriptions
  • For a specific end user, retrieve the details of their active subscriptions
  • Retrieve details about the subscriptions and subscription collections that you can access

See Making Subscription Requests

Variables API

You can use the Variables API to create and delete variables in MEP as well as retrieve and set variable values. This enables you to create and adjust values in services and service collections.

Variables hold values in MEP. This API is restricted to use with variables that use the service and servicecoll scopes. For detailed information about variables and variable scopes, see Variables.

See Making Variable Requests.