EMI/UCP
EMI/UCP (External Machine Interface (EMI), Universal Computer Protocol (UCP)) — расширение протокола UCP, преимущественно используется для соединения с СМС центрами (SMSCs). Протокол разработан компанией CMG Wireless Data Solutions, сейчас входящей в Acision.
Синтаксис
stx <заголовок> / <данные> / <контрольная сумма> etx
Начало пакета отмечается символами ^B (STX, hex 02) окончание — ^C (ETX, hex 03). Поля в пакете разделены символом «/». Списки разделяются запятыми.
Обычное взаимодействие по протоколу EMI/UCP выглядит так:
^B01/00045/O/30/66677789///1//////68656C6C6F/CE^C ^B01/00041/R/30/A//66677789:180594141236/F3^C
Первые четыре поля это обязательный заголовок. Первое — двухсимвольный номер транзакции, второе это число символов в пакете (между stx и etx, пятисимвольное значение), оба первых поля дополняются нулями до нужной длины, третье — тип операции (O для операции, R для результата), четвёртое — код операции (в примере 30, передача короткого сообщения).
Остальные поля зависят от типа операции. В первой строке примера, '66677789' это адрес получателя (номер телефона), а '68656C6C6F' тело сообщения — ASCII строка «hello». Во второй строке ответ с соответствующим номером транзакции, где 'A' показывает что сообщение было успешно принято SMSC, время добавленно к телефонному номеру указывает на время доставки.