---
# System prepended metadata

title: Messaging Gateways
tags: [ready]

---

# Messaging Gateways

###### tags: `ready`

## SMS

SMS gönderim ve izleme servis kümesidir.

### Post : /message-gateway/out/sms/send
SMS gönderimi için kullanılan servistir.

#### Request Body
```json
{
  "id": "b15e6285-04ea-413e-8afc-7d7613e043bb",
  "number": "5302896073",
  "message": "hesaptan paraciklar cikti bilader",
  "type": "private-info",
  "sim-change-check-days": 7
}
```

**type** alanı *enumaration* olup içeriğin tipini tanımlar.

- Eğer içerik bir pazarlama kampanyası ise **campaign** seçilir. Örneğik kredi kampanyası, kişiye özel kredi limit bilgisi, özel dönem kampanya mailleri gibi. Bu tip mail gönderiminde iletişim izni kontrolü sağlanır.
- Eğer içerik kişiye özel bir bilgilendirme ise **private-info** seçilir. Örneğin ektreler, hesap kesim bilgisi, fatura ödeme bilgisi gibi içerikler bu sınıfta değerlendirilebilir.
- Eğer içerik genel bir bilgilendirme ise **public-info** seçilir. Örneğin şube açılışı, banka iletişim bilgisi değişimi gibi içerikler bu sınıfta değerlendirilebilir.
- Eğer içerik yasal bir bilgilendirme ise **legal** seçilir. Örneğin BDDK bilgilendirmeleri, vergi değişim bildirimi gibi içerikler bu sınıfta değerlendirilebilir.
- Eğer içerik güvenlik doğrulaması ise **OTP** seçilir. Örneğin internet bankacılığı girişi bu sınıfta değerlendirilebilir.


**sim-change-check-days** Sim kartin operator değişikliği veya kayıp/çalıntı gibi sebeblerle kontrol edilmesini gereken gün sayısını belirler.

Gün sayısından daha kısa sürede değişiklik varsa ve bir müşteri tarafından durum  doğrulanmamışsa gönderim yapılmaz.

#### Responses

>200 Kayıt başarı ile alındı ve hemen gönderime geçildi.

>202 Kayıt başarı ile alındı ve gönderime için kuyruğa atıldı.

>452-498 Hata kodları


### Get : /message-gateway/out/sms/log/{id}
Gönderilen sms kaydının durumunun sorgulandığı servistir

:::info
Her bir iz kaydı oluştuğunda **Message Center** tarafından sağlanan servis ile durum güncellemeleri paylaşılacak.
:::



#### Responses

>200 İz kayıtlarına başarı ile erişildi.
```json
{
  "status": "queue | in-progress | completed-with-success |completed-with-failure",
  "actions": [
    {
      "time-stamp": "2020-04-28T07:29:03+00:00",
      "status": "in-progress",
      "descriptrion": "SMS Turkcell OTP kanalından gönderildi."
    },
    {
      "time-stamp": "2020-04-28T07:30:00+00:00",
      "status": "in-progress",
      "descriptrion": "3 güm önce SIM kart değişikliği tespit edildi."
    },
    {
      "time-stamp": "2020-04-28T07:32:00+00:00",
      "status": "completed-with-failure",
      "descriptrion": "Mesaj gönderimi iptal edildi."
    }
  ]
}
```
>452-498 Hata kodları

### Get : /message-gateway/out/sms/history/{number}/{page-index}/{page-size}
Belirli bir numaraya gönderilen sms kayıtlarını listeler 

:::warning
History servisi müşteriye giden içeriği dönmez. İçerik kontorulu ve takibi **Message Center** üzerinden yapılır. Bu servis doğrulama servisi Message center tarafından müşteri bazlı sorgulama yapıldığında çapraz kontroller için çağrılır.
:::

#### Responses

>200 Gönderilere başarı ile erişildi.
```json
{
    "has-more" : true,
    [
      {
        "id": "b15e6285-04ea-413e-8afc-7d7613e043bb",
        "status": "in-progress",
        "created-at": "2020-04-28T07:29:03+00:00"
      },
      {
        "id": "b15e6285-04ea-413e-8afc-7d7613e043bb",
        "status": "in-progress",
        "created-at": "2020-04-28T07:29:03+00:00"
      }
    ]
}
```

>204 Numaraya bir gönderi bulunamadı.

>452-498 Hata kodları




### Post : /message-gateway/out/sms/sim-change-validation
Sim kart değişikliği durumunda doğrulama için kullanılır.
:::danger
Sim kart değişikliği ile ilgili süreç bu servis kümesinin sorumluluk alanına girmemektedir. Bu servisi çağıran sitemin uygun şekilde doğrulama yaptığından emin olunmalıdır.
:::

#### Request Body
```json
{
  "number": "5302896073",
  "date": "2020-04-28",
  "validation-data": {
    "user":"ebt\ukaratas", 
    "system":"backoffice"
  }
}
```
**date** müşteri ile iletişim kurularak sim card değişikliğinin yapıldığı günü belirler.

**validation-data** serbest json formatıdır. Raporlama amaçlı olarak veritabanına serialize edilir.

#### Responses

>200 Kayıt başarı ile alındı.

>452-498 Hata kodları


## E-Mail

E-posta gönderim ve izleme servis kümesidir.

### Post : /message-gateway/out/email/send
E-posta gönderimi için kullanılan servistir.

:::info
Gönderimler spam yönetimi amacıyla belli *domain*ler için yavaşlatılabilir. Bu konunun sorumlusu e-mail gatewaydir.
:::

#### Request Body
```json
{
  "id": "b15e6285-04ea-413e-8afc-7d7613e043bb",
  "to": "ukaratas@rocketmail.com",
  "cc": "ukaratas@burgan.com.tr, ukaratas@hotrmail.com",
  "bcc": "bireyselizleme@burgan.com.tr",
  "subject": "BurganBank - Paraciklar",
  "body": "<b>hesaptan</b> paraciklar cikti bilader",
  "type": "private-info",
  "attachments": [
    {
      "name": "list.pdf",
      "type": "PDF",
      "render-id": "8058310a-3eef-46d7-97cf-c2065d4d6e9b"
    },
    {
      "file-name": "gdpr.html",
      "type": "Plain",
      "render-id": "9058310a-3eef-46d7-97cf-c2065d4d6e9b"
    }
  ]
}
```

**attachments** alanı e-postanın eklerini tanımlar. E-posta gönderimi yapılacağı zaman **Templating Engine** üzerinden sorgulanarak çekilir ve gönderilecek e-postaya ek olarak eklenir.

:::info
Eklerin *stream* olarak servise gönderilmesinden gerek connection süresini uzatması, gerek network trafiğiniarttırması sebebiyle bilinçli olarak kaçınılmaktadır. 
:::


#### Responses

>200 Kayıt başarı ile alındı ve hemen gönderime geçildi.

>452-498 Hata kodları


### Get : /message-gateway/out/email/log/{id}
Gönderilen e-posta kaydının durumunun sorgulandığı servistir

:::info
Her bir iz kaydı oluştuğunda **Message Center** tarafından sağlanan servis ile durum güncellemeleri paylaşılacak.
:::



#### Responses

>200 İz kayıtlarına başarı ile erişildi.
```json
{
  "status": "queue | in-progress | completed-with-success |completed-with-failure",
  "actions": [
    {
      "time-stamp": "2020-04-28T07:29:03+00:00",
      "status": "in-progress",
      "descriptrion": "E-posta Buregan SMTP kanalından gönderildi."
    },
    {
      "time-stamp": "2020-04-28T07:32:00+00:00",
      "status": "completed-with-failure",
      "descriptrion": "E-posta adresi dolu, mail kabul edilmedi."
    }
  ]
}
```
>452-498 Hata kodları

### Get : /mesage-gateway/out/email/history/{email}/{page-index}/{page-size}
Belirli bir e-posta adresine gönderilen (to, cc veya bcc) e-posta kayıtlarını listeler 

:::warning
History servisi müşteriye giden içeriği dönmez. İçerik kontrolu ve takibi **Message Center** üzerinden yapılır. Bu servis doğrulama servisi Message center tarafından müşteri bazlı sorgulama yapıldığında çapraz kontroller için çağrılır.
:::

#### Responses

>200 Gönderilere başarı ile erişildi.
```json
[
  {
    "id": "b15e6285-04ea-413e-8afc-7d7613e043bb",
    "status": "in-progress",
    "created-at": "2020-04-28T07:29:03+00:00"
  },
  {
    "id": "b15e6285-04ea-413e-8afc-7d7613e043bb",
    "status": "in-progress",
    "created-at": "2020-04-28T07:29:03+00:00"
  }
]
```

>204 e-posta adresine bir gönderi bulunamadı.

>452-498 Hata kodları


## Mobile Push Notification

Mobil uygulamaya mesaj gönderim ve izleme servis kümesidir.

### Post : /message-gateway/out/mobile-push/send
Mobil uygulamaya mesaj gönderimi için kullanılan servistir.

:::info
Gönderimler spam yönetimi amacıyla için yavaşlatılabilir. Bu konunun sorumlusu gatewaydir.
:::

#### Request Body
```json
{
  "id": "b15e6285-04ea-413e-8afc-7d7613e043bb",
  "application": "burgan-mobile-banking-retail",
  "device-reference": "bbed16c5-85ab-40e9-96e6-d9a5b1058e5e",
  "title": "BurganBank - Paraciklar",
  "sub-title": "Hesaptan Para Cikisi",
  "body": "<b>hesaptan</b> paraciklar cikti bilader",
  "type": "private-info",
  "actions": [
    {
      "command": "display-statement",
      "title": "Dekont Goster",
      "icon": "ic_statement",
      "parameter": "1787612"
    },
    {
      "command": "ignore",
      "title": "Tamam",
      "icon": "ic_close"
    }
  ]
}
```


**application** kullanılara banka tarafından kurulan uygulamanın adıdır. Kullanıcı cihazında birden fazla uygulamamız olabileceğinden uygulama seçimi mesaj için zorunlu tutulmulştur.

**device-reference** müşterinin eşleştirilmiş cihazının referans numarasısıdır. gönderim eşleştirilmiş cihazlar üzerinden yönetilir.



#### Responses

>200 Kayıt başarı ile alındı ve hemen gönderime geçildi.

>452-498 Hata kodları


### Get : /message-gateway/out/mobile-push/log/{id}
Gönderilen mesajların kaydının durumunun sorgulandığı servistir

:::info
Her bir iz kaydı oluştuğunda **Message Center** tarafından sağlanan servis ile durum güncellemeleri paylaşılacak.
:::



#### Responses

>200 İz kayıtlarına başarı ile erişildi.

```json
{
  "status": "queue | in-progress | completed-with-success |completed-with-failure",
  "actions": [
    {
      "time-stamp": "2020-04-28T07:29:03+00:00",
      "status": "in-progress",
      "descriptrion": "Push mesajı başarı ile iletildi."
    },
    {
      "time-stamp": "2020-04-28T07:32:00+00:00",
      "status": "completed-with-success",
      "descriptrion": "'Dekont Goster' komutu ile tammalandı."
    }
  ]
}
```
>452-498 Hata kodları

### Get : /mesage-gateway/out/mobile-push/history/{device-reference}/{page-index}/{page-size}
Belirli bir cihaza  gönderilen mesaj kayıtlarını listeler 

:::warning
History servisi müşteriye giden içeriği dönmez. İçerik kontrolu ve takibi **Message Center** üzerinden yapılır. Bu servis doğrulama servisi Message center tarafından müşteri bazlı sorgulama yapıldığında çapraz kontroller için çağrılır.
:::

#### Responses

>200 Gönderilere başarı ile erişildi.
```json
[
  {
    "id": "b15e6285-04ea-413e-8afc-7d7613e043bb",
    "status": "in-progress",
    "created-at": "2020-04-28T07:29:03+00:00"
  },
  {
    "id": "b15e6285-04ea-413e-8afc-7d7613e043bb",
    "status": "in-progress",
    "created-at": "2020-04-28T07:29:03+00:00"
  }
]
```

>204 Cihaza bir gönderi kaydı bulunamadı.

>452-498 Hata kodları



### Get : /mesage-gateway/out/mobile-push/application
Kayıtlı uygulama listesini döner

#### Responses

>200 Gönderilere başarı ile erişildi.
```json
[
  {
    "name": "burgan-mobile-banking-retail",
    "description": "Bireysel Interent Bankaciligi",
    "created-at": "2020-04-28T07:29:03+00:00"
  },
  {
    "name": "burgan-mobile-banking-corporate",
    "description": "Kurumsal Internet Bankaciligi",

  }
]
```

>452-498 Hata kodları




### Get : /mesage-gateway/out/mobile-push/users/{citizenship-number}
Kullanıcının kayıtlı cihaz ve uygulama listesini döner.

#### Responses

>200 Cihaz kayıtlarına başarı ile erişildi.
```json
[
  {
    "device-reference": "44305085-6479-424c-b00d-4e6e6f6427f5",
    "device-info":"Samsung Note 9 - Android 10"
    "applications": [
      "burgan-mobile-banking-retail",
      "burgan-mobile-banking-kurumsal"
    ]
  }
]
```

>452-498 Hata kodları



