PHP code example of alex-nzr / bit-umc-sdk
1. Go to this page and download the library: Download alex-nzr/bit-umc-sdk library . Choose the download type require .
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
alex-nzr / bit-umc-sdk example snippets
use ANZ\BitUmc\SDK\BitUmcClient;
use ANZ\BitUmc\SDK\Transport\Auth\BasicAuth;
use ANZ\BitUmc\SDK\Transport\ConnectionOptions;
use ANZ\BitUmc\SDK\Transport\Protocol;
use ANZ\BitUmc\SDK\Transport\TransportType;
$client = new BitUmcClient(
TransportType::SOAP,
new ConnectionOptions(
protocol: Protocol::HTTP,
host: '127.0.0.1:3500',
baseName: 'umc',
auth: new BasicAuth('1cUser', '1cUserPassword'),
apiKey: null,
)
);
$client->getClinics();
$client->getEmployees();
$client->getNomenclature($clinicUid);
$client->getSchedule($scheduleQuery);
$client->iterateClinics();
$client->iterateEmployees();
$client->iterateNomenclature($clinicUid);
$client->iterateSchedule($scheduleQuery);
$client->getAppointmentStatus($appointmentUid);
$client->sendReserve($reserveRequest);
$client->sendWaitList($waitListRequest);
$client->sendAppointment($bookAppointmentRequest);
$client->deleteAppointment($appointmentUid);
foreach ($client->iterateEmployees() as $employeeUid => $employee) {
$repository->save($employeeUid, $employee);
}
foreach ($client->iterateSchedule($query) as $record) {
if ($record['kind'] !== 'period') {
continue;
}
$repository->saveSchedulePeriod($record);
}
[
'kind' => 'period',
'clinicUid' => 'f679444a-22b7-11df-8618-002618dcef2c',
'specialtyUid' => '0j7rhngc0ldqu9gm0lzqvtc70l7qs9c40y8',
'employeeUid' => 'ac30e13a-3087-11dc-8594-005056c00008',
'employee' => [
'specialtyName' => 'Офтальмология',
'employeeName' => 'Барбышева Евгения Петровна',
'durationFrom1C' => '0001-01-01T00:15:00',
'durationInSeconds' => 900,
'timetable' => [
'freeFormatted' => [],
'busy' => [],
'free' => [],
],
'_extra' => [],
],
'timeType' => 'free',
'period' => [
'05-04-2026' => [
[
'typeOfTimeUid' => '624f2a40-5aa8-4f01-83f4-0f38535364bb',
'date' => '2026-04-05T00:00:00',
'timeBegin' => '2026-04-05T09:00:00',
'timeEnd' => '2026-04-05T09:30:00',
'formattedDate' => '05-04-2026',
'formattedTimeBegin' => '09:00',
'formattedTimeEnd' => '09:30',
'_extra' => [],
],
],
],
'formattedSlots' => [],
]
[
'f679444a-22b7-11df-8618-002618dcef2c' => [
'uid' => 'f679444a-22b7-11df-8618-002618dcef2c',
'name' => 'Центральная клиника',
],
'66abf7b4-2ff9-11df-8625-002618dcef2c' => [
'uid' => '66abf7b4-2ff9-11df-8625-002618dcef2c',
'name' => 'Третий центр',
],
]
[
'2eb1f97b-6a3c-11e9-936d-1856809fe650' => [
'uid' => '2eb1f97b-6a3c-11e9-936d-1856809fe650',
'name' => 'Юрий',
'surname' => 'Безногов',
'middleName' => 'Сергеевич',
'fullName' => 'Безногов Юрий Сергеевич',
'clinicUid' => 'f679444a-22b7-11df-8618-002618dcef2c',
'photo' => 'base64_encoded_photo',
'description' => 'Краткое описание из 1С',
'rating' => '',
'specialtyName' => 'Офтальмология',
'specialtyUid' => '0j7rhngc0ldqu9gm0lzqvtc70l7qs9c40y8',
'services' => [
'5210c9dc-65a2-11e9-936d-1856809fe650' => [
'uid' => '5210c9dc-65a2-11e9-936d-1856809fe650',
'personalDuration' => 0,
],
],
],
]
[
'a0230570-3ef7-11de-8086-001485c0d477' => [
'uid' => 'a0230570-3ef7-11de-8086-001485c0d477',
'name' => 'Массаж век',
'typeOfItem' => 'Услуга',
'artNumber' => '',
'price' => '160',
'duration' => 1800,
'measureUnit' => 'мин',
'parent' => '5210c9bf-65a2-11e9-936d-1856809fe650',
],
'a0230571-3ef7-11de-8086-001485c0d477' => [
'uid' => 'a0230571-3ef7-11de-8086-001485c0d477',
'name' => 'Гель для массажа',
'typeOfItem' => 'Материал',
'artNumber' => '101-55',
'price' => '100',
'duration' => 900,
'measureUnit' => 'мл',
'parent' => '00000000-0000-0000-0000-000000000000',
],
]
[
'f679444a-22b7-11df-8618-002618dcef2c' => [
'0j7rhngc0ldqu9gm0lzqvtc70l7qs9c40y8' => [
'ac30e13a-3087-11dc-8594-005056c00008' => [
'specialtyName' => 'Офтальмология',
'employeeName' => 'Барбышева Евгения Петровна',
'durationFrom1C' => '0001-01-01T00:15:00',
'durationInSeconds' => 900,
'timetable' => [
'freeFormatted' => [
'05-04-2026' => [
[
'typeOfTimeUid' => '624f2a40-5aa8-4f01-83f4-0f38535364bb',
'date' => '2026-04-05T00:00:00',
'timeBegin' => '2026-04-05T09:00:00',
'timeEnd' => '2026-04-05T09:15:00',
'formattedDate' => '05-04-2026',
'formattedTimeBegin' => '09:00',
'formattedTimeEnd' => '09:15',
],
],
],
],
],
],
],
]
[
'statusId' => '6',
'statusTitle' => 'Резерв времени',
]
[
'uid' => '432a40a2-2ea3-11f1-9bf7-8fedb1ae9f50',
]
[
'uid' => '432a40ab-2ea3-11f1-9bf7-8fedb1ae9f50',
]
[
'success' => true,
]
[
'success' => true,
]
use ANZ\BitUmc\SDK\Domain\Exception\BitUmcException;
try {
$clinics = $client->getClinics();
} catch (BitUmcException $e) {
echo $e->getMessage();
}
powershell
$env:BIT_UMC_TEST_PROTOCOL='HTTP'
$env:BIT_UMC_TEST_HOST='example.com'
$env:BIT_UMC_TEST_BASE_NAME='umc'
$env:BIT_UMC_TEST_LOGIN='login'
$env:BIT_UMC_TEST_PASSWORD='password'
php tests/Tools/CaptureSoapFixtures.php