netgsm/iys

NETGSM ILETI YONETIM SISTEMI

Maintainers

Details

github.com/netgsm/netiys

Source

Issues

Installs: 7

Dependents: 0

Suggesters: 0

Security: 0

Stars: 0

Watchers: 1

Forks: 0

Open Issues: 0

Type:package

v2.0.1 2023-02-13 12:11 UTC

This package is auto-updated.

Last update: 2024-05-06 10:51:00 UTC


README

İleti Yönetim Sistemi (İYS), tüm hizmet sağlayıcıların güncel ticari elektronik ileti onaylarını kaydettikleri ulusal veri tabanı sistemidir. Alıcılar (vatandaşlar) onay verebildikleri gibi, mevcut onayları için ret haklarını da İYS üzerinde kullanabilirler.

Ticari Elektronik İleti; Firmaların, mal ve hizmetlerini pazarlamak, işletmesini tanıtmak ya da kutlama ve temenni gibi içeriklerle tanınırlığını artırmak amacıyla tüketicilere kampanya, özel gün kutlaması,indirim, hediye içerikli vb. gönderdiği mesajlardır.

Ticari elektronik iletinizin içeriği alıcıdan alınan onaya uygun olmalıdır.

NETGSM, İleti Yönetim Sistemi Aracı Hizmet Sağlayıcı kurumdur.

İçindekiler

İletişim & Destek

Netgsm API Servisi ile alakalı tüm sorularınızı ve önerilerinizi teknikdestek@netgsm.com.tr adresine iletebilirsiniz.

Doküman

https://www.netgsm.com.tr/dokuman/ API Servisi için hazırlanmış kapsamlı dokümana ve farklı yazılım dillerinde örnek amaçlı hazırlanmış örnek kodlamalara https://www.netgsm.com.tr/dokuman adresinden ulaşabilirsiniz.

Supported Laravel Versions

Laravel 6.x, Laravel 7.x, Laravel 8.x, Laravel 9.x,

Supported Lumen Versions

Lumen 6.x, Lumen 7.x, Lumen 8.x, Lumen 9.x,

Supported Symfony Versions

Symfony 4.x, Symfony 5.x, Symfony 6.x

Supported Php Versions

PHP 7.2.5 ve üzeri

Kurulum

composer require netgsm/iys

.env dosyası içerisinde NETGSM ABONELİK bilgileriniz tanımlanması zorunludur.

NETGSM_USERCODE=""
NETGSM_PASSWORD=""
NETGSM_BRANDCODE=""

PARAMETRELER

Parametre Anlamı
type letişim adres türü ARAMA, MESAJ ya da EPOSTA dan biri olmalıdırl. Zorunlu parametre
source izin alınan kaynağı ifade eder, HS_FIZIKSEL_ORTAM, HS_ISLAK_IMZA, HS_WEB, HS_CAGRI_MERKEZI, HS_SOSYAL_MEDYA, HS_EPOSTA, HS_MESAJ, HS_MOBIL, HS_EORTAM, HS_ETKINLIK, HS_2015, HS_ATM ve HS_KARAR değerlerini alabilir. Zorunlu parametre
recipient İzin alınan kullanıcının telefon numarası ya da e-posta bilgisidir. +905XXXXXXXXX ya da info@netgsm.com.tr formatlarında olmalıdır. Zorunlu parametre
status ONAY ya da RET değerini gönderebilirsiniz. Zorunlu parametre
consentDate İzin alınan tarih bilgisi YYYY-mm-dd HH:mm:ss formatında gönderilmelidir. Zorunlu parametre
recipientType BIREYSEL ya da TACIR parametre olarak gönderilmelidir. Zorunlu parametre

iYS ADRES EKLEME

İYS API Servisi ile Hizmet sağlayıcıların Netgsm İYS İş ortağı aracılığıyla iletişim adreslerini yükleyebilirler.

	use Netgsm\Iys\iys;
    	$data=array('type'=>'MESAJ','source'=>'HS_WEB','recipient'=>'+90553xxxxxxx','recipientType'=>'BIREYSEL','status'=>'ONAY','consentDate'=>'2020-11-06 09:40:00');
        $islem=new iys;
        $sonuc=$islem->iys($data);
        dd($sonuc);
        die;

Başarılı istek örnek sonuç

Array
(
    [code] => 0
    [error] => false
    [uid] => 59a3ec87-bca0-xxxx-xxxx-xxxxxxx
)

Başarısız istek örnek sonuç

Array
(
    [code] => 70
    [error] => Hatalı JSON formatı.
    [erroritem] => Array
        (
            [0] => stdClass Object
                (
                    [recipient] =>  +90553xxxxxxx
                )

        )

iYS ADRES SORGULAMA

Hizmet sağlayıcıların İYS veritabanında kayıtlı iletişim adreslerini sorgulayabileceği servistir.

        use  Netgsm\Iys\iys;
    	$data=array('type'=>'MESAJ','recipient'=>'+90553xxxxxxx','recipientType'=>'BIREYSEL');
        $adressorgu=new iys;
        $sonuc=$adressorgu->iysadressorgula($data);
        
        dd($sonuc);
        die;
        
        

Başarılı istek örnek sonuç

Array
(
    [code] => 0
    [error] => false
    [query] => stdClass Object
        (
            [recipientType] => BIREYSEL
            [recipient] => +9055xxxxxxx
            [source] => HS_WEB
            [type] => MESAJ
            [consentDate] => 2023-01-24 09:40:00
            [status] => ONAY
            [creationDate] => 2023-01-26 09:48:54
            [retailerAccessCount] => 0
            [transactionId] => 52402b9a59206462axxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
        )

)

Başarısız istek örnek sonuç

Array
(
    [code] => 50
    [error] => Kayıt Bulunamadı.
)

İys Webhook

  • İYS'ye yüklenen izin ve ret bilgilerinin sonuç durumları, Webhook (Web kancası) uygulaması kullanılarak alınabilir. Bildirim işlemi webhook olarak tanımlanan URL adresine yapılır.

  • Bu servisi kullanabilmek için URL'inizi tanımlamanız gerekmektedir. Bu işlem www.netgsm.com.tr adresine giriş sağladıktan sonra Dijital Servisler altındaki Netiys modülünden ayarlanabilir, NetİYS Modülü Uygulamalar bölümüne erişmek için, Netgsm web portala login olduktan sonra tıklayabilirsiniz

  • İYS izninin veya izin değişikliğinin hangi yolla yapıldığı fark etmeksizin webhook ile URL'e bildirilir.

Urle bildirilen alanlar
Parametre Anlamı
iyscode İYS'de kayıtlı numaranız
brandcode İYS'de kayıtlı marka kodunuz
type İletişim adres türü ARAMA, MESAJ ya da EPOSTA dan biri döner.
source izin alınan kaynağı ifade eder, HS_FIZIKSEL_ORTAM, HS_ISLAK_IMZA, HS_WEB, HS_CAGRI_MERKEZI, HS_SOSYAL_MEDYA, HS_EPOSTA, HS_MESAJ, HS_MOBIL, HS_EORTAM, HS_ETKINLIK, HS_2015, HS_ATM ve HS_KARAR ya da IYS_3338, IYS_CM, IYS_WEB, IYS_MOBIL, IYS_KISA_LINK değerlerinden biri döner.
status ONAY ya da RET değeri döner.
consentDate İzin alınan tarih bilgisi YYYY-mm-dd HH:mm:ss formatında döner.
recipientType BIREYSEL ya da TACIR olarak döner.
retailercode İzin alınmasında aracılık eden bayinin iyscode bilgisidir.Nümerik bayi iyscode değeri döner.
retailerAccess İzne erişimi olan bayilerin iyscode bilgisidir. {123456,789456} formatında bayi iyscode bilgisi döner.
submitid İzin yüklenirken oluşturulan, izin paketine ait id bilgisidir. "40e6215d-b5c6-4896-987c-f30f3678f608" formatında id verisi döner.
recipient İzin alınan kişinin telefon numarası ya da e-posta adresi bilgisdir. Telefon numaraları E164 uluslararası([+][country code][area code][local phone number]) formatında döner.
resultstatus İznin işlenme durum bilgisidir. success iznin eklendiğini, failure iznin eklendiğini gösterir.
errcode İzin işlenirken karşılaşılan hata kodu bilgisdir. "H155" formatında İYS hata kodu formatındadır.
errmsg İzin işlenirken karşılaşılan hata mesajı bilgisdir. Metin formatında hata mesajı döner.
creationdate İznin İYS tarafında işleme alındığı tarih bilgisidir. YYYY-MM-DD HH:mm:ss formatında tarih verisi döner.
{
    "iyscode": 123456,
    "brandcode": 123456,
    "type": "MESAJ",
    "source": "HS_ETKINLIK",
    "status": "ONAY",
    "consentdate": "2010-02-10 13:55:00",
    "recipienttype": "TACIR",
    "retailercode": "987654",
    "retaileraccess": "",
    "submitid": "40e6215d-b5c6-4896-987c-f30f3678f608",
    "recipient": "+90312xxxxxxx",
    "resultstatus": "failure",
    "errcode": "H155",
    "errmsg": "İzin tarihi (consentDate) kabul edilemedi.",
    "creationdate": ""
}
Laravel kullanıyorsanız veriyi aşağıdaki gibi çekebilirsiniz
    use Illuminate\Http\Request;
    public function index(Request $request)
    {
        
        $data = json_decode($request->getContent(),false);
        $data->recipienttype;
        $data->retailercode;
    }
Symfony kullanıyorsanız veriyi aşağıdaki gibi çekebilirsiniz
    use Symfony\Component\HttpFoundation\Request;
    public function index(Request $request)
    {
       $data = json_decode($request->getContent(),false);
       $data->recipienttype;
       $data->retailercode;
        
     }