Skip to content

Commit

Permalink
Merge pull request #399 from mesilov/feature/390-prepare-publish-2-0
Browse files Browse the repository at this point in the history
Update CHANGELOG.md for new target release date
  • Loading branch information
mesilov authored Aug 27, 2024
2 parents f67bc8a + 17532dc commit 94f43ba
Show file tree
Hide file tree
Showing 560 changed files with 8,490 additions and 2,276 deletions.
90 changes: 62 additions & 28 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# bitrix24-php-sdk change log

## 2.0-beta.3 — 1.07.2024
## 2.0-beta.3 — 15.08.2024

### Added

Expand All @@ -10,6 +10,7 @@
* `symfony/filesystem` version `^6 || ^7`
* `symfony/mime` version `^6 || ^7`
* `nesbot/carbon` version `3.3.*`
* `mesilov/moneyphp-percentage` version `0.2.*`
* add scope `bizproc` and [services](https://github.com/mesilov/bitrix24-php-sdk/issues/376) for work with workflows:
* `Activity` – service for work with application activities:
* `add` – adds new activity to a workflow
Expand Down Expand Up @@ -44,7 +45,7 @@
* add `Bitrix24\SDK\Infrastructure\Filesystem\Base64Encoder` for work with base64 encoding
* add `Bitrix24\SDK\Core\Exceptions\FileNotFoundException` if file not found
* add `Bitrix24\SDK\Core\Exceptions\MethodConfirmWaitingException` if api call waiting for confirm
* add `Bitrix24\SDK\Core\Exceptions\UserNotFoundOrIsNotActiveException` exception if user not found, or it is not active
* add `Bitrix24\SDK\Core\Exceptions\UserNotFoundOrIsNotActiveException` exception if user not found, or it is not active
* add `Bitrix24\SDK\Core\Result\UserInterfaceDialogCallResult` result of call UI
* add `Bitrix24\SDK\Core\Result\EmptyResult` empty result
* add `IncomingRobotRequest` wrapper for data from crm-robot request
Expand All @@ -54,13 +55,25 @@
* add method `Bitrix24\SDK\Application\Requests\Events\AbstractEventRequest::getAuth` - get event auth token
* add method `Bitrix24\SDK\Application\Requests\Events\EventAuthItem` - event auth token
* add method `Bitrix24\SDK\Application\Requests\Events\EventInterface` - for event fabrics
* add method `Bitrix24\SDK\Infrastructure\Filesystem\Base64Encoder::encodeCallRecord(string $filename): string` - for work with call records
* add method `Bitrix24\SDK\Infrastructure\Filesystem\Base64Encoder::encodeCallRecord(string $filename): string` - for
work with call records
* add class `Bitrix24\SDK\Services\Main\Service\EventManager` - improve DX for work with events lifecycle bind or unbind
* add method `Bitrix24\SDK\Services\Main\Common\EventHandlerMetadata` - improve DX for work with install events
* improve DX - add [Rector](https://github.com/rectorphp/rector) for improve code quality and speed up releases cycle
* add enum `Bitrix24\SDK\Services\CRM\Common\Result\DiscountType`
* add exception `Bitrix24\SDK\Core\Exceptions\WrongAuthTypeException` – if you use wrong auth type.
* add class fields filter `Bitrix24\SDK\Core\Fields\FieldsFilter` for fields filtration in result array.
* improve DX – add [Rector](https://github.com/rectorphp/rector) for improve code quality and speed up releases cycle
* improve DX – add attributes for generate documentation and calculate methods coverage.
* command for generate documentation
```shell
php bin/console b24:util:generate-coverage-documentation
```
* improve DX – add [internal documentation](/docs/EN/documentation.md).

### Changed

* ❗️ migrate from `ramsey/uuid` to `symfony/uid`
* ❗️ migrate from `DateTimeImmutable` to `CarbonImmutable` from [carbon](https://github.com/briannesbitt/carbon)
* ❗️ refactor `Bitrix24\SDK\Application\Contracts`:

* ❗️ update scope `telephony`, scope fully rewritten
Expand Down Expand Up @@ -95,34 +108,52 @@
* `get` - method returns user settings
* `Voices` - work with voximplant tts voices
* `get` - method returns all voximplant voices
* `Line` - work with voximplant sip lines
* `outgoingSipSet` - method sets the selected SIP line as an outgoing line by default.
* `get` - returns list of all of the available outgoing lines
* `outgoingGet` - returns the currently selected line as an outgoing line by default.
* `outgoingSet` - sets the selected line as an outgoing line by default.
* `InfoCall` - work with voximplant info call functional
* `startWithText` - method performs the call to the specified number with automatic voiceover of specified
text
* `startWithSound` - method makes a call to the specified number with playback of .mp3 format file by URL.
* `Url` - work with links for browsing telephony scope pages
* `get` - returns a set of links for browsing telephony scope pages.
* `Line` - work with voximplant sip lines
* `outgoingSipSet` - method sets the selected SIP line as an outgoing line by default.
* `get` - returns list of all of the available outgoing lines
* `outgoingGet` - returns the currently selected line as an outgoing line by default.
* `outgoingSet` - sets the selected line as an outgoing line by default.
* `InfoCall` - work with voximplant info call functional
* `startWithText` - method performs the call to the specified number with automatic voiceover of
specified
text
* `startWithSound` - method makes a call to the specified number with playback of .mp3 format file by
URL.
* `Url` - work with links for browsing telephony scope pages
* `get` - returns a set of links for browsing telephony scope pages.
* add events with payload and `TelephonyEventsFabric`:
* `OnExternalCallBackStart` - It is called when a visitor fills out a CRM form for callback. Your application shall be selected in the form settings as the line that to be used for a callback.
* `OnExternalCallStart` - The event handler is called whenever a user clicks a phone number in CRM object to initiate an outbound call.
* `OnVoximplantCallEnd` - The event is raised when conversation ends (history entry).
* `OnVoximplantCallInit` - The event is raised when a call is being initialized (regarding the entry or start of an outbound call).
* `OnVoximplantCallStart` - The event is raised when a conversation starts (operator responds to an inbound call; call recipient responds to an outbound call).
* `OnExternalCallBackStart` - It is called when a visitor fills out a CRM form for callback. Your application
shall be selected in the form settings as the line that to be used for a callback.
* `OnExternalCallStart` - The event handler is called whenever a user clicks a phone number in CRM object to
initiate an outbound call.
* `OnVoximplantCallEnd` - The event is raised when conversation ends (history entry).
* `OnVoximplantCallInit` - The event is raised when a call is being initialized (regarding the entry or start of
an outbound call).
* `OnVoximplantCallStart` - The event is raised when a conversation starts (operator responds to an inbound
call; call recipient responds to an outbound call).
* add `TranscriptMessage` – data structure for transcript message item
* add `TranscriptMessageSide` – enum for describe side of diarization
* add `CallType` – call types enum
* add `CrmEntityType` – crm entity type enum
* add `PbxType` – pbx type enum
* add `SipRegistrationStatus` – pbx sip line registration status
* change signature `Bitrix24\SDK\Core\Credentials\AccessToken::getRefreshToken()?string;` - add nullable option for event tokens
* ❗️ update scope `im`, add service `Notify`:
* `fromSystem` - Sending system notification
* `fromPersonal` - Sending personal notification
* `delete` – Deleting notification
* `markAsRead` - Cancels notification for read messages.
* `markMessagesAsRead` – "Read" the list of notifications, excluding CONFIRM notification type.
* `markMessagesAsUnread` – "Unread" the list of notifications, excluding CONFIRM notification type.
* `confirm` – Interaction with notification buttons
* `answer` – Response to notification, supporting quick reply
* change signature `Bitrix24\SDK\Core\Credentials\AccessToken::getRefreshToken()?string;` - add nullable option for
event tokens
* change signature `Bitrix24\SDK\Core\Commands\Command::getName():?string` renamed to `getId():string`

* add fields and change return types in `Bitrix24\SDK\Services\CRM\Deal\Result\DealProductRowItemResult`
* change typehints in `Bitrix24\SDK\Services\CRM\Activity\Service\Activity::add`

### Deleted

* remove class `Bitrix24\SDK\Application\Requests\Events\OnApplicationInstall\Auth`
* remove class `Bitrix24\SDK\Application\Requests\Events\OnApplicationUninstall\Auth`
* remove method `Bitrix24\SDK\Core\Response\Response::__destruct`
Expand All @@ -132,9 +163,9 @@

### Bugfix

* fix [typehint for Bitrix24 User entity with field ID](https://github.com/mesilov/bitrix24-php-sdk/issues/382)
* fix [default arguments for Bitrix24 User get method](https://github.com/mesilov/bitrix24-php-sdk/issues/381)
* fix [limit argument not worked in batch list and read model](https://github.com/mesilov/bitrix24-php-sdk/issues/389)
* fix [typehint for Bitrix24 User entity with field ID](https://github.com/mesilov/bitrix24-php-sdk/issues/382)
* fix [default arguments for Bitrix24 User get method](https://github.com/mesilov/bitrix24-php-sdk/issues/381)
* fix [limit argument not worked in batch list and read model](https://github.com/mesilov/bitrix24-php-sdk/issues/389)

## 2.0-beta.2 — 1.04.2024

Expand Down Expand Up @@ -220,7 +251,8 @@
* fix [typehint at ContactItemResult](https://github.com/mesilov/bitrix24-php-sdk/issues/320)
* fix [return types in DealCategoryItemResult](https://github.com/mesilov/bitrix24-php-sdk/issues/322)
* fix [add auth node in telephony voximplant events requests](https://github.com/mesilov/bitrix24-php-sdk/issues/331)
* fix [add helper metods isError for registerCallResult fortelephony](https://github.com/mesilov/bitrix24-php-sdk/issues/335)
*
fix [add helper metods isError for registerCallResult fortelephony](https://github.com/mesilov/bitrix24-php-sdk/issues/335)
* fix [add return type for crm multifields phone, email, im](https://github.com/mesilov/bitrix24-php-sdk/issues/338)
* fix errors in `ShowFieldsDescriptionCommand` metadata reader CLI command
* fix errors for `ApplicationProfile` with empty scope
Expand Down Expand Up @@ -294,11 +326,13 @@
, `createFromPlacementRequest`
*

❗️deleted [unused class](https://github.com/mesilov/bitrix24-php-sdk/issues/303) `Bitrix24\SDK\Core\Response\DTO\ResponseDataCollection`
❗️deleted [unused class](https://github.com/mesilov/bitrix24-php-sdk/issues/303)
`Bitrix24\SDK\Core\Response\DTO\ResponseDataCollection`

*

❗️deleted [redundant class](https://github.com/mesilov/bitrix24-php-sdk/issues/303) `Bitrix24\SDK\Core\Response\DTO\Result`
❗️deleted [redundant class](https://github.com/mesilov/bitrix24-php-sdk/issues/303)
`Bitrix24\SDK\Core\Response\DTO\Result`

* ❗️deleted [method](https://github.com/mesilov/bitrix24-php-sdk/issues/303) `CoreBuilder::withWebhookUrl`, use
method `CoreBuilder::withCredentials`
Expand Down
2 changes: 1 addition & 1 deletion MIT-LICENSE.txt
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
Copyright 2022 Maxim Mesilov
Copyright 2024 Maksim Mesilov

Permission is hereby granted, free of charge, to any person obtaining
a copy of this software and associated documentation files (the
Expand Down
31 changes: 31 additions & 0 deletions Makefile
Original file line number Diff line number Diff line change
@@ -1,14 +1,37 @@
# This file is part of the bitrix24-php-sdk package.
#
# © Maksim Mesilov <mesilov.maxim@gmail.com>
#
# For the full copyright and license information, please view the MIT-LICENSE.txt
# file that was distributed with this source code.

default:
@echo "make needs target:"
@egrep -e '^\S+' ./Makefile | grep -v default | sed -r 's/://' | sed -r 's/^/ - /'

# load default and personal env-variables
ENV := $(PWD)/tests/.env
ENV_LOCAL := $(PWD)/tests/.env.local
include $(ENV)
include $(ENV_LOCAL)

debug-show-env:
@echo BITRIX24_WEBHOOK $(BITRIX24_WEBHOOK)
@echo DOCUMENTATION_DEFAULT_TARGET_BRANCH $(DOCUMENTATION_DEFAULT_TARGET_BRANCH)

# build documentation
build-documentation:
php bin/console b24:util:generate-coverage-documentation --webhook=$(BITRIX24_WEBHOOK) --repository-url=https://github.com/mesilov/bitrix24-php-sdk --repository-branch=$(DOCUMENTATION_DEFAULT_TARGET_BRANCH) --file=docs/EN/Services/bitrix24-php-sdk-methods.md

# linters
lint-phpstan:
vendor/bin/phpstan --memory-limit=1G analyse
lint-rector:
vendor/bin/rector process --dry-run
lint-rector-fix:
vendor/bin/rector process

# unit tests
test-unit:
vendor/bin/phpunit --testsuite unit_tests --display-warnings

Expand All @@ -17,7 +40,15 @@ test-integration-scope-telephony:
vendor/bin/phpunit --testsuite integration_tests_scope_telephony
test-integration-scope-workflows:
vendor/bin/phpunit --testsuite integration_tests_scope_workflows
test-integration-scope-im:
vendor/bin/phpunit --testsuite integration_tests_scope_im
test-integration-scope-placement:
vendor/bin/phpunit --testsuite integration_tests_scope_placement
test-integration-scope-im-open-lines:
vendor/bin/phpunit --testsuite integration_tests_scope_im_open_lines
test-integration-scope-user:
vendor/bin/phpunit --testsuite integration_tests_scope_user
test-integration-scope-user-consent:
vendor/bin/phpunit --testsuite integration_tests_scope_user_consent
test-integration-core:
vendor/bin/phpunit --testsuite integration_tests_core
Loading

0 comments on commit 94f43ba

Please sign in to comment.