diff --git a/.openapi-generator/FILES b/.openapi-generator/FILES
index 187d492..2bc81b2 100644
--- a/.openapi-generator/FILES
+++ b/.openapi-generator/FILES
@@ -26,6 +26,7 @@ docs/Model/CallDirection.md
docs/Model/CallEndedReason.md
docs/Model/CallList.md
docs/Model/CallResult.md
+docs/Model/CallResultAllOfSubresourceUris.md
docs/Model/CallStatus.md
docs/Model/CallStatusWebhook.md
docs/Model/Capabilities.md
@@ -187,6 +188,7 @@ lib/Model/CallDirection.php
lib/Model/CallEndedReason.php
lib/Model/CallList.php
lib/Model/CallResult.php
+lib/Model/CallResultAllOfSubresourceUris.php
lib/Model/CallStatus.php
lib/Model/CallStatusWebhook.php
lib/Model/Capabilities.php
@@ -346,6 +348,7 @@ test/Model/CallControlWebhookTest.php
test/Model/CallDirectionTest.php
test/Model/CallEndedReasonTest.php
test/Model/CallListTest.php
+test/Model/CallResultAllOfSubresourceUrisTest.php
test/Model/CallResultTest.php
test/Model/CallStatusTest.php
test/Model/CallStatusWebhookTest.php
diff --git a/CHANGELOG.md b/CHANGELOG.md
index b344bb8..86c3c69 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -9,6 +9,15 @@ This project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.htm
None
+
+
+## [5.3.1] - 2026-03-04
+
+### Added
+
+- New parameters for fetching recordings (start time and end time)
+- Audio Streaming feature
+
## [5.3.0] - 2025-10-21
diff --git a/README.md b/README.md
index 6f5e9d8..c81dfe3 100644
--- a/README.md
+++ b/README.md
@@ -214,6 +214,7 @@ Class | Method | HTTP request | Description
- [CallEndedReason](docs/Model/CallEndedReason.md)
- [CallList](docs/Model/CallList.md)
- [CallResult](docs/Model/CallResult.md)
+- [CallResultAllOfSubresourceUris](docs/Model/CallResultAllOfSubresourceUris.md)
- [CallStatus](docs/Model/CallStatus.md)
- [CallStatusWebhook](docs/Model/CallStatusWebhook.md)
- [Capabilities](docs/Model/Capabilities.md)
@@ -374,6 +375,6 @@ support@freeclimb.com
This PHP package is automatically generated by the [OpenAPI Generator](https://openapi-generator.tech) project:
- API version: `1.0.0`
- - Package version: `5.3.0`
+ - Package version: `5.3.1`
- Generator version: `7.9.0`
- Build package: `org.openapitools.codegen.languages.PhpClientCodegen`
diff --git a/composer.json b/composer.json
index a6e6a27..c4bb1a6 100644
--- a/composer.json
+++ b/composer.json
@@ -1,6 +1,6 @@
{
"name": "freeclimbapi/php-sdk",
- "version": "5.3.0",
+ "version": "5.3.1",
"description": "FreeClimb is a cloud-based application programming interface (API) that puts the power of the Vail platform in your hands. FreeClimb simplifies the process of creating applications that can use a full range of telephony features without requiring specialized or on-site telephony equipment. Using the FreeClimb REST API to write applications is easy! You have the option to use the language of your choice or hit the API directly. Your application can execute a command by issuing a RESTful request to the FreeClimb API. The base URL to send HTTP requests to the FreeClimb REST API is: /apiserver. FreeClimb authenticates and processes your request.",
"keywords": [
"openapitools",
diff --git a/composer.lock b/composer.lock
index da221c5..9a48411 100644
--- a/composer.lock
+++ b/composer.lock
@@ -4,7 +4,7 @@
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
"This file is @generated automatically"
],
- "content-hash": "24af19a245afebf1e7149f8e4f5e9f1a",
+ "content-hash": "30cdbcf1463d1c364022892c953ed261",
"packages": [
{
"name": "guzzlehttp/guzzle",
@@ -892,30 +892,29 @@
},
{
"name": "doctrine/instantiator",
- "version": "2.0.0",
+ "version": "2.1.0",
"source": {
"type": "git",
"url": "https://github.com/doctrine/instantiator.git",
- "reference": "c6222283fa3f4ac679f8b9ced9a4e23f163e80d0"
+ "reference": "23da848e1a2308728fe5fdddabf4be17ff9720c7"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/doctrine/instantiator/zipball/c6222283fa3f4ac679f8b9ced9a4e23f163e80d0",
- "reference": "c6222283fa3f4ac679f8b9ced9a4e23f163e80d0",
+ "url": "https://api.github.com/repos/doctrine/instantiator/zipball/23da848e1a2308728fe5fdddabf4be17ff9720c7",
+ "reference": "23da848e1a2308728fe5fdddabf4be17ff9720c7",
"shasum": ""
},
"require": {
- "php": "^8.1"
+ "php": "^8.4"
},
"require-dev": {
- "doctrine/coding-standard": "^11",
+ "doctrine/coding-standard": "^14",
"ext-pdo": "*",
"ext-phar": "*",
"phpbench/phpbench": "^1.2",
- "phpstan/phpstan": "^1.9.4",
- "phpstan/phpstan-phpunit": "^1.3",
- "phpunit/phpunit": "^9.5.27",
- "vimeo/psalm": "^5.4"
+ "phpstan/phpstan": "^2.1",
+ "phpstan/phpstan-phpunit": "^2.0",
+ "phpunit/phpunit": "^10.5.58"
},
"type": "library",
"autoload": {
@@ -942,7 +941,7 @@
],
"support": {
"issues": "https://github.com/doctrine/instantiator/issues",
- "source": "https://github.com/doctrine/instantiator/tree/2.0.0"
+ "source": "https://github.com/doctrine/instantiator/tree/2.1.0"
},
"funding": [
{
@@ -958,7 +957,7 @@
"type": "tidelift"
}
],
- "time": "2022-12-30T00:23:10+00:00"
+ "time": "2026-01-05T06:47:08+00:00"
},
{
"name": "evenement/evenement",
@@ -1070,16 +1069,16 @@
},
{
"name": "friendsofphp/php-cs-fixer",
- "version": "v3.89.1",
+ "version": "v3.94.2",
"source": {
"type": "git",
"url": "https://github.com/PHP-CS-Fixer/PHP-CS-Fixer.git",
- "reference": "f34967da2866ace090a2b447de1f357356474573"
+ "reference": "7787ceff91365ba7d623ec410b8f429cdebb4f63"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/PHP-CS-Fixer/PHP-CS-Fixer/zipball/f34967da2866ace090a2b447de1f357356474573",
- "reference": "f34967da2866ace090a2b447de1f357356474573",
+ "url": "https://api.github.com/repos/PHP-CS-Fixer/PHP-CS-Fixer/zipball/7787ceff91365ba7d623ec410b8f429cdebb4f63",
+ "reference": "7787ceff91365ba7d623ec410b8f429cdebb4f63",
"shasum": ""
},
"require": {
@@ -1096,31 +1095,32 @@
"react/event-loop": "^1.5",
"react/socket": "^1.16",
"react/stream": "^1.4",
- "sebastian/diff": "^4.0.6 || ^5.1.1 || ^6.0.2 || ^7.0",
- "symfony/console": "^5.4.47 || ^6.4.24 || ^7.0",
- "symfony/event-dispatcher": "^5.4.45 || ^6.4.24 || ^7.0",
- "symfony/filesystem": "^5.4.45 || ^6.4.24 || ^7.0",
- "symfony/finder": "^5.4.45 || ^6.4.24 || ^7.0",
- "symfony/options-resolver": "^5.4.45 || ^6.4.24 || ^7.0",
+ "sebastian/diff": "^4.0.6 || ^5.1.1 || ^6.0.2 || ^7.0 || ^8.0",
+ "symfony/console": "^5.4.47 || ^6.4.24 || ^7.0 || ^8.0",
+ "symfony/event-dispatcher": "^5.4.45 || ^6.4.24 || ^7.0 || ^8.0",
+ "symfony/filesystem": "^5.4.45 || ^6.4.24 || ^7.0 || ^8.0",
+ "symfony/finder": "^5.4.45 || ^6.4.24 || ^7.0 || ^8.0",
+ "symfony/options-resolver": "^5.4.45 || ^6.4.24 || ^7.0 || ^8.0",
"symfony/polyfill-mbstring": "^1.33",
"symfony/polyfill-php80": "^1.33",
"symfony/polyfill-php81": "^1.33",
"symfony/polyfill-php84": "^1.33",
- "symfony/process": "^5.4.47 || ^6.4.24 || ^7.2",
- "symfony/stopwatch": "^5.4.45 || ^6.4.24 || ^7.0"
+ "symfony/process": "^5.4.47 || ^6.4.24 || ^7.2 || ^8.0",
+ "symfony/stopwatch": "^5.4.45 || ^6.4.24 || ^7.0 || ^8.0"
},
"require-dev": {
- "facile-it/paraunit": "^1.3.1 || ^2.7",
- "infection/infection": "^0.31.0",
- "justinrainbow/json-schema": "^6.5",
- "keradus/cli-executor": "^2.2",
+ "facile-it/paraunit": "^1.3.1 || ^2.7.1",
+ "infection/infection": "^0.32.3",
+ "justinrainbow/json-schema": "^6.6.4",
+ "keradus/cli-executor": "^2.3",
"mikey179/vfsstream": "^1.6.12",
- "php-coveralls/php-coveralls": "^2.8",
- "php-cs-fixer/phpunit-constraint-isidenticalstring": "^1.6",
- "php-cs-fixer/phpunit-constraint-xmlmatchesxsd": "^1.6",
- "phpunit/phpunit": "^9.6.25 || ^10.5.53 || ^11.5.34",
- "symfony/var-dumper": "^5.4.48 || ^6.4.24 || ^7.3.2",
- "symfony/yaml": "^5.4.45 || ^6.4.24 || ^7.3.2"
+ "php-coveralls/php-coveralls": "^2.9.1",
+ "php-cs-fixer/phpunit-constraint-isidenticalstring": "^1.7",
+ "php-cs-fixer/phpunit-constraint-xmlmatchesxsd": "^1.7",
+ "phpunit/phpunit": "^9.6.34 || ^10.5.63 || ^11.5.51",
+ "symfony/polyfill-php85": "^1.33",
+ "symfony/var-dumper": "^5.4.48 || ^6.4.32 || ^7.4.4 || ^8.0.4",
+ "symfony/yaml": "^5.4.45 || ^6.4.30 || ^7.4.1 || ^8.0.1"
},
"suggest": {
"ext-dom": "For handling output formats in XML",
@@ -1135,7 +1135,7 @@
"PhpCsFixer\\": "src/"
},
"exclude-from-classmap": [
- "src/Fixer/Internal/*"
+ "src/**/Internal/"
]
},
"notification-url": "https://packagist.org/downloads/",
@@ -1161,7 +1161,7 @@
],
"support": {
"issues": "https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/issues",
- "source": "https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/tree/v3.89.1"
+ "source": "https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/tree/v3.94.2"
},
"funding": [
{
@@ -1169,7 +1169,7 @@
"type": "github"
}
],
- "time": "2025-10-24T12:05:10+00:00"
+ "time": "2026-02-20T16:13:53+00:00"
},
{
"name": "myclabs/deep-copy",
@@ -1233,16 +1233,16 @@
},
{
"name": "nikic/php-parser",
- "version": "v5.6.2",
+ "version": "v5.7.0",
"source": {
"type": "git",
"url": "https://github.com/nikic/PHP-Parser.git",
- "reference": "3a454ca033b9e06b63282ce19562e892747449bb"
+ "reference": "dca41cd15c2ac9d055ad70dbfd011130757d1f82"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/3a454ca033b9e06b63282ce19562e892747449bb",
- "reference": "3a454ca033b9e06b63282ce19562e892747449bb",
+ "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/dca41cd15c2ac9d055ad70dbfd011130757d1f82",
+ "reference": "dca41cd15c2ac9d055ad70dbfd011130757d1f82",
"shasum": ""
},
"require": {
@@ -1285,9 +1285,9 @@
],
"support": {
"issues": "https://github.com/nikic/PHP-Parser/issues",
- "source": "https://github.com/nikic/PHP-Parser/tree/v5.6.2"
+ "source": "https://github.com/nikic/PHP-Parser/tree/v5.7.0"
},
- "time": "2025-10-21T19:32:17+00:00"
+ "time": "2025-12-06T11:56:16+00:00"
},
{
"name": "phar-io/manifest",
@@ -1728,16 +1728,16 @@
},
{
"name": "phpunit/phpunit",
- "version": "9.6.29",
+ "version": "9.6.34",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/phpunit.git",
- "reference": "9ecfec57835a5581bc888ea7e13b51eb55ab9dd3"
+ "reference": "b36f02317466907a230d3aa1d34467041271ef4a"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/9ecfec57835a5581bc888ea7e13b51eb55ab9dd3",
- "reference": "9ecfec57835a5581bc888ea7e13b51eb55ab9dd3",
+ "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/b36f02317466907a230d3aa1d34467041271ef4a",
+ "reference": "b36f02317466907a230d3aa1d34467041271ef4a",
"shasum": ""
},
"require": {
@@ -1759,7 +1759,7 @@
"phpunit/php-timer": "^5.0.3",
"sebastian/cli-parser": "^1.0.2",
"sebastian/code-unit": "^1.0.8",
- "sebastian/comparator": "^4.0.9",
+ "sebastian/comparator": "^4.0.10",
"sebastian/diff": "^4.0.6",
"sebastian/environment": "^5.1.5",
"sebastian/exporter": "^4.0.8",
@@ -1811,7 +1811,7 @@
"support": {
"issues": "https://github.com/sebastianbergmann/phpunit/issues",
"security": "https://github.com/sebastianbergmann/phpunit/security/policy",
- "source": "https://github.com/sebastianbergmann/phpunit/tree/9.6.29"
+ "source": "https://github.com/sebastianbergmann/phpunit/tree/9.6.34"
},
"funding": [
{
@@ -1835,7 +1835,7 @@
"type": "tidelift"
}
],
- "time": "2025-09-24T06:29:11+00:00"
+ "time": "2026-01-27T05:45:00+00:00"
},
{
"name": "psr/container",
@@ -2064,16 +2064,16 @@
},
{
"name": "react/child-process",
- "version": "v0.6.6",
+ "version": "v0.6.7",
"source": {
"type": "git",
"url": "https://github.com/reactphp/child-process.git",
- "reference": "1721e2b93d89b745664353b9cfc8f155ba8a6159"
+ "reference": "970f0e71945556422ee4570ccbabaedc3cf04ad3"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/reactphp/child-process/zipball/1721e2b93d89b745664353b9cfc8f155ba8a6159",
- "reference": "1721e2b93d89b745664353b9cfc8f155ba8a6159",
+ "url": "https://api.github.com/repos/reactphp/child-process/zipball/970f0e71945556422ee4570ccbabaedc3cf04ad3",
+ "reference": "970f0e71945556422ee4570ccbabaedc3cf04ad3",
"shasum": ""
},
"require": {
@@ -2127,7 +2127,7 @@
],
"support": {
"issues": "https://github.com/reactphp/child-process/issues",
- "source": "https://github.com/reactphp/child-process/tree/v0.6.6"
+ "source": "https://github.com/reactphp/child-process/tree/v0.6.7"
},
"funding": [
{
@@ -2135,20 +2135,20 @@
"type": "open_collective"
}
],
- "time": "2025-01-01T16:37:48+00:00"
+ "time": "2025-12-23T15:25:20+00:00"
},
{
"name": "react/dns",
- "version": "v1.13.0",
+ "version": "v1.14.0",
"source": {
"type": "git",
"url": "https://github.com/reactphp/dns.git",
- "reference": "eb8ae001b5a455665c89c1df97f6fb682f8fb0f5"
+ "reference": "7562c05391f42701c1fccf189c8225fece1cd7c3"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/reactphp/dns/zipball/eb8ae001b5a455665c89c1df97f6fb682f8fb0f5",
- "reference": "eb8ae001b5a455665c89c1df97f6fb682f8fb0f5",
+ "url": "https://api.github.com/repos/reactphp/dns/zipball/7562c05391f42701c1fccf189c8225fece1cd7c3",
+ "reference": "7562c05391f42701c1fccf189c8225fece1cd7c3",
"shasum": ""
},
"require": {
@@ -2203,7 +2203,7 @@
],
"support": {
"issues": "https://github.com/reactphp/dns/issues",
- "source": "https://github.com/reactphp/dns/tree/v1.13.0"
+ "source": "https://github.com/reactphp/dns/tree/v1.14.0"
},
"funding": [
{
@@ -2211,20 +2211,20 @@
"type": "open_collective"
}
],
- "time": "2024-06-13T14:18:03+00:00"
+ "time": "2025-11-18T19:34:28+00:00"
},
{
"name": "react/event-loop",
- "version": "v1.5.0",
+ "version": "v1.6.0",
"source": {
"type": "git",
"url": "https://github.com/reactphp/event-loop.git",
- "reference": "bbe0bd8c51ffc05ee43f1729087ed3bdf7d53354"
+ "reference": "ba276bda6083df7e0050fd9b33f66ad7a4ac747a"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/reactphp/event-loop/zipball/bbe0bd8c51ffc05ee43f1729087ed3bdf7d53354",
- "reference": "bbe0bd8c51ffc05ee43f1729087ed3bdf7d53354",
+ "url": "https://api.github.com/repos/reactphp/event-loop/zipball/ba276bda6083df7e0050fd9b33f66ad7a4ac747a",
+ "reference": "ba276bda6083df7e0050fd9b33f66ad7a4ac747a",
"shasum": ""
},
"require": {
@@ -2275,7 +2275,7 @@
],
"support": {
"issues": "https://github.com/reactphp/event-loop/issues",
- "source": "https://github.com/reactphp/event-loop/tree/v1.5.0"
+ "source": "https://github.com/reactphp/event-loop/tree/v1.6.0"
},
"funding": [
{
@@ -2283,7 +2283,7 @@
"type": "open_collective"
}
],
- "time": "2023-11-13T13:48:05+00:00"
+ "time": "2025-11-17T20:46:25+00:00"
},
{
"name": "react/promise",
@@ -2360,16 +2360,16 @@
},
{
"name": "react/socket",
- "version": "v1.16.0",
+ "version": "v1.17.0",
"source": {
"type": "git",
"url": "https://github.com/reactphp/socket.git",
- "reference": "23e4ff33ea3e160d2d1f59a0e6050e4b0fb0eac1"
+ "reference": "ef5b17b81f6f60504c539313f94f2d826c5faa08"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/reactphp/socket/zipball/23e4ff33ea3e160d2d1f59a0e6050e4b0fb0eac1",
- "reference": "23e4ff33ea3e160d2d1f59a0e6050e4b0fb0eac1",
+ "url": "https://api.github.com/repos/reactphp/socket/zipball/ef5b17b81f6f60504c539313f94f2d826c5faa08",
+ "reference": "ef5b17b81f6f60504c539313f94f2d826c5faa08",
"shasum": ""
},
"require": {
@@ -2428,7 +2428,7 @@
],
"support": {
"issues": "https://github.com/reactphp/socket/issues",
- "source": "https://github.com/reactphp/socket/tree/v1.16.0"
+ "source": "https://github.com/reactphp/socket/tree/v1.17.0"
},
"funding": [
{
@@ -2436,7 +2436,7 @@
"type": "open_collective"
}
],
- "time": "2024-07-26T10:38:09+00:00"
+ "time": "2025-11-19T20:47:34+00:00"
},
{
"name": "react/stream",
@@ -2685,16 +2685,16 @@
},
{
"name": "sebastian/comparator",
- "version": "4.0.9",
+ "version": "4.0.10",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/comparator.git",
- "reference": "67a2df3a62639eab2cc5906065e9805d4fd5dfc5"
+ "reference": "e4df00b9b3571187db2831ae9aada2c6efbd715d"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/comparator/zipball/67a2df3a62639eab2cc5906065e9805d4fd5dfc5",
- "reference": "67a2df3a62639eab2cc5906065e9805d4fd5dfc5",
+ "url": "https://api.github.com/repos/sebastianbergmann/comparator/zipball/e4df00b9b3571187db2831ae9aada2c6efbd715d",
+ "reference": "e4df00b9b3571187db2831ae9aada2c6efbd715d",
"shasum": ""
},
"require": {
@@ -2747,7 +2747,7 @@
],
"support": {
"issues": "https://github.com/sebastianbergmann/comparator/issues",
- "source": "https://github.com/sebastianbergmann/comparator/tree/4.0.9"
+ "source": "https://github.com/sebastianbergmann/comparator/tree/4.0.10"
},
"funding": [
{
@@ -2767,7 +2767,7 @@
"type": "tidelift"
}
],
- "time": "2025-08-10T06:51:50+00:00"
+ "time": "2026-01-24T09:22:56+00:00"
},
{
"name": "sebastian/complexity",
@@ -3529,47 +3529,39 @@
},
{
"name": "symfony/console",
- "version": "v7.3.4",
+ "version": "v8.0.6",
"source": {
"type": "git",
"url": "https://github.com/symfony/console.git",
- "reference": "2b9c5fafbac0399a20a2e82429e2bd735dcfb7db"
+ "reference": "488285876e807a4777f074041d8bb508623419fa"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/console/zipball/2b9c5fafbac0399a20a2e82429e2bd735dcfb7db",
- "reference": "2b9c5fafbac0399a20a2e82429e2bd735dcfb7db",
+ "url": "https://api.github.com/repos/symfony/console/zipball/488285876e807a4777f074041d8bb508623419fa",
+ "reference": "488285876e807a4777f074041d8bb508623419fa",
"shasum": ""
},
"require": {
- "php": ">=8.2",
- "symfony/deprecation-contracts": "^2.5|^3",
- "symfony/polyfill-mbstring": "~1.0",
+ "php": ">=8.4",
+ "symfony/polyfill-mbstring": "^1.0",
"symfony/service-contracts": "^2.5|^3",
- "symfony/string": "^7.2"
- },
- "conflict": {
- "symfony/dependency-injection": "<6.4",
- "symfony/dotenv": "<6.4",
- "symfony/event-dispatcher": "<6.4",
- "symfony/lock": "<6.4",
- "symfony/process": "<6.4"
+ "symfony/string": "^7.4|^8.0"
},
"provide": {
"psr/log-implementation": "1.0|2.0|3.0"
},
"require-dev": {
"psr/log": "^1|^2|^3",
- "symfony/config": "^6.4|^7.0",
- "symfony/dependency-injection": "^6.4|^7.0",
- "symfony/event-dispatcher": "^6.4|^7.0",
- "symfony/http-foundation": "^6.4|^7.0",
- "symfony/http-kernel": "^6.4|^7.0",
- "symfony/lock": "^6.4|^7.0",
- "symfony/messenger": "^6.4|^7.0",
- "symfony/process": "^6.4|^7.0",
- "symfony/stopwatch": "^6.4|^7.0",
- "symfony/var-dumper": "^6.4|^7.0"
+ "symfony/config": "^7.4|^8.0",
+ "symfony/dependency-injection": "^7.4|^8.0",
+ "symfony/event-dispatcher": "^7.4|^8.0",
+ "symfony/http-foundation": "^7.4|^8.0",
+ "symfony/http-kernel": "^7.4|^8.0",
+ "symfony/lock": "^7.4|^8.0",
+ "symfony/messenger": "^7.4|^8.0",
+ "symfony/process": "^7.4|^8.0",
+ "symfony/stopwatch": "^7.4|^8.0",
+ "symfony/var-dumper": "^7.4|^8.0"
},
"type": "library",
"autoload": {
@@ -3603,7 +3595,7 @@
"terminal"
],
"support": {
- "source": "https://github.com/symfony/console/tree/v7.3.4"
+ "source": "https://github.com/symfony/console/tree/v8.0.6"
},
"funding": [
{
@@ -3623,28 +3615,28 @@
"type": "tidelift"
}
],
- "time": "2025-09-22T15:31:00+00:00"
+ "time": "2026-02-25T16:59:43+00:00"
},
{
"name": "symfony/event-dispatcher",
- "version": "v7.3.3",
+ "version": "v8.0.4",
"source": {
"type": "git",
"url": "https://github.com/symfony/event-dispatcher.git",
- "reference": "b7dc69e71de420ac04bc9ab830cf3ffebba48191"
+ "reference": "99301401da182b6cfaa4700dbe9987bb75474b47"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/b7dc69e71de420ac04bc9ab830cf3ffebba48191",
- "reference": "b7dc69e71de420ac04bc9ab830cf3ffebba48191",
+ "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/99301401da182b6cfaa4700dbe9987bb75474b47",
+ "reference": "99301401da182b6cfaa4700dbe9987bb75474b47",
"shasum": ""
},
"require": {
- "php": ">=8.2",
+ "php": ">=8.4",
"symfony/event-dispatcher-contracts": "^2.5|^3"
},
"conflict": {
- "symfony/dependency-injection": "<6.4",
+ "symfony/security-http": "<7.4",
"symfony/service-contracts": "<2.5"
},
"provide": {
@@ -3653,13 +3645,14 @@
},
"require-dev": {
"psr/log": "^1|^2|^3",
- "symfony/config": "^6.4|^7.0",
- "symfony/dependency-injection": "^6.4|^7.0",
- "symfony/error-handler": "^6.4|^7.0",
- "symfony/expression-language": "^6.4|^7.0",
- "symfony/http-foundation": "^6.4|^7.0",
+ "symfony/config": "^7.4|^8.0",
+ "symfony/dependency-injection": "^7.4|^8.0",
+ "symfony/error-handler": "^7.4|^8.0",
+ "symfony/expression-language": "^7.4|^8.0",
+ "symfony/framework-bundle": "^7.4|^8.0",
+ "symfony/http-foundation": "^7.4|^8.0",
"symfony/service-contracts": "^2.5|^3",
- "symfony/stopwatch": "^6.4|^7.0"
+ "symfony/stopwatch": "^7.4|^8.0"
},
"type": "library",
"autoload": {
@@ -3687,7 +3680,7 @@
"description": "Provides tools that allow your application components to communicate with each other by dispatching events and listening to them",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/event-dispatcher/tree/v7.3.3"
+ "source": "https://github.com/symfony/event-dispatcher/tree/v8.0.4"
},
"funding": [
{
@@ -3707,7 +3700,7 @@
"type": "tidelift"
}
],
- "time": "2025-08-13T11:49:31+00:00"
+ "time": "2026-01-05T11:45:55+00:00"
},
{
"name": "symfony/event-dispatcher-contracts",
@@ -3787,25 +3780,25 @@
},
{
"name": "symfony/filesystem",
- "version": "v7.3.2",
+ "version": "v8.0.6",
"source": {
"type": "git",
"url": "https://github.com/symfony/filesystem.git",
- "reference": "edcbb768a186b5c3f25d0643159a787d3e63b7fd"
+ "reference": "7bf9162d7a0dff98d079b72948508fa48018a770"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/filesystem/zipball/edcbb768a186b5c3f25d0643159a787d3e63b7fd",
- "reference": "edcbb768a186b5c3f25d0643159a787d3e63b7fd",
+ "url": "https://api.github.com/repos/symfony/filesystem/zipball/7bf9162d7a0dff98d079b72948508fa48018a770",
+ "reference": "7bf9162d7a0dff98d079b72948508fa48018a770",
"shasum": ""
},
"require": {
- "php": ">=8.2",
+ "php": ">=8.4",
"symfony/polyfill-ctype": "~1.8",
"symfony/polyfill-mbstring": "~1.8"
},
"require-dev": {
- "symfony/process": "^6.4|^7.0"
+ "symfony/process": "^7.4|^8.0"
},
"type": "library",
"autoload": {
@@ -3833,7 +3826,7 @@
"description": "Provides basic utilities for the filesystem",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/filesystem/tree/v7.3.2"
+ "source": "https://github.com/symfony/filesystem/tree/v8.0.6"
},
"funding": [
{
@@ -3853,27 +3846,27 @@
"type": "tidelift"
}
],
- "time": "2025-07-07T08:17:47+00:00"
+ "time": "2026-02-25T16:59:43+00:00"
},
{
"name": "symfony/finder",
- "version": "v7.3.2",
+ "version": "v8.0.6",
"source": {
"type": "git",
"url": "https://github.com/symfony/finder.git",
- "reference": "2a6614966ba1074fa93dae0bc804227422df4dfe"
+ "reference": "441404f09a54de6d1bd6ad219e088cdf4c91f97c"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/finder/zipball/2a6614966ba1074fa93dae0bc804227422df4dfe",
- "reference": "2a6614966ba1074fa93dae0bc804227422df4dfe",
+ "url": "https://api.github.com/repos/symfony/finder/zipball/441404f09a54de6d1bd6ad219e088cdf4c91f97c",
+ "reference": "441404f09a54de6d1bd6ad219e088cdf4c91f97c",
"shasum": ""
},
"require": {
- "php": ">=8.2"
+ "php": ">=8.4"
},
"require-dev": {
- "symfony/filesystem": "^6.4|^7.0"
+ "symfony/filesystem": "^7.4|^8.0"
},
"type": "library",
"autoload": {
@@ -3901,7 +3894,7 @@
"description": "Finds files and directories via an intuitive fluent interface",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/finder/tree/v7.3.2"
+ "source": "https://github.com/symfony/finder/tree/v8.0.6"
},
"funding": [
{
@@ -3921,24 +3914,24 @@
"type": "tidelift"
}
],
- "time": "2025-07-15T13:41:35+00:00"
+ "time": "2026-01-29T09:41:02+00:00"
},
{
"name": "symfony/options-resolver",
- "version": "v7.3.3",
+ "version": "v8.0.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/options-resolver.git",
- "reference": "0ff2f5c3df08a395232bbc3c2eb7e84912df911d"
+ "reference": "d2b592535ffa6600c265a3893a7f7fd2bad82dd7"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/options-resolver/zipball/0ff2f5c3df08a395232bbc3c2eb7e84912df911d",
- "reference": "0ff2f5c3df08a395232bbc3c2eb7e84912df911d",
+ "url": "https://api.github.com/repos/symfony/options-resolver/zipball/d2b592535ffa6600c265a3893a7f7fd2bad82dd7",
+ "reference": "d2b592535ffa6600c265a3893a7f7fd2bad82dd7",
"shasum": ""
},
"require": {
- "php": ">=8.2",
+ "php": ">=8.4",
"symfony/deprecation-contracts": "^2.5|^3"
},
"type": "library",
@@ -3972,7 +3965,7 @@
"options"
],
"support": {
- "source": "https://github.com/symfony/options-resolver/tree/v7.3.3"
+ "source": "https://github.com/symfony/options-resolver/tree/v8.0.0"
},
"funding": [
{
@@ -3992,7 +3985,7 @@
"type": "tidelift"
}
],
- "time": "2025-08-05T10:16:07+00:00"
+ "time": "2025-11-12T15:55:31+00:00"
},
{
"name": "symfony/polyfill-ctype",
@@ -4575,20 +4568,20 @@
},
{
"name": "symfony/process",
- "version": "v7.3.4",
+ "version": "v8.0.5",
"source": {
"type": "git",
"url": "https://github.com/symfony/process.git",
- "reference": "f24f8f316367b30810810d4eb30c543d7003ff3b"
+ "reference": "b5f3aa6762e33fd95efbaa2ec4f4bc9fdd16d674"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/process/zipball/f24f8f316367b30810810d4eb30c543d7003ff3b",
- "reference": "f24f8f316367b30810810d4eb30c543d7003ff3b",
+ "url": "https://api.github.com/repos/symfony/process/zipball/b5f3aa6762e33fd95efbaa2ec4f4bc9fdd16d674",
+ "reference": "b5f3aa6762e33fd95efbaa2ec4f4bc9fdd16d674",
"shasum": ""
},
"require": {
- "php": ">=8.2"
+ "php": ">=8.4"
},
"type": "library",
"autoload": {
@@ -4616,7 +4609,7 @@
"description": "Executes commands in sub-processes",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/process/tree/v7.3.4"
+ "source": "https://github.com/symfony/process/tree/v8.0.5"
},
"funding": [
{
@@ -4636,20 +4629,20 @@
"type": "tidelift"
}
],
- "time": "2025-09-11T10:12:26+00:00"
+ "time": "2026-01-26T15:08:38+00:00"
},
{
"name": "symfony/service-contracts",
- "version": "v3.6.0",
+ "version": "v3.6.1",
"source": {
"type": "git",
"url": "https://github.com/symfony/service-contracts.git",
- "reference": "f021b05a130d35510bd6b25fe9053c2a8a15d5d4"
+ "reference": "45112560a3ba2d715666a509a0bc9521d10b6c43"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/service-contracts/zipball/f021b05a130d35510bd6b25fe9053c2a8a15d5d4",
- "reference": "f021b05a130d35510bd6b25fe9053c2a8a15d5d4",
+ "url": "https://api.github.com/repos/symfony/service-contracts/zipball/45112560a3ba2d715666a509a0bc9521d10b6c43",
+ "reference": "45112560a3ba2d715666a509a0bc9521d10b6c43",
"shasum": ""
},
"require": {
@@ -4703,7 +4696,7 @@
"standards"
],
"support": {
- "source": "https://github.com/symfony/service-contracts/tree/v3.6.0"
+ "source": "https://github.com/symfony/service-contracts/tree/v3.6.1"
},
"funding": [
{
@@ -4714,29 +4707,33 @@
"url": "https://github.com/fabpot",
"type": "github"
},
+ {
+ "url": "https://github.com/nicolas-grekas",
+ "type": "github"
+ },
{
"url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
"type": "tidelift"
}
],
- "time": "2025-04-25T09:37:31+00:00"
+ "time": "2025-07-15T11:30:57+00:00"
},
{
"name": "symfony/stopwatch",
- "version": "v7.3.0",
+ "version": "v8.0.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/stopwatch.git",
- "reference": "5a49289e2b308214c8b9c2fda4ea454d8b8ad7cd"
+ "reference": "67df1914c6ccd2d7b52f70d40cf2aea02159d942"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/stopwatch/zipball/5a49289e2b308214c8b9c2fda4ea454d8b8ad7cd",
- "reference": "5a49289e2b308214c8b9c2fda4ea454d8b8ad7cd",
+ "url": "https://api.github.com/repos/symfony/stopwatch/zipball/67df1914c6ccd2d7b52f70d40cf2aea02159d942",
+ "reference": "67df1914c6ccd2d7b52f70d40cf2aea02159d942",
"shasum": ""
},
"require": {
- "php": ">=8.2",
+ "php": ">=8.4",
"symfony/service-contracts": "^2.5|^3"
},
"type": "library",
@@ -4765,7 +4762,7 @@
"description": "Provides a way to profile code",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/stopwatch/tree/v7.3.0"
+ "source": "https://github.com/symfony/stopwatch/tree/v8.0.0"
},
"funding": [
{
@@ -4776,43 +4773,47 @@
"url": "https://github.com/fabpot",
"type": "github"
},
+ {
+ "url": "https://github.com/nicolas-grekas",
+ "type": "github"
+ },
{
"url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
"type": "tidelift"
}
],
- "time": "2025-02-24T10:49:57+00:00"
+ "time": "2025-08-04T07:36:47+00:00"
},
{
"name": "symfony/string",
- "version": "v7.3.4",
+ "version": "v8.0.6",
"source": {
"type": "git",
"url": "https://github.com/symfony/string.git",
- "reference": "f96476035142921000338bad71e5247fbc138872"
+ "reference": "6c9e1108041b5dce21a9a4984b531c4923aa9ec4"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/string/zipball/f96476035142921000338bad71e5247fbc138872",
- "reference": "f96476035142921000338bad71e5247fbc138872",
+ "url": "https://api.github.com/repos/symfony/string/zipball/6c9e1108041b5dce21a9a4984b531c4923aa9ec4",
+ "reference": "6c9e1108041b5dce21a9a4984b531c4923aa9ec4",
"shasum": ""
},
"require": {
- "php": ">=8.2",
- "symfony/polyfill-ctype": "~1.8",
- "symfony/polyfill-intl-grapheme": "~1.0",
- "symfony/polyfill-intl-normalizer": "~1.0",
- "symfony/polyfill-mbstring": "~1.0"
+ "php": ">=8.4",
+ "symfony/polyfill-ctype": "^1.8",
+ "symfony/polyfill-intl-grapheme": "^1.33",
+ "symfony/polyfill-intl-normalizer": "^1.0",
+ "symfony/polyfill-mbstring": "^1.0"
},
"conflict": {
"symfony/translation-contracts": "<2.5"
},
"require-dev": {
- "symfony/emoji": "^7.1",
- "symfony/http-client": "^6.4|^7.0",
- "symfony/intl": "^6.4|^7.0",
+ "symfony/emoji": "^7.4|^8.0",
+ "symfony/http-client": "^7.4|^8.0",
+ "symfony/intl": "^7.4|^8.0",
"symfony/translation-contracts": "^2.5|^3.0",
- "symfony/var-exporter": "^6.4|^7.0"
+ "symfony/var-exporter": "^7.4|^8.0"
},
"type": "library",
"autoload": {
@@ -4851,7 +4852,7 @@
"utf8"
],
"support": {
- "source": "https://github.com/symfony/string/tree/v7.3.4"
+ "source": "https://github.com/symfony/string/tree/v8.0.6"
},
"funding": [
{
@@ -4871,20 +4872,20 @@
"type": "tidelift"
}
],
- "time": "2025-09-11T14:36:48+00:00"
+ "time": "2026-02-09T10:14:57+00:00"
},
{
"name": "theseer/tokenizer",
- "version": "1.2.3",
+ "version": "1.3.1",
"source": {
"type": "git",
"url": "https://github.com/theseer/tokenizer.git",
- "reference": "737eda637ed5e28c3413cb1ebe8bb52cbf1ca7a2"
+ "reference": "b7489ce515e168639d17feec34b8847c326b0b3c"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/theseer/tokenizer/zipball/737eda637ed5e28c3413cb1ebe8bb52cbf1ca7a2",
- "reference": "737eda637ed5e28c3413cb1ebe8bb52cbf1ca7a2",
+ "url": "https://api.github.com/repos/theseer/tokenizer/zipball/b7489ce515e168639d17feec34b8847c326b0b3c",
+ "reference": "b7489ce515e168639d17feec34b8847c326b0b3c",
"shasum": ""
},
"require": {
@@ -4913,7 +4914,7 @@
"description": "A small library for converting tokenized PHP source code into XML and potentially other formats",
"support": {
"issues": "https://github.com/theseer/tokenizer/issues",
- "source": "https://github.com/theseer/tokenizer/tree/1.2.3"
+ "source": "https://github.com/theseer/tokenizer/tree/1.3.1"
},
"funding": [
{
@@ -4921,7 +4922,7 @@
"type": "github"
}
],
- "time": "2024-03-03T12:36:25+00:00"
+ "time": "2025-11-17T20:03:58+00:00"
}
],
"aliases": [],
diff --git a/docs/Api/DefaultApi.md b/docs/Api/DefaultApi.md
index 5a2af51..f104d58 100644
--- a/docs/Api/DefaultApi.md
+++ b/docs/Api/DefaultApi.md
@@ -2732,7 +2732,7 @@ try {
## `listCallRecordings()`
```php
-listCallRecordings($call_id, $date_created): \FreeClimb\Api\Model\RecordingList
+listCallRecordings($call_id, $date_created, $start_time, $end_time): \FreeClimb\Api\Model\RecordingList
```
List Call Recordings
@@ -2758,9 +2758,11 @@ $apiInstance = new FreeClimb\Api\Api\DefaultApi(
);
$call_id = 'call_id_example'; // string | String that uniquely identifies this call resource.
$date_created = 'date_created_example'; // string | Only show recordings created on the specified date, in the form *YYYY-MM-DD*.
+$start_time = 'start_time_example'; // string | Only show Recordings created at or after this time, given as YYYY-MM-DD hh:mm:ss.
+$end_time = 'end_time_example'; // string | Only show Recordings created at or before this time, given as YYYY-MM-DD hh:mm:ss.
try {
- $result = $apiInstance->listCallRecordings($call_id, $date_created);
+ $result = $apiInstance->listCallRecordings($call_id, $date_created, $start_time, $end_time);
print_r($result);
} catch (Exception $e) {
echo 'Exception when calling DefaultApi->listCallRecordings: ', $e->getMessage(), PHP_EOL;
@@ -2773,6 +2775,8 @@ try {
| ------------- | ------------- | ------------- | ------------- |
| **call_id** | **string**| String that uniquely identifies this call resource. | |
| **date_created** | **string**| Only show recordings created on the specified date, in the form *YYYY-MM-DD*. | [optional] |
+| **start_time** | **string**| Only show Recordings created at or after this time, given as YYYY-MM-DD hh:mm:ss. | [optional] |
+| **end_time** | **string**| Only show Recordings created at or before this time, given as YYYY-MM-DD hh:mm:ss. | [optional] |
### Return type
@@ -2794,7 +2798,7 @@ try {
## `listCalls()`
```php
-listCalls($active, $to, $from, $status, $start_time, $end_time, $parent_call_id, $application_id, $risk_score_min, $risk_score_max): \FreeClimb\Api\Model\CallList
+listCalls($used_audio_stream, $active, $to, $from, $status, $start_time, $end_time, $parent_call_id, $application_id, $risk_score_min, $risk_score_max, $web_rtc): \FreeClimb\Api\Model\CallList
```
List Calls
@@ -2818,6 +2822,7 @@ $apiInstance = new FreeClimb\Api\Api\DefaultApi(
new GuzzleHttp\Client(),
$config
);
+$used_audio_stream = false; // bool | If usedAudioStream is set to true then all calls that have a audioStreamDuration > 0 will be returned
$active = false; // bool | If active is set to true then all calls of the nature queued, ringing, inProgress are returned in the query.
$to = 'to_example'; // string | Only show Calls to this phone number.
$from = 'from_example'; // string | Only show Calls from this phone number.
@@ -2828,9 +2833,10 @@ $parent_call_id = 'parent_call_id_example'; // string | Only show Calls spawned
$application_id = array('application_id_example'); // string[] | Only show calls belonging to the given applicationId. This parameter can be repeated to return calls from multiple Applications.
$risk_score_min = 56; // int | The minimum riskScore that should be included in the list.
$risk_score_max = 56; // int | The maximum riskScore that should be included in the list.
+$web_rtc = false; // bool | Only show Calls that were originated via WebRTC.
try {
- $result = $apiInstance->listCalls($active, $to, $from, $status, $start_time, $end_time, $parent_call_id, $application_id, $risk_score_min, $risk_score_max);
+ $result = $apiInstance->listCalls($used_audio_stream, $active, $to, $from, $status, $start_time, $end_time, $parent_call_id, $application_id, $risk_score_min, $risk_score_max, $web_rtc);
print_r($result);
} catch (Exception $e) {
echo 'Exception when calling DefaultApi->listCalls: ', $e->getMessage(), PHP_EOL;
@@ -2841,6 +2847,7 @@ try {
| Name | Type | Description | Notes |
| ------------- | ------------- | ------------- | ------------- |
+| **used_audio_stream** | **bool**| If usedAudioStream is set to true then all calls that have a audioStreamDuration > 0 will be returned | [optional] [default to false] |
| **active** | **bool**| If active is set to true then all calls of the nature queued, ringing, inProgress are returned in the query. | [optional] [default to false] |
| **to** | **string**| Only show Calls to this phone number. | [optional] |
| **from** | **string**| Only show Calls from this phone number. | [optional] |
@@ -2851,6 +2858,7 @@ try {
| **application_id** | [**string[]**](../Model/string.md)| Only show calls belonging to the given applicationId. This parameter can be repeated to return calls from multiple Applications. | [optional] |
| **risk_score_min** | **int**| The minimum riskScore that should be included in the list. | [optional] |
| **risk_score_max** | **int**| The maximum riskScore that should be included in the list. | [optional] |
+| **web_rtc** | **bool**| Only show Calls that were originated via WebRTC. | [optional] [default to false] |
### Return type
@@ -2872,7 +2880,7 @@ try {
## `listConferenceRecordings()`
```php
-listConferenceRecordings($conference_id, $call_id, $date_created): \FreeClimb\Api\Model\RecordingList
+listConferenceRecordings($conference_id, $call_id, $date_created, $start_time, $end_time): \FreeClimb\Api\Model\RecordingList
```
List Conference Recordings
@@ -2899,9 +2907,11 @@ $apiInstance = new FreeClimb\Api\Api\DefaultApi(
$conference_id = 'conference_id_example'; // string | Show only Recordings made during the conference with this ID.
$call_id = 'call_id_example'; // string | Show only Recordings made during the Call with this ID.
$date_created = 'date_created_example'; // string | Only show Recordings created on this date, formatted as *YYYY-MM-DD*.
+$start_time = 'start_time_example'; // string | Only show Recordings created at or after this time, given as YYYY-MM-DD hh:mm:ss.
+$end_time = 'end_time_example'; // string | Only show Recordings created at or before this time, given as YYYY-MM-DD hh:mm:ss.
try {
- $result = $apiInstance->listConferenceRecordings($conference_id, $call_id, $date_created);
+ $result = $apiInstance->listConferenceRecordings($conference_id, $call_id, $date_created, $start_time, $end_time);
print_r($result);
} catch (Exception $e) {
echo 'Exception when calling DefaultApi->listConferenceRecordings: ', $e->getMessage(), PHP_EOL;
@@ -2915,6 +2925,8 @@ try {
| **conference_id** | **string**| Show only Recordings made during the conference with this ID. | |
| **call_id** | **string**| Show only Recordings made during the Call with this ID. | [optional] |
| **date_created** | **string**| Only show Recordings created on this date, formatted as *YYYY-MM-DD*. | [optional] |
+| **start_time** | **string**| Only show Recordings created at or after this time, given as YYYY-MM-DD hh:mm:ss. | [optional] |
+| **end_time** | **string**| Only show Recordings created at or before this time, given as YYYY-MM-DD hh:mm:ss. | [optional] |
### Return type
@@ -3276,7 +3288,7 @@ try {
## `listRecordings()`
```php
-listRecordings($call_id, $conference_id, $date_created): \FreeClimb\Api\Model\RecordingList
+listRecordings($call_id, $conference_id, $date_created, $start_time, $end_time): \FreeClimb\Api\Model\RecordingList
```
List Recordings
@@ -3303,9 +3315,11 @@ $apiInstance = new FreeClimb\Api\Api\DefaultApi(
$call_id = 'call_id_example'; // string | Show only Recordings made during the Call with this ID.
$conference_id = 'conference_id_example'; // string | Show only Recordings made during the conference with this ID.
$date_created = 'date_created_example'; // string | Only show Recordings created on this date, formatted as *YYYY-MM-DD*.
+$start_time = 'start_time_example'; // string | Only show Recordings created at or after this time, given as YYYY-MM-DD hh:mm:ss.
+$end_time = 'end_time_example'; // string | Only show Recordings created at or before this time, given as YYYY-MM-DD hh:mm:ss.
try {
- $result = $apiInstance->listRecordings($call_id, $conference_id, $date_created);
+ $result = $apiInstance->listRecordings($call_id, $conference_id, $date_created, $start_time, $end_time);
print_r($result);
} catch (Exception $e) {
echo 'Exception when calling DefaultApi->listRecordings: ', $e->getMessage(), PHP_EOL;
@@ -3319,6 +3333,8 @@ try {
| **call_id** | **string**| Show only Recordings made during the Call with this ID. | [optional] |
| **conference_id** | **string**| Show only Recordings made during the conference with this ID. | [optional] |
| **date_created** | **string**| Only show Recordings created on this date, formatted as *YYYY-MM-DD*. | [optional] |
+| **start_time** | **string**| Only show Recordings created at or after this time, given as YYYY-MM-DD hh:mm:ss. | [optional] |
+| **end_time** | **string**| Only show Recordings created at or before this time, given as YYYY-MM-DD hh:mm:ss. | [optional] |
### Return type
diff --git a/docs/Model/AvailableNumber.md b/docs/Model/AvailableNumber.md
index c704296..1ecf363 100644
--- a/docs/Model/AvailableNumber.md
+++ b/docs/Model/AvailableNumber.md
@@ -7,6 +7,7 @@ Name | Type | Description | Notes
**capabilities** | [**\FreeClimb\Api\Model\Capabilities**](Capabilities.md) | | [optional]
**campaign_id** | **string** | The campaign ID generated by the campaign registry | [optional]
**phone_number** | **string** | The phone number, in E.164 format (+ country code and phone number: +18003608245). | [optional]
+**alias** | **string** | A nicely-formatted version of the phone number. | [optional]
**region** | **string** | The state or province of this phone number. | [optional]
**country** | **string** | The country of this phone number. | [optional]
diff --git a/docs/Model/CallResult.md b/docs/Model/CallResult.md
index 1782590..ecc45bd 100644
--- a/docs/Model/CallResult.md
+++ b/docs/Model/CallResult.md
@@ -8,6 +8,8 @@ Name | Type | Description | Notes
**date_created** | **string** | The date that this resource was created (GMT) in RFC 1123 format (e.g., Mon, 15 Jun 2009 20:45:30 GMT). | [optional]
**date_updated** | **string** | The date that this resource was last updated (GMT) in RFC 1123 format (e.g., Mon, 15 Jun 2009 20:45:30 GMT). | [optional]
**revision** | **int** | Revision count for the resource. This count is set to 1 on creation and is incremented every time it is updated. | [optional]
+**date_created_iso** | **\DateTime** | The date that this resource was created in ISO 8601 format (e.g., 2022-01-01T00:00:00.000Z). | [optional]
+**date_updated_iso** | **\DateTime** | The date that this resource was last updated in ISO 8601 format (e.g., 2022-01-01T00:00:00.000Z). | [optional]
**call_id** | **string** | String that uniquely identifies this Call resource. | [optional]
**parent_call_id** | **string** | ID of the Call that created this leg (child Call). | [optional]
**account_id** | **string** | ID of the account that owns this Call. | [optional]
@@ -16,13 +18,19 @@ Name | Type | Description | Notes
**phone_number_id** | **string** | If the Call was inbound, this is the ID of the IncomingPhoneNumber that received the Call (DNIS). If the Call was outbound, this is the ID of the phone number from which the Call was placed (ANI). | [optional]
**status** | [**\FreeClimb\Api\Model\CallStatus**](CallStatus.md) | | [optional]
**start_time** | **string** | Start time of the Call (GMT) in RFC 1123 format (e.g., Mon, 15 Jun 2009 20:45:30 GMT). Empty if the Call has not yet been dialed. | [optional]
+**start_time_iso** | **\DateTime** | Start time of the Call in ISO 8601 format (e.g., 2022-01-01T00:00:00.000Z). Empty if the Call has not yet been dialed. | [optional]
**connect_time** | **string** | Time the Call was answered (GMT) in RFC 1123 format (e.g., Mon, 15 Jun 2009 20:45:30 GMT). Empty if the Call has not yet been dialed. | [optional]
+**connect_time_iso** | **\DateTime** | Time the Call was answered in ISO 8601 format (e.g., 2022-01-01T00:00:00.000Z). Empty if the Call has not yet been dialed. | [optional]
**end_time** | **string** | End time of the Call (GMT) in RFC 1123 format (e.g., Mon, 15 Jun 2009 20:45:30 GMT). Empty if the Call did not complete successfully. | [optional]
+**end_time_iso** | **\DateTime** | End time of the Call in ISO 8601 format (e.g., 2022-01-01T00:00:00.000Z). Empty if the Call did not complete successfully. | [optional]
**duration** | **int** | Total length of the Call in seconds. Measures time between startTime and endTime. This value is empty for busy, failed, unanswered or ongoing Calls. | [optional]
**connect_duration** | **int** | Length of time that the Call was connected in seconds. Measures time between connectTime and endTime. This value is empty for busy, failed, unanswered or ongoing Calls. | [optional]
+**audio_stream_duration** | **int** | Length of time that the Call used the audio stream in seconds. This value is empty or zero when the Call did not use the audio stream. | [optional]
**direction** | [**\FreeClimb\Api\Model\CallDirection**](CallDirection.md) | | [optional]
**answered_by** | [**\FreeClimb\Api\Model\AnsweredBy**](AnsweredBy.md) | | [optional]
-**subresource_uris** | **object** | The list of subresources for this Call. These include things like logs and recordings associated with the Call. | [optional]
+**caller_name** | **string** | The caller ID name (CNAM) for this Call. Empty if unavailable. | [optional]
+**web_rtc** | **bool** | Indicates whether this Call was initiated via WebRTC. | [optional]
+**subresource_uris** | [**\FreeClimb\Api\Model\CallResultAllOfSubresourceUris**](CallResultAllOfSubresourceUris.md) | | [optional]
**application_id** | **string** | ApplicationId associated with the Call. | [optional]
[[Back to Model list]](../../README.md#models) [[Back to API list]](../../README.md#endpoints) [[Back to README]](../../README.md)
diff --git a/docs/Model/CallResultAllOfSubresourceUris.md b/docs/Model/CallResultAllOfSubresourceUris.md
new file mode 100644
index 0000000..39bc698
--- /dev/null
+++ b/docs/Model/CallResultAllOfSubresourceUris.md
@@ -0,0 +1,10 @@
+# # CallResultAllOfSubresourceUris
+
+## Properties
+
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**logs** | **string** | The URI for the logs associated with this Call. | [optional]
+**recordings** | **string** | The URI for the recordings associated with this Call. | [optional]
+
+[[Back to Model list]](../../README.md#models) [[Back to API list]](../../README.md#endpoints) [[Back to README]](../../README.md)
diff --git a/docs/Model/QueueResult.md b/docs/Model/QueueResult.md
index 93673a9..4705c45 100644
--- a/docs/Model/QueueResult.md
+++ b/docs/Model/QueueResult.md
@@ -14,6 +14,7 @@ Name | Type | Description | Notes
**max_size** | **int** | The maximum number of Calls permitted in the Queue. Default is 100. Maximum is 1000. | [optional]
**current_size** | **int** | Count of Calls currently in the Queue. | [optional]
**average_queue_removal_time** | **int** | The average amount of time (in seconds) for a call to be removed from the queue. | [optional]
+**average_wait_time** | **int** | The average wait time (in seconds) of all Calls in the Queue. | [optional]
**subresource_uris** | **object** | List of subresources for this Queue (which includes Queue members). | [optional]
[[Back to Model list]](../../README.md#models) [[Back to API list]](../../README.md#endpoints) [[Back to README]](../../README.md)
diff --git a/lib/Api/DefaultApi.php b/lib/Api/DefaultApi.php
index c5063db..f8ff0aa 100644
--- a/lib/Api/DefaultApi.php
+++ b/lib/Api/DefaultApi.php
@@ -1040,7 +1040,7 @@ public function createAQueueWithHttpInfo($queue_request = null, string $contentT
switch ($statusCode) {
- case 200:
+ case 201:
if ('\FreeClimb\Api\Model\QueueResult' === '\SplFileObject') {
$content = $response->getBody(); //stream goes to serializer
} else {
@@ -1112,7 +1112,7 @@ public function createAQueueWithHttpInfo($queue_request = null, string $contentT
} catch (ApiException $e) {
switch ($e->getCode()) {
- case 200:
+ case 201:
$data = ObjectSerializer::deserialize(
$e->getResponseBody(),
'\FreeClimb\Api\Model\QueueResult',
@@ -15150,15 +15150,19 @@ public function listCallLogsRequest($call_id, string $contentType = self::conten
* @param string $date_created Only show recordings created on the specified date, in the form *YYYY-MM-DD*. (optional)
+ * @param string $start_time Only show Recordings created at or after this time, given as YYYY-MM-DD hh:mm:ss. (optional)
+
+ * @param string $end_time Only show Recordings created at or before this time, given as YYYY-MM-DD hh:mm:ss. (optional)
+
* @param string $contentType The value for the Content-Type header. Check self::contentTypes['listCallRecordings'] to see the possible values for this operation
*
* @throws \FreeClimb\Api\ApiException on non-2xx response or if the response body is not in the expected format
* @throws \InvalidArgumentException
* @return \FreeClimb\Api\Model\RecordingList
*/
- public function listCallRecordings($call_id, $date_created = null, string $contentType = self::contentTypes['listCallRecordings'][0])
+ public function listCallRecordings($call_id, $date_created = null, $start_time = null, $end_time = null, string $contentType = self::contentTypes['listCallRecordings'][0])
{
- list($response) = $this->listCallRecordingsWithHttpInfo($call_id, $date_created, $contentType);
+ list($response) = $this->listCallRecordingsWithHttpInfo($call_id, $date_created, $start_time, $end_time, $contentType);
return $response;
}
/**
@@ -15171,15 +15175,19 @@ public function listCallRecordings($call_id, $date_created = null, string $conte
* @param string $date_created Only show recordings created on the specified date, in the form *YYYY-MM-DD*. (optional)
+ * @param string $start_time Only show Recordings created at or after this time, given as YYYY-MM-DD hh:mm:ss. (optional)
+
+ * @param string $end_time Only show Recordings created at or before this time, given as YYYY-MM-DD hh:mm:ss. (optional)
+
* @param string $contentType The value for the Content-Type header. Check self::contentTypes['listCallRecordings'] to see the possible values for this operation
*
* @throws \FreeClimb\Api\ApiException on non-2xx response or if the response body is not in the expected format
* @throws \InvalidArgumentException
* @return array of \FreeClimb\Api\Model\RecordingList, HTTP status code, HTTP response headers (array of strings)
*/
- public function listCallRecordingsWithHttpInfo($call_id, $date_created = null, string $contentType = self::contentTypes['listCallRecordings'][0])
+ public function listCallRecordingsWithHttpInfo($call_id, $date_created = null, $start_time = null, $end_time = null, string $contentType = self::contentTypes['listCallRecordings'][0])
{
- $request = $this->listCallRecordingsRequest($call_id, $date_created, $contentType);
+ $request = $this->listCallRecordingsRequest($call_id, $date_created, $start_time, $end_time, $contentType);
try {
$options = $this->createHttpClientOption();
@@ -15300,14 +15308,18 @@ public function listCallRecordingsWithHttpInfo($call_id, $date_created = null, s
* @param string $date_created Only show recordings created on the specified date, in the form *YYYY-MM-DD*. (optional)
+ * @param string $start_time Only show Recordings created at or after this time, given as YYYY-MM-DD hh:mm:ss. (optional)
+
+ * @param string $end_time Only show Recordings created at or before this time, given as YYYY-MM-DD hh:mm:ss. (optional)
+
* @param string $contentType The value for the Content-Type header. Check self::contentTypes['listCallRecordings'] to see the possible values for this operation
*
* @throws \InvalidArgumentException
* @return \GuzzleHttp\Promise\PromiseInterface
*/
- public function listCallRecordingsAsync($call_id, $date_created = null, string $contentType = self::contentTypes['listCallRecordings'][0])
+ public function listCallRecordingsAsync($call_id, $date_created = null, $start_time = null, $end_time = null, string $contentType = self::contentTypes['listCallRecordings'][0])
{
- return $this->listCallRecordingsAsyncWithHttpInfo($call_id, $date_created, $contentType)
+ return $this->listCallRecordingsAsyncWithHttpInfo($call_id, $date_created, $start_time, $end_time, $contentType)
->then(
function ($response) {
return $response[0];
@@ -15325,15 +15337,19 @@ function ($response) {
* @param string $date_created Only show recordings created on the specified date, in the form *YYYY-MM-DD*. (optional)
+ * @param string $start_time Only show Recordings created at or after this time, given as YYYY-MM-DD hh:mm:ss. (optional)
+
+ * @param string $end_time Only show Recordings created at or before this time, given as YYYY-MM-DD hh:mm:ss. (optional)
+
* @param string $contentType The value for the Content-Type header. Check self::contentTypes['listCallRecordings'] to see the possible values for this operation
*
* @throws \InvalidArgumentException
* @return \GuzzleHttp\Promise\PromiseInterface
*/
- public function listCallRecordingsAsyncWithHttpInfo($call_id, $date_created = null, string $contentType = self::contentTypes['listCallRecordings'][0])
+ public function listCallRecordingsAsyncWithHttpInfo($call_id, $date_created = null, $start_time = null, $end_time = null, string $contentType = self::contentTypes['listCallRecordings'][0])
{
$returnType = '\FreeClimb\Api\Model\RecordingList';
- $request = $this->listCallRecordingsRequest($call_id, $date_created, $contentType);
+ $request = $this->listCallRecordingsRequest($call_id, $date_created, $start_time, $end_time, $contentType);
return $this->client
->sendAsync($request, $this->createHttpClientOption())
@@ -15379,12 +15395,16 @@ function ($exception) {
* @param string $date_created Only show recordings created on the specified date, in the form *YYYY-MM-DD*. (optional)
+ * @param string $start_time Only show Recordings created at or after this time, given as YYYY-MM-DD hh:mm:ss. (optional)
+
+ * @param string $end_time Only show Recordings created at or before this time, given as YYYY-MM-DD hh:mm:ss. (optional)
+
* @param string $contentType The value for the Content-Type header. Check self::contentTypes['listCallRecordings'] to see the possible values for this operation
*
* @throws \InvalidArgumentException
* @return \GuzzleHttp\Psr7\Request
*/
- public function listCallRecordingsRequest($call_id, $date_created = null, string $contentType = self::contentTypes['listCallRecordings'][0])
+ public function listCallRecordingsRequest($call_id, $date_created = null, $start_time = null, $end_time = null, string $contentType = self::contentTypes['listCallRecordings'][0])
{
$account_id = $this->config->getUsername();
@@ -15398,6 +15418,8 @@ public function listCallRecordingsRequest($call_id, $date_created = null, string
+
+
$resourcePath = '/Accounts/{accountId}/Calls/{callId}/Recordings';
$formParams = [];
$queryParams = [];
@@ -15414,6 +15436,24 @@ public function listCallRecordingsRequest($call_id, $date_created = null, string
true, // explode
false // required
) ?? []);
+ // query params
+ $queryParams = array_merge($queryParams, ObjectSerializer::toQueryValue(
+ $start_time,
+ 'startTime', // param base name
+ 'string', // openApiType
+ 'form', // style
+ true, // explode
+ false // required
+ ) ?? []);
+ // query params
+ $queryParams = array_merge($queryParams, ObjectSerializer::toQueryValue(
+ $end_time,
+ 'endTime', // param base name
+ 'string', // openApiType
+ 'form', // style
+ true, // explode
+ false // required
+ ) ?? []);
// path params
@@ -15497,6 +15537,8 @@ public function listCallRecordingsRequest($call_id, $date_created = null, string
* List Calls
*
+ * @param bool $used_audio_stream If usedAudioStream is set to true then all calls that have a audioStreamDuration > 0 will be returned (optional, default to false)
+
* @param bool $active If active is set to true then all calls of the nature queued, ringing, inProgress are returned in the query. (optional, default to false)
* @param string $to Only show Calls to this phone number. (optional)
@@ -15517,15 +15559,17 @@ public function listCallRecordingsRequest($call_id, $date_created = null, string
* @param int $risk_score_max The maximum riskScore that should be included in the list. (optional)
+ * @param bool $web_rtc Only show Calls that were originated via WebRTC. (optional, default to false)
+
* @param string $contentType The value for the Content-Type header. Check self::contentTypes['listCalls'] to see the possible values for this operation
*
* @throws \FreeClimb\Api\ApiException on non-2xx response or if the response body is not in the expected format
* @throws \InvalidArgumentException
* @return \FreeClimb\Api\Model\CallList
*/
- public function listCalls($active = false, $to = null, $from = null, $status = null, $start_time = null, $end_time = null, $parent_call_id = null, $application_id = null, $risk_score_min = null, $risk_score_max = null, string $contentType = self::contentTypes['listCalls'][0])
+ public function listCalls($used_audio_stream = false, $active = false, $to = null, $from = null, $status = null, $start_time = null, $end_time = null, $parent_call_id = null, $application_id = null, $risk_score_min = null, $risk_score_max = null, $web_rtc = false, string $contentType = self::contentTypes['listCalls'][0])
{
- list($response) = $this->listCallsWithHttpInfo($active, $to, $from, $status, $start_time, $end_time, $parent_call_id, $application_id, $risk_score_min, $risk_score_max, $contentType);
+ list($response) = $this->listCallsWithHttpInfo($used_audio_stream, $active, $to, $from, $status, $start_time, $end_time, $parent_call_id, $application_id, $risk_score_min, $risk_score_max, $web_rtc, $contentType);
return $response;
}
/**
@@ -15534,6 +15578,8 @@ public function listCalls($active = false, $to = null, $from = null, $status = n
* List Calls
*
+ * @param bool $used_audio_stream If usedAudioStream is set to true then all calls that have a audioStreamDuration > 0 will be returned (optional, default to false)
+
* @param bool $active If active is set to true then all calls of the nature queued, ringing, inProgress are returned in the query. (optional, default to false)
* @param string $to Only show Calls to this phone number. (optional)
@@ -15554,15 +15600,17 @@ public function listCalls($active = false, $to = null, $from = null, $status = n
* @param int $risk_score_max The maximum riskScore that should be included in the list. (optional)
+ * @param bool $web_rtc Only show Calls that were originated via WebRTC. (optional, default to false)
+
* @param string $contentType The value for the Content-Type header. Check self::contentTypes['listCalls'] to see the possible values for this operation
*
* @throws \FreeClimb\Api\ApiException on non-2xx response or if the response body is not in the expected format
* @throws \InvalidArgumentException
* @return array of \FreeClimb\Api\Model\CallList, HTTP status code, HTTP response headers (array of strings)
*/
- public function listCallsWithHttpInfo($active = false, $to = null, $from = null, $status = null, $start_time = null, $end_time = null, $parent_call_id = null, $application_id = null, $risk_score_min = null, $risk_score_max = null, string $contentType = self::contentTypes['listCalls'][0])
+ public function listCallsWithHttpInfo($used_audio_stream = false, $active = false, $to = null, $from = null, $status = null, $start_time = null, $end_time = null, $parent_call_id = null, $application_id = null, $risk_score_min = null, $risk_score_max = null, $web_rtc = false, string $contentType = self::contentTypes['listCalls'][0])
{
- $request = $this->listCallsRequest($active, $to, $from, $status, $start_time, $end_time, $parent_call_id, $application_id, $risk_score_min, $risk_score_max, $contentType);
+ $request = $this->listCallsRequest($used_audio_stream, $active, $to, $from, $status, $start_time, $end_time, $parent_call_id, $application_id, $risk_score_min, $risk_score_max, $web_rtc, $contentType);
try {
$options = $this->createHttpClientOption();
@@ -15679,6 +15727,8 @@ public function listCallsWithHttpInfo($active = false, $to = null, $from = null,
* List Calls
*
+ * @param bool $used_audio_stream If usedAudioStream is set to true then all calls that have a audioStreamDuration > 0 will be returned (optional, default to false)
+
* @param bool $active If active is set to true then all calls of the nature queued, ringing, inProgress are returned in the query. (optional, default to false)
* @param string $to Only show Calls to this phone number. (optional)
@@ -15699,14 +15749,16 @@ public function listCallsWithHttpInfo($active = false, $to = null, $from = null,
* @param int $risk_score_max The maximum riskScore that should be included in the list. (optional)
+ * @param bool $web_rtc Only show Calls that were originated via WebRTC. (optional, default to false)
+
* @param string $contentType The value for the Content-Type header. Check self::contentTypes['listCalls'] to see the possible values for this operation
*
* @throws \InvalidArgumentException
* @return \GuzzleHttp\Promise\PromiseInterface
*/
- public function listCallsAsync($active = false, $to = null, $from = null, $status = null, $start_time = null, $end_time = null, $parent_call_id = null, $application_id = null, $risk_score_min = null, $risk_score_max = null, string $contentType = self::contentTypes['listCalls'][0])
+ public function listCallsAsync($used_audio_stream = false, $active = false, $to = null, $from = null, $status = null, $start_time = null, $end_time = null, $parent_call_id = null, $application_id = null, $risk_score_min = null, $risk_score_max = null, $web_rtc = false, string $contentType = self::contentTypes['listCalls'][0])
{
- return $this->listCallsAsyncWithHttpInfo($active, $to, $from, $status, $start_time, $end_time, $parent_call_id, $application_id, $risk_score_min, $risk_score_max, $contentType)
+ return $this->listCallsAsyncWithHttpInfo($used_audio_stream, $active, $to, $from, $status, $start_time, $end_time, $parent_call_id, $application_id, $risk_score_min, $risk_score_max, $web_rtc, $contentType)
->then(
function ($response) {
return $response[0];
@@ -15720,6 +15772,8 @@ function ($response) {
* List Calls
*
+ * @param bool $used_audio_stream If usedAudioStream is set to true then all calls that have a audioStreamDuration > 0 will be returned (optional, default to false)
+
* @param bool $active If active is set to true then all calls of the nature queued, ringing, inProgress are returned in the query. (optional, default to false)
* @param string $to Only show Calls to this phone number. (optional)
@@ -15740,15 +15794,17 @@ function ($response) {
* @param int $risk_score_max The maximum riskScore that should be included in the list. (optional)
+ * @param bool $web_rtc Only show Calls that were originated via WebRTC. (optional, default to false)
+
* @param string $contentType The value for the Content-Type header. Check self::contentTypes['listCalls'] to see the possible values for this operation
*
* @throws \InvalidArgumentException
* @return \GuzzleHttp\Promise\PromiseInterface
*/
- public function listCallsAsyncWithHttpInfo($active = false, $to = null, $from = null, $status = null, $start_time = null, $end_time = null, $parent_call_id = null, $application_id = null, $risk_score_min = null, $risk_score_max = null, string $contentType = self::contentTypes['listCalls'][0])
+ public function listCallsAsyncWithHttpInfo($used_audio_stream = false, $active = false, $to = null, $from = null, $status = null, $start_time = null, $end_time = null, $parent_call_id = null, $application_id = null, $risk_score_min = null, $risk_score_max = null, $web_rtc = false, string $contentType = self::contentTypes['listCalls'][0])
{
$returnType = '\FreeClimb\Api\Model\CallList';
- $request = $this->listCallsRequest($active, $to, $from, $status, $start_time, $end_time, $parent_call_id, $application_id, $risk_score_min, $risk_score_max, $contentType);
+ $request = $this->listCallsRequest($used_audio_stream, $active, $to, $from, $status, $start_time, $end_time, $parent_call_id, $application_id, $risk_score_min, $risk_score_max, $web_rtc, $contentType);
return $this->client
->sendAsync($request, $this->createHttpClientOption())
@@ -15790,6 +15846,8 @@ function ($exception) {
* Create request for operation 'listCalls'
*
+ * @param bool $used_audio_stream If usedAudioStream is set to true then all calls that have a audioStreamDuration > 0 will be returned (optional, default to false)
+
* @param bool $active If active is set to true then all calls of the nature queued, ringing, inProgress are returned in the query. (optional, default to false)
* @param string $to Only show Calls to this phone number. (optional)
@@ -15810,12 +15868,14 @@ function ($exception) {
* @param int $risk_score_max The maximum riskScore that should be included in the list. (optional)
+ * @param bool $web_rtc Only show Calls that were originated via WebRTC. (optional, default to false)
+
* @param string $contentType The value for the Content-Type header. Check self::contentTypes['listCalls'] to see the possible values for this operation
*
* @throws \InvalidArgumentException
* @return \GuzzleHttp\Psr7\Request
*/
- public function listCallsRequest($active = false, $to = null, $from = null, $status = null, $start_time = null, $end_time = null, $parent_call_id = null, $application_id = null, $risk_score_min = null, $risk_score_max = null, string $contentType = self::contentTypes['listCalls'][0])
+ public function listCallsRequest($used_audio_stream = false, $active = false, $to = null, $from = null, $status = null, $start_time = null, $end_time = null, $parent_call_id = null, $application_id = null, $risk_score_min = null, $risk_score_max = null, $web_rtc = false, string $contentType = self::contentTypes['listCalls'][0])
{
$account_id = $this->config->getUsername();
@@ -15826,6 +15886,7 @@ public function listCallsRequest($active = false, $to = null, $from = null, $sta
+
if ($application_id !== null && count($application_id) > 16) {
throw new \InvalidArgumentException('invalid value for "$application_id" when calling DefaultApi.listCalls, number of items must be less than or equal to 16.');
}
@@ -15834,6 +15895,7 @@ public function listCallsRequest($active = false, $to = null, $from = null, $sta
+
$resourcePath = '/Accounts/{accountId}/Calls';
$formParams = [];
$queryParams = [];
@@ -15841,6 +15903,15 @@ public function listCallsRequest($active = false, $to = null, $from = null, $sta
$httpBody = '';
$multipart = false;
+ // query params
+ $queryParams = array_merge($queryParams, ObjectSerializer::toQueryValue(
+ $used_audio_stream,
+ 'usedAudioStream', // param base name
+ 'boolean', // openApiType
+ 'form', // style
+ true, // explode
+ false // required
+ ) ?? []);
// query params
$queryParams = array_merge($queryParams, ObjectSerializer::toQueryValue(
$active,
@@ -15931,6 +16002,15 @@ public function listCallsRequest($active = false, $to = null, $from = null, $sta
true, // explode
false // required
) ?? []);
+ // query params
+ $queryParams = array_merge($queryParams, ObjectSerializer::toQueryValue(
+ $web_rtc,
+ 'webRTC', // param base name
+ 'boolean', // openApiType
+ 'form', // style
+ true, // explode
+ false // required
+ ) ?? []);
// path params
@@ -16012,15 +16092,19 @@ public function listCallsRequest($active = false, $to = null, $from = null, $sta
* @param string $date_created Only show Recordings created on this date, formatted as *YYYY-MM-DD*. (optional)
+ * @param string $start_time Only show Recordings created at or after this time, given as YYYY-MM-DD hh:mm:ss. (optional)
+
+ * @param string $end_time Only show Recordings created at or before this time, given as YYYY-MM-DD hh:mm:ss. (optional)
+
* @param string $contentType The value for the Content-Type header. Check self::contentTypes['listConferenceRecordings'] to see the possible values for this operation
*
* @throws \FreeClimb\Api\ApiException on non-2xx response or if the response body is not in the expected format
* @throws \InvalidArgumentException
* @return \FreeClimb\Api\Model\RecordingList
*/
- public function listConferenceRecordings($conference_id, $call_id = null, $date_created = null, string $contentType = self::contentTypes['listConferenceRecordings'][0])
+ public function listConferenceRecordings($conference_id, $call_id = null, $date_created = null, $start_time = null, $end_time = null, string $contentType = self::contentTypes['listConferenceRecordings'][0])
{
- list($response) = $this->listConferenceRecordingsWithHttpInfo($conference_id, $call_id, $date_created, $contentType);
+ list($response) = $this->listConferenceRecordingsWithHttpInfo($conference_id, $call_id, $date_created, $start_time, $end_time, $contentType);
return $response;
}
/**
@@ -16035,15 +16119,19 @@ public function listConferenceRecordings($conference_id, $call_id = null, $date_
* @param string $date_created Only show Recordings created on this date, formatted as *YYYY-MM-DD*. (optional)
+ * @param string $start_time Only show Recordings created at or after this time, given as YYYY-MM-DD hh:mm:ss. (optional)
+
+ * @param string $end_time Only show Recordings created at or before this time, given as YYYY-MM-DD hh:mm:ss. (optional)
+
* @param string $contentType The value for the Content-Type header. Check self::contentTypes['listConferenceRecordings'] to see the possible values for this operation
*
* @throws \FreeClimb\Api\ApiException on non-2xx response or if the response body is not in the expected format
* @throws \InvalidArgumentException
* @return array of \FreeClimb\Api\Model\RecordingList, HTTP status code, HTTP response headers (array of strings)
*/
- public function listConferenceRecordingsWithHttpInfo($conference_id, $call_id = null, $date_created = null, string $contentType = self::contentTypes['listConferenceRecordings'][0])
+ public function listConferenceRecordingsWithHttpInfo($conference_id, $call_id = null, $date_created = null, $start_time = null, $end_time = null, string $contentType = self::contentTypes['listConferenceRecordings'][0])
{
- $request = $this->listConferenceRecordingsRequest($conference_id, $call_id, $date_created, $contentType);
+ $request = $this->listConferenceRecordingsRequest($conference_id, $call_id, $date_created, $start_time, $end_time, $contentType);
try {
$options = $this->createHttpClientOption();
@@ -16166,14 +16254,18 @@ public function listConferenceRecordingsWithHttpInfo($conference_id, $call_id =
* @param string $date_created Only show Recordings created on this date, formatted as *YYYY-MM-DD*. (optional)
+ * @param string $start_time Only show Recordings created at or after this time, given as YYYY-MM-DD hh:mm:ss. (optional)
+
+ * @param string $end_time Only show Recordings created at or before this time, given as YYYY-MM-DD hh:mm:ss. (optional)
+
* @param string $contentType The value for the Content-Type header. Check self::contentTypes['listConferenceRecordings'] to see the possible values for this operation
*
* @throws \InvalidArgumentException
* @return \GuzzleHttp\Promise\PromiseInterface
*/
- public function listConferenceRecordingsAsync($conference_id, $call_id = null, $date_created = null, string $contentType = self::contentTypes['listConferenceRecordings'][0])
+ public function listConferenceRecordingsAsync($conference_id, $call_id = null, $date_created = null, $start_time = null, $end_time = null, string $contentType = self::contentTypes['listConferenceRecordings'][0])
{
- return $this->listConferenceRecordingsAsyncWithHttpInfo($conference_id, $call_id, $date_created, $contentType)
+ return $this->listConferenceRecordingsAsyncWithHttpInfo($conference_id, $call_id, $date_created, $start_time, $end_time, $contentType)
->then(
function ($response) {
return $response[0];
@@ -16193,15 +16285,19 @@ function ($response) {
* @param string $date_created Only show Recordings created on this date, formatted as *YYYY-MM-DD*. (optional)
+ * @param string $start_time Only show Recordings created at or after this time, given as YYYY-MM-DD hh:mm:ss. (optional)
+
+ * @param string $end_time Only show Recordings created at or before this time, given as YYYY-MM-DD hh:mm:ss. (optional)
+
* @param string $contentType The value for the Content-Type header. Check self::contentTypes['listConferenceRecordings'] to see the possible values for this operation
*
* @throws \InvalidArgumentException
* @return \GuzzleHttp\Promise\PromiseInterface
*/
- public function listConferenceRecordingsAsyncWithHttpInfo($conference_id, $call_id = null, $date_created = null, string $contentType = self::contentTypes['listConferenceRecordings'][0])
+ public function listConferenceRecordingsAsyncWithHttpInfo($conference_id, $call_id = null, $date_created = null, $start_time = null, $end_time = null, string $contentType = self::contentTypes['listConferenceRecordings'][0])
{
$returnType = '\FreeClimb\Api\Model\RecordingList';
- $request = $this->listConferenceRecordingsRequest($conference_id, $call_id, $date_created, $contentType);
+ $request = $this->listConferenceRecordingsRequest($conference_id, $call_id, $date_created, $start_time, $end_time, $contentType);
return $this->client
->sendAsync($request, $this->createHttpClientOption())
@@ -16249,12 +16345,16 @@ function ($exception) {
* @param string $date_created Only show Recordings created on this date, formatted as *YYYY-MM-DD*. (optional)
+ * @param string $start_time Only show Recordings created at or after this time, given as YYYY-MM-DD hh:mm:ss. (optional)
+
+ * @param string $end_time Only show Recordings created at or before this time, given as YYYY-MM-DD hh:mm:ss. (optional)
+
* @param string $contentType The value for the Content-Type header. Check self::contentTypes['listConferenceRecordings'] to see the possible values for this operation
*
* @throws \InvalidArgumentException
* @return \GuzzleHttp\Psr7\Request
*/
- public function listConferenceRecordingsRequest($conference_id, $call_id = null, $date_created = null, string $contentType = self::contentTypes['listConferenceRecordings'][0])
+ public function listConferenceRecordingsRequest($conference_id, $call_id = null, $date_created = null, $start_time = null, $end_time = null, string $contentType = self::contentTypes['listConferenceRecordings'][0])
{
$account_id = $this->config->getUsername();
@@ -16269,6 +16369,8 @@ public function listConferenceRecordingsRequest($conference_id, $call_id = null,
+
+
$resourcePath = '/Accounts/{accountId}/Conferences/{conferenceId}/Recordings';
$formParams = [];
$queryParams = [];
@@ -16294,6 +16396,24 @@ public function listConferenceRecordingsRequest($conference_id, $call_id = null,
true, // explode
false // required
) ?? []);
+ // query params
+ $queryParams = array_merge($queryParams, ObjectSerializer::toQueryValue(
+ $start_time,
+ 'startTime', // param base name
+ 'string', // openApiType
+ 'form', // style
+ true, // explode
+ false // required
+ ) ?? []);
+ // query params
+ $queryParams = array_merge($queryParams, ObjectSerializer::toQueryValue(
+ $end_time,
+ 'endTime', // param base name
+ 'string', // openApiType
+ 'form', // style
+ true, // explode
+ false // required
+ ) ?? []);
// path params
@@ -18423,15 +18543,19 @@ public function listParticipantsRequest($conference_id, $talk = null, $listen =
* @param string $date_created Only show Recordings created on this date, formatted as *YYYY-MM-DD*. (optional)
+ * @param string $start_time Only show Recordings created at or after this time, given as YYYY-MM-DD hh:mm:ss. (optional)
+
+ * @param string $end_time Only show Recordings created at or before this time, given as YYYY-MM-DD hh:mm:ss. (optional)
+
* @param string $contentType The value for the Content-Type header. Check self::contentTypes['listRecordings'] to see the possible values for this operation
*
* @throws \FreeClimb\Api\ApiException on non-2xx response or if the response body is not in the expected format
* @throws \InvalidArgumentException
* @return \FreeClimb\Api\Model\RecordingList
*/
- public function listRecordings($call_id = null, $conference_id = null, $date_created = null, string $contentType = self::contentTypes['listRecordings'][0])
+ public function listRecordings($call_id = null, $conference_id = null, $date_created = null, $start_time = null, $end_time = null, string $contentType = self::contentTypes['listRecordings'][0])
{
- list($response) = $this->listRecordingsWithHttpInfo($call_id, $conference_id, $date_created, $contentType);
+ list($response) = $this->listRecordingsWithHttpInfo($call_id, $conference_id, $date_created, $start_time, $end_time, $contentType);
return $response;
}
/**
@@ -18446,15 +18570,19 @@ public function listRecordings($call_id = null, $conference_id = null, $date_cre
* @param string $date_created Only show Recordings created on this date, formatted as *YYYY-MM-DD*. (optional)
+ * @param string $start_time Only show Recordings created at or after this time, given as YYYY-MM-DD hh:mm:ss. (optional)
+
+ * @param string $end_time Only show Recordings created at or before this time, given as YYYY-MM-DD hh:mm:ss. (optional)
+
* @param string $contentType The value for the Content-Type header. Check self::contentTypes['listRecordings'] to see the possible values for this operation
*
* @throws \FreeClimb\Api\ApiException on non-2xx response or if the response body is not in the expected format
* @throws \InvalidArgumentException
* @return array of \FreeClimb\Api\Model\RecordingList, HTTP status code, HTTP response headers (array of strings)
*/
- public function listRecordingsWithHttpInfo($call_id = null, $conference_id = null, $date_created = null, string $contentType = self::contentTypes['listRecordings'][0])
+ public function listRecordingsWithHttpInfo($call_id = null, $conference_id = null, $date_created = null, $start_time = null, $end_time = null, string $contentType = self::contentTypes['listRecordings'][0])
{
- $request = $this->listRecordingsRequest($call_id, $conference_id, $date_created, $contentType);
+ $request = $this->listRecordingsRequest($call_id, $conference_id, $date_created, $start_time, $end_time, $contentType);
try {
$options = $this->createHttpClientOption();
@@ -18577,14 +18705,18 @@ public function listRecordingsWithHttpInfo($call_id = null, $conference_id = nul
* @param string $date_created Only show Recordings created on this date, formatted as *YYYY-MM-DD*. (optional)
+ * @param string $start_time Only show Recordings created at or after this time, given as YYYY-MM-DD hh:mm:ss. (optional)
+
+ * @param string $end_time Only show Recordings created at or before this time, given as YYYY-MM-DD hh:mm:ss. (optional)
+
* @param string $contentType The value for the Content-Type header. Check self::contentTypes['listRecordings'] to see the possible values for this operation
*
* @throws \InvalidArgumentException
* @return \GuzzleHttp\Promise\PromiseInterface
*/
- public function listRecordingsAsync($call_id = null, $conference_id = null, $date_created = null, string $contentType = self::contentTypes['listRecordings'][0])
+ public function listRecordingsAsync($call_id = null, $conference_id = null, $date_created = null, $start_time = null, $end_time = null, string $contentType = self::contentTypes['listRecordings'][0])
{
- return $this->listRecordingsAsyncWithHttpInfo($call_id, $conference_id, $date_created, $contentType)
+ return $this->listRecordingsAsyncWithHttpInfo($call_id, $conference_id, $date_created, $start_time, $end_time, $contentType)
->then(
function ($response) {
return $response[0];
@@ -18604,15 +18736,19 @@ function ($response) {
* @param string $date_created Only show Recordings created on this date, formatted as *YYYY-MM-DD*. (optional)
+ * @param string $start_time Only show Recordings created at or after this time, given as YYYY-MM-DD hh:mm:ss. (optional)
+
+ * @param string $end_time Only show Recordings created at or before this time, given as YYYY-MM-DD hh:mm:ss. (optional)
+
* @param string $contentType The value for the Content-Type header. Check self::contentTypes['listRecordings'] to see the possible values for this operation
*
* @throws \InvalidArgumentException
* @return \GuzzleHttp\Promise\PromiseInterface
*/
- public function listRecordingsAsyncWithHttpInfo($call_id = null, $conference_id = null, $date_created = null, string $contentType = self::contentTypes['listRecordings'][0])
+ public function listRecordingsAsyncWithHttpInfo($call_id = null, $conference_id = null, $date_created = null, $start_time = null, $end_time = null, string $contentType = self::contentTypes['listRecordings'][0])
{
$returnType = '\FreeClimb\Api\Model\RecordingList';
- $request = $this->listRecordingsRequest($call_id, $conference_id, $date_created, $contentType);
+ $request = $this->listRecordingsRequest($call_id, $conference_id, $date_created, $start_time, $end_time, $contentType);
return $this->client
->sendAsync($request, $this->createHttpClientOption())
@@ -18660,12 +18796,16 @@ function ($exception) {
* @param string $date_created Only show Recordings created on this date, formatted as *YYYY-MM-DD*. (optional)
+ * @param string $start_time Only show Recordings created at or after this time, given as YYYY-MM-DD hh:mm:ss. (optional)
+
+ * @param string $end_time Only show Recordings created at or before this time, given as YYYY-MM-DD hh:mm:ss. (optional)
+
* @param string $contentType The value for the Content-Type header. Check self::contentTypes['listRecordings'] to see the possible values for this operation
*
* @throws \InvalidArgumentException
* @return \GuzzleHttp\Psr7\Request
*/
- public function listRecordingsRequest($call_id = null, $conference_id = null, $date_created = null, string $contentType = self::contentTypes['listRecordings'][0])
+ public function listRecordingsRequest($call_id = null, $conference_id = null, $date_created = null, $start_time = null, $end_time = null, string $contentType = self::contentTypes['listRecordings'][0])
{
$account_id = $this->config->getUsername();
@@ -18674,6 +18814,8 @@ public function listRecordingsRequest($call_id = null, $conference_id = null, $d
+
+
$resourcePath = '/Accounts/{accountId}/Recordings';
$formParams = [];
$queryParams = [];
@@ -18708,6 +18850,24 @@ public function listRecordingsRequest($call_id = null, $conference_id = null, $d
true, // explode
false // required
) ?? []);
+ // query params
+ $queryParams = array_merge($queryParams, ObjectSerializer::toQueryValue(
+ $start_time,
+ 'startTime', // param base name
+ 'string', // openApiType
+ 'form', // style
+ true, // explode
+ false // required
+ ) ?? []);
+ // query params
+ $queryParams = array_merge($queryParams, ObjectSerializer::toQueryValue(
+ $end_time,
+ 'endTime', // param base name
+ 'string', // openApiType
+ 'form', // style
+ true, // explode
+ false // required
+ ) ?? []);
// path params
diff --git a/lib/Configuration.php b/lib/Configuration.php
index af3b45f..cda77dd 100644
--- a/lib/Configuration.php
+++ b/lib/Configuration.php
@@ -102,7 +102,7 @@ class Configuration
*
* @var string
*/
- protected $userAgent = 'OpenAPI-Generator/5.3.0/PHP';
+ protected $userAgent = 'OpenAPI-Generator/5.3.1/PHP';
/**
* Debug switch (default set to false)
@@ -435,7 +435,7 @@ public static function toDebugReport()
$report .= ' OS: ' . php_uname() . PHP_EOL;
$report .= ' PHP Version: ' . PHP_VERSION . PHP_EOL;
$report .= ' The version of the OpenAPI document: 1.0.0' . PHP_EOL;
- $report .= ' SDK Package Version: 5.3.0' . PHP_EOL;
+ $report .= ' SDK Package Version: 5.3.1' . PHP_EOL;
$report .= ' Temp Folder Path: ' . self::getDefaultConfiguration()->getTempFolderPath() . PHP_EOL;
return $report;
diff --git a/lib/Model/AvailableNumber.php b/lib/Model/AvailableNumber.php
index 6b0d6ff..e864856 100644
--- a/lib/Model/AvailableNumber.php
+++ b/lib/Model/AvailableNumber.php
@@ -62,6 +62,7 @@ class AvailableNumber implements ModelInterface, ArrayAccess, \JsonSerializable
'capabilities' => '\FreeClimb\Api\Model\Capabilities',
'campaign_id' => 'string',
'phone_number' => 'string',
+ 'alias' => 'string',
'region' => 'string',
'country' => 'string'
];
@@ -77,6 +78,7 @@ class AvailableNumber implements ModelInterface, ArrayAccess, \JsonSerializable
'capabilities' => null,
'campaign_id' => null,
'phone_number' => null,
+ 'alias' => null,
'region' => null,
'country' => null
];
@@ -90,6 +92,7 @@ class AvailableNumber implements ModelInterface, ArrayAccess, \JsonSerializable
'capabilities' => false,
'campaign_id' => true,
'phone_number' => true,
+ 'alias' => true,
'region' => true,
'country' => true
];
@@ -183,6 +186,7 @@ public function isNullableSetToNull(string $property): bool
'capabilities' => 'capabilities',
'campaign_id' => 'campaignId',
'phone_number' => 'phoneNumber',
+ 'alias' => 'alias',
'region' => 'region',
'country' => 'country'
];
@@ -196,6 +200,7 @@ public function isNullableSetToNull(string $property): bool
'capabilities' => 'setCapabilities',
'campaign_id' => 'setCampaignId',
'phone_number' => 'setPhoneNumber',
+ 'alias' => 'setAlias',
'region' => 'setRegion',
'country' => 'setCountry'
];
@@ -209,6 +214,7 @@ public function isNullableSetToNull(string $property): bool
'capabilities' => 'getCapabilities',
'campaign_id' => 'getCampaignId',
'phone_number' => 'getPhoneNumber',
+ 'alias' => 'getAlias',
'region' => 'getRegion',
'country' => 'getCountry'
];
@@ -273,6 +279,7 @@ public function __construct(?array $data = null)
$this->setIfExists('capabilities', $data ?? [], null);
$this->setIfExists('campaign_id', $data ?? [], null);
$this->setIfExists('phone_number', $data ?? [], null);
+ $this->setIfExists('alias', $data ?? [], null);
$this->setIfExists('region', $data ?? [], null);
$this->setIfExists('country', $data ?? [], null);
}
@@ -414,6 +421,40 @@ public function setPhoneNumber($phone_number)
return $this;
}
+ /**
+ * Gets alias
+ *
+ * @return string|null
+ */
+ public function getAlias()
+ {
+ return $this->container['alias'];
+ }
+
+ /**
+ * Sets alias
+ *
+ * @param string|null $alias A nicely-formatted version of the phone number.
+ *
+ * @return self
+ */
+ public function setAlias($alias)
+ {
+ if (is_null($alias)) {
+ array_push($this->openAPINullablesSetToNull, 'alias');
+ } else {
+ $nullablesSetToNull = $this->getOpenAPINullablesSetToNull();
+ $index = array_search('alias', $nullablesSetToNull, true);
+ if ($index !== false) {
+ unset($nullablesSetToNull[$index]);
+ $this->setOpenAPINullablesSetToNull($nullablesSetToNull);
+ }
+ }
+ $this->container['alias'] = $alias;
+
+ return $this;
+ }
+
/**
* Gets region
*
diff --git a/lib/Model/CallResult.php b/lib/Model/CallResult.php
index fe19c7e..f95dec6 100644
--- a/lib/Model/CallResult.php
+++ b/lib/Model/CallResult.php
@@ -63,6 +63,8 @@ class CallResult implements ModelInterface, ArrayAccess, \JsonSerializable
'date_created' => 'string',
'date_updated' => 'string',
'revision' => 'int',
+ 'date_created_iso' => '\DateTime',
+ 'date_updated_iso' => '\DateTime',
'call_id' => 'string',
'parent_call_id' => 'string',
'account_id' => 'string',
@@ -71,13 +73,19 @@ class CallResult implements ModelInterface, ArrayAccess, \JsonSerializable
'phone_number_id' => 'string',
'status' => '\FreeClimb\Api\Model\CallStatus',
'start_time' => 'string',
+ 'start_time_iso' => '\DateTime',
'connect_time' => 'string',
+ 'connect_time_iso' => '\DateTime',
'end_time' => 'string',
+ 'end_time_iso' => '\DateTime',
'duration' => 'int',
'connect_duration' => 'int',
+ 'audio_stream_duration' => 'int',
'direction' => '\FreeClimb\Api\Model\CallDirection',
'answered_by' => '\FreeClimb\Api\Model\AnsweredBy',
- 'subresource_uris' => 'object',
+ 'caller_name' => 'string',
+ 'web_rtc' => 'bool',
+ 'subresource_uris' => '\FreeClimb\Api\Model\CallResultAllOfSubresourceUris',
'application_id' => 'string'
];
@@ -93,6 +101,8 @@ class CallResult implements ModelInterface, ArrayAccess, \JsonSerializable
'date_created' => null,
'date_updated' => null,
'revision' => null,
+ 'date_created_iso' => 'date-time',
+ 'date_updated_iso' => 'date-time',
'call_id' => null,
'parent_call_id' => null,
'account_id' => null,
@@ -101,12 +111,18 @@ class CallResult implements ModelInterface, ArrayAccess, \JsonSerializable
'phone_number_id' => null,
'status' => null,
'start_time' => null,
+ 'start_time_iso' => 'date-time',
'connect_time' => null,
+ 'connect_time_iso' => 'date-time',
'end_time' => null,
+ 'end_time_iso' => 'date-time',
'duration' => null,
'connect_duration' => null,
+ 'audio_stream_duration' => null,
'direction' => null,
'answered_by' => null,
+ 'caller_name' => null,
+ 'web_rtc' => null,
'subresource_uris' => null,
'application_id' => null
];
@@ -121,6 +137,8 @@ class CallResult implements ModelInterface, ArrayAccess, \JsonSerializable
'date_created' => false,
'date_updated' => false,
'revision' => false,
+ 'date_created_iso' => true,
+ 'date_updated_iso' => true,
'call_id' => true,
'parent_call_id' => true,
'account_id' => true,
@@ -129,12 +147,18 @@ class CallResult implements ModelInterface, ArrayAccess, \JsonSerializable
'phone_number_id' => true,
'status' => true,
'start_time' => true,
+ 'start_time_iso' => true,
'connect_time' => true,
+ 'connect_time_iso' => true,
'end_time' => true,
+ 'end_time_iso' => true,
'duration' => true,
'connect_duration' => true,
+ 'audio_stream_duration' => true,
'direction' => true,
'answered_by' => true,
+ 'caller_name' => true,
+ 'web_rtc' => true,
'subresource_uris' => true,
'application_id' => true
];
@@ -229,6 +253,8 @@ public function isNullableSetToNull(string $property): bool
'date_created' => 'dateCreated',
'date_updated' => 'dateUpdated',
'revision' => 'revision',
+ 'date_created_iso' => 'dateCreatedISO',
+ 'date_updated_iso' => 'dateUpdatedISO',
'call_id' => 'callId',
'parent_call_id' => 'parentCallId',
'account_id' => 'accountId',
@@ -237,12 +263,18 @@ public function isNullableSetToNull(string $property): bool
'phone_number_id' => 'phoneNumberId',
'status' => 'status',
'start_time' => 'startTime',
+ 'start_time_iso' => 'startTimeISO',
'connect_time' => 'connectTime',
+ 'connect_time_iso' => 'connectTimeISO',
'end_time' => 'endTime',
+ 'end_time_iso' => 'endTimeISO',
'duration' => 'duration',
'connect_duration' => 'connectDuration',
+ 'audio_stream_duration' => 'audioStreamDuration',
'direction' => 'direction',
'answered_by' => 'answeredBy',
+ 'caller_name' => 'callerName',
+ 'web_rtc' => 'webRTC',
'subresource_uris' => 'subresourceUris',
'application_id' => 'applicationId'
];
@@ -257,6 +289,8 @@ public function isNullableSetToNull(string $property): bool
'date_created' => 'setDateCreated',
'date_updated' => 'setDateUpdated',
'revision' => 'setRevision',
+ 'date_created_iso' => 'setDateCreatedIso',
+ 'date_updated_iso' => 'setDateUpdatedIso',
'call_id' => 'setCallId',
'parent_call_id' => 'setParentCallId',
'account_id' => 'setAccountId',
@@ -265,12 +299,18 @@ public function isNullableSetToNull(string $property): bool
'phone_number_id' => 'setPhoneNumberId',
'status' => 'setStatus',
'start_time' => 'setStartTime',
+ 'start_time_iso' => 'setStartTimeIso',
'connect_time' => 'setConnectTime',
+ 'connect_time_iso' => 'setConnectTimeIso',
'end_time' => 'setEndTime',
+ 'end_time_iso' => 'setEndTimeIso',
'duration' => 'setDuration',
'connect_duration' => 'setConnectDuration',
+ 'audio_stream_duration' => 'setAudioStreamDuration',
'direction' => 'setDirection',
'answered_by' => 'setAnsweredBy',
+ 'caller_name' => 'setCallerName',
+ 'web_rtc' => 'setWebRtc',
'subresource_uris' => 'setSubresourceUris',
'application_id' => 'setApplicationId'
];
@@ -285,6 +325,8 @@ public function isNullableSetToNull(string $property): bool
'date_created' => 'getDateCreated',
'date_updated' => 'getDateUpdated',
'revision' => 'getRevision',
+ 'date_created_iso' => 'getDateCreatedIso',
+ 'date_updated_iso' => 'getDateUpdatedIso',
'call_id' => 'getCallId',
'parent_call_id' => 'getParentCallId',
'account_id' => 'getAccountId',
@@ -293,12 +335,18 @@ public function isNullableSetToNull(string $property): bool
'phone_number_id' => 'getPhoneNumberId',
'status' => 'getStatus',
'start_time' => 'getStartTime',
+ 'start_time_iso' => 'getStartTimeIso',
'connect_time' => 'getConnectTime',
+ 'connect_time_iso' => 'getConnectTimeIso',
'end_time' => 'getEndTime',
+ 'end_time_iso' => 'getEndTimeIso',
'duration' => 'getDuration',
'connect_duration' => 'getConnectDuration',
+ 'audio_stream_duration' => 'getAudioStreamDuration',
'direction' => 'getDirection',
'answered_by' => 'getAnsweredBy',
+ 'caller_name' => 'getCallerName',
+ 'web_rtc' => 'getWebRtc',
'subresource_uris' => 'getSubresourceUris',
'application_id' => 'getApplicationId'
];
@@ -364,6 +412,8 @@ public function __construct(?array $data = null)
$this->setIfExists('date_created', $data ?? [], null);
$this->setIfExists('date_updated', $data ?? [], null);
$this->setIfExists('revision', $data ?? [], null);
+ $this->setIfExists('date_created_iso', $data ?? [], null);
+ $this->setIfExists('date_updated_iso', $data ?? [], null);
$this->setIfExists('call_id', $data ?? [], null);
$this->setIfExists('parent_call_id', $data ?? [], null);
$this->setIfExists('account_id', $data ?? [], null);
@@ -372,12 +422,18 @@ public function __construct(?array $data = null)
$this->setIfExists('phone_number_id', $data ?? [], null);
$this->setIfExists('status', $data ?? [], null);
$this->setIfExists('start_time', $data ?? [], null);
+ $this->setIfExists('start_time_iso', $data ?? [], null);
$this->setIfExists('connect_time', $data ?? [], null);
+ $this->setIfExists('connect_time_iso', $data ?? [], null);
$this->setIfExists('end_time', $data ?? [], null);
+ $this->setIfExists('end_time_iso', $data ?? [], null);
$this->setIfExists('duration', $data ?? [], null);
$this->setIfExists('connect_duration', $data ?? [], null);
+ $this->setIfExists('audio_stream_duration', $data ?? [], null);
$this->setIfExists('direction', $data ?? [], null);
$this->setIfExists('answered_by', $data ?? [], null);
+ $this->setIfExists('caller_name', $data ?? [], null);
+ $this->setIfExists('web_rtc', $data ?? [], null);
$this->setIfExists('subresource_uris', $data ?? [], null);
$this->setIfExists('application_id', $data ?? [], null);
}
@@ -532,6 +588,74 @@ public function setRevision($revision)
return $this;
}
+ /**
+ * Gets date_created_iso
+ *
+ * @return \DateTime|null
+ */
+ public function getDateCreatedIso()
+ {
+ return $this->container['date_created_iso'];
+ }
+
+ /**
+ * Sets date_created_iso
+ *
+ * @param \DateTime|null $date_created_iso The date that this resource was created in ISO 8601 format (e.g., 2022-01-01T00:00:00.000Z).
+ *
+ * @return self
+ */
+ public function setDateCreatedIso($date_created_iso)
+ {
+ if (is_null($date_created_iso)) {
+ array_push($this->openAPINullablesSetToNull, 'date_created_iso');
+ } else {
+ $nullablesSetToNull = $this->getOpenAPINullablesSetToNull();
+ $index = array_search('date_created_iso', $nullablesSetToNull, true);
+ if ($index !== false) {
+ unset($nullablesSetToNull[$index]);
+ $this->setOpenAPINullablesSetToNull($nullablesSetToNull);
+ }
+ }
+ $this->container['date_created_iso'] = $date_created_iso;
+
+ return $this;
+ }
+
+ /**
+ * Gets date_updated_iso
+ *
+ * @return \DateTime|null
+ */
+ public function getDateUpdatedIso()
+ {
+ return $this->container['date_updated_iso'];
+ }
+
+ /**
+ * Sets date_updated_iso
+ *
+ * @param \DateTime|null $date_updated_iso The date that this resource was last updated in ISO 8601 format (e.g., 2022-01-01T00:00:00.000Z).
+ *
+ * @return self
+ */
+ public function setDateUpdatedIso($date_updated_iso)
+ {
+ if (is_null($date_updated_iso)) {
+ array_push($this->openAPINullablesSetToNull, 'date_updated_iso');
+ } else {
+ $nullablesSetToNull = $this->getOpenAPINullablesSetToNull();
+ $index = array_search('date_updated_iso', $nullablesSetToNull, true);
+ if ($index !== false) {
+ unset($nullablesSetToNull[$index]);
+ $this->setOpenAPINullablesSetToNull($nullablesSetToNull);
+ }
+ }
+ $this->container['date_updated_iso'] = $date_updated_iso;
+
+ return $this;
+ }
+
/**
* Gets call_id
*
@@ -804,6 +928,40 @@ public function setStartTime($start_time)
return $this;
}
+ /**
+ * Gets start_time_iso
+ *
+ * @return \DateTime|null
+ */
+ public function getStartTimeIso()
+ {
+ return $this->container['start_time_iso'];
+ }
+
+ /**
+ * Sets start_time_iso
+ *
+ * @param \DateTime|null $start_time_iso Start time of the Call in ISO 8601 format (e.g., 2022-01-01T00:00:00.000Z). Empty if the Call has not yet been dialed.
+ *
+ * @return self
+ */
+ public function setStartTimeIso($start_time_iso)
+ {
+ if (is_null($start_time_iso)) {
+ array_push($this->openAPINullablesSetToNull, 'start_time_iso');
+ } else {
+ $nullablesSetToNull = $this->getOpenAPINullablesSetToNull();
+ $index = array_search('start_time_iso', $nullablesSetToNull, true);
+ if ($index !== false) {
+ unset($nullablesSetToNull[$index]);
+ $this->setOpenAPINullablesSetToNull($nullablesSetToNull);
+ }
+ }
+ $this->container['start_time_iso'] = $start_time_iso;
+
+ return $this;
+ }
+
/**
* Gets connect_time
*
@@ -838,6 +996,40 @@ public function setConnectTime($connect_time)
return $this;
}
+ /**
+ * Gets connect_time_iso
+ *
+ * @return \DateTime|null
+ */
+ public function getConnectTimeIso()
+ {
+ return $this->container['connect_time_iso'];
+ }
+
+ /**
+ * Sets connect_time_iso
+ *
+ * @param \DateTime|null $connect_time_iso Time the Call was answered in ISO 8601 format (e.g., 2022-01-01T00:00:00.000Z). Empty if the Call has not yet been dialed.
+ *
+ * @return self
+ */
+ public function setConnectTimeIso($connect_time_iso)
+ {
+ if (is_null($connect_time_iso)) {
+ array_push($this->openAPINullablesSetToNull, 'connect_time_iso');
+ } else {
+ $nullablesSetToNull = $this->getOpenAPINullablesSetToNull();
+ $index = array_search('connect_time_iso', $nullablesSetToNull, true);
+ if ($index !== false) {
+ unset($nullablesSetToNull[$index]);
+ $this->setOpenAPINullablesSetToNull($nullablesSetToNull);
+ }
+ }
+ $this->container['connect_time_iso'] = $connect_time_iso;
+
+ return $this;
+ }
+
/**
* Gets end_time
*
@@ -872,6 +1064,40 @@ public function setEndTime($end_time)
return $this;
}
+ /**
+ * Gets end_time_iso
+ *
+ * @return \DateTime|null
+ */
+ public function getEndTimeIso()
+ {
+ return $this->container['end_time_iso'];
+ }
+
+ /**
+ * Sets end_time_iso
+ *
+ * @param \DateTime|null $end_time_iso End time of the Call in ISO 8601 format (e.g., 2022-01-01T00:00:00.000Z). Empty if the Call did not complete successfully.
+ *
+ * @return self
+ */
+ public function setEndTimeIso($end_time_iso)
+ {
+ if (is_null($end_time_iso)) {
+ array_push($this->openAPINullablesSetToNull, 'end_time_iso');
+ } else {
+ $nullablesSetToNull = $this->getOpenAPINullablesSetToNull();
+ $index = array_search('end_time_iso', $nullablesSetToNull, true);
+ if ($index !== false) {
+ unset($nullablesSetToNull[$index]);
+ $this->setOpenAPINullablesSetToNull($nullablesSetToNull);
+ }
+ }
+ $this->container['end_time_iso'] = $end_time_iso;
+
+ return $this;
+ }
+
/**
* Gets duration
*
@@ -940,6 +1166,40 @@ public function setConnectDuration($connect_duration)
return $this;
}
+ /**
+ * Gets audio_stream_duration
+ *
+ * @return int|null
+ */
+ public function getAudioStreamDuration()
+ {
+ return $this->container['audio_stream_duration'];
+ }
+
+ /**
+ * Sets audio_stream_duration
+ *
+ * @param int|null $audio_stream_duration Length of time that the Call used the audio stream in seconds. This value is empty or zero when the Call did not use the audio stream.
+ *
+ * @return self
+ */
+ public function setAudioStreamDuration($audio_stream_duration)
+ {
+ if (is_null($audio_stream_duration)) {
+ array_push($this->openAPINullablesSetToNull, 'audio_stream_duration');
+ } else {
+ $nullablesSetToNull = $this->getOpenAPINullablesSetToNull();
+ $index = array_search('audio_stream_duration', $nullablesSetToNull, true);
+ if ($index !== false) {
+ unset($nullablesSetToNull[$index]);
+ $this->setOpenAPINullablesSetToNull($nullablesSetToNull);
+ }
+ }
+ $this->container['audio_stream_duration'] = $audio_stream_duration;
+
+ return $this;
+ }
+
/**
* Gets direction
*
@@ -1008,10 +1268,78 @@ public function setAnsweredBy($answered_by)
return $this;
}
+ /**
+ * Gets caller_name
+ *
+ * @return string|null
+ */
+ public function getCallerName()
+ {
+ return $this->container['caller_name'];
+ }
+
+ /**
+ * Sets caller_name
+ *
+ * @param string|null $caller_name The caller ID name (CNAM) for this Call. Empty if unavailable.
+ *
+ * @return self
+ */
+ public function setCallerName($caller_name)
+ {
+ if (is_null($caller_name)) {
+ array_push($this->openAPINullablesSetToNull, 'caller_name');
+ } else {
+ $nullablesSetToNull = $this->getOpenAPINullablesSetToNull();
+ $index = array_search('caller_name', $nullablesSetToNull, true);
+ if ($index !== false) {
+ unset($nullablesSetToNull[$index]);
+ $this->setOpenAPINullablesSetToNull($nullablesSetToNull);
+ }
+ }
+ $this->container['caller_name'] = $caller_name;
+
+ return $this;
+ }
+
+ /**
+ * Gets web_rtc
+ *
+ * @return bool|null
+ */
+ public function getWebRtc()
+ {
+ return $this->container['web_rtc'];
+ }
+
+ /**
+ * Sets web_rtc
+ *
+ * @param bool|null $web_rtc Indicates whether this Call was initiated via WebRTC.
+ *
+ * @return self
+ */
+ public function setWebRtc($web_rtc)
+ {
+ if (is_null($web_rtc)) {
+ array_push($this->openAPINullablesSetToNull, 'web_rtc');
+ } else {
+ $nullablesSetToNull = $this->getOpenAPINullablesSetToNull();
+ $index = array_search('web_rtc', $nullablesSetToNull, true);
+ if ($index !== false) {
+ unset($nullablesSetToNull[$index]);
+ $this->setOpenAPINullablesSetToNull($nullablesSetToNull);
+ }
+ }
+ $this->container['web_rtc'] = $web_rtc;
+
+ return $this;
+ }
+
/**
* Gets subresource_uris
*
- * @return object|null
+ * @return \FreeClimb\Api\Model\CallResultAllOfSubresourceUris|null
*/
public function getSubresourceUris()
{
@@ -1021,7 +1349,7 @@ public function getSubresourceUris()
/**
* Sets subresource_uris
*
- * @param object|null $subresource_uris The list of subresources for this Call. These include things like logs and recordings associated with the Call.
+ * @param \FreeClimb\Api\Model\CallResultAllOfSubresourceUris|null $subresource_uris subresource_uris
*
* @return self
*/
diff --git a/lib/Model/CallResultAllOfSubresourceUris.php b/lib/Model/CallResultAllOfSubresourceUris.php
new file mode 100644
index 0000000..3489771
--- /dev/null
+++ b/lib/Model/CallResultAllOfSubresourceUris.php
@@ -0,0 +1,447 @@
+
+ */
+class CallResultAllOfSubresourceUris implements ModelInterface, ArrayAccess, \JsonSerializable
+{
+ public const DISCRIMINATOR = null;
+
+ /**
+ * The original name of the model.
+ *
+ * @var string
+ */
+ protected static $openAPIModelName = 'CallResultAllOfSubresourceUris';
+
+ /**
+ * Array of property to type mappings. Used for (de)serialization
+ *
+ * @var string[]
+ */
+ protected static $openAPITypes = [
+ 'logs' => 'string',
+ 'recordings' => 'string'
+ ];
+
+ /**
+ * Array of property to format mappings. Used for (de)serialization
+ *
+ * @var string[]
+ * @phpstan-var array
+ * @psalm-var array
+ */
+ protected static $openAPIFormats = [
+ 'logs' => null,
+ 'recordings' => null
+ ];
+
+ /**
+ * Array of nullable properties. Used for (de)serialization
+ *
+ * @var boolean[]
+ */
+ protected static array $openAPINullables = [
+ 'logs' => false,
+ 'recordings' => false
+ ];
+
+ /**
+ * If a nullable field gets set to null, insert it here
+ *
+ * @var boolean[]
+ */
+ protected array $openAPINullablesSetToNull = [];
+
+ /**
+ * Array of property to type mappings. Used for (de)serialization
+ *
+ * @return array
+ */
+ public static function openAPITypes()
+ {
+ return self::$openAPITypes;
+ }
+
+ /**
+ * Array of property to format mappings. Used for (de)serialization
+ *
+ * @return array
+ */
+ public static function openAPIFormats()
+ {
+ return self::$openAPIFormats;
+ }
+
+ /**
+ * Array of nullable properties
+ *
+ * @return array
+ */
+ protected static function openAPINullables(): array
+ {
+ return self::$openAPINullables;
+ }
+
+ /**
+ * Array of nullable field names deliberately set to null
+ *
+ * @return boolean[]
+ */
+ private function getOpenAPINullablesSetToNull(): array
+ {
+ return $this->openAPINullablesSetToNull;
+ }
+
+ /**
+ * Setter - Array of nullable field names deliberately set to null
+ *
+ * @param boolean[] $openAPINullablesSetToNull
+ */
+ private function setOpenAPINullablesSetToNull(array $openAPINullablesSetToNull): void
+ {
+ $this->openAPINullablesSetToNull = $openAPINullablesSetToNull;
+ }
+
+ /**
+ * Checks if a property is nullable
+ *
+ * @param string $property
+ * @return bool
+ */
+ public static function isNullable(string $property): bool
+ {
+ return self::openAPINullables()[$property] ?? false;
+ }
+
+ /**
+ * Checks if a nullable property is set to null.
+ *
+ * @param string $property
+ * @return bool
+ */
+ public function isNullableSetToNull(string $property): bool
+ {
+ return in_array($property, $this->getOpenAPINullablesSetToNull(), true);
+ }
+
+ /**
+ * Array of attributes where the key is the local name,
+ * and the value is the original name
+ *
+ * @var string[]
+ */
+ protected static $attributeMap = [
+ 'logs' => 'logs',
+ 'recordings' => 'recordings'
+ ];
+
+ /**
+ * Array of attributes to setter functions (for deserialization of responses)
+ *
+ * @var string[]
+ */
+ protected static $setters = [
+ 'logs' => 'setLogs',
+ 'recordings' => 'setRecordings'
+ ];
+
+ /**
+ * Array of attributes to getter functions (for serialization of requests)
+ *
+ * @var string[]
+ */
+ protected static $getters = [
+ 'logs' => 'getLogs',
+ 'recordings' => 'getRecordings'
+ ];
+
+ /**
+ * Array of attributes where the key is the local name,
+ * and the value is the original name
+ *
+ * @return array
+ */
+ public static function attributeMap()
+ {
+ return self::$attributeMap;
+ }
+
+ /**
+ * Array of attributes to setter functions (for deserialization of responses)
+ *
+ * @return array
+ */
+ public static function setters()
+ {
+ return self::$setters;
+ }
+
+ /**
+ * Array of attributes to getter functions (for serialization of requests)
+ *
+ * @return array
+ */
+ public static function getters()
+ {
+ return self::$getters;
+ }
+
+ /**
+ * The original name of the model.
+ *
+ * @return string
+ */
+ public function getModelName()
+ {
+ return self::$openAPIModelName;
+ }
+
+
+ /**
+ * Associative array for storing property values
+ *
+ * @var mixed[]
+ */
+ protected $container = [];
+
+ /**
+ * Constructor
+ *
+ * @param mixed[] $data Associated array of property values
+ * initializing the model
+ */
+ public function __construct(?array $data = null)
+ {
+ $this->setIfExists('logs', $data ?? [], null);
+ $this->setIfExists('recordings', $data ?? [], null);
+ }
+
+ /**
+ * Sets $this->container[$variableName] to the given data or to the given default Value; if $variableName
+ * is nullable and its value is set to null in the $fields array, then mark it as "set to null" in the
+ * $this->openAPINullablesSetToNull array
+ *
+ * @param string $variableName
+ * @param array $fields
+ * @param mixed $defaultValue
+ */
+ private function setIfExists(string $variableName, array $fields, $defaultValue): void
+ {
+ if (self::isNullable($variableName) && array_key_exists($variableName, $fields) && is_null($fields[$variableName])) {
+ $this->openAPINullablesSetToNull[] = $variableName;
+ }
+
+ $this->container[$variableName] = $fields[$variableName] ?? $defaultValue;
+ }
+
+ /**
+ * Show all the invalid properties with reasons.
+ *
+ * @return array invalid properties with reasons
+ */
+ public function listInvalidProperties()
+ {
+ $invalidProperties = [];
+
+ return $invalidProperties;
+ }
+
+ /**
+ * Validate all the properties in the model
+ * return true if all passed
+ *
+ * @return bool True if all properties are valid
+ */
+ public function valid()
+ {
+ return count($this->listInvalidProperties()) === 0;
+ }
+
+
+ /**
+ * Gets logs
+ *
+ * @return string|null
+ */
+ public function getLogs()
+ {
+ return $this->container['logs'];
+ }
+
+ /**
+ * Sets logs
+ *
+ * @param string|null $logs The URI for the logs associated with this Call.
+ *
+ * @return self
+ */
+ public function setLogs($logs)
+ {
+ if (is_null($logs)) {
+ throw new \InvalidArgumentException('non-nullable logs cannot be null');
+ }
+ $this->container['logs'] = $logs;
+
+ return $this;
+ }
+
+ /**
+ * Gets recordings
+ *
+ * @return string|null
+ */
+ public function getRecordings()
+ {
+ return $this->container['recordings'];
+ }
+
+ /**
+ * Sets recordings
+ *
+ * @param string|null $recordings The URI for the recordings associated with this Call.
+ *
+ * @return self
+ */
+ public function setRecordings($recordings)
+ {
+ if (is_null($recordings)) {
+ throw new \InvalidArgumentException('non-nullable recordings cannot be null');
+ }
+ $this->container['recordings'] = $recordings;
+
+ return $this;
+ }
+ /**
+ * Returns true if offset exists. False otherwise.
+ *
+ * @param integer $offset Offset
+ *
+ * @return boolean
+ */
+ public function offsetExists($offset): bool
+ {
+ return isset($this->container[$offset]);
+ }
+
+ /**
+ * Gets offset.
+ *
+ * @param integer $offset Offset
+ *
+ * @return mixed|null
+ */
+ #[\ReturnTypeWillChange]
+ public function offsetGet($offset)
+ {
+ return $this->container[$offset] ?? null;
+ }
+
+ /**
+ * Sets value based on offset.
+ *
+ * @param int|null $offset Offset
+ * @param mixed $value Value to be set
+ *
+ * @return void
+ */
+ public function offsetSet($offset, $value): void
+ {
+ if (is_null($offset)) {
+ $this->container[] = $value;
+ } else {
+ $this->container[$offset] = $value;
+ }
+ }
+
+ /**
+ * Unsets offset.
+ *
+ * @param integer $offset Offset
+ *
+ * @return void
+ */
+ public function offsetUnset($offset): void
+ {
+ unset($this->container[$offset]);
+ }
+
+ /**
+ * Serializes the object to a value that can be serialized natively by json_encode().
+ * @link https://www.php.net/manual/en/jsonserializable.jsonserialize.php
+ *
+ * @return mixed Returns data which can be serialized by json_encode(), which is a value
+ * of any type other than a resource.
+ */
+ #[\ReturnTypeWillChange]
+ public function jsonSerialize()
+ {
+ return ObjectSerializer::sanitizeForSerialization($this);
+ }
+
+ /**
+ * Gets the string presentation of the object
+ *
+ * @return string
+ */
+ public function __toString()
+ {
+ return json_encode(
+ ObjectSerializer::sanitizeForSerialization($this),
+ JSON_PRETTY_PRINT
+ );
+ }
+
+ /**
+ * Gets a header-safe presentation of the object
+ *
+ * @return string
+ */
+ public function toHeaderValue()
+ {
+ return json_encode(ObjectSerializer::sanitizeForSerialization($this));
+ }
+
+}
+
+
diff --git a/lib/Model/QueueResult.php b/lib/Model/QueueResult.php
index 1e22f25..def7878 100644
--- a/lib/Model/QueueResult.php
+++ b/lib/Model/QueueResult.php
@@ -69,6 +69,7 @@ class QueueResult implements ModelInterface, ArrayAccess, \JsonSerializable
'max_size' => 'int',
'current_size' => 'int',
'average_queue_removal_time' => 'int',
+ 'average_wait_time' => 'int',
'subresource_uris' => 'object'
];
@@ -90,6 +91,7 @@ class QueueResult implements ModelInterface, ArrayAccess, \JsonSerializable
'max_size' => null,
'current_size' => null,
'average_queue_removal_time' => null,
+ 'average_wait_time' => null,
'subresource_uris' => null
];
@@ -109,6 +111,7 @@ class QueueResult implements ModelInterface, ArrayAccess, \JsonSerializable
'max_size' => true,
'current_size' => true,
'average_queue_removal_time' => true,
+ 'average_wait_time' => true,
'subresource_uris' => true
];
@@ -208,6 +211,7 @@ public function isNullableSetToNull(string $property): bool
'max_size' => 'maxSize',
'current_size' => 'currentSize',
'average_queue_removal_time' => 'averageQueueRemovalTime',
+ 'average_wait_time' => 'averageWaitTime',
'subresource_uris' => 'subresourceUris'
];
@@ -227,6 +231,7 @@ public function isNullableSetToNull(string $property): bool
'max_size' => 'setMaxSize',
'current_size' => 'setCurrentSize',
'average_queue_removal_time' => 'setAverageQueueRemovalTime',
+ 'average_wait_time' => 'setAverageWaitTime',
'subresource_uris' => 'setSubresourceUris'
];
@@ -246,6 +251,7 @@ public function isNullableSetToNull(string $property): bool
'max_size' => 'getMaxSize',
'current_size' => 'getCurrentSize',
'average_queue_removal_time' => 'getAverageQueueRemovalTime',
+ 'average_wait_time' => 'getAverageWaitTime',
'subresource_uris' => 'getSubresourceUris'
];
@@ -316,6 +322,7 @@ public function __construct(?array $data = null)
$this->setIfExists('max_size', $data ?? [], null);
$this->setIfExists('current_size', $data ?? [], null);
$this->setIfExists('average_queue_removal_time', $data ?? [], null);
+ $this->setIfExists('average_wait_time', $data ?? [], null);
$this->setIfExists('subresource_uris', $data ?? [], null);
}
@@ -673,6 +680,40 @@ public function setAverageQueueRemovalTime($average_queue_removal_time)
return $this;
}
+ /**
+ * Gets average_wait_time
+ *
+ * @return int|null
+ */
+ public function getAverageWaitTime()
+ {
+ return $this->container['average_wait_time'];
+ }
+
+ /**
+ * Sets average_wait_time
+ *
+ * @param int|null $average_wait_time The average wait time (in seconds) of all Calls in the Queue.
+ *
+ * @return self
+ */
+ public function setAverageWaitTime($average_wait_time)
+ {
+ if (is_null($average_wait_time)) {
+ array_push($this->openAPINullablesSetToNull, 'average_wait_time');
+ } else {
+ $nullablesSetToNull = $this->getOpenAPINullablesSetToNull();
+ $index = array_search('average_wait_time', $nullablesSetToNull, true);
+ if ($index !== false) {
+ unset($nullablesSetToNull[$index]);
+ $this->setOpenAPINullablesSetToNull($nullablesSetToNull);
+ }
+ }
+ $this->container['average_wait_time'] = $average_wait_time;
+
+ return $this;
+ }
+
/**
* Gets subresource_uris
*
diff --git a/lib/ObjectSerializer.php b/lib/ObjectSerializer.php
index b3853cd..d7c00c3 100644
--- a/lib/ObjectSerializer.php
+++ b/lib/ObjectSerializer.php
@@ -593,8 +593,12 @@ public static function buildQuery(array $params, $encoding = PHP_QUERY_RFC3986):
}
$castBool = Configuration::BOOLEAN_FORMAT_INT === Configuration::getDefaultConfiguration()->getBooleanFormatForQueryString()
- ? function ($v) { return (int) $v; }
- : function ($v) { return $v ? 'true' : 'false'; };
+ ? function ($v) {
+ return (int) $v;
+ }
+ : function ($v) {
+ return $v ? 'true' : 'false';
+ };
$qs = '';
foreach ($params as $k => $v) {
diff --git a/openapi.json b/openapi.json
index 27b9cbd..c759411 100644
--- a/openapi.json
+++ b/openapi.json
@@ -2464,6 +2464,7 @@
},
{
"required": ["text"],
+ "type": "object",
"properties": {
"text": {
"description": "The message to be played to the caller using TTS. The size of the string is limited to 4 KB (or 4,096 bytes). An empty string will cause the command to be skipped.",
@@ -2934,6 +2935,11 @@
"description": "The phone number, in E.164 format (+ country code and phone number: +18003608245).",
"nullable": true
},
+ "alias": {
+ "type": "string",
+ "description": "A nicely-formatted version of the phone number.",
+ "nullable": true
+ },
"voiceEnabled": {
"type": "boolean",
"description": "Typically set to true for all numbers.",
@@ -3108,6 +3114,21 @@
}
}
},
+ "CallResultAllOfSubresourceUris": {
+ "type": "object",
+ "description": "The list of subresources for this Call. These include things like logs and recordings associated with the Call.",
+ "nullable": true,
+ "properties": {
+ "logs": {
+ "type": "string",
+ "description": "The URI for the logs associated with this Call."
+ },
+ "recordings": {
+ "type": "string",
+ "description": "The URI for the recordings associated with this Call."
+ }
+ }
+ },
"CallResult": {
"allOf": [
{
@@ -3116,6 +3137,18 @@
{
"type": "object",
"properties": {
+ "dateCreatedISO": {
+ "type": "string",
+ "format": "date-time",
+ "description": "The date that this resource was created in ISO 8601 format (e.g., 2022-01-01T00:00:00.000Z).",
+ "nullable": true
+ },
+ "dateUpdatedISO": {
+ "type": "string",
+ "format": "date-time",
+ "description": "The date that this resource was last updated in ISO 8601 format (e.g., 2022-01-01T00:00:00.000Z).",
+ "nullable": true
+ },
"callId": {
"type": "string",
"description": "String that uniquely identifies this Call resource.",
@@ -3154,16 +3187,34 @@
"description": "Start time of the Call (GMT) in RFC 1123 format (e.g., Mon, 15 Jun 2009 20:45:30 GMT). Empty if the Call has not yet been dialed.",
"nullable": true
},
+ "startTimeISO": {
+ "type": "string",
+ "format": "date-time",
+ "description": "Start time of the Call in ISO 8601 format (e.g., 2022-01-01T00:00:00.000Z). Empty if the Call has not yet been dialed.",
+ "nullable": true
+ },
"connectTime": {
"type": "string",
"description": "Time the Call was answered (GMT) in RFC 1123 format (e.g., Mon, 15 Jun 2009 20:45:30 GMT). Empty if the Call has not yet been dialed.",
"nullable": true
},
+ "connectTimeISO": {
+ "type": "string",
+ "format": "date-time",
+ "description": "Time the Call was answered in ISO 8601 format (e.g., 2022-01-01T00:00:00.000Z). Empty if the Call has not yet been dialed.",
+ "nullable": true
+ },
"endTime": {
"type": "string",
"description": "End time of the Call (GMT) in RFC 1123 format (e.g., Mon, 15 Jun 2009 20:45:30 GMT). Empty if the Call did not complete successfully.",
"nullable": true
},
+ "endTimeISO": {
+ "type": "string",
+ "format": "date-time",
+ "description": "End time of the Call in ISO 8601 format (e.g., 2022-01-01T00:00:00.000Z). Empty if the Call did not complete successfully.",
+ "nullable": true
+ },
"duration": {
"type": "integer",
"description": "Total length of the Call in seconds. Measures time between startTime and endTime. This value is empty for busy, failed, unanswered or ongoing Calls.",
@@ -3174,17 +3225,30 @@
"description": "Length of time that the Call was connected in seconds. Measures time between connectTime and endTime. This value is empty for busy, failed, unanswered or ongoing Calls.",
"nullable": true
},
+ "audioStreamDuration": {
+ "type": "integer",
+ "description": "Length of time that the Call used the audio stream in seconds. This value is empty or zero when the Call did not use the audio stream.",
+ "nullable": true
+ },
"direction": {
"$ref": "#/components/schemas/CallDirection"
},
"answeredBy": {
"$ref": "#/components/schemas/AnsweredBy"
},
- "subresourceUris": {
- "type": "object",
- "description": "The list of subresources for this Call. These include things like logs and recordings associated with the Call.",
+ "callerName": {
+ "type": "string",
+ "description": "The caller ID name (CNAM) for this Call. Empty if unavailable.",
"nullable": true
},
+ "webRTC": {
+ "type": "boolean",
+ "description": "Indicates whether this Call was initiated via WebRTC.",
+ "nullable": true
+ },
+ "subresourceUris": {
+ "$ref": "#/components/schemas/CallResultAllOfSubresourceUris"
+ },
"applicationId": {
"type": "string",
"description": "ApplicationId associated with the Call.",
@@ -3852,6 +3916,11 @@
"description": "The average amount of time (in seconds) for a call to be removed from the queue.",
"nullable": true
},
+ "averageWaitTime": {
+ "type": "integer",
+ "description": "The average wait time (in seconds) of all Calls in the Queue.",
+ "nullable": true
+ },
"subresourceUris": {
"type": "object",
"description": "List of subresources for this Queue (which includes Queue members).",
@@ -6002,6 +6071,16 @@
"summary": "List Calls",
"operationId": "list-calls",
"parameters": [
+ {
+ "name": "usedAudioStream",
+ "in": "query",
+ "description": "If usedAudioStream is set to true then all calls that have a audioStreamDuration > 0 will be returned ",
+ "required": false,
+ "schema": {
+ "type": "boolean",
+ "default": false
+ }
+ },
{
"name": "active",
"in": "query",
@@ -6101,6 +6180,16 @@
"schema": {
"type": "integer"
}
+ },
+ {
+ "name": "webRTC",
+ "in": "query",
+ "description": "Only show Calls that were originated via WebRTC.",
+ "required": false,
+ "schema": {
+ "type": "boolean",
+ "default": false
+ }
}
],
"deprecated": false,
@@ -6144,6 +6233,24 @@
"schema": {
"type": "string"
}
+ },
+ {
+ "name": "startTime",
+ "in": "query",
+ "description": "Only show Recordings created at or after this time, given as YYYY-MM-DD hh:mm:ss.",
+ "required": false,
+ "schema": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "endTime",
+ "in": "query",
+ "description": "Only show Recordings created at or before this time, given as YYYY-MM-DD hh:mm:ss.",
+ "required": false,
+ "schema": {
+ "type": "string"
+ }
}
],
"deprecated": false,
@@ -6618,6 +6725,24 @@
"schema": {
"type": "string"
}
+ },
+ {
+ "name": "startTime",
+ "in": "query",
+ "description": "Only show Recordings created at or after this time, given as YYYY-MM-DD hh:mm:ss.",
+ "required": false,
+ "schema": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "endTime",
+ "in": "query",
+ "description": "Only show Recordings created at or before this time, given as YYYY-MM-DD hh:mm:ss.",
+ "required": false,
+ "schema": {
+ "type": "string"
+ }
}
],
"responses": {
@@ -6765,7 +6890,7 @@
},
"deprecated": false,
"responses": {
- "200": {
+ "201": {
"description": "Successfuly created queue",
"content": {
"application/json": {
@@ -7056,6 +7181,24 @@
},
{
"$ref": "#/components/parameters/AccountId"
+ },
+ {
+ "name": "startTime",
+ "in": "query",
+ "description": "Only show Recordings created at or after this time, given as YYYY-MM-DD hh:mm:ss.",
+ "required": false,
+ "schema": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "endTime",
+ "in": "query",
+ "description": "Only show Recordings created at or before this time, given as YYYY-MM-DD hh:mm:ss.",
+ "required": false,
+ "schema": {
+ "type": "string"
+ }
}
],
"responses": {
diff --git a/package.json b/package.json
index a8336b0..036ebec 100644
--- a/package.json
+++ b/package.json
@@ -1,10 +1,7 @@
{
"dependencies": {
- "@stoplight/prism-cli": "5.6.0",
- "fast-xml-parser": "^4.5.0",
+ "@stoplight/prism-cli": "5.14.2",
+ "fast-xml-parser": "^5.3.8",
"jsonpath-plus": "^10.3.0"
- },
- "resolutions": {
- "@stoplight/json": "3.20.0"
}
}
diff --git a/test/Api/DefaultApiTest.php b/test/Api/DefaultApiTest.php
index dd8d963..d99ae55 100644
--- a/test/Api/DefaultApiTest.php
+++ b/test/Api/DefaultApiTest.php
@@ -721,6 +721,38 @@ public function blob_id_replaceBlob_test_value()
{
return "BL0123456789abcdefABCDEF0123456789abcdef00";
}
+ public function start_time_listConferenceRecordings_test_value(): string
+ {
+ return 'start_time_example';
+ }
+ public function end_time_listConferenceRecordings_test_value(): string
+ {
+ return 'end_time_example';
+ }
+ public function start_time_listCallRecordings_test_value(): string
+ {
+ return 'start_time_example';
+ }
+ public function end_time_listCallRecordings_test_value(): string
+ {
+ return 'end_time_example';
+ }
+ public function start_time_listRecordings_test_value(): string
+ {
+ return 'start_time_example';
+ }
+ public function end_time_listRecordings_test_value(): string
+ {
+ return 'end_time_example';
+ }
+ public function used_audio_stream_listCalls_test_value(): string
+ {
+ return "true";
+ }
+ public function web_rtc_listCalls_test_value(): string
+ {
+ return "true";
+ }
/**
* Setup before running each test case
*/
@@ -1491,8 +1523,12 @@ public function testListCallRecordings()
//$date_created = $date_created_test_value;
+ //$start_time = $start_time_test_value;
- $response = static::$apiInstance->listCallRecordings($this->call_id_listCallRecordings_test_value(), $this->date_created_listCallRecordings_test_value());
+ //$end_time = $end_time_test_value;
+
+
+ $response = static::$apiInstance->listCallRecordings($this->call_id_listCallRecordings_test_value(), $this->date_created_listCallRecordings_test_value(), $this->start_time_listCallRecordings_test_value(), $this->end_time_listCallRecordings_test_value());
$this->assertInstanceOf('\FreeClimb\Api\Model\RecordingList', $response);
}
@@ -1505,6 +1541,8 @@ public function testListCallRecordings()
public function testListCalls()
{
+ //$used_audio_stream = $used_audio_stream_test_value;
+
//$active = $active_test_value;
//$to = $to_test_value;
@@ -1525,8 +1563,10 @@ public function testListCalls()
//$risk_score_max = $risk_score_max_test_value;
+ //$web_rtc = $web_rtc_test_value;
- $response = static::$apiInstance->listCalls($this->active_listCalls_test_value(), $this->to_listCalls_test_value(), $this->from_listCalls_test_value(), $this->status_listCalls_test_value(), $this->start_time_listCalls_test_value(), $this->end_time_listCalls_test_value(), $this->parent_call_id_listCalls_test_value(), $this->application_id_listCalls_test_value(), $this->risk_score_min_listCalls_test_value(), $this->risk_score_max_listCalls_test_value());
+
+ $response = static::$apiInstance->listCalls($this->used_audio_stream_listCalls_test_value(), $this->active_listCalls_test_value(), $this->to_listCalls_test_value(), $this->from_listCalls_test_value(), $this->status_listCalls_test_value(), $this->start_time_listCalls_test_value(), $this->end_time_listCalls_test_value(), $this->parent_call_id_listCalls_test_value(), $this->application_id_listCalls_test_value(), $this->risk_score_min_listCalls_test_value(), $this->risk_score_max_listCalls_test_value(), $this->web_rtc_listCalls_test_value());
$this->assertInstanceOf('\FreeClimb\Api\Model\CallList', $response);
}
@@ -1545,8 +1585,12 @@ public function testListConferenceRecordings()
//$date_created = $date_created_test_value;
+ //$start_time = $start_time_test_value;
+
+ //$end_time = $end_time_test_value;
+
- $response = static::$apiInstance->listConferenceRecordings($this->conference_id_listConferenceRecordings_test_value(), $this->call_id_listConferenceRecordings_test_value(), $this->date_created_listConferenceRecordings_test_value());
+ $response = static::$apiInstance->listConferenceRecordings($this->conference_id_listConferenceRecordings_test_value(), $this->call_id_listConferenceRecordings_test_value(), $this->date_created_listConferenceRecordings_test_value(), $this->start_time_listConferenceRecordings_test_value(), $this->end_time_listConferenceRecordings_test_value());
$this->assertInstanceOf('\FreeClimb\Api\Model\RecordingList', $response);
}
@@ -1685,8 +1729,12 @@ public function testListRecordings()
//$date_created = $date_created_test_value;
+ //$start_time = $start_time_test_value;
+
+ //$end_time = $end_time_test_value;
+
- $response = static::$apiInstance->listRecordings($this->call_id_listRecordings_test_value(), $this->conference_id_listRecordings_test_value(), $this->date_created_listRecordings_test_value());
+ $response = static::$apiInstance->listRecordings($this->call_id_listRecordings_test_value(), $this->conference_id_listRecordings_test_value(), $this->date_created_listRecordings_test_value(), $this->start_time_listRecordings_test_value(), $this->end_time_listRecordings_test_value());
$this->assertInstanceOf('\FreeClimb\Api\Model\RecordingList', $response);
}
@@ -2123,7 +2171,7 @@ public function testGetNextPageListCallLogs()
public function testGetNextPageListCallRecordings()
{
- $response = static::$apiInstance->listCallRecordings($this->call_id_listCallRecordings_test_value(), $this->date_created_listCallRecordings_test_value());
+ $response = static::$apiInstance->listCallRecordings($this->call_id_listCallRecordings_test_value(), $this->date_created_listCallRecordings_test_value(), $this->start_time_listCallRecordings_test_value(), $this->end_time_listCallRecordings_test_value());
$response['next_page_uri'] = '/Accounts/{accountId}/Calls/{callId}/Recordings?cursor=1';
$nextPageResponse = static::$apiInstance->getNextPage($response);
$this->assertInstanceOf('\FreeClimb\Api\Model\RecordingList', $nextPageResponse);
@@ -2136,7 +2184,7 @@ public function testGetNextPageListCallRecordings()
public function testGetNextPageListCalls()
{
- $response = static::$apiInstance->listCalls($this->active_listCalls_test_value(), $this->to_listCalls_test_value(), $this->from_listCalls_test_value(), $this->status_listCalls_test_value(), $this->start_time_listCalls_test_value(), $this->end_time_listCalls_test_value(), $this->parent_call_id_listCalls_test_value(), $this->application_id_listCalls_test_value(), $this->risk_score_min_listCalls_test_value(), $this->risk_score_max_listCalls_test_value());
+ $response = static::$apiInstance->listCalls($this->used_audio_stream_listCalls_test_value(), $this->active_listCalls_test_value(), $this->to_listCalls_test_value(), $this->from_listCalls_test_value(), $this->status_listCalls_test_value(), $this->start_time_listCalls_test_value(), $this->end_time_listCalls_test_value(), $this->parent_call_id_listCalls_test_value(), $this->application_id_listCalls_test_value(), $this->risk_score_min_listCalls_test_value(), $this->risk_score_max_listCalls_test_value(), $this->web_rtc_listCalls_test_value());
$response['next_page_uri'] = '/Accounts/{accountId}/Calls?cursor=1';
$nextPageResponse = static::$apiInstance->getNextPage($response);
$this->assertInstanceOf('\FreeClimb\Api\Model\CallList', $nextPageResponse);
@@ -2149,7 +2197,7 @@ public function testGetNextPageListCalls()
public function testGetNextPageListConferenceRecordings()
{
- $response = static::$apiInstance->listConferenceRecordings($this->conference_id_listConferenceRecordings_test_value(), $this->call_id_listConferenceRecordings_test_value(), $this->date_created_listConferenceRecordings_test_value());
+ $response = static::$apiInstance->listConferenceRecordings($this->conference_id_listConferenceRecordings_test_value(), $this->call_id_listConferenceRecordings_test_value(), $this->date_created_listConferenceRecordings_test_value(), $this->start_time_listConferenceRecordings_test_value(), $this->end_time_listConferenceRecordings_test_value());
$response['next_page_uri'] = '/Accounts/{accountId}/Conferences/{conferenceId}/Recordings?cursor=1';
$nextPageResponse = static::$apiInstance->getNextPage($response);
$this->assertInstanceOf('\FreeClimb\Api\Model\RecordingList', $nextPageResponse);
@@ -2227,7 +2275,7 @@ public function testGetNextPageListParticipants()
public function testGetNextPageListRecordings()
{
- $response = static::$apiInstance->listRecordings($this->call_id_listRecordings_test_value(), $this->conference_id_listRecordings_test_value(), $this->date_created_listRecordings_test_value());
+ $response = static::$apiInstance->listRecordings($this->call_id_listRecordings_test_value(), $this->conference_id_listRecordings_test_value(), $this->date_created_listRecordings_test_value(), $this->start_time_listRecordings_test_value(), $this->end_time_listRecordings_test_value());
$response['next_page_uri'] = '/Accounts/{accountId}/Recordings?cursor=1';
$nextPageResponse = static::$apiInstance->getNextPage($response);
$this->assertInstanceOf('\FreeClimb\Api\Model\RecordingList', $nextPageResponse);
diff --git a/test/Model/AvailableNumberTest.php b/test/Model/AvailableNumberTest.php
index 3f3a843..2daba17 100644
--- a/test/Model/AvailableNumberTest.php
+++ b/test/Model/AvailableNumberTest.php
@@ -96,6 +96,14 @@ public function testPropertyPhoneNumber()
$this->assertIsString($this->AvailableNumber->getPhoneNumber());
}
+ public function testPropertyAlias()
+ {
+
+ $this->AvailableNumber->setAlias('TS');
+ $this->assertEquals('TS', $this->AvailableNumber->getAlias());
+ $this->assertIsString($this->AvailableNumber->getAlias());
+ }
+
public function testPropertyRegion()
{
diff --git a/test/Model/CallResultAllOfSubresourceUrisTest.php b/test/Model/CallResultAllOfSubresourceUrisTest.php
new file mode 100644
index 0000000..43b9fcc
--- /dev/null
+++ b/test/Model/CallResultAllOfSubresourceUrisTest.php
@@ -0,0 +1,92 @@
+CallResultAllOfSubresourceUris = new \FreeClimb\Api\Model\CallResultAllOfSubresourceUris();
+ }
+
+ /**
+ * Clean up after running each test case
+ */
+ public function tearDown(): void
+ {
+ }
+
+ /**
+ * Clean up after running all test cases
+ */
+ public static function tearDownAfterClass(): void
+ {
+ }
+
+
+ public function testPropertyLogs()
+ {
+
+ $this->CallResultAllOfSubresourceUris->setLogs('TS');
+ $this->assertEquals('TS', $this->CallResultAllOfSubresourceUris->getLogs());
+ $this->assertIsString($this->CallResultAllOfSubresourceUris->getLogs());
+ }
+
+ public function testPropertyRecordings()
+ {
+
+ $this->CallResultAllOfSubresourceUris->setRecordings('TS');
+ $this->assertEquals('TS', $this->CallResultAllOfSubresourceUris->getRecordings());
+ $this->assertIsString($this->CallResultAllOfSubresourceUris->getRecordings());
+ }
+}
diff --git a/test/Model/CallResultTest.php b/test/Model/CallResultTest.php
index 356c048..ff545bc 100644
--- a/test/Model/CallResultTest.php
+++ b/test/Model/CallResultTest.php
@@ -108,6 +108,18 @@ public function testPropertyRevision()
}
+ public function testPropertyDateCreatedIso()
+ {
+ $this->CallResult->setdateCreatedIso('2023-09-21 15:30:00');
+ $this->assertEquals('2023-09-21 15:30:00', $this->CallResult->getdateCreatedIso());
+ }
+
+ public function testPropertyDateUpdatedIso()
+ {
+ $this->CallResult->setdateUpdatedIso('2023-09-21 15:30:00');
+ $this->assertEquals('2023-09-21 15:30:00', $this->CallResult->getdateUpdatedIso());
+ }
+
public function testPropertyCallId()
{
@@ -184,6 +196,12 @@ public function testPropertyStartTime()
$this->assertIsString($this->CallResult->getStartTime());
}
+ public function testPropertyStartTimeIso()
+ {
+ $this->CallResult->setstartTimeIso('2023-09-21 15:30:00');
+ $this->assertEquals('2023-09-21 15:30:00', $this->CallResult->getstartTimeIso());
+ }
+
public function testPropertyConnectTime()
{
@@ -192,6 +210,12 @@ public function testPropertyConnectTime()
$this->assertIsString($this->CallResult->getConnectTime());
}
+ public function testPropertyConnectTimeIso()
+ {
+ $this->CallResult->setconnectTimeIso('2023-09-21 15:30:00');
+ $this->assertEquals('2023-09-21 15:30:00', $this->CallResult->getconnectTimeIso());
+ }
+
public function testPropertyEndTime()
{
@@ -200,6 +224,12 @@ public function testPropertyEndTime()
$this->assertIsString($this->CallResult->getEndTime());
}
+ public function testPropertyEndTimeIso()
+ {
+ $this->CallResult->setendTimeIso('2023-09-21 15:30:00');
+ $this->assertEquals('2023-09-21 15:30:00', $this->CallResult->getendTimeIso());
+ }
+
public function testPropertyDuration()
{
@@ -220,6 +250,16 @@ public function testPropertyConnectDuration()
}
+ public function testPropertyAudioStreamDuration()
+ {
+
+
+ $this->CallResult->setaudioStreamDuration(1);
+ $this->assertEquals(1, $this->CallResult->getaudioStreamDuration());
+ $this->assertIsNumeric($this->CallResult->getaudioStreamDuration());
+
+ }
+
public function testPropertyDirection()
{
$this->CallResult->setdirection(\FreeClimb\Api\Model\CallDirection::INBOUND);
@@ -238,6 +278,21 @@ public function testPropertyAnsweredBy()
$this->assertEquals(\FreeClimb\Api\Model\AnsweredBy::MACHINE, $this->CallResult->getansweredBy());
}
+ public function testPropertyCallerName()
+ {
+
+ $this->CallResult->setCallerName('TS');
+ $this->assertEquals('TS', $this->CallResult->getCallerName());
+ $this->assertIsString($this->CallResult->getCallerName());
+ }
+
+ public function testPropertyWebRtc()
+ {
+ $this->CallResult->setwebRtc(false);
+ $this->assertFalse($this->CallResult->getwebRtc());
+ $this->assertIsBool($this->CallResult->getwebRtc());
+ }
+
public function testPropertySubresourceUris()
{
$this->CallResult->setsubresourceUris(new \stdClass());
diff --git a/test/Model/QueueResultTest.php b/test/Model/QueueResultTest.php
index 286ca79..26bf887 100644
--- a/test/Model/QueueResultTest.php
+++ b/test/Model/QueueResultTest.php
@@ -162,6 +162,16 @@ public function testPropertyAverageQueueRemovalTime()
}
+ public function testPropertyAverageWaitTime()
+ {
+
+
+ $this->QueueResult->setaverageWaitTime(1);
+ $this->assertEquals(1, $this->QueueResult->getaverageWaitTime());
+ $this->assertIsNumeric($this->QueueResult->getaverageWaitTime());
+
+ }
+
public function testPropertySubresourceUris()
{
$this->QueueResult->setsubresourceUris(new \stdClass());
diff --git a/yarn.lock b/yarn.lock
index c52c0a7..037b23a 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -27,7 +27,7 @@
resolved "https://registry.yarnpkg.com/@jsep-plugin/regex/-/regex-1.0.4.tgz#cb2fc423220fa71c609323b9ba7f7d344a755fcc"
integrity sha512-q7qL4Mgjs1vByCaTnDFcBnV9HS7GVPJX5vyVoCgZHNSC9rjwIlmbXG5sUuorR5ndfHAIlJ8pVStxvjXHbNvtUg==
-"@stoplight/http-spec@^7.0.2", "@stoplight/http-spec@^7.0.3":
+"@stoplight/http-spec@^7.0.3":
version "7.1.0"
resolved "https://registry.yarnpkg.com/@stoplight/http-spec/-/http-spec-7.1.0.tgz#516fec5f4b08cc93dadfb4969a6f9616165b0553"
integrity sha512-Z2XqKX2SV8a1rrgSzFqccX2TolfcblT+l4pNvUU+THaLl50tKDoeidwWWZTzYUzqU0+UV97ponvqEbWWN3PaXg==
@@ -86,7 +86,19 @@
"@types/json-schema" "^7.0.7"
json-pointer "^0.6.1"
-"@stoplight/json@3.20.0", "@stoplight/json@3.21.7", "@stoplight/json@^3.18.1":
+"@stoplight/json@3.21.7":
+ version "3.21.7"
+ resolved "https://registry.yarnpkg.com/@stoplight/json/-/json-3.21.7.tgz#102f5fd11921984c96672ce4307850daa1cbfc7b"
+ integrity sha512-xcJXgKFqv/uCEgtGlPxy3tPA+4I+ZI4vAuMJ885+ThkTHFVkC+0Fm58lA9NlsyjnkpxFh4YiQWpH+KefHdbA0A==
+ dependencies:
+ "@stoplight/ordered-object-literal" "^1.0.3"
+ "@stoplight/path" "^1.3.2"
+ "@stoplight/types" "^13.6.0"
+ jsonc-parser "~2.2.1"
+ lodash "^4.17.21"
+ safe-stable-stringify "^1.1"
+
+"@stoplight/json@^3.18.1":
version "3.20.0"
resolved "https://registry.yarnpkg.com/@stoplight/json/-/json-3.20.0.tgz#3acd893c6ed3394ac0a32b383038bd9710a167f9"
integrity sha512-xR5nnO2HSy7hGzchUAv1/p7V94EXwHmpbm5ORim4BQm8w/u1sF2ttIYqDx8BesTLWTybRxLysyDH+QHjpQnQdw==
@@ -108,33 +120,33 @@
resolved "https://registry.yarnpkg.com/@stoplight/path/-/path-1.3.2.tgz#96e591496b72fde0f0cdae01a61d64f065bd9ede"
integrity sha512-lyIc6JUlUA8Ve5ELywPC8I2Sdnh1zc1zmbYgVarhXIp9YeAB0ReeqmGEOWNtlHkbP2DAA1AL65Wfn2ncjK/jtQ==
-"@stoplight/prism-cli@5.6.0":
- version "5.6.0"
- resolved "https://registry.yarnpkg.com/@stoplight/prism-cli/-/prism-cli-5.6.0.tgz#fc6590936eb290bf60bfe289eb6ac3b3366c2031"
- integrity sha512-BCCeWKjmjtFDQQv0qCATIE3L0HtnQQa3tUNvcMoCfZWIEe2McSGZkudckBsmGFfv6xycUrTkHSI/HNxhKYp5fg==
+"@stoplight/prism-cli@5.14.2":
+ version "5.14.2"
+ resolved "https://registry.yarnpkg.com/@stoplight/prism-cli/-/prism-cli-5.14.2.tgz#4729662fddb08f4ce03a7ccb98817f368e3940e1"
+ integrity sha512-S/x47zQa7NgoGAD0Q1JlijV7GRDd1zP/FcIpxSh+cJRUUImfALJJm1R3ONLweP97oG/b9BrwRyC+0GNYuzrviw==
dependencies:
- "@stoplight/http-spec" "^7.0.2"
- "@stoplight/json" "^3.18.1"
+ "@stoplight/json" "3.21.7"
"@stoplight/json-schema-ref-parser" "9.2.7"
- "@stoplight/prism-core" "^5.6.0"
- "@stoplight/prism-http" "^5.6.0"
- "@stoplight/prism-http-server" "^5.6.0"
+ "@stoplight/prism-core" "^5.8.0"
+ "@stoplight/prism-http" "5.12.0"
+ "@stoplight/prism-http-server" "^5.12.0"
"@stoplight/types" "^14.1.0"
chalk "^4.1.2"
chokidar "^3.5.2"
fp-ts "^2.11.5"
- json-schema-faker "0.5.3"
+ json-schema-faker "0.5.8"
+ jsonrepair "^3.12.0"
lodash "^4.17.21"
node-fetch "^2.6.5"
pino "^6.13.3"
signale "^1.4.0"
- split2 "^3.2.2"
+ split2 "^4.2.0"
tslib "^2.3.1"
uri-template-lite "^22.9.0"
urijs "^1.19.11"
yargs "^16.2.0"
-"@stoplight/prism-core@^5.6.0", "@stoplight/prism-core@^5.8.0":
+"@stoplight/prism-core@^5.8.0":
version "5.8.0"
resolved "https://registry.yarnpkg.com/@stoplight/prism-core/-/prism-core-5.8.0.tgz#850917e1c45bfcd92012b3b235d20e3087600372"
integrity sha512-fmH7n6e0thzOGcD5uZBu/Xx1iFNfpc9ACTxPie+lFD54SJ214M2FIFXD7kV+NCFlC+w5OFw+lJRaYM859uMnAg==
@@ -144,7 +156,7 @@
pino "^6.13.3"
tslib "^2.3.1"
-"@stoplight/prism-http-server@^5.6.0":
+"@stoplight/prism-http-server@^5.12.0":
version "5.12.2"
resolved "https://registry.yarnpkg.com/@stoplight/prism-http-server/-/prism-http-server-5.12.2.tgz#d8de94f6b3506b464a5c89ff049b1e0fc9822ef9"
integrity sha512-h7MpOuv/WPvf4MhQmXw3CygAZp64Ts0SOM4BdoafcgAOJZyvRAOjUNJeelGJsHYdPK0aB9NZsqsaKBtNfkYj+A==
@@ -162,7 +174,7 @@
tslib "^2.3.1"
type-is "^1.6.18"
-"@stoplight/prism-http@^5.12.0", "@stoplight/prism-http@^5.6.0":
+"@stoplight/prism-http@5.12.0", "@stoplight/prism-http@^5.12.0":
version "5.12.0"
resolved "https://registry.yarnpkg.com/@stoplight/prism-http/-/prism-http-5.12.0.tgz#b763292c5044e9213b558cbc44e5a2187cfffea4"
integrity sha512-H+B/SO4SgQ6DT3CHIDCMQFGOe48Yecj0Eu+6rXwrs5m1JFyA2nlDwz+r73QJLGQanN4Biod2s0V9pZRcs2JnPA==
@@ -528,6 +540,11 @@ fast-uri@^3.0.1:
resolved "https://registry.yarnpkg.com/fast-uri/-/fast-uri-3.1.0.tgz#66eecff6c764c0df9b762e62ca7edcfb53b4edfa"
integrity sha512-iPeeDKJSWf4IEOasVVrknXpaBV0IApz/gp7S2bb7Z4Lljbl2MGJRqInZiUrQwV16cpzw/D3S5j5Julj/gT52AA==
+fast-xml-builder@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/fast-xml-builder/-/fast-xml-builder-1.0.0.tgz#a485d7e8381f1db983cf006f849d1066e2935241"
+ integrity sha512-fpZuDogrAgnyt9oDDz+5DBz0zgPdPZz6D4IR7iESxRXElrlGTRkHJ9eEt+SACRJwT0FNFrt71DFQIUFBJfX/uQ==
+
fast-xml-parser@^4.2.0:
version "4.5.3"
resolved "https://registry.yarnpkg.com/fast-xml-parser/-/fast-xml-parser-4.5.3.tgz#c54d6b35aa0f23dc1ea60b6c884340c006dc6efb"
@@ -535,12 +552,13 @@ fast-xml-parser@^4.2.0:
dependencies:
strnum "^1.1.1"
-fast-xml-parser@^4.5.0:
- version "4.5.1"
- resolved "https://registry.yarnpkg.com/fast-xml-parser/-/fast-xml-parser-4.5.1.tgz#a7e665ff79b7919100a5202f23984b6150f9b31e"
- integrity sha512-y655CeyUQ+jj7KBbYMc4FG01V8ZQqjN+gDYGJ50RtfsUB8iG9AmwmwoAgeKLJdmueKKMrH1RJ7yXHTSoczdv5w==
+fast-xml-parser@^5.3.8:
+ version "5.4.2"
+ resolved "https://registry.yarnpkg.com/fast-xml-parser/-/fast-xml-parser-5.4.2.tgz#7fc66463b59260b0c5fd57edf46148a418bde68b"
+ integrity sha512-pw/6pIl4k0CSpElPEJhDppLzaixDEuWui2CUQQBH/ECDf7+y6YwA4Gf7Tyb0Rfe4DIMuZipYj4AEL0nACKglvQ==
dependencies:
- strnum "^1.0.5"
+ fast-xml-builder "^1.0.0"
+ strnum "^2.1.2"
fastestsmallesttextencoderdecoder@^1.0.22:
version "1.0.22"
@@ -664,11 +682,6 @@ iconv-lite@0.6.3:
dependencies:
safer-buffer ">= 2.1.2 < 3.0.0"
-inherits@^2.0.3:
- version "2.0.4"
- resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c"
- integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==
-
io-ts@^2.2.16:
version "2.2.22"
resolved "https://registry.yarnpkg.com/io-ts/-/io-ts-2.2.22.tgz#5ab0d3636fe8494a275f0266461ab019da4b8d0b"
@@ -755,14 +768,6 @@ json-schema-compare@^0.2.2:
dependencies:
lodash "^4.17.4"
-json-schema-faker@0.5.3:
- version "0.5.3"
- resolved "https://registry.yarnpkg.com/json-schema-faker/-/json-schema-faker-0.5.3.tgz#92f8a102037acf68e1c8e3a2e7c85726d285512d"
- integrity sha512-BeIrR0+YSrTbAR9dOMnjbFl1MvHyXnq+Wpdw1FpWZDHWKLzK229hZ5huyPcmzFUfVq1ODwf40WdGVoE266UBUg==
- dependencies:
- json-schema-ref-parser "^6.1.0"
- jsonpath-plus "^7.2.0"
-
json-schema-faker@0.5.8:
version "0.5.8"
resolved "https://registry.yarnpkg.com/json-schema-faker/-/json-schema-faker-0.5.8.tgz#13e8b53fef4d86de5c5d164763c80427da892b0c"
@@ -799,10 +804,10 @@ jsonpath-plus@^10.1.0, jsonpath-plus@^10.3.0:
"@jsep-plugin/regex" "^1.0.4"
jsep "^1.4.0"
-jsonpath-plus@^7.2.0:
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/jsonpath-plus/-/jsonpath-plus-7.2.0.tgz#7ad94e147b3ed42f7939c315d2b9ce490c5a3899"
- integrity sha512-zBfiUPM5nD0YZSBT/o/fbCUlCcepMIdP0CJZxM1+KgA4f2T206f6VAg9e7mX35+KlMaIc5qXW34f3BnwJ3w+RA==
+jsonrepair@^3.12.0:
+ version "3.13.2"
+ resolved "https://registry.yarnpkg.com/jsonrepair/-/jsonrepair-3.13.2.tgz#cdc35669241482969d0ef5c7a2e4673abccd76e1"
+ integrity sha512-Leuly0nbM4R+S5SVJk3VHfw1oxnlEK9KygdZvfUtEtTawNDyzB4qa1xWTmFt1aeoA7sXZkVTRuIixJ8bAvqVUg==
liquid-json@0.3.1:
version "0.3.1"
@@ -1050,15 +1055,6 @@ quick-format-unescaped@^4.0.3:
resolved "https://registry.yarnpkg.com/quick-format-unescaped/-/quick-format-unescaped-4.0.4.tgz#93ef6dd8d3453cbc7970dd614fad4c5954d6b5a7"
integrity sha512-tYC1Q1hgyRuHgloV/YXs2w15unPVh8qfu/qCTfhTYamaw7fyhumKa2yGpdSo87vY32rIclj+4fWYQXUMs9EHvg==
-readable-stream@^3.0.0:
- version "3.6.2"
- resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-3.6.2.tgz#56a9b36ea965c00c5a93ef31eb111a0f11056967"
- integrity sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==
- dependencies:
- inherits "^2.0.3"
- string_decoder "^1.1.1"
- util-deprecate "^1.0.1"
-
readdirp@~3.6.0:
version "3.6.0"
resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-3.6.0.tgz#74a370bd857116e245b29cc97340cd431a02a6c7"
@@ -1076,11 +1072,6 @@ require-from-string@^2.0.2:
resolved "https://registry.yarnpkg.com/require-from-string/-/require-from-string-2.0.2.tgz#89a7fdd938261267318eafe14f9c32e598c36909"
integrity sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==
-safe-buffer@~5.2.0:
- version "5.2.1"
- resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6"
- integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==
-
safe-stable-stringify@^1.1:
version "1.1.1"
resolved "https://registry.yarnpkg.com/safe-stable-stringify/-/safe-stable-stringify-1.1.1.tgz#c8a220ab525cd94e60ebf47ddc404d610dc5d84a"
@@ -1118,12 +1109,10 @@ sonic-boom@^1.0.2:
atomic-sleep "^1.0.0"
flatstr "^1.0.12"
-split2@^3.2.2:
- version "3.2.2"
- resolved "https://registry.yarnpkg.com/split2/-/split2-3.2.2.tgz#bf2cf2a37d838312c249c89206fd7a17dd12365f"
- integrity sha512-9NThjpgZnifTkJpzTZ7Eue85S49QwpNhZTq6GRJwObb6jnLFNGB7Qm73V5HewTROPyxD0C29xqmaI68bQtV+hg==
- dependencies:
- readable-stream "^3.0.0"
+split2@^4.2.0:
+ version "4.2.0"
+ resolved "https://registry.yarnpkg.com/split2/-/split2-4.2.0.tgz#c9c5920904d148bab0b9f67145f245a86aadbfa4"
+ integrity sha512-UcjcJOWknrNkF6PLX83qcHM6KHgVKNkV62Y8a5uYDVv9ydGQVwAHMKqHdJje1VTWpljG0WYpCDhrCdAOYH4TWg==
sprintf-js@~1.0.2:
version "1.0.3"
@@ -1139,13 +1128,6 @@ string-width@^4.1.0, string-width@^4.2.0:
is-fullwidth-code-point "^3.0.0"
strip-ansi "^6.0.1"
-string_decoder@^1.1.1:
- version "1.3.0"
- resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.3.0.tgz#42f114594a46cf1a8e30b0a84f56c78c3edac21e"
- integrity sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==
- dependencies:
- safe-buffer "~5.2.0"
-
strip-ansi@^6.0.0, strip-ansi@^6.0.1:
version "6.0.1"
resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9"
@@ -1158,11 +1140,16 @@ strip-bom@^3.0.0:
resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-3.0.0.tgz#2334c18e9c759f7bdd56fdef7e9ae3d588e68ed3"
integrity sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==
-strnum@^1.0.5, strnum@^1.1.1:
+strnum@^1.1.1:
version "1.1.2"
resolved "https://registry.yarnpkg.com/strnum/-/strnum-1.1.2.tgz#57bca4fbaa6f271081715dbc9ed7cee5493e28e4"
integrity sha512-vrN+B7DBIoTTZjnPNewwhx6cBA/H+IS7rfW68n7XxC1y7uoiGQBxaKzqucGUgavX15dJgiGztLJ8vxuEzwqBdA==
+strnum@^2.1.2:
+ version "2.2.0"
+ resolved "https://registry.yarnpkg.com/strnum/-/strnum-2.2.0.tgz#8b582b637e4621f62ff714493e0ce30846f903a6"
+ integrity sha512-Y7Bj8XyJxnPAORMZj/xltsfo55uOiyHcU2tnAVzHUnSJR/KsEX+9RoDeXEnsXtl/CX4fAcrt64gZ13aGaWPeBg==
+
supports-color@^5.3.0:
version "5.5.0"
resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz#e2e69a44ac8772f78a1ec0b35b689df6530efc8f"
@@ -1217,11 +1204,6 @@ urijs@^1.19.11:
resolved "https://registry.yarnpkg.com/urijs/-/urijs-1.19.11.tgz#204b0d6b605ae80bea54bea39280cdb7c9f923cc"
integrity sha512-HXgFDgDommxn5/bIv0cnQZsPhHDA90NPHD6+c/v21U5+Sx5hoP8+dP9IZXBU1gIfvdRfhG8cel9QNPeionfcCQ==
-util-deprecate@^1.0.1:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf"
- integrity sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==
-
utility-types@^3.10.0:
version "3.11.0"
resolved "https://registry.yarnpkg.com/utility-types/-/utility-types-3.11.0.tgz#607c40edb4f258915e901ea7995607fdf319424c"