2017 © Pedro Peláez
 

library simplysign

Certum SimplySign Client

image

webinv/simplysign

Certum SimplySign Client

  • Wednesday, July 11, 2018
  • by kardasz
  • Repository
  • 1 Watchers
  • 0 Stars
  • 61 Installations
  • PHP
  • 0 Dependents
  • 0 Suggesters
  • 0 Forks
  • 0 Open issues
  • 6 Versions
  • 30 % Grown

The README.md

About

Build Status Latest Stable Version Total Downloads Latest Unstable Version License, (*1)

SimplySign webservice client, (*2)

Installation

composer require webinv/simplysign, (*3)

Usage

1. Configuration

use Webinv\SimplySign\Connection;
use Webinv\SimplySign\Client\Authorization;

$connection = new Connection([
    'client_id' => '**client_id**',
    'client_secret' => '**client_secret**',
    'domain' => Connection::DOMAIN_TEST
]);

2. Authorization

2.1 Authorization Code

use Webinv\SimplySign\Client\Authorization;

$client = new Authorization($connection);
$redirectUrl = 'http://example.com/02-authorization-grant-token.php';

if (isset($_GET['code'])) {
    $token = $client->getAccessTokenByAuthorizationCode($redirectUrl, $_GET['code']);
    print_r($token);
} else {
    header(sprintf('Location: %s', $client->getAuthorizationUrl($redirectUrl)));
}

2.2 Resource Owner Password Credentials

use Webinv\SimplySign\Client\Authorization;

$client = new Authorization($connection);
$token = $client->getAccessTokenByEmailPassword('example@domain.com', '******');

2. Signing PDF document

use Webinv\SimplySign\Client\SignatureFormatServicePades;
use Webinv\SimplySign\Model\Pades\SigningRequest;
use Webinv\SimplySign\Model\Pades\Signing\Credentials;


$client = new SignatureFormatServicePades($connection);

// Create token or you can obrain a new one
$token = new \Webinv\SimplySign\Model\Token([
    'access_token' => '*******************************************',
    'token_type' => 'bearer',
    'expires_in' => 7200,
    'refresh_token' => '*******************************************'
]);

$credentials = new Credentials();
$credentials->setCard('*******');
$credentials->setPin('*******');
$credentials->setToken($token->getAccessToken());

$signingRequest = new SigningRequest();
$signingRequest->setCertificateFile(__DIR__ . '/example.pem');
$signingRequest->setFile(__DIR__ . '/example.pdf');
$signingRequest->setCredentials($credentials);

$signed = $client->sign($signingRequest, $token);

file_put_contents(__DIR__ . '/signed_document.pdf', base64_decode($signed));

3. Certificates list

use Webinv\SimplySign\Connection;
use Webinv\SimplySign\Client\SoftCardService;

$connection = new Connection([
    'client_id' => '**client_id**',
    'client_secret' => '**client_secret**',
    'domain' => Connection::DOMAIN_TEST
]);

$client = new SoftCardService($connection);

$token = new \Webinv\SimplySign\Model\Token([
    'access_token' => '*******************************************',
    'token_type' => 'bearer',
    'expires_in' => 7200,
    'refresh_token' => '*******************************************'
]);

$certificates = $client->getCertificates('**card***', $token);
foreach ($certificates as $certificate) {
    echo 'File: ' . $certificate->getFilename() . "\n\n";
    echo $certificate->getContent() . "\n\n";
}

The Versions

11/07 2018

dev-master

9999999-dev

Certum SimplySign Client

  Sources   Download

The Requires

 

11/07 2018
20/03 2018
20/03 2018
04/01 2018
04/01 2018