PHP code example of macellan / iys

1. Go to this page and download the library: Download macellan/iys library. Choose the download type require.

2. Extract the ZIP file and open the index.php.

3. Add this code to the index.php.
    
        
<?php
require_once('vendor/autoload.php');

/* Start to develop here. Best regards https://php-download.com/ */

    

macellan / iys example snippets


// config/services.php
...
    'iys' => [
        'username' => env('IYS_USERNAME', ''),
        'password' => env('IYS_PASSWORD', ''),
        'iys_code' => env('IYS_CODE', ''),
        'brand_code' => env('IYS_BRAND_CODE', ''),
        'url' => env('IYS_URL', ''),
    ],
...

enum ConsentSourceTypes: string
{
    case PHYSICAL = 'HS_FIZIKSEL_ORTAM';
    case WET_SIGNATURE = 'HS_ISLAK_IMZA';
    case WEB = 'HS_WEB';
    case CALL_CENTER = 'HS_CAGRI_MERKEZI';
    case SOCIAL_MEDIA = 'HS_SOSYAL_MEDYA';
    case EMAIL = 'HS_EPOSTA';
    case MESSAGE = 'HS_MESAJ';
    case MOBILE = 'HS_MOBIL';
    case HS_EORTAM = 'HS_EORTAM';
    case ACTIVITY = 'HS_ETKINLIK';
    case HS_2015 = 'HS_2015';
    case HS_ATM = 'HS_ATM';
    case HS_DECISION = 'HS_KARAR';
}

enum PermissionTypes: string
{
    case CALL = 'ARAMA';
    case MESSAGE = 'MESAJ';
    case EMAIL = 'EPOSTA';
}

enum RecipientTypes: string
{
    case INDIVIDUAL = 'BIREYSEL';
    case TRADER = 'TACIR';
}

enum SourceTypes: string
{
    case HS = 'HS';
    case IYS = 'IYS';
}

enum StatusTypes: string
{
    case APPROVE = 'ONAY';
    case REJECT = 'RET';
}

    IysManager::make()->createPermissionDriver()->sendSingle(
            Permission::make()
                ->setConsentDate('2022-02-10 09:50:02')
                ->setSource(ConsentSourceTypes::MOBILE)
                ->setRecipient('[email protected]')
                ->setRecipientType(RecipientTypes::INDIVIDUAL)
                ->setStatus(StatusTypes::APPROVE)
                ->setType(PermissionTypes::EMAIL)
    );

    $permissionList =  PermissionList::make()
        ->addPermission($permission
          ->setConsentDate('2022-02-10 09:50:02')
            ->setRecipient('[email protected]')
            ->setStatus(StatusTypes::APPROVE)
            ->setType(PermissionTypes::EMAIL))
            ->setSource(ConsentSourceTypes::MOBILE)
            ->setRecipientType(RecipientTypes::INDIVIDUAL);
        ->addPermission($permission
            ->setConsentDate('2022-02-10 09:50:03')
            ->setRecipient('[email protected]')
            ->setStatus(StatusTypes::REJECT)
            ->setType(PermissionTypes::MESSAGE));
            ->setSource(ConsentSourceTypes::MOBILE)
            ->setRecipientType(RecipientTypes::INDIVIDUAL);

    IysManager::make()->createPermissionDriver()->sendMultiple($permissionList);

   IysManager::make()->createPermissionDriver()->getStatusByRequestId('request_id');

   IysManager::make()->createPermissionDriver()->getChanges();

    IysManager::make()->createPermissionDriver()->getStatus(
            Permission::make()
                ->setConsentDate('2022-02-10 09:50:02')
                ->setSource(ConsentSourceTypes::MOBILE)
                ->setRecipient('[email protected]')
                ->setRecipientType(RecipientTypes::INDIVIDUAL)
                ->setStatus(StatusTypes::APPROVE)
                ->setType(PermissionTypes::EMAIL)
    );