change_pwd($post); if ($msg) $_GET['success2'] = $_GET['success3'] = $_GET['success'] = ""; } if ($_POST['ok_settings']) { $msg2 = $user->edit($_POST); if ($msg2) $_GET['success2'] = $_GET['success3'] = $_GET['success'] = ""; } if ($_POST['ok_vk']) { ini_set('display_errors', 1); error_reporting(E_ALL & ~E_DEPRECATED & ~E_STRICT & ~E_NOTICE); $msg2 = $user->edit_vk($_POST); if ($msg2) $_GET['success2'] = $_GET['success3'] = $_GET['success'] = ""; } if ($_POST['ok_zipal']) { $msg2 = $user->edit_zipal($_POST); if ($msg2) $_GET['success2'] = $_GET['success3'] = $_GET['success'] = ""; } /** WebAppRaiser section ************/ require_once($_SERVER["DOCUMENT_ROOT"]."/engine/classes/WebAppRaiser/autoload.php"); function dpm($data) { return '
'.print_r($data, true).'
'; } $WebAppRaiserPage = array( 'title'=> 'Интеграция ВебОценщик', 'status'=> 'success', 'msg'=> [], 'content'=> '', 'destination' => '', ); if(isset($_POST['form_id'])) { $post = clearInputData($_POST); if(!empty($post['form_id'])){ $WebAppRaiserAPI = new WebAppRaiserAPI($user); $form = WebAppRaiserForm::getForm($post['form_id']); $status = $form->validate(); $form->submit($status, $WebAppRaiserPage, $WebAppRaiserAPI); } } /** WebAppRaiser section end ************/ if ($_POST['ok_jcat']) { $msg2 = $user->edit_jcat($_POST); if ($msg2) $_GET['success2'] = $_GET['success3'] = $_GET['success'] = ""; } if ($_POST['settings_email']) { $msg_se = $user->settings_email(); if ($msg_se) $_GET['success2'] = $_GET['success3'] = $_GET['success'] = ""; } require($_SERVER['DOCUMENT_ROOT'] . "/templates/new-header.php"); $agenciesHaveAccessToNewComplexes = [4, 12028, 12061, 17328, 11325, 13735, 19093, 16378, 19467, 20197, 19909, 19646]; $show_settings_blocks = false; if ($user->agency || $user->users_admin || $_SESSION['individual']) { $show_settings_blocks = true; } $menuPermissions = $user->checkMenuPermissions(); $mounthArrray = ["Январь", "Февраль", "Март", "Апрель", "Май", "Июнь", "Июль", "Август", "Сентябрь", "Октябрь", "Ноябрь", "Декабрь"]; ?>

Настройки

' . $msg . '
'; if ($_GET['success']) echo '
Пароль успешно изменён
'; if ($msg2) echo '
' . $msg2 . '
'; if ($_GET['success2']) echo '
Настройки сохранены
'; if ($msg_se) echo '
' . $msg_se . '
'; if ($_GET['success3']) echo '
Тестовое письмо на почту ' . $user->email . ' успешно отправлено
'; $tarif = new Tarif; if ($user->id_manager) { $agency = new User; $departmentClass = new Department; $departmentUser = $departmentClass->getDepartment($_SESSION['id']); $thisIdManager = $user->id_manager; if ($departmentUser['role'] == 'manager_office_menager' || $departmentUser['role'] == 'agent') { if ($departmentUser['admin'] > 0) { $thisIdManager = $departmentUser['admin']; } } $agency->get($thisIdManager); if ($agency->id_manager) $agency->get($agency->id_manager); $id_tarif = $agency->id_tarif; $date_tarif = $agency->date_tarif; } else { $id_tarif = $user->id_tarif; $date_tarif = $user->date_tarif; } $tarif->get($id_tarif); $date_tarif = strtotime($date_tarif); $date_end = $date_tarif + $tarif->period * 3600 * 24; $date_end_f = date("d.m.Y H:i", $date_end); $dney = ceil(($date_end - time()) / 24 / 3600); if ($dney < 0) $dney = 0; $color = "color:red;"; if ($dney == -0) $dney = 0; if ($_SESSION['pay']) $color = "color:red;"; ?>
">

Тариф

nazv; ?>

Осталось

id_manager) { ?>

Оплата

period * 24 * 3600); echo $tarif->cena . " руб. на " . $tarif->period . " дней
до $date_b"; ?>

1
Основные настройки Настройте личные данные
2
Настройки рекламы объектов Настройте рекламу на Авито, Циан, Яндекс и других классифайдах
3
Настройте бизнес процессы компании Воронки продаж
4
Конфигурация Конфигурируйте систему под себя
5
Дополнительные сервисы Настройте дополнительные возможности JoyWork
6
Интеграции

Основные данные

role_developer) : ?> role_developer) : ?>
id}, {$user->agencyId})"; $q_token = mysql_query($sql_token); while ($r_token = mysql_fetch_assoc($q_token)) { $tokens[$r_token['user_id']] = $r_token['api_key']; if ($r_token['cian_id'] == 0) $r_token['cian_id'] = ''; if ($r_token['avito_id'] == 0) $r_token['avito_id'] = ''; $apis[$r_token['user_id']] = $r_token; } ?> 0) { $allowAnyIp = 0; $sql_select_permissions = "SELECT allow_any_ip FROM user_permissions WHERE user_id=$_SESSION[id]"; $permissions_result = mysql_query($sql_select_permissions); if (mysql_num_rows($permissions_result) > 0) { $r_u = mysql_fetch_assoc($permissions_result); $allowAnyIp = $r_u["allow_any_ip"]; } ?>
role_developer) { ?>
role_developer) { echo "

Ваше фото

Загрузите свою фотографию, она будет отображаться в презентациях для ваших клиентов

"; } else { echo "

Логотип компании

"; } ?>
$ph_url, "file" => $ph_url, "type" => "image/" . $pathInfo['extension'], "data" => array( "url" => $ph_url, "thumbnail" => $ph_url ) ); } // convert our array into json string $appendedFiles = json_encode($appendedFiles); ?>
get(User::getUserAgencyID()); if ($agencyForPhoto->photo) { ?>

Логотип агентства

role_developer) { ?>

Ваше фото

user_logo) { $pathInfo = pathinfo($user->user_logo); $ph_url = "https://" . $_SERVER['SERVER_NAME'] . "/photos/agency/" . $user->user_logo; $appendedFiles[] = array( "name" => $ph_url, "file" => $ph_url, "type" => "image/" . $pathInfo['extension'], "data" => array( "url" => $ph_url, "thumbnail" => $ph_url ) ); } // convert our array into json string $appendedFiles = json_encode($appendedFiles); ?>
role_developer) { ?>

Водяной знак для фото

0) { $watermark = mysql_fetch_assoc($rezWaterCheck)['watermark']; $pathInfo = pathinfo($watermark); $ph_url = "https://" . $_SERVER['SERVER_NAME'] . "/photos/agency/watermark/" . $watermark; $appendedFiles[] = array( "name" => $ph_url, "file" => $ph_url, "type" => "image/" . $pathInfo['extension'], "data" => array( "url" => $ph_url, "thumbnail" => $ph_url ) ); } // convert our array into json string $appendedFiles = json_encode($appendedFiles); ?>
role_developer) { ?>

Для загрузки в качестве водяного знака используйте картинку без фона (формат PNG), с прозрачностью от 40 до 80 процентов, размером не более 250 по ширине и 100 по высоте. После загрузки белый водяной знак может быть не видно на предпросмотре. Это нормально. Он же белый.

Отправляйте презентации клиентам

С помощью функции отправки презентаций вам больше не нужно рассказывать информацию об объекте по телефону и часами ждать, пока собственник или агент вышлет вам фотографии, чтобы отправить их клиенту.

Настройка отправлений

Как узнать SMTP/порт для своего почтового ящика?

Эти данные совпадают с параметрами настройки любой почтовой программы, например Outlook.

Ваш почтовый оператор обязательно указывает их в разделе «Техподдержка».

Ниже приведены данные для наиболее популярных почтовиков:

  • Яндекс — SMTP: smtp.yandex.ru, SSL: да, Порт: 465;
  • Mail.ru — SMTP: smtp.mail.ru, SSL: да, Порт: 465;
  • Gmail — SMTP: smtp.gmail.com SSL: да, Порт: 465;
  • Rambler — SMTP: smtp.rambler.ru, SSL: да, Порт: 465.

При этом, если у вас почта на Gmail, нужно удостовериться, что

Все сохранённые данные строго конфиденциальны и недоступны третьим лицам.

Справка

  • 1 Для отправки сообщений и получения обратной связи от клиентов мы рекомендуем Вам создать новый почтовый ящик на одном из почтовых сервисов. Мы настоятельно советуем использовать Яндекс, как самый простой в использовании и менее других блокирующий письма за спам;
  • 2 Также можно использовать mail.ru, но здесь возможна блокировка писем за спам;
  • 3

    Мы не рекомендуем использовать почту от Gmail, так как ее довольно сложно настроить на отправку писем с вашего ящика. Если вы хотите использовать существующую почту Gmail, нужно удостовериться, что:

    Внимание! Желательно сделать это до отправки тестового письма!

    Для разрешения войдите в аккаунт почты Gmail на соседней вкладке браузера и последовательно перейдите сначала по первой ссылке, затем по второй и подтвердите действия (во втором случае положение переключатель должно быть «Включить»);

  • 4 Если Вы хотите использовать существующую почту и у Вас включена двухфакторная аутентификация (вход по паролю и коду из sms, вот тут немного подробнее: blog.kaspersky.ru), то Вам необходимо задать отдельный пароль приложений (который не будет требовать ввода sms-кода — его можно задать в настройках двухфакторной аутентификации в почте). Указать его нужно в поле «Пароль от почты» вместо обычного пароля от почты;
  • В случае проблемы с настройкой почты обратитесь в службу поддержки по телефону: +7(812) 765-08-01

Дополнительные материалы

Видео-инструкция по настройке почты

is_pwd) { ?>

Пароль

can('advert-stats')) { ?>
 

Ваши XML-фиды для автовыгрузки

id_manager) > 0 ? $user->id_manager : $user->id; $yandexFeedName = $feedCompanyId; if ($yandexFeedName == 177) { $yandexFeedName = "1ght764cndh"; } $feedUrl = "https://joywork.ru/feeds/".$yandexFeedName.".xml"; $avFeedUrl = "https://joywork.ru/av_feeds/".$feedCompanyId.".xml"; $cianFeed2Url = "https://joywork.ru/cian_feed_v2/".$feedCompanyId.".xml"; $emlsFeed = "https://joywork.ru/cian_feed_jcat/".$feedCompanyId.".xml"; $bnYandexFeedUrl = "https://joywork.ru/bn_ya_feeds/".$feedCompanyId.".xml"; $domFeedUrl = "https://joywork.ru/dom_feeds/".$feedCompanyId.".xml"; $objectsUrl = "https://joywork.ru/objects-from-feed.php?id_agent=".$feedCompanyId; $objectsAvitoUrl = "https://joywork.ru/objects-from-feed.php?avito=1&id_agent=".$feedCompanyId; $objectsCianUrl = "https://joywork.ru/objects-from-feed.php?cian=1&id_agent=".$feedCompanyId; $objectsEmlsUrl = "https://joywork.ru/objects-from-feed.php?emls=1&id_agent=".$feedCompanyId; $objectsBnUrl = "https://joywork.ru/objects-from-feed.php?bn=1&id_agent=".$feedCompanyId; $objectsDomUrl = "https://joywork.ru/objects-from-feed.php?dom=1&id_agent=".$feedCompanyId; ?>
Бесплатные (формат Яндекс):
Авито:
ЦИАН:
Jcat (формат ЦИАН):
Яндекс.Недвижимость:
ДомКлик (формат Яндекс):
id_manager) > 0 ? $user->id_manager : $user->id; $avComplexFeedUrl = "https://joywork.ru/av_feeds_complex/".$feedCompanyId.".xml"; $domComplexFeedUrl = "https://joywork.ru/dom_feeds_complex/".$feedCompanyId.".xml"; $bnYandexComplexFeedUrl = "https://joywork.ru/bn_ya_feeds_complex/".$feedCompanyId.".xml"; $cianComplexFeedUrl = "https://joywork.ru/cian_feed_v2_complex/".$feedCompanyId.".xml"; $domRfComplexFeedUrl = "https://joywork.ru/dom_rf_feeds_complex/".$feedCompanyId.".xml"; $siteComplexFeedUrl = "https://joywork.ru/bn_ya_feeds_complex/".$feedCompanyId."_site.xml"; ?>
Фид Яндекс:
Фид Авито:
Фид ЦИАН:
Фид Домклик:
Фид Дом.рф:
Фид Сайт:

Настройка отчетов выгрузок на классифайды

 

Настройка получения отчетов

Добавить API role_developer) { ?> role_developer) { ?>
Площадка Для комплексов ID клиента/компании API-ключ/токен доступа ID пользователя Активно Добавлено Обновлено Сообщения
{{ getServiceName(item.service_id) }} {{ getForComplexesStr(item.use_for_complexes) }}
{{ safetyString(item.client_id, 5, 3) }}
n/a
{{ safetyString(item.secret_key, 5, 3) }}
n/a
{{ item.ext_user_id }}
n/a
 
{{ item.created_at }}
{{ item.updated_at }}
   

API не найдены

Добавить новый API

Настройка рекламных пакетов:

Добавить
agencyId"; $rezPackage = mysql_query($sqlPackage); while ($package = mysql_fetch_assoc($rezPackage)) { echo ' 0) { echo 'style="background-color: #f9f9f9;"'; } echo '>'; if ($package['create_user_id'] == $user->id) { echo ''; } else { echo ''; } echo ''; echo ''; echo ''; echo ''; echo ''; echo ''; echo ''; echo ''; if ($package['create_user_id'] == $user->id) { echo ''; } else { echo ''; } echo ''; $num++; } ?>
Наименование пакета Регион Кол-во дней Тип сделки Тип объекта Наличие фото Для комнат Период оплаты (аренда)
 ' . $package['name'] . '' . $package['region'] . '' . $package['days_count'] . '' . $package['deal_type_name'] . '' . $package['object_type_name'] . '' . ($package['has_photo'] ? 'Да' : 'Нет') . '' . ($package['is_room'] ? 'Да' : 'Нет') . '' . $package['price_type_name'] . ' 

Настройка статистики затрат:

Добавить
Критерии объекта Avito ЦИАН ДомКлик JCat Я.Недвижимость
  {{ price.criteries.join(' ') }}   {{ price.avito }} руб. {{ price.cian }} руб. {{ price.domclick }} руб. {{ price.jcat }} руб. {{ price.yandex }} руб.  

Как настроить?

Видео-инструкция по настройке статистики

Настройка рекламных телефонов:

Добавить
agencyId"; $rezPhone = mysql_query($sqlPhone); while ($phone = mysql_fetch_assoc($rezPhone)) { echo ' 0) { echo 'style="background-color: #f9f9f9;"'; } echo '>'; echo ''; echo ''; echo ''; echo ''; echo ''; echo ''; $num++; } ?>
Тип выгрузки Наименование Телефон
' . $phone['phone_type_name'] . '' . $phone['name'] . '' . $phone['phone'] . '

Привязка номеров (все агентство):

Изменить привязку
agencyId and ph.id in (SELECT feed_adv_phone_id from feed_adv_phone_user where user_id = $user->agencyId)"; $rezPhoneLink = mysql_query($sqlPhoneLink); while ($phoneLink = mysql_fetch_assoc($rezPhoneLink)) { echo ' 0) { echo 'style="background-color: #f9f9f9;"'; } echo '>'; echo ''; echo ''; echo ''; $num++; } ?>
Тип выгрузки Телефон
' . $phoneLink['phone_type_name'] . '' . $phoneLink['phone'] . '

Размещение на zipal.ru

Размещение на jcat.ru

Обучение

Как разместить объект на все рекламные площадки через JoyWork

Настройка отчетов выгрузок на классифайды

Рекламные статусы объектов

Настройка телефонов для рекламных выгрузок

Управление типами размещений а площадках и настройка интеграции по API

Модерация рекламы

Интеграция с чатами Avito и Циан

Импорт объектов на сайт Tilda из JoyWork

agency == 0 && $user->manager == 0 && $user->id_manager == 0) { $user->agency = 1; } if ($user->agency || $user->manager || $_SESSION['users_admin']) { ?>

Настройка воронок продаж:

Перейти к настройкам

Обучение

Ведение клиентов и воронки продаж в CRM JoyWork

Настройка воронок продаж в CRM JoyWork

Настройка условий воронок продаж при переходе на определенный этап

Дополнительные условия воронках продаж

Отчеты по кастомным полям

Создание параллельных воронок продаж

Настройка рекламных источников:

agency == 0 && $user->manager == 0 && $user->id_manager == 0) { $user->agency = 1; } $sql_advg = "SELECT * FROM `advertising_sources_groups` WHERE `user_id` = '" . $user->id . "' or `manager_id` = '" . $user->id . "'"; if ($user->id_manager) { $sql_advg .= " or `manager_id` = '" . $user->id_manager . "' or `user_id` = '" . $user->id_manager . "'"; } if ($user->agencyId || $_SESSION['users_admin']) { $sql_advg .= " or `user_id` in (select u.id from users u where u.`id_manager` = '" . $user->agencyId . "')"; } // echo $sql_advg; $q_advg = mysql_query($sql_advg); ?>
  • agency || $user->manager || $_SESSION['users_admin']) { ?> Редактировать группу Удалить группу id . "' or `manager_id` = '" . $user->id . "'"; if ($user->id_manager) { $sql_adv .= " or `manager_id` = '" . $user->id_manager . "' or `user_id` = '" . $user->id_manager . "'"; } if ($user->agencyId || $_SESSION['users_admin']) { $sql_adv .= " or `manager_id` = '" . $user->agencyId . "' or `user_id` = '" . $user->agencyId . "'"; } $sql_adv .= ")"; $q_adv = mysql_query($sql_adv); $rows_adv = mysql_num_rows($q_adv); if ($rows_adv > 0) { ?>
  • id . "' or `manager_id` = '" . $user->id . "'"; if ($user->id_manager) { $sql_adv .= " or `manager_id` = '" . $user->id_manager . "' or `user_id` = '" . $user->id_manager . "'"; } if ($user->agencyId || $_SESSION['users_admin']) { $sql_adv .= " or `manager_id` = '" . $user->agencyId . "' or `user_id` = '" . $user->agencyId . "'"; } $sql_adv .= ")"; $q_adv = mysql_query($sql_adv); $rows_adv = mysql_num_rows($q_adv); if ($rows_adv > 0) { ?>
  • Без группы
agency || $user->manager || $_SESSION['users_admin']) { ?>
agencyId == 19895 && ($user->agency || $_SESSION['users_admin']))) { ?>

Система управления связями:

Управляйте источниками трафика, интеграциями и воронками

Настройки
История

Текущие связи

Источник Тип связи Внутренние теги Воронки Ответственный Действия
{{ source.source }} {{ source.type_name }}
{{ tag.name }}
Покупатели (заявки) {{ source.name_funnel_req }} (заявки) {{ source.user }}
Дата Пользователь Тип действия Детали
{{ log.create_at }} {{ log.user }} {{ log.event_name }}

Добавить связь

Редактировать связь

Подтверждение удаления

Вы уверены, что хотите удалить эту связь?

Источник: {{ sourceDetails }}

Настройка тегов:

agency == 0 && $user->manager == 0 && $user->id_manager == 0) { $user->agency = 1; } //var_dump($user); $sql_adv = "SELECT * FROM `activities` WHERE `user_id` = '" . $user->id . "' or `manager_id` = '" . $user->id . "'"; if ($user->id_manager) { $sql_adv .= " or `manager_id` = '" . $user->id_manager . "' or `user_id` = '" . $user->id_manager . "'"; } if ($user->agencyId) { $sql_adv .= " or `manager_id` = '" . $user->agencyId . "' or `user_id` = '" . $user->agencyId . "'"; } // echo $sql_adv; $q_adv = mysql_query($sql_adv); $rows_adv = mysql_num_rows($q_adv); if ($rows_adv > 0) { ?>

Назначений деятельности не найдено

agency || $user->manager || $_SESSION['users_admin']) { ?>
agency || $user->id == 5817 || $_SESSION['users_admin'] || $user->role_developer) { ?>

Настройка ролей пользователей

Отделы:

role_developer) ) { ?>

Настройка статусов:

 
Статус
{{ item.name }}
 

Добавить статус

Статус не найдены

Добавить статус

Архив статусов:

 
Статус
{{ item.name }}
 

Статусы не найдены

role_developer) ) { ?>

Настройка рассрочек:

 
Список рассрочек
{{ item.name }}
 

Добавить рассрочку

Рассрочки не найдены

Добавить рассрочку

Архив рассрочек:

 
Рассрочки
{{ item.name }}
 

Рассрочки не найдены

 

Настройка типов заявок:

Тип
    {{ item.name }} {{ item.name }}  

Добавить тип

Поля не найдены

Добавить тип

 

Архив типов заявок:

Тип
    {{ item.name }} {{ item.name }}  

Типы не найдены

Список причин закрытия:

Причина
{{ item.name }} {{ item.name }}  

Добавить причину

Новых причин не найдены

Добавить причину

Настройка типов договоров:

can('object-fields')) { ?>
 

Настройка полей объектов

Название / XML-тег Блок размещения Тип поля Активен XML-фид Фильтры Презентация Обязательное
    {{ item.title }}
{{ item.name }}
{{ item.block_title }} Строка Число Селект-бокс Мульти-селект Свитчер Текст не выбрано            

Добавить поле

Поля не найдены

Добавить поле

Блоки размещения

 

Настройка полей клиентов или заявок

Группа Подгруппы Тип поля Фильтры Для клиентов Для заявок Обязательное
  С подгруппами Строка Число Селект-бокс Мульти-селект Свитчер Текст не выбрано          

Добавить группу

Группы не найдены

Настройка веб-хуков:

Подключите сервисы к JoyWork для получения веб-хуков.

Получайте уведомления о событиях в CRM автоматически.

Настройка веб-хуков

Текущие натройки веб-хуков

Наименование URL Действие Раздел Статус Действия
{{ webhook.name }} {{ webhook.url }} {{ webhook.action_name }} {{ webhook.section_name }} Активен Не активен

Добавить событие

Редактировать событие

Подтверждение удаления

Вы уверены, что хотите удалить это событие?

= CURDATE() AND cf.token IS NOT NULL"; $complexes_frame_query = mysql_query($complexes_frame_sql); $complexes_frame_result = mysql_fetch_assoc($complexes_frame_query); ?>
= CURDATE() AND pf.token IS NOT NULL"; $presentation_frame_query = mysql_query($presentation_frame_sql); if ($presentation_res = mysql_fetch_assoc($presentation_frame_query)) { $presentation_color = $presentation_res['color']; ?>

Настройка каталога новостроек для вашего сайта

= CURDATE() AND cf.token IS NOT NULL"; $complexes_frame_query = mysql_query($complexes_frame_sql); if ($complexes_frame_result = mysql_fetch_assoc($complexes_frame_query)) { $complexes_main_color = $complexes_frame_result['frame_color']; $complexes_reserved_color = $complexes_frame_result['color_reserved']; $complexes_free_color = $complexes_frame_result['color_free']; } $complex_frame_funnels_sql = "SELECT * FROM funnel WHERE agency_id = $agency_id"; $complex_frame_funnels_query = mysql_query($complex_frame_funnels_sql) or die(mysql_error()); $complex_frame_req_funnels = []; $complex_frame_client_funnels = []; $arrayFunnel = []; $hasActiveFunnels = false; while ($row = mysql_fetch_assoc($complex_frame_funnels_query)) { if ($row['deleted'] == 0) { $hasActiveFunnels = true; // Нашли хотя бы одну активную } switch (true) { case ($row['is_req'] == 1 && $row['is_client'] == 1 && $row['deleted'] == 0): $complex_frame_req_funnels[] = $row; $complex_frame_client_funnels[] = $row; break; case ($row['is_req'] == 1 && $row['is_client'] == 0 && $row['deleted'] == 0): $complex_frame_req_funnels[] = $row; break; case ($row['is_req'] == 0 && $row['is_client'] == 1 && $row['deleted'] == 0): $complex_frame_client_funnels[] = $row; break; } if ($row['deleted'] == 0) { $arrayFunnel[] = $row; } } // Добавление дефолтной воронки if (!$hasActiveFunnels) { $nameDefault = "Обычные"; $sqlCastom = "SELECT * FROM funnel_default WHERE agency_id = {$agency_id}"; $qCastom = mysql_query($sqlCastom); if (mysql_num_rows($qCastom) > 0) { $rCastom = mysql_fetch_assoc($qCastom); if (!empty($rCastom['name'])) { $nameDefault = $rCastom['name']; } $defaultFunnel = [ 'id' => 0, 'name' => isset($rCastom['name']) ? $rCastom['name'] : $nameDefault, 'is_client' => isset($rCastom['is_client']) ? $rCastom['is_client'] : 1, 'is_req' => isset($rCastom['is_req']) ? $rCastom['is_req'] : 1, 'is_stage' => isset($rCastom['is_stage']) ? $rCastom['is_stage'] : 1, 'is_show_funnels' => isset($rCastom['is_show_funnels']) ? $rCastom['is_show_funnels'] : 1, 'order_number' => 0, 'deleted' => 0 ]; $arrayFunnel[] = $defaultFunnel; $complex_frame_req_funnels[] = $defaultFunnel; $complex_frame_client_funnels[] = $defaultFunnel; } else { $defaultFunnel = [ 'id' => 0, 'name' => $nameDefault, 'is_client' => 1, 'is_req' => 1, 'is_stage' => 1, 'is_show_funnels' => 1, 'order_number' => 0, 'deleted' => 0 ]; $arrayFunnel[] = $defaultFunnel; $complex_frame_req_funnels[] = $defaultFunnel; $complex_frame_client_funnels[] = $defaultFunnel; } } // var_dump($complex_frame_req_funnels); ?>

Настройка каталога обьектов для вашего сайта

Включить сайт компании
api['war_username']; $war_client_id = (!empty($_GET['war_client_id']))?$_GET['war_client_id']:$user->api['war_client_id']; $war_client_secret = (!empty($_GET['war_client_secret']))?$_GET['war_client_secret']:$user->api['war_client_secret']; $war_pincode = (!empty($_GET['war_pincode']))?$_GET['war_pincode']:$user->api['war_pincode']; $form = WebAppRaiserForm::getForm('api_settings_form'); $fields = array( 'war_username' => $war_username, 'war_client_id' => $war_client_id, 'war_client_secret' => $war_client_secret, 'war_pincode' => $war_pincode, 'war_id' => $user->api['war_id'], 'war_user_id' => $_SESSION['id'], 'war_access_token' => $user->api['war_access_token'], 'war_refresh_token' => $user->api['war_refresh_token'], 'war_attached_users' => ApiSettingsForm::getApiUsersInForm($user->api['war_id']), 'destination' => 'settings.php', 'fragment' => 'war_api', ); $WebAppRaiserPage['content'] .= $form->render($fields); if(!empty($WebAppRaiserPage['msg'])){ print '
'; if($WebAppRaiserPage['status'] == 'error') echo '
'.implode('
', $WebAppRaiserPage['msg']).'
'; else echo '
'.implode('
', $WebAppRaiserPage['msg']).'
'; print '
'; } if(!empty($_GET['status'])){ if($_GET['status'] == 'error') echo '
Параметры не сохранены! '.$_GET['msg'].'
'; else echo '
Параметры сохранены! '.$_GET['msg'].'
'; } ?>

Справка

  • 1 Пройдите регистрацию по ссылке
    https://webappraiser.ru/register-agent;
  • 2 Обязательно укажите промокод JOYWORK26
    (он вернет вам кешбек на отдельные услуги сервиса ВЕБОЦЕНЩИК и вы получите скидку на услуги компании);
  • 3 После регистрации напишите на support@webappraiser.ru письмо с просьбой предоставить API ключ для интеграции с CRM JoyWork, указав свою почту с которой вы проходили регистрацию;
  • 4 После получения логина и секретного кода API
    введите их в настройки данной интеграции в JoyWork;

Как заказать отчет об оценке для ипотеки в JoyWork

Настройка каталога комплексов для вашего сайта

Unisender

API для email-рассылок

Где взять API-ключ Unisender?

Синхронизация с Telegram

Для получения уведомлений в Telegram воспользуйтесь нашим ботом @joywork_ru_bot.

После запуска следуйте инструкциям бота для авторизации в системе.

Бот напомнит о событиях и задачах, которые Вы оставили при работе с клиентами и объектами.

Позже мы расширим возможности бота другими функциями.

Подпишитесь на наш новостной канал в Telegram, чтобы следить за обновлениями системы

Более подробно в видео-инструкции

Синхронизация с Max

Для получения уведомлений в max воспользуйтесь нашим ботом max_bot.

После запуска следуйте инструкциям бота для авторизации в системе.

Бот напомнит о событиях и задачах, которые Вы оставили при работе с клиентами и объектами.

Позже мы расширим возможности бота другими функциями.

Подпишитесь на наш новостной канал в MAX, чтобы следить за обновлениями системы

Постинг в VK

 

Чтобы иметь возможность выкладывать посты в группу в Вконтакте, нужно получить токен и указать идентификатор группы (только цифры).

Помните, что максимальное число постов в группу за сутки – 50, делать посты лучше не чаще, чем раз в 5 минут, иначе можно получить блокировку за спам.

ID пользователя
Токен авторизации
vk_token)) { echo ' Получить токен'; } else { echo ' Удалить токен'; } ?>
ID группы
В этом поле нужно указать именно цифровой ID группы из Вконтакте, без букв.
Если групп несколько, укажите их через запятую.
 
vk_post_as_group) || $user->vk_post_as_group != 1) ? '' : 'checked'; ?>>
 
role_developer) && $user->enable_wazzap) {?>

API для Wazzup

Руководитель добавлен в Wazzup.