Соединение двух серверов Oktell с регистрацией — различия между версиями
(не показано 10 промежуточных версии этого же участника) | |||
Строка 6: | Строка 6: | ||
Настройка соединения достаточно проста: один сервер (назовем его '''сервер А'''), выступая в роли провайдера связи, выдает учетные данные. Другой сервер (назовем его '''сервер Б'''), используя выданную учетную запись, регистрирует свои линии на первом сервере. В результате такой настройки, любой пользователь может позвонить на другой сервер и свободно поговорить с абонентом. | Настройка соединения достаточно проста: один сервер (назовем его '''сервер А'''), выступая в роли провайдера связи, выдает учетные данные. Другой сервер (назовем его '''сервер Б'''), используя выданную учетную запись, регистрирует свои линии на первом сервере. В результате такой настройки, любой пользователь может позвонить на другой сервер и свободно поговорить с абонентом. | ||
+ | |||
+ | При настройке такого соединения важно помнить одно простое правило: | ||
+ | * Сервер А, который выдал учетную запись может вызывать сервер Б только по имени учетной записи. | ||
+ | * Сервер Б, который регистрируется на сервере А может вызывать его по любому имени. | ||
+ | |||
+ | В связи с этим на сервере А возникает задача передачи не только имени учетной записи, но и набранного номера. Задача решается путем настройки модуля "'''Администрирование/Параметры аппаратуры'''". | ||
+ | |||
+ | Рекомендуется обратить внимание на передачу CallerId при совершении звонков. Представьте, что секретарю сервера А постоянно звонят операторы сервера Б. Если не передавать CallerId, то секретарь не сможет определить звонящего. В данной статье также рассматривается и эта проблема. | ||
Строка 16: | Строка 24: | ||
: '''Название''' и '''Описание''' - Любые. В примере "'''На второй сервер'''". | : '''Название''' и '''Описание''' - Любые. В примере "'''На второй сервер'''". | ||
: '''Тип регистрации''' - На стороне сервера | : '''Тип регистрации''' - На стороне сервера | ||
− | : '''Название потока''' - Любое | + | : '''Название потока''' - Любое. В примере, '''Oktell_Link''' |
: '''Имя пользователя''', '''Логин''' и '''Пароль''' - введите параметры учетной записи. В примере, имя пользователя и логин '''Oktell_Link''', пароль <u>сгенерирован</u>. | : '''Имя пользователя''', '''Логин''' и '''Пароль''' - введите параметры учетной записи. В примере, имя пользователя и логин '''Oktell_Link''', пароль <u>сгенерирован</u>. | ||
: '''Режим набора номеров''' - Сразу номер | : '''Режим набора номеров''' - Сразу номер | ||
Строка 61: | Строка 69: | ||
− | [[Файл:Соединение - 006.png|center| | + | [[Файл:Соединение - 006.png|center|700px]] |
Строка 70: | Строка 78: | ||
− | [[Файл:Соединение - 005.png|center| | + | [[Файл:Соединение - 005.png|center|1000px]] |
Строка 78: | Строка 86: | ||
<center> | <center> | ||
{|cellpadding="10" cellspacing="0" border="1" | {|cellpadding="10" cellspacing="0" border="1" | ||
− | |При настройке соединения серверов с регистрацией важно | + | |При настройке соединения серверов с регистрацией важно помнить одно простое правило: |
+ | * Сервер А, который выдал учетную запись может вызывать сервер Б только по имени учетной записи. | ||
+ | * Сервер Б, который регистрируется на сервере А может вызывать его по любому имени. | ||
|- | |- | ||
|} | |} | ||
Строка 84: | Строка 94: | ||
− | Так как при вызове сервера Б необходимо передавать набранный номер, измените свойства шлюза. | + | Так как, исходя из выше сказанного, при вызове сервера Б необходимо дополнительно передавать набранный номер, измените свойства шлюза. |
Для этого перейдите в '''Администрирование'''/'''Параметры аппаратуры'''. | Для этого перейдите в '''Администрирование'''/'''Параметры аппаратуры'''. | ||
* В настройках шлюза установите "'''Источник определения CallerID'''" - "'''From: URI'''" | * В настройках шлюза установите "'''Источник определения CallerID'''" - "'''From: URI'''" | ||
* В настройках потока установите "'''Подстановка набранного номера при исходящем вызове'''" - "'''To'''. | * В настройках потока установите "'''Подстановка набранного номера при исходящем вызове'''" - "'''To'''. | ||
− | После настройки имя аккаунта будет передаваться в поле RequestURI, набранный номер в поле To. | + | После настройки имя аккаунта будет передаваться в поле RequestURI, набранный номер в поле To. Благодаря этому на сервере Б возможно определить набранный номер с помощью функции ''Внешний номер (CalledID)''. |
*По окончанию настроек нажмите "'''Сохранить'''" | *По окончанию настроек нажмите "'''Сохранить'''" | ||
Строка 107: | Строка 117: | ||
− | [[Файл:Соединение - 008.png|center|600px]] | + | [[Файл:Соединение - 008.png|center|500px]] |
+ | |||
+ | |||
+ | === Результат работы === | ||
+ | |||
+ | В результате проделанной работы сервера могут звонить друг другу. При этом у сотрудников показывается имя и внутренний номер звонящего. | ||
+ | *Для определения набранного номера воспользуйтесь функцией Внешний номер (CalledId) | ||
+ | *Для определения вызывающего абонента воспользуйтесь функцией Номер абонента (CallerId) | ||
+ | |||
+ | |||
+ | [[Файл:Соединение - 009.png|center|600px]] |
Текущая версия на 19:41, 10 июня 2014
Содержание
В данной статье описывается соединение двух серверов Oktell с регистрацией. Пользуясь данной статьей, вы сможете также соединить Oktell с любой другой АТС, использующей SIP-протокол.
Настройка соединения достаточно проста: один сервер (назовем его сервер А), выступая в роли провайдера связи, выдает учетные данные. Другой сервер (назовем его сервер Б), используя выданную учетную запись, регистрирует свои линии на первом сервере. В результате такой настройки, любой пользователь может позвонить на другой сервер и свободно поговорить с абонентом.
При настройке такого соединения важно помнить одно простое правило:
- Сервер А, который выдал учетную запись может вызывать сервер Б только по имени учетной записи.
- Сервер Б, который регистрируется на сервере А может вызывать его по любому имени.
В связи с этим на сервере А возникает задача передачи не только имени учетной записи, но и набранного номера. Задача решается путем настройки модуля "Администрирование/Параметры аппаратуры".
Рекомендуется обратить внимание на передачу CallerId при совершении звонков. Представьте, что секретарю сервера А постоянно звонят операторы сервера Б. Если не передавать CallerId, то секретарь не сможет определить звонящего. В данной статье также рассматривается и эта проблема.
Настройка шлюза на сервере А
На данном шаге на сервере А создается шлюз с "регистрацией на стороне сервера" и заводится учетная запись для подключения. Выполните следующие действия:
- Перейдите в Администрирование/Карта сети.
- Добавьте SIP-шлюз и укажите следующие настройки:
- Название и Описание - Любые. В примере "На второй сервер".
- Тип регистрации - На стороне сервера
- Название потока - Любое. В примере, Oktell_Link
- Имя пользователя, Логин и Пароль - введите параметры учетной записи. В примере, имя пользователя и логин Oktell_Link, пароль сгенерирован.
- Режим набора номеров - Сразу номер
- Количество транков - укажите необходимое количество линий (фактически, это максимальное количество одновременных разговоров). В примере, 10
- Перейдите на вкладку "Сохранение". Нажмите "Проверить", затем "Сохранить".
Настройка шлюза на сервере Б
На сервере Б необходимо создать шлюз с "регистрацией на стороне шлюза" и внести созданную ранее учетную запись.
- Перейдите в Администрирование/Карта сети.
- Добавьте SIP-шлюз и укажите следующие настройки:
- Название и Описание - Любые. В примере "На первый сервер".
- Тип регистрации - На стороне шлюза
- IP адрес шлюза и IP адрес SIP-proxy сервера - укажите IP-адрес сервера А (того, на котором регистрируется сервер Б).
- Название потока - Любое, в примере Oktell_Link
- Отображаемое имя, Имя пользователя, Логин и Пароль - укажите выданную учетную запись. Логин Oktell_Link и пароль, который был сгенерирован.
- Количество транков - укажите необходимое количество линий (фактически, это максимальное количество одновременных разговоров). Рекомендуется, чтобы количество транков совпадало с настройкой сервера А. В примере, 10.
- Перейдите на вкладку "Сохранение". Нажмите "Проверить", затем "Сохранить".
- Перейдите в Администрирование/Мониторинг. Убедитесь, что линии зарегистрированы (значок в виде зеленой трубки).
Настройка маршрутизации на сервере А
Чтобы совершить вызов с сервера А на сервер Б, необходимо подредактировать сценарий исходящей маршрутизации. На этом этапе важно учитывать корректность определения CallerID (номера вызывающего) и CalledID (набранного номера для маршрутизации). Исходя из этого, предлагается определять на вызывающем сервере имя пользователя и его внутренний номер, а затем передавать его в CallerID.
Для этого вначале в переменные записываются имя пользователя и его внутренний номер. Модификацию будет производить на примере стандартного сценария исходящей маршрутизации:
Компонент "Присвоение" - в компоненте производятся следующие операции:
- переменной cer (строковая) присваивается значение функции "Номер пользователя внутри АТС"
- переменной имя (строковая) присваивается значение функции "Имя пользователя"
Компонент "ВНЕШНИЕ" - компонент осуществляет вызов сервера Б по номеру. В компоненте определены следующие параметры:
- Номер - переменная НОМЕР (определена ранее в сценарии).
- Направления - выбраны зарегистрированные линии Oktell_Link
- Caller Id - выражение [cer]+' '+[имя]
После модификации сценария сохраните его "На сервер".
При настройке соединения серверов с регистрацией важно помнить одно простое правило:
|
Так как, исходя из выше сказанного, при вызове сервера Б необходимо дополнительно передавать набранный номер, измените свойства шлюза.
Для этого перейдите в Администрирование/Параметры аппаратуры.
- В настройках шлюза установите "Источник определения CallerID" - "From: URI"
- В настройках потока установите "Подстановка набранного номера при исходящем вызове" - "To.
После настройки имя аккаунта будет передаваться в поле RequestURI, набранный номер в поле To. Благодаря этому на сервере Б возможно определить набранный номер с помощью функции Внешний номер (CalledID).
- По окончанию настроек нажмите "Сохранить"
Настройка маршрутизации на сервере Б
Модификацию сценария исходящей маршрутизации следует проводить также как это было описано для сервера А.
Для корректного определения аккаунта, измените свойства шлюза. Для этого перейдите в Администрирование/Параметры аппаратуры.
- В настройках шлюза установите "Приоритет поиска соответствия между аккаунтом и входящим INVITE в поле 'To' и 'Request URI'" - "INVITE RequestURI"
- По окончанию настроек нажмите "Сохранить"
Результат работы
В результате проделанной работы сервера могут звонить друг другу. При этом у сотрудников показывается имя и внутренний номер звонящего.
- Для определения набранного номера воспользуйтесь функцией Внешний номер (CalledId)
- Для определения вызывающего абонента воспользуйтесь функцией Номер абонента (CallerId)