External Short Messaging Entity ( ESME ) — это внешнее приложение, которое подключается к Short Message Service Center (SMSC) для отправки или получения SMS- сообщений. Термин был придуман Aldiscon .
SME — это термин, используемый во многих сотовых кругах для описания сетевого объекта (мобильного/сотового телефона), который может отправлять/получать сообщения. ESME (произносится как EZ-mee) по сути является одним из них, но без всех беспроводных аспектов; т. е. он подключается через TCP/IP , X.25 или аналогичные. В спецификациях протокола SMPP 3.4 ESME относится только к внешним источникам и приемникам коротких сообщений, таким как системы обработки голоса, прокси-серверы WAP или компьютеры обработки сообщений, и он специально исключает SME, которые находятся в пределах мобильной сети, т. е. мобильные станции (MS). [1]
Типичными примерами ESME являются системы, отправляющие автоматизированные маркетинговые сообщения мобильным пользователям, и системы голосования , обрабатывающие SMS-голосования ( Pop Idol , Big Brother ).
SMSC использует такие протоколы, как SMPP , UCP , OIS , CIMD , SMCI, каждый из которых обозначает концепцию ESME, подключающегося к SMSC. [2]
ESME всегда подключается к SMSC с помощью TCP/IP , X.25 и т. д., а затем подключается к необходимой ему услуге из SMSC.
Для SMPP он может быть привязан только к приему, только к передаче или к обоим (приемопередатчик). До SMPP 3.4 требовалось два разных соединения: одно для передачи и другое для приема. Начиная с SMPP 3.4 для обоих достаточно соединения трансивера.
Связь между ESME и SMSC является в некотором роде связью «главный-подчиненный», поскольку SMSC предоставляет услуги ESME, а ESME обычно просто использует эти услуги SMSC. Одной из функций SMSC является хранение и пересылка сообщений, в то время как ESME не имеет этой функции. Когда сообщение отправляется ESME в SMSC по направлению к месту назначения, это сообщение может оставаться в очереди SMSC до тех пор, пока его место назначения не станет доступным. В течение этого времени ESME имеет возможность отменить сообщение в очереди, заменить его или проверить его статус. ESME также может отправлять сообщения нескольким адресатам, которые будут обрабатываться SMSC.
ESME обычно являются конечными точками сети SMS, в то время как SMSC являются ее ядром. SMSC может подключаться между ними, в то время как ESME подключается только к SMSC. Протокол SMPP разработан именно таким образом для подключения небольшого конца сети SMS (который является ESME) ко всей сети SMS (что делается через SMSC)
ESME отправляет MT в SMSC, в то время как SMSC отправляет MO в ESME.
Пример того, как маршрутизация может быть выполнена на уровне SMSC, но не обязательно, так как это во многом зависит от реализации SMSC и способа соединения внутри SMSC между частью маршрутизации SMSC и интерфейсом SMPP, может быть следующим: Во время соглашения об обслуживании между ESME и поставщиком услуг (сторона SMSC) для ESME будет выделен один уникальный короткий код. На стороне SMSC сервер smpp будет иметь список всех адресов ESME и активных соединений. Когда какое-либо сообщение отправляется на короткий код, сообщения сначала поступают в SMSC, SMSC декодирует его в соответствии со спецификацией GSM 3.4, затем один из модулей в SMSC проверяет адрес назначения, и если это короткий код, то этот модуль направляет сообщения в часть сервера SMPP SMSC. Теперь сервер SMPP будет иметь все активные соединения, в соответствии с адресом назначения он выбирает объект соединения ESME - сервер SMPP, этот объект будет отвечать за кодирование сообщения в соответствии с протоколом SMPP и пересылку в ESME.
Связь между SMSC и ESME может осуществляться как по SMPP, так и по HTTP. Если у кого-то есть учетная запись SMPP, он может подключиться к IP+Port SMPP по TCP/IP, и SMPP будет отправлять MO в ESME по соединению SMPP, а ESME будет отправлять MT по тому же соединению в обратном порядке. Если у них есть учетная запись HTTP с SMSC оператора, то SMSC отправит MO на указанный URL, и для отправки MT SMSC будет указан URL.