bda-matt/adobe-sign-php
0.2.1
2021-01-12 16:48 UTC
Requires
- php: >=5.6.0
- bda-matt/oauth2-adobe-sign: ^0.1.9
Requires (Dev)
- mikey179/vfsstream: ^1.6
- mockery/mockery: ^0.9.5
- phpunit/phpunit: ^5.4
README
https://acrobat.adobe.com/us/en/sign.html
安装
要安装,请使用 composer
composer require BDA-Matt/adobe-sign-php
文档
https://secure.na1.echosign.com/public/docs/restapi/v5
示例用法
session_start(); $provider = new KevinEm\OAuth2\Client\AdobeSign([ 'clientId' => 'your_client_id', 'clientSecret' => 'your_client_secret', 'redirectUri' => 'your_callback', 'scope' => [ 'scope1:type', 'scope2:type' ] ]); $adobeSign = new AdobeSign($provider); if (!isset($_GET['code'])) { $authorizationUrl = $adobeSign->getAuthorizationUrl(); $_SESSION['oauth2state'] = $provider->getState(); header('Location: ' . $authorizationUrl); } elseif (empty($_GET['state']) || ($_GET['state'] !== $_SESSION['oauth2state'])) { unset($_SESSION['oauth2state']); exit('Invalid state'); } else { $accessToken = $adobeSign->getAccessToken($_GET['code']); $adobeSign->setAccessToken($accessToken->getToken()); $adobeSign->createAgreement([ 'documentCreationInfo' => [ 'fileInfos' => [ 'libraryDocumentId' => 'your_library_document_id' ], 'name' => 'My Document', 'signatureType' => 'ESIGN', 'recipientSetInfos' => [ 'recipientSetMemberInfos' => [ 'email' => 'test@gmail.com' ], 'recipientSetRole' => [ 'SIGNER' ] ], 'mergeFieldInfo' => [ [ 'fieldName' => 'Name', 'defaultValue' => 'John Doe' ] ], 'signatureFlow' => 'SENDER_SIGNATURE_NOT_REQUIRED' ] ]); }
生成用于临时文档上传的多部分流
感谢 @trip-somers 提供的 解决方案。
$file_path = '/path/to/local/document'; $file_stream = Psr7\FnStream::decorate(Psr7\stream_for(file_get_contents($file_path)), [ 'getMetadata' => function() use ($file_path) { return $file_path; } ]); $multipart_stream = new Psr7\MultipartStream([ [ 'name' => 'File', 'contents' => $file_stream ] ]); $transient_document = $adobeSign->uploadTransientDocument($multipart_stream);
许可证
MIT 许可证 (MIT) 版权所有 (c) 2016 Kevin Em
在此特此授予任何人免费获得本软件及其相关文档文件(“软件”)的副本的权利,以无限制地处理该软件,包括但不限于使用、复制、修改、合并、发布、分发、再许可和/或出售软件的副本,并允许向软件提供副本的个人执行上述操作,前提是遵守以下条件
上述版权声明和本许可声明应包含在软件的所有副本或主要部分中。
本软件按“原样”提供,不提供任何明示或暗示的保证,包括但不限于适销性、适用于特定用途和非侵权性保证。在任何情况下,作者或版权所有者不应对任何索赔、损害或其他责任承担责任,无论这些责任是基于合同、侵权或其他方式,无论这些责任是否源于、与软件或其使用或以其他方式有关。