Перейти к содержанию

Инструкция по интеграции с АТС

Назначение документа

Внимание

Интеграция с АТС является дополнительной функциональной возможностью VK WorkSpace. Чтобы воспользоваться данной функциональностью, приобретите дополнительную платную лицензию.

В документе описана настройка интеграции Мессенджер и ВКС с АТС для версий 25.4 и выше.

Документ предназначен для использования системными администраторами.

Важно

Интеграция с АТС является дополнительной функциональной возможностью VK WorkSpace. Чтобы воспользоваться данной функциональностью, приобретите дополнительную платную лицензию.

Шаг 1. Настройте сервис Kamailio

  1. В конфигурационном файле /usr/local/etc/k8s/helmwave/projects/sipservices/values/sipservices/kamailio.yml:

    1.1 Удалите строку #!define REMOTE_REGISTRATION.

    1.2. Проверьте, что установленные параметры приведены без "|quote":

    #!define OUTBOUND_PROXY [[ .Release.Store.sipservices.kamailioProxy ]]
    #!define TRUNK_ADDRESS [[ .Release.Store.sipservices.kamailioTrunc ]]
    
  2. В конфигурационном файле /usr/local/etc/k8s/helmwave/store/sipservices.yml отредактируйте переменные для развертывания, установите IP транка Kanalya:

    kanalyaProvisioningProtocol: http
    kanalyaProvisioningUrl: change.me
    kanalyaProvisioningPwd: pass
    kamailioTrunc: <IP-адрес или имя хоста >:<порт>
    kamailioProxy: <IP-адрес или имя хоста >:<порт>
    
  3. В случае кластерной инсталляции, если нода сервиса Kamailio находится за NAT дополнительно:

    3.1. Добавьте новый параметр с указанием белого IP-адреса:

    #!define WHITE_IP 100.70.137.160
    

    3.2. Для внешнего IP-адреса укажите 0.0.0.0:

    #!define EXTERNAL_IP 0.0.0.0
    

    3.3. Проставьте белый IP-адрес как advertise-адрес для внешнего адреса:

    listen=udp:EXTERNAL_IP:EXTERNAL_PORT advertise WHITE_IP:EXTERNAL_PORT
    

    3.4. Удалите проверку внешнего и внутреннего IP-адресов при определении направления трафика:

    sed -i 's/$Ri == $def(\(EXTERNAL_IP\|INTERNAL_IP\)) && //' /usr/local/etc/k8s/helmwave/projects/sipservices/values/sipservices/kamailio.yml
    

    3.5. Замените внешний IP-адрес на белый IP-адрес в выставлении SIP Contact-заголовка:

    sed -i 's/$def(EXTERNAL_IP)/$def(WHITE_IP)/' /usr/local/etc/k8s/helmwave/projects/sipservices/values/sipservices/kamailio.yml
    

Шаг 2. Настройте сервис Sipgate

  1. Скорректируйте конфигурацию для медиатранспорта:

    sed -i 's/ media/ sip.media/' /usr/local/etc/k8s/helmwave/projects/sipservices/values/sipservices/sipgate.yml
    
  2. Перейдите в конфигурационный файл сервиса Sipgate /usr/local/etc/k8s/helmwave/projects/sipservices/values/sipservices/sipgate.yml и укажите для ice- и media-соединений IP-адрес 0.0.0.0:

    ice.media.transport.bind_address 0.0.0.0
    sip.media.transport.bind_address 0.0.0.0
    
  3. Перейдите в конфигурационный файл /usr/local/etc/k8s/helmwave/projects/sipservices/values/sipservices/kanalya-sip-list.yml и укажите порты для внутреннего взаимодействия SIP-сервисов:

    1 sip:[[ $metadata.external_ip -]]:5070
    ...
    1 sip:[[ $.Release.Store.networks.whiteIP -]]:5070
    

Шаг 3. Настройте сервис Numbers

Перейдите в конфигурационный файл сервиса Numbers /usr/local/etc/k8s/helmwave/projects/numbers/values/numbers/application.yml и выполните следующие изменения:

  1. Укажите номер телефона конференции. Все входящие звонки на заданный номер будут направлены для подключения к конференциям:

    conference_numbers:
      default_username: "*"
      use_from_config: true
      list:
        - "88007777777"
    
  2. Примените настройки командой:

    im_deployer --no-init --skip-check --install -m helmwave --hw-project numbers
    

Шаг 4. Настройте сервис Nomail

Перейдите в конфигурационный файл сервиса Nomail /usr/local/etc/nomail-1.conf и выполните следующие изменения:

  1. Установите значение true в параметр numbers.enabled для включения взаимодействия с сервисом Numbers:

    numbers.enabled true
    
  2. Добавьте информацию о SIP номере в карточку пользователя:

    nomail.keycloak.about.fields $department\n$title\nМобильный: $mobile\nSIP: $sip
    nomail.keycloak.additional.extra.fields Phone,mobile,organization,position,sip
    
  3. Перезапустите сервис Nomail:

    systemctl restart nomail-1