Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update CHANGELOG.md for new target release date #399

Merged
  •  
  •  
  •  
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
Loading