-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathdemo.php
35 lines (27 loc) · 1.01 KB
/
demo.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
#!/usr/bin/env php
<?php
use ekomobile\apiEko\BillingClient;
use ekomobile\apiEko\ServiceCategory;
use ekomobile\apiEko\ServiceCategoryRequest;
use ekomobile\apiEko\ServiceCategoryResponse;
use Grpc\ChannelCredentials;
require(__DIR__ . '/vendor/autoload.php');
// Configure SSL credentials
$cert = file_get_contents(getenv('EKO_API_CLIENT_CERT'));
$credentials = ChannelCredentials::createSsl(null, $cert, $cert);
// Create gRPC client
$client = new BillingClient(getenv('EKO_API_ADDRESS'), ['credentials' => $credentials]);
// Form gRPC request
$request = new ServiceCategoryRequest();
// Make request and wait for response
/** @var ServiceCategoryResponse $response */
[$response, $status] = $client->ServiceCategory($request)->wait();
// Check response status
if ($status->code !== \Grpc\STATUS_OK) {
throw new \Exception($status->details);
}
// Output results
/** @var ServiceCategory $category */
foreach ($response->getCategories() as $category) {
print_r("{$category->getId()} : {$category->getName()} \n");
}