This repository was archived by the owner on Feb 7, 2025. It is now read-only.
Releases: mesilov/bitrix24-php-sdk
Releases · mesilov/bitrix24-php-sdk
2.0
2.0-beta.3
Added
- add dependencies
symfony/consoleversion^6 || ^7symfony/dotenvversion^6 || ^7symfony/filesystemversion^6 || ^7symfony/mimeversion^6 || ^7nesbot/carbonversion3.3.*mesilov/moneyphp-percentageversion0.2.*
- add scope
bizprocand services for work with workflows:Activity– service for work with application activities:add– adds new activity to a workflowdelete– delete an activitylist– returns list of activities, installed by the applicationlog– records data in the workflow logupdate– update activity fields
Robot– service for work with application automation rules (robots):add– registers new automation ruledelete– deletes registered automation rulelist– returns list of automation rules, registered by the applicationupdate– updates fields of automation rules
Event– service for work with return parameters¨send– Returns the output parameters to the activity
Providers— deprecated methods, not implementedWorkflow— service for work with workflow instancesinstances– returns list of launched workflowskill– delete a launched workflowstart– launches a workflowterminate– stops an active workflow
Template— service for work with workflow templatesadd– add a workflow templatedelete– delete workflow templatelist– returns list of workflow templatesupdate– update workflow template
Tasks— service for work with workflow taskscomplete– Complete workflow tasklist– List of workflow tasks
- add
WorkflowActivityDocumentType
- add method
Bitrix24\SDK\Core\Credentials\AccessToken::initFromWorkflowRequest - add method
Bitrix24\SDK\Core\Credentials\AccessToken::initFromEventRequest - add
Bitrix24\SDK\Infrastructure\Filesystem\Base64Encoderfor work with base64 encoding - add
Bitrix24\SDK\Core\Exceptions\FileNotFoundExceptionif file not found - add
Bitrix24\SDK\Core\Exceptions\MethodConfirmWaitingExceptionif api call waiting for confirm - add
Bitrix24\SDK\Core\Exceptions\UserNotFoundOrIsNotActiveExceptionexception if user not found, or it is not active - add
Bitrix24\SDK\Core\Result\UserInterfaceDialogCallResultresult of call UI - add
Bitrix24\SDK\Core\Result\EmptyResultempty result - add
IncomingRobotRequestwrapper for data from crm-robot request - add
IncomingWorkflowRequestwrapper for data from biz proc activity request - add
Bitrix24\SDK\Core\Credentials::isWebhookContext- for check is current context init from webhook - add method
Bitrix24\SDK\Application\Requests\Events\AbstractEventRequest::getEventId- for get event id - 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 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 - 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\FieldsFilterfor fields filtration in result array. - improve DX – add 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
php bin/console b24:util:generate-coverage-documentation - improve DX – add internal documentation.
Changed
-
❗️ migrate from
ramsey/uuidtosymfony/uid -
❗️ migrate from
DateTimeImmutabletoCarbonImmutablefrom carbon -
❗️ refactor
Bitrix24\SDK\Application\Contracts: -
❗️ update scope
telephony, scope fully rewrittenExternalCall– work with external call:getCallRecordUploadUrl– get url for upload call record fileattachCallRecordInBase64– attach call record encoded in base64register– registers a call in Bitrix24searchCrmEntities– retrieve information about a client from CRM by a telephone number via single requestfinishForUserPhoneInner– completes the call, registers it in the statistics and hides the call ID screen
from the userfinishForUserId– completes the call, registers it in the statistics and hides the call ID screen from the
usershow– displays a call ID screen to the userhide– hides call information window
Call– work with call:attachTranscription– method adds a call transcript
ExternalLine– work with external line:add– method adds an external linedelete– method delete external lineget– method gets external lines list
Voximplant– work with voximplant namespace:Sip– work with sip lines:get- get sip lines listadd- add new sip linedelete- delete sip linestatus- pbx sip line registration statusupdate- update sip line settingsgetConnectorStatus- returns the current status of the SIP Connector.
User- work with voximplant sip user mapped on bitrix24 userdeactivatePhone- method disables an indicator of SIP-phone availabilityactivatePhone- method raises the event of SIP-phone availability for an employeeget- method returns user settings
Voices- work with voximplant tts voicesget- method returns all voximplant voices
Line- work with voximplant sip linesoutgoingSipSet- method sets the selected SIP line as an outgoing line by default.get- returns list of all of the available outgoing linesoutgoingGet- 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 functionalstartWithText- method performs the call to the specified number with automatic voiceover of
specified
textstartWithSound- method makes a call to the specified number with playback of .mp3 format file by
URL.
Url- work with links for browsing telephony scope pagesget- 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).
- 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
-
❗️ update scope
im, add serviceNotify:fromSystem- Sending system notificationfromPersonal- Sending personal notificationdelete– Deleting notificationmarkAsRead- 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 buttonsanswer– 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():?stringrenamed togetId():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 - remove interface `Bitrix24\SDK\Services\T...
2.0-beta.2
What's Changed
- Update dependency versions in composer.json by @mesilov in #374
- 371 publish b24 php sdk beta 2 by @mesilov in #375
Full Changelog: 2.0-beta.1...2.0-beta.2
1.3
What's Changed
- add new subscription exception by @mesilov in #247
- add add callback function for PortalRenamed by @mesilov in #251
- 249 portal renamed by @mesilov in #252
- fix php version requirements again by @mesilov in #253
- change psr/log version requirements by @Elnadrion in #343
New Contributors
- @Elnadrion made their first contribution in #343
2.0-beta.1
Added
- ❗️add php 8.3, 8.2 support, drop 8.1 and 8.0 support
- add
Symfony\Component\Uid\Uuidrequirements - add contracts for bitrix24 applications based on bitrix24-php-sdk -
Bitrix24\SDK\Application\Contracts, now
addedBitrix24Account - add service builder factory
- add method
Bitrix24\SDK\Core\Credentials\Scope::initFromString - add method
Bitrix24\SDK\Application\ApplicationStatus::initFromString - add system CRM multi-field type
Bitrix24\SDK\Services\CRM\Common\Result\SystemFields\Types\Phone - add scope
user,user_basic,user_brief,user.userfieldand
services add scope user supportBitrix24\SDK\Services\User\Service\User::fields- get user fieldsBitrix24\SDK\Services\User\Service\User::current- get current userBitrix24\SDK\Services\User\Service\User::add- add userBitrix24\SDK\Services\User\Service\User::get- get userBitrix24\SDK\Services\User\Service\User::update- update userBitrix24\SDK\Services\User\Service\User::search- search users
- add method
\Bitrix24\SDK\Services\CRM\Contact\Service\Batch::update()for batch update contacts - add crm item support
- add enum
DealStageSemanticId - add Duplicate search support for
Bitrix24\SDK\Services\CRM\Duplicates\Service\Duplicate - add
x-request-idheader support - add CRM multifields support header support
EmailPhoneWebsiteIM
- add Catalog scope services support
Changed
- ❗️Batch interface
BatchInterfacerenamed
toBitrix24\SDK\Core\Contracts\BatchOperationsInterface - ❗
Bitrix24\SDK\Services\Telephony\Requests\Eventsmoved to separated namespaces:- from
Bitrix24\SDK\Services\Telephony\Requests\Events\OnVoximplantCallInit
toBitrix24\SDK\Services\Telephony\Requests\Events\OnVoximplantCallInit\OnVoximplantCallInit - from
Bitrix24\SDK\Services\Telephony\Requests\Events\OnVoximplantCallStart
toBitrix24\SDK\Services\Telephony\Requests\Events\OnVoximplantCallStart\OnVoximplantCallStart - from
Bitrix24\SDK\Services\Telephony\Requests\Events\OnExternalCallStart
toBitrix24\SDK\Services\Telephony\Requests\Events\OnExternalCallStart\OnExternalCallStart - from
Bitrix24\SDK\Services\Telephony\Requests\Events\OnVoximplantCallEnd
toBitrix24\SDK\Services\Telephony\Requests\Events\OnVoximplantCallEnd\OnVoximplantCallEnd
- from
- ❗Changes in
Bitrix24\SDK\Application\Contracts\Bitrix24Account\Bitrix24AccountInterface:- method
getContactPersonrenamed togetContactPersonId - added method
getApplicationVersion - added method
updateApplicationVersion - added method
getApplicationScope - added method
applicationInstalled - added method
applicationUninstalled - added method
markAsDeactivated - added method
getBitrix24UserId - removed method
markAccountAsDeleted - changed method
markAsActive
- method
- ❗Changes in
Bitrix24\SDK\Application\Contracts\Bitrix24Account\Bitrix24AccountRepositoryInterface:- method
saveAccountrenamed tosave - method
deleteAccountrenamed todelete - method
findAccountByMemberIdrenamed tofindByMemberId - method
getAccountByMemberIdrenamed togetByMemberId - method
findAccountByContactPersonIdrenamed tofindByContactPersonId - method
findAccountByDomainUrlrenamed tofindByDomainUrl - add method
findAllActive - add method
findAllDeactivated
- method
Bugfix
- fix typehint at ContactItemResult
- fix return types in DealCategoryItemResult
- fix add auth node in telephony voximplant events requests
- fix add helper metods isError for registerCallResult fortelephony
- fix add return type for crm multifields phone, email, im
- fix errors in
ShowFieldsDescriptionCommandmetadata reader CLI command - fix errors for
ApplicationProfilewith empty scope - fix errors in
Corewith auth attempt to non-exists portal
etc
- move CLI entry point to
bin/console
2.0-alpha.7
Added
- add new scope
Telephonyand services add Telephony support - add new scope
UserConsentand services add UserConsent support - add new scope
Placementsand services add Placements support - add new scope
IMOpenLinesand services add IM Open Lines support - add in scope
CRMnew serviceLeadsin scope «CRM» add Leads support - add in scope
CRMnew serviceActivityin scope «CRM» add Activity support - add in scope
CRMfor entity Deal methodServices\CRM\Deal\Service\Batch::updatebatch update deals - add in scope
CRMfor entity Contact methodServices\CRM\Contact\Service\Batch::deletebatch delete contacts - add in scope
CRMread models for activityServices\CRM\Activity\ReadModel
for activity types:EmailFetcher,OpenLineFetcher,VoximplantFetcher,WebFormFetcher - add in scope «Main» new service
Eventsadd incoming events support - add support Application level events:
ONAPPINSTALL
andONAPPUNINSTALLadd incoming events support - add support Application level event:
PortalDomainUrlChangedEvent - add method
Core\Batch::updateEntityItemsfor update items in batch mode and
integration test - add method to interface
Core\Contracts\BatchInterface::updateEntityItemsfor update items in batch mode - add in scope
PlacementsservicePlacement\Service\UserFieldTypefor work with user fields embedding - add in scope
Telephonyadd events:OnExternalCallBackStart,OnExternalCallStart,OnVoximplantCallEnd,OnVoximplantCallEnd,OnVoximplantCallInit,OnVoximplantCallStartsee add telephony events - add
ApplicationStatuswith application status codes description - add fabric method
AccessToken::initFromPlacementRequestwhen application init form placement request - add fabric method
ApplicationProfile::initFromArraywhen application profile stored in ENV-variables - add
Bitrix24\SDK\Application\Requests\Placement\PlacementRequestfor application data from placements - add fabric method
Credentials::initFromPlacementRequestwhen application init form placement request - add method
Services\Main\Service::getServerTimereturns current server time in the format YYYY-MM-DDThh:mm:ss±hh:mm. - add method
Services\Main\Service::getCurrentUserProfilereturn basic Information about the current user without any scopes - add method
Services\Main\Service::getAccessNamereturns access permission names. - add method
Services\Main\Service::checkUserAccessChecks if the current user has at least one permission of those specified by the ACCESS parameter. - add method
Services\Main\Service::getMethodAffordabilityMethod returns 2 parameters - isExisting and isAvailable - add money type support by phpmoney
- add support fields
operatingandoperating_reset_atatBitrix24\SDK\Core\Response\DTO\Timedatastructures
Changed
- update scope list расширить и актуализировать доступные скоупы
- bump
symfony/*to6.*version requirement. - method
Services\Main\Service::getAvailableMethodsmarks as deprecated - method
Services\Main\Service::getAllMethodsmarks as deprecated - method
Services\Main\Service::getMethodsByScopemarks as deprecated - ❗️fabric methods
Bitrix24\SDK\Core\Credentials
renamed and now are consistent:createFromWebhook,createFromOAuth,createFromPlacementRequest - ❗️deleted unused class
Bitrix24\SDK\Core\Response\DTO\ResponseDataCollection - ❗️deleted redundant class
Bitrix24\SDK\Core\Response\DTO\Result - ❗️deleted method
CoreBuilder::withWebhookUrl, use
methodCoreBuilder::withCredentials
Bugfix
- add bugfix for batch method for reverse order queries
- fix type compatible errors for
Core\Result\AbstractItem - fix error in
NetworkTimingParser, error in NetworkTimingsErrorInfo - fix error in
RenewedAccessTokenDTO, removeScope
enum UnknownScopeCodeException - in refresh token response
etc
- add link to boosty.to/bitrix24-php-sdk for sponsoring development
2.0-alpha.6
2.0-alpha.6 — 7.02.2021
Added
- add «fast» batch-query without counting elements in result
recordset Добавить поддержку выгрузки большого количества данных без подсчёта элементов -1 - add
Credentialsin CoreBuilder set credentials from core builder - add method
Core\Batch::deleteEntityItemsfor delete items in batch mode and integration test - add integration test for read strategy
FilterWithBatchWithoutCountOrderTest - add type check in method
Core\Batch::deleteEntityItems- only integer id allowed - add interface
Core\Contracts\DeletedItemResultInterface - add in scope «CRM»
Services\CRM\Deal\Service\Batch::deletebatch delete deals - add
symfony/stopwatchcomponent for integration tests - add
/Infrastructure/HttpClient/TransportLayer/NetworkTimingsParserfor parsecurl_infonetwork data structures for debug logs
inBitrix24\SDK\Core\Response::__destruct() - add
/Infrastructure/HttpClient/TransportLayer/ResponseInfoParserfor parsebitrix24_rest_apitiming info for debug logs
inBitrix24\SDK\Core\Response::__destruct() - add
Bitrix24\SDK\Core\BulkItemsReaderfor data-intensive applications for bulk export data from Bitrix24, read strategies located in
folderReadStrategies, in services read model must use most effective read strategy. - add integration tests in GitHub Actions pipeline 🎉, now integration tests run on push on
dev-branch - add incoming webhook for run integration tests
vendor-check.ymlfrom vendor CI\CD pipeline
Changed
- switch
symfony/http-clientto5.4.*version requirement. - switch
symfony/http-client-contractsto^2.5version requirement. - switch
symfony/event-dispatcherto5.4.*version requirement. - switch
ramsey/uuidto^4.2.3version requirement. - switch
psr/logto^1.1.4 || ^2.0 || ^3.0version requirement.
1.2.2
1.2.1
1.2.0
1.2.0 (15.01.2022)
- add callback function for PortalRenamed
event Добавить callback-функцию при переименовании портала для ветки 1.x - bump minimum php version for 5.4.*
- disable default CURLOPT_FOLLOWLOCATION