Apache Kafka Bridge

The Apache Kafka Bridge is designed to duplicate all messages sent through the Miatel platform into the Apache Kafka message bus. Duplication is performed using the Change Data Capture (CDC) mechanism. Messages are serialized in JSON format.

Access to the Apache Kafka Bridge

Access is only granted via TLS using an ECC private key. The private key is generated by Miatel. To obtain the key, please contact support at support@miatel.com, specifying your Miatel platform account and the IP addresses to be whitelisted, or reach out to your personal manager.

Message Fields

operation

Operation Type (INSERT, UPDATE, DELETE)

sms_hub_mccmnc_id

MCC/MNC code of the recipient

sms_hub_mccmnc_name

Decryption of the MCC/MNC code of the recipient (country and mobile operator name)

sms_hub_sms_time

The time the message was received on the Miatel platform

sms_hub_switch_id

The ordinal number of the Miatel Platform node (form 1 to 4)

src_num

Sender ID

username

Username of the Miatel Platform API

message_body

Message body

segment_num

Segment number

segment_total

Segment total

segment_id

Segment ID (in case of composite message)

dlr_code

Delivery code of the message

dlr_time

Time of message delivery to the recipient

message_id

Message ID

resp_code

Response code from the mobile operator (if available) or from the Miatel platform

dst_num

Recipient's phone number

sms_hub_sms_id

Internal sequential number of the message on the Miatel platform

sms_hub_currency_name

Currency of billing

price

Message price

remote_ip

IP address of the user of the Miatel Platform API

Example of received data

{
"operation": "insert",
"schema": "data-sms_hub",
"table": "mdr",
"after": {
        "sms_hub_mccmnc_name": "Singapore - Singtel",
        "sms_hub_sms_time": "2023-03-05T15:20:29Z",
        "sms_hub_switch_id": 1,
        "src_num": "Miatel",
        "sms_hub_mccmnc_id": 525001,
        "username": "user_example",
        "message_body": "Hello",
        "segment_num": 1,
        "price": 0.036,
        "segment_total": 1,
        "dlr_code": 2,
        "message_id": "01d0fce6-bb81-11ed-a40f-9457a0122333",
        "resp_code": 0,
        "dst_num": "6585911223",
        "sms_hub_currency_id": 3,
        "sms_hub_sms_id": 999887766,
        "segment_id": null,
        "sms_hub_currency_name": "EUR",
        "dlr_time": "2023-03-05T15:30:01Z",
        "remote_ip": "127.0.0.1"
        },
"commit_time": "2023-09-13T12:14:33.287567138Z"
}

Kafka parameters

  • Apache Kafka brokers are located in two data centers within the 91.206.88.0/24 network.

  • Apache Kafka version: 3.5.

  • Consensus protocol used: KRaft.

  • Messages are delivered to the topic within 30 seconds after arriving on the Miatel platform.

  • Messages in Apache Kafka are read transactionally with the read_committed transaction isolation level.

  • The key of the message in the topic is the combination of sms_hub_sms_id and sms_hub_switch_id.

Last updated