Сравнение версий

Ключ

  • Эта строка добавлена.
  • Эта строка удалена.
  • Изменено форматирование.

...

To link an address group to a domain, return to the "Domain" app, select the domain, and go to the settings by clicking the "Domain Properties" button or double-clicking the domain.

...

Figure 18 — List of services now available to subscribers of the new domain

0000000000000000000000000000000000000000000000000000000000000000000

Configuring ecss-mysql package

When installing the package, the following data will be requested:

...

Changing the default path — agree to change the configuration file to enter the path to the ecss-mysql databases by entering "Y".

MySQL databases used by the ECSS-10 system will be stored under the path /var/lib/ecss-mysql after installation. Check for files in the folder:

...

ls -l /var/lib/ecss-mysql/
total 36
drwxr-xr-x 2 mysql mysql 4096 Sep 26 13:36 ecss_address_book
drwxr-xr-x 2 mysql mysql 4096 Sep 26 13:37 ecss_audit
drwxr-xr-x 2 mysql mysql 4096 Sep 26 13:36 ecss_calls_db
drwxr-xr-x 2 mysql mysql 4096 Sep 26 13:36 ecss_dialer_db
drwxr-xr-x 2 mysql mysql 4096 Sep 26 13:36 ecss_meeting_db
drwxr-xr-x 2 mysql mysql 4096 Sep 26 13:36 ecss_statistics
drwxr-xr-x 2 mysql mysql 4096 Sep 26 13:36 ecss_subscribers
drwxr-xr-x 2 mysql mysql 4096 Sep 26 13:36 history_db
drwxr-xr-x 2 mysql mysql 4096 Sep 26 14:32 web_conf

Check that the server is running:

...

sudo systemctl status mysql
● mysql.service - MySQL Community Server
Loaded: loaded (/lib/systemd/system/mysql.service; enabled; vendor preset: enabled)
Drop-In: /etc/systemd/system/mysql.service.d
└─override.conf
Active: active (running) since Thu 2019-09-26 13:36:47 +07; 23h ago
Main PID: 11642 (mysqld)
CGroup: /system.slice/mysql.service
└─11642 /usr/sbin/mysqld --daemonize --pid-file=/run/mysqld/mysqld.pid

Installing the ecss-node package

Installing the ecss-node package:

Без форматирования
sudo apt install ecss-node

During the package installation ssw user is created, on whose behalf all ecss services are launched*. The necessary directories are being created, DNS is being configured, SSL certificates are being configured. During the installation, 8 questions necessary for the formation of configuration files will be asked.

...

ntp.ubuntu.com (by default).

Enter one or more space-separated servers used on the site

...

192.168.0.0|255.255.0.0 (by default)

Enter a list of subnets from which this NTP server will be accessible, for example 10.10.0.0|255.255.255.0

...

Creating subscribers

The Subscriber card application is used to create and edit subscriber parameters in the system.

Image Added

Figure 19 — Subscriber card application view

It is possible to create SIP subscribers and virtual subscribers in the application.

For users with a physical termination, the functionality of the SIP subscriber is used, while the virtual subscriber is used when functionality without physical endings is needed. For example, the number for accessing the ivr script.

To create new subscribers, click on the Add button.

In the dialog box that opens, specify the following parameters:

  • Context — routing context, select the one that you created, for example "test_name";
  • Interface name — number or group of numbers that is assigned to the subscriber, for example {42001-42010} or abcd;
  • Interface group — the name of a group that unites several subscribers, for example "sip";
  • Alias as user — setting that binds entity number, alias and user with the same name, in the example the setting is activated;
  • Authorization — procedure for verifying the authenticity of the user's rights to access data, in the example always is used.
  • Login — use WHATEVER.
  • Password — can be set or used generated by the system.

Image AddedImage Added

Figure 20 — Example of identifying subscribers in a domain

Image Added

Image Added

Figure 21 — Example of adding services for a subscriber


Creating and applying routing contexts for a domain

Routing is responsible for finding the number and then addressing the call. At least one routing context must be configured for the system to operate correctly.

Routing is configured in Routing Manager application.

Image Added

Figure 22 — Routing manager application view

Example of creating a context and a few rules in it:

1. In the left part of the window in the Context section click the Create context button Image Added;

2. In the dialog box that opens, indicate the name of the context;

3. Click Ok button;

4. Click Save context Image Added;

Image Added


Create 4 rules in this context:

  • rule1 — rule for accessing TAU-72 trunk;
  • rule2 — local routing rule for numbers 42001-42005;
  • rule3 — rule for entering the ivr;
  • rule4 — exception rule.

To create a new rule, select the created context and click Create rule. In the window that appears, enter name of the rule. Then save the newly created rules.

Image Added

Figure 23 — Creating routing context rule

Image Added

Figure 24 — Defining rules

At the moment, the trunk that can be referred in a rule is not defined, however it is possible to specify the numbers by which the selection will be made.

Go to the lower part of the screen by clicking on the rule1, where the areas for editing the routing context are located. It is conditionally defined in the example that selection for entering the trunk will be carried out based on the characteristics of the called subscriber number (CDPN), and the numbers in the trunk should start with digit 4.

Functionally, the routing context is divided into three parts:

  • Condition — section defining the expressions for selection according to the proposed criteria;
  • Action — section that converts the signs of numbers to a specific value;
  • Result — section that completes the routing and determines its result.

rule1: To access the trunk, edit each part correctly:

  • In the conditions section, go to the CDPN tab. Enter the phone numbers that are assigned to the trunk in the Number field. For example, to define numbers from 42006 to 42007, enter condition 420(6-7);
  • In the actions section, go to the CDPN tab. Enter a mask to change the number in the Number field. For example, to add number 4 before the number, fill in the field with the following expression 4{1,2,3,4,5};
  • Click Save rule and Save Context buttons to apply changes.

To configure the result field, the trunk must be defined in the system, so return to configuring this rule a little later.

Configure remaining rules in the same way.

For rule2:

  • In CDPN tab in conditions section, enter phone numbers that are behind the trunk in "Number" field. For example, to define numbers from 42001 to 42005, enter condition 420(1-5);
  • In the result section, define the result as local (e. local routing);
  • Click Save rule and Save Context buttons to apply changes.

For rule 3, assume that subscribers with numbers 108, 109 and 110 get into the informant ivr script before calling further.

  • In CGPN tab in conditions section, enter the phone numbers for which the selection will be in the field "Number", for example 420(10.08-09).
  • Click Save rule and Save Context buttons to apply changes.

To configure the result field, ivr script must be defined in the system, so return to configuring this rule later.

For rule 4, define an exception rule — this is a rule that works in case any other rules fail.

  • By default, this rule is created in the system in default_routing context. The % symbol is written to the called number in the conditions, and the result is local routing, however, it is recommended to create this rule at the end if assigning to the subscriber a context other than default_routing.

Image Added

Figure 25 — Example of configuring routing context 

Creating trunk 
Якорь
trunk
trunk

To create and edit trunk parameters in the system, use the Trunk manager application.

Image Added

Figure 26 — Trunk Manager application view

To define a trunk in the system, click on the Trunk declare Image Added button, define parameters in the dialog box that opens:

  • Name — assign trunk name by which it can be identified in the system;
  • Context — apply previously created test_name routing context;
  • Group — select the interface group created when defining 'test.group' subscribers;
  • IP address group (IPSet) — 'ipset1' address group created on the domain;
  • Registration — if trunk is used, then enable this parameter, it is not used in the example;
  • Host [:port] — destination IP address of the trunk — 10.0.3.100;
  • Listen port — transport port where traffic from the trunk will be listened to, corresponds to the port assigned to the IP address group.

Image Added

Figure 27 — Creating a trunk

Creating IVR script 
Якорь
ivr
ivr

To create IVR, use the IVR editor application. 

To create a script, click on the Add Image Added button, select script type (in this case there is a script for incoming calls), specify the name of the script in the dialog box, for example "test_ivr".

After creating the script, a flowchart will appear in the main editor window.

In figures below is shown an example of making a script that plays a pre-recorded phrase to the caller when triggered, and then continues the call.

  • Info —  block that plays messages until the user responds. A tone generator is used as a recorded phrase:

Image Added

Figure 29 — View of the IVR workspace with the Info block settings

  • Dial — block that makes a call to a given number. To continue the call, apply the predefined CDPN variable:

Image Added

Figure 30 — View of the IVR workspace

Completing routing configuration

To complete routing, open Routing manager application and in rules rule1 and rule3 adjust the corresponding routing results, and follow the steps below:

  • rule1: select the "external" sub-item in the Result section. In the Value field of the Directions table add the trunk created earlier, then save the rule Image Added.
  • rule3: select the "ivr" sub-item in the Result section. In the script field add the previously created ivr script, then save the rule and the context Image Added.

Image Added

Figure 31 — Type of routing context

Initial system configuration via the command-line interface (CLI)


Раскрыть
titleExample of initial configuration via CoCon (CLI)

Adding media resources using the command-line interface (CLI)

Open CLI CoCon:

Блок кода
languagebash
titleecss1 password = password
ssh admin@localhost -p 8023

A media resource is a description of the media server parameters required for operation.

Примечание

To use the media resource and establish connections, it is necessary to activate it in the media resource creation command: /system/media/resource/declare (parameter "is active"=true) or /system/media/resource/set (parameter "active"=true), if activation was not performed during creation. Activation can also be performed through the web interface, application - MSR network terminations (MSR-registrars).


Раскрыть
titledeclare

declare

The command to declare a media server connection to ECSS-10.

To operate in preconfigured mode, one can pre-register media resources with known information.

To do this, it is necessary to create a description of known media servers with all parameters specified, allowing to start working with the media server immediately after its registration.

The command to create a media server configuration:

Command path:

/system/media/resource/declare

Syntax:

declare <node> by_contact <contact> <zone> <site> <is active>

or

declare <node> by_iface <msr> <acc_id> <iface> <zone> <site> <is active>

Parameters:

<node> — core node name;

<contact> — contact uri of the declared media resource;

<zone> — logical service zone of the MSR;

<site> — MSR service network identifier;

<is active> — media resource activity status, true/false values;

<msr> — MSR name;

<acc_id> — resource identifier number;

<iface> — interface name.


Раскрыть
titleset

set

A command for changing media resource settings.

Command path:

/system/media/resource/set

Syntax:

set <node|*> <contact> <active|zone|site> <value>

Parameters:

<node|*> — node name;
<contact> — contact uri of the declared media resource;
<active|zone|site> — activation | zone | site;
<value> — parameter value.

Example:

Блок кода
titleвыполняется в CoCon
/system/media/resource/declare core1@ecss1 contact net.20@msr.ecss1 default local true

Result:

Без форматирования
/system/media/resource/declare core1@ecss1 contact net.20@msr.ecss1 default local true
  Declared media resources
┌─────────────┬───────────────────────┬────────┬─────────┬───────┐
│    Node     │        Contact        │ Active │   Zone  │  Site │
├─────────────┼───────────────────────┼────────┼─────────┼───────┤
│ core1@ecss1 │ net.20@msr.ecss1      │ true   │ default │ local │
└─────────────┴───────────────────────┴────────┴─────────┴───────┘


Раскрыть
titleinfo

info

A command for viewing connection status information for a specific media resource.

Command path:

/system/media/resource/info

Syntax:

info <node>  <contact>

Parameters:

<contact> — contact uri of the declared media resource;
<node> — node name.

Пример:

Блок кода
languagebash
/system/media/resource/info core1@ecss1 net.20@msr.ecss1
  Media resource specific for node core1@ecss1:
┌─┬─────────────────┬─────────────────────┐
│F│    Parameter    │        Value        │
├─┼─────────────────┼─────────────────────┤
│r│ Contact         │ net.20@msr.ecss1    │
│r│ Status          │ registered          │
│r│ Cc-status       │ connected           │
│r│ Cc-status uptime│ 00:16:48            │
│r│ Cc-id           │ cb6599              │
│r│ Address         │ 10.0.20.41:5700     │
│r│ Register time   │ 2025/12/03 09:40:25 │
│r│ Expired         │ 131                 │
│r│ Iface           │ net.20(10.0.20.41)  │
│ │ Active          │ true                │
│ │ Zone            │ default             │
│ │ Site            │ local               │
│r│ MSR version     │ 3.18.1.0.12         │
│r│ MSR load        │ 0                   │
│r│ MSR perf coef   │ 1.0                 │
└─┴─────────────────┴─────────────────────┘
Legend:
Column F - means Flag, values r - flag for readonly parameter


Раскрыть
titlelist

list
A command for viewing a list of media resources in the ECSS-10 system.

Command path:

/system/media/resource/list

Syntax:

list [active | all | register]

Parameters:

active — display only active media resources (default);
register — display only registered media resources;
short — display minimal information;
all — display all declared media resources.

By default, the command displays a list of registered media servers.

Example:

Блок кода
languagebash
/system/media/resource/list all                      
  All media resource selected list specific:
┌─────────────┬───────────┬──────────────┬───────────┬──────┬────────┬───────────┬───────────┬─────────────────┬────────┬────────────┬────────┬─────────┬───────┬──────────────────┬────────────┬─────────┐
│    Node     │    MSR    │     MSR      │    MSR    │ MSR  │ Cc-id  │ Cc-status │ Cc-uptime │   Cc-address    │ Iface  │   Iface    │ Active │  Zone   │ Site  │     Contact      │   Status   │ Expired │
│             │           │   version    │ perf coef │ load │        │           │           │                 │  name  │    addr    │        │         │       │                  │            │         │
├─────────────┼───────────┼──────────────┼───────────┼──────┼────────┼───────────┼───────────┼─────────────────┼────────┼────────────┼────────┼─────────┼───────┼──────────────────┼────────────┼─────────┤
│ core1@ecss1 │ msr.ecss1 │ 3.18.1.0.12  │       1.0 │    0 │ 54faa9 │ connected │ 00:54:48  │ 10.0.20.41:5700 │ net.20 │ 10.0.20.41 │ true   │ default │ local │ net.20@msr.ecss1 │ registered │     129 │
└─────────────┴───────────┴──────────────┴───────────┴──────┴────────┴───────────┴───────────┴─────────────────┴────────┴────────────┴────────┴─────────┴───────┴──────────────────┴────────────┴─────────┘

Adding registrar control for MSR media manager in the Command Line Interface (CLI) CoCon


/system/media/registrar/ - regisrtrar control commands for the MSR media manager


Раскрыть
titleset

set

A command for changing common and individual parameters.

Command path:

/system/media/registrar/set

Syntax for setting common parameters:

set common <FIELD> <VALUE>

Parameters:

<FIELD> — name of the parameter being configured;

<VALUE> — value of the parameter being configured

Where:

  • common — the type of parameter being set;
  • <common parameter> — a common media registrar parameter for all nodes: registration-timeout;
  • private — the type of parameter being set;
  • <node name> — the name of the node on which the media registrarresides;
  • <private parameter> — a media registrar parameter that is set on <node name>: is-active, listen-interface, and listen-port.

List of parameters available for configuration:

  • is-active — enables or disables the registrar (false - deactivates the registrar, the registrar stops receiving SIP traffic);
  • listen-interface — the name of the interface the registrar uses;

  • listen-port — the port on which the registrar accepts registration requests (default 5000);

  • registration-timeout — re-registration timer, range from 60 to 86400.

In the general settings you can set the registration time; by default it is 60 seconds.

Example:
Set the registration time to 60 seconds:

Без форматирования
/system/media/registrar/set common registration-timeout 60
Common parameter registration-timeout set to 60.

Syntax for configuring individual parameters:

system/media/registrar/set private <CORE> <FIELD> <VALUE>

Parameters:

<CORE> — the core node for which the Registrar server is being configured;

<FIELD> — the name of the configurable parameter;

<VALUE> — the value of the configurable parameter.

Configurable parameters:

  • is-active — whether the Registrar server is active, true | false;
  • listen-ip — the IP address on which the Registrar server will accept connections (default 0.0.0.0);
  • listen-port — the network port on which the Registrar server will accept connections (default 5000).

Example:

Set the IP address for receiving connections from the media server:

Блок кода
titlein CoCon
/system/media/registrar/set private core1@ecss1 listen-ip 10.0.20.41

Result:

Без форматирования
/system/media/registrar/set private core1@ecss1 listen-ip 10.0.20.41   
Private parameter listen-ip set to 10.0.20.41 at node core1@ecss1.


Раскрыть
titleinfo

info

Command for viewing the current Registrar server settings.

Command path:

/system/media/registrar/info

Example:

Без форматирования
/system/media/registrar/info
 Common parameters:
┌───────────────────────────┬───────┐
│         Parameter         │ Value │
├───────────────────────────┼───────┤
│ registration-timeout, sec │   180 │
└───────────────────────────┴───────┘
 Private parameters:
┌─────────────┬─────────┬───────────┬────────────┬─────────────┐
│    Node     │ Status  │ Is-active │ Listen-ip  │ Listen-port │
├─────────────┼─────────┼───────────┼────────────┼─────────────┤
│ core1@ecss1 │ active  │ true      │ 10.0.20.41 │        5000 │
└─────────────┴─────────┴───────────┴────────────┴─────────────┘
Подсказка

It is also possible to add media resources through the web configurator application — MSR-registrars.

After all services are started, the nodes will take some time to establish communication. Once all nodes are loaded, the following information will be output when the system-status query is executed:

Без форматирования
languagebash
/system-status   
Checking...
┌─┬───────────────┬───────────────────────────┬────────────────┬──────────────┬──────┐
│ │     Node      │          Release          │  Erlang nodes  │ Mnesia nodes │Uptime│
├─┼───────────────┼───────────────────────────┼────────────────┼──────────────┼──────┤
│ │core1@ecss1    │ecss-core-3.18.1.0.1657    │core1@ecss1     │not running   │1h 23m│
│ │ds1@ecss1      │ecss-ds-3.18.1.0.1657      │ds1@ecss1       │ds1@ecss1     │1h 23m│
│ │md1@ecss1      │ecss-mediator-3.18.1.0.1657│md1@ecss1       │md1@ecss1     │1h 23m│
│ │mycelium1@ecss1│ecss-mycelium-3.18.1.0.1657│mycelium1@ecss1 │not running   │1h 23m│
│ │sip1@ecss1     │ecss-pa-sip-3.18.1.0.1657  │sip1@ecss1      │sip1@ecss1    │1h 23m│
└─┴───────────────┴───────────────────────────┴────────────────┴──────────────┴──────┘

All services are started.

  Active media resource selected list specific:
┌─────────────┬───────────┬──────────────┬───────────┬───────────┐
│    Node     │    MSR    │     MSR      │ Cc-status │ Cc-uptime │
│             │           │   version    │           │           │
├─────────────┼───────────┼──────────────┼───────────┼───────────┤
│ core1@ecss1 │ msr.ecss1 │ 3.18.1.0.12  │ connected │ 00:04:15  │
└─────────────┴───────────┴──────────────┴───────────┴───────────┘

In the example above, the nodes have started and the MSR have registered on the ecss-core node.

Creating and configuring a SIP IP address group (IP-set)

Configure the SIP adapter according to the specifications:

Блок кода
titlein CoCon
/cluster/adapter/sip1/sip/network/set ip_set test_set node-ip node = sip1@ecss1 ip = 10.0.20.41


Блок кода
titlein CoCon
/cluster/adapter/sip1/sip/network/set ip_set test_set listen-ports list = [5060]

Result:

Без форматирования
languagebash
/cluster/adapter/sip1/sip/network/set ip_set test_set node-ip node = sip1@ecss1 ip = 10.0.20.41
        
Property "ip_set" successfully changed from: 
    
        to
test_set: no ports set
test_set: sip1@ecss1 10.0.20.41
test_set: dscp 0.

/cluster/adapter/sip1/sip/network/set ip_set test_set listen-ports list = [5060]
Property "ip_set" successfully changed from:
test_set: no ports set
test_set: sip1@ecss1 10.0.20.41
test_set: dscp 0
        to
test_set: 5060
test_set: sip1@ecss1 10.0.20.41
test_set: dscp 0

Creating a domain and connecting an IP-set

Create a Domain (virtual PBX) and assign it the SIP adapter settings group (IP set) created above:

Блок кода
titlein CoCon
/domain/declare test_domain --add-domain-admin-privileges --add-domain-user-privileges


Блок кода
titlein CoCon
/domain/test_domain/sip/network/set ip_set [test_set]


Блок кода
languagebash
/domain/declare test_domain --add-domain-admin-privileges --add-domain-user-privileges
New domain test_domain is declared


/domain/test_domain/sip/network/set ip_set [test_set]
Property "ip_set" successfully changed from: 
[]
   to
["test_set"].

After creating a domain, the system administrator should grant access to the Domain (virtual PBX) operator to manage services. To do this, use the "test_domain" command to allow the Domain (virtual PBX) operator to manage all services:

Блок кода
titlein CoCon
/cluster/storage/ds1/ss/access-list add test_domain *


Без форматирования
languagebash
/cluster/storage/ds1/ss/access-list add test_domain *
Supplementary services successfully added in the domain test_domain.

To enable subscribers to apply a service package immediately after creation, it is necessary to configure a licensed service package application policy.

Create a license application policy named "new_sub"

Блок кода
languagebash
titlein CoCon user/pw = admin/password
/domain/test_domain/ss/licence/politics/declare new_sub "Set when creating a subscriber"


Без форматирования
/domain/test_domain/ss/licence/politics/declare new_sub "Set when creating a subscriber"
Licence politic new_sub successfully declared.

To set the name of the additional services package, use the following commands:

Блок кода
languagebash
titlein CoCon user/pw = admin/password
/cluster/storage/ds1/licence/show-licence 1

The following information is important:

Без форматирования
languagebash
/cluster/storage/ds1/licence/show-licence 1
SSW ID                                                < Name SSW ID >
Description                                           ECSS ELM License

. . .  

Supplementary Services licence package(s)             
 name             

To generate certificates, select manual method. All questions can be answered as suggested by default.

Installing ecss-media-server, ecss-media-resources, ecss-restf, ecss-web-conf packages

...

ecss-media-server, ecss-media-resources

Без форматирования
sudo apt install ecss-media-server ecss-media-resources

For the media server (ecss-media-server / MSR), initial configuration is possible with parameters recorded to the configuration file, it is required to perform the configuration without selecting any items:

...

After forming the default configurations, go to the directory where the configurations are located and check them:

Блок кода
cd /etc/ecss/ecss-media-server/
cat config.xml
cat conf.d/default.xml

There is a configuration for msr: config.xml, the conf.d directory contains the configuration default.xml. At its core, default.xml is an addition to config.xml, which defines the accounts section. This is done in order for this configuration to remain unchanged after package updates. 

Example of config.xml:

Блок кода
<?xml version="1.0" encoding="utf-8"?>
<config date="10:48:15 21.02.2022">
  <general log-level="3" log-rotate="yes" max-calls="8192" max-in-group="512" load-sensor="media" load-delta="10" calls-delta="100" spool-dir-size="100M" log-name="msr.log" log-path="/var/log/ecss/media-server" use-srtp="disabled" suspicious-mode="no"/>
  <transport bind-addr="192.168.2.21" port="5040" transport="udp+tcp"/>
  <!-- By default configured public TURN-server -->
  <turn-server use-turn="no" host="numb.viagenie.ca" user="webrtc@live.com" password="muazkh"/>
  <media mixer-clock-rate="8000" use-vad="no" cng-level="0" jb-size="60" rtcp-timeout="0" rtp-timeout="350" udp-src-check="no" cn-multiplier="3" port-start="12000" port-range="2048" tias-in-sdp="no" thread-cnt="2" silence-threshold="-30" dtmf-flash-disable="no" video-dscp="0" other-dscp="0" dummy-video-src="/usr/share/ecss-media-server/video/dummy_video.yuv" video-enc-width="1280" video-enc-height="720" finalsilence="1000" rtcp-stat-dump="yes"/>
  <codec pcma="1" pcmu="2" ilbc="0" gsm="0" g722="3" g729="0" speex="0" l16="0" g7221="0" opus="0" h264="1" h263-1998="2" t38="1" tel-event-pt="0"/>
  <accounts>
    <!-- <dynamic msr_name="msr.name"
            realm="sip:127.0.0.1:5000"
            dtmf_mode="rfc+inband+info"
            auth_name="user"
            auth_password="password" /> -->
  </accounts>
  <pbyte>
    <mcc bind-addr="192.168.2.21" port="5700"/>
  </pbyte>
  <conf_dir path="/etc/ecss/ecss-media-server/conf.d"/>
  <rtp>
    <auto addr-v4=""/>
  </rtp>
</config>

Example of accounts section (default.xml file):

Блок кода
titleНастройка msr для ecss1(/etc/ecss/ecss-media-server/conf.d/default.xml)
<?xml version="1.0"?>
<config>
      <accounts>
            <dynamic msr_name="msr.ecss1" realm="sip:127.0.0.1:5000" dtmf_mode="rfc+inband+info" auth_name="user" auth_password="password"/>
      </accounts>
</config>

It contains current settings according to which the msr is registered on core.

The main parameters are: msr_name and realm.

msr_name is a parameter that defines the name of the msr. (it is recommended to set the name of the msr. and the host to which it belongs, for example, msr.ecss1);

realm — defines the address for registration on the core. Default entry point: port 5000, address: 127.0.0.1.

ecss-restfs

Без форматирования
sudo apt install ecss-restfs

When installing, you will be prompted to set up the configuration:

...

Use TTS service

...

Configure phone book

...

Configure speech recognition service

...

Choose nothing

...

ecss-web-conf

Без форматирования
sudo apt install ecss-web-conf

When installing, you will be prompted to set up the configuration:

...

Input port of MySQL db for web-conf DB

...

Input IP address or hostname for ECSS-10 with http_terminal

...

Input port SSW http_terminal

...

Input  password for SSW http_terminal

...

Configuring security. SSH

Configuring SSH server:

...

sudo nano /etc/ssh/sshd_config

In the configuration file specify the port and address where you can access the server:

...

# This is the sshd server system-wide configuration file. See
# sshd_config(5) for more information.

# This sshd was compiled with PATH=/usr/bin:/bin:/usr/sbin:/sbin

# The strategy used for options in the default sshd_config shipped with
# OpenSSH is to specify options with their default value where
# possible, but leave them commented. Uncommented options override the
# default value.

Port 2000
#AddressFamily any
ListenAddress 10.0.3.237
#ListenAddress ::

<...>

Restart ssh:

Без форматирования
sudo systemctl restart ssh.service

Initial configuration

Start the necessary services.

Предупреждение
titleIMPORTANT

Before starting, check Token availability in the system.

Run the ecss-mycelium and ecss-ds packages on the first host:

Без форматирования
sudo systemctl start ecss-mycelium
sudo systemctl start ecss-ds

Go to the CLI:

Без форматирования
ssh admin@localhost -p 8023
password: password

Check system status:

Без форматирования
admin@mycelium1@ecss1$ system-status 
Checking...
┌─┬───────────────┬────────────────────────┬───────────────┬────────────┬──────┐
│ │     Node      │        Release         │ Erlang nodes  │Mnesia nodes│Uptime│
├─┼───────────────┼────────────────────────┼───────────────┼────────────┼──────┤
│ │ds1@ecss1      │ecss-ds-3.14.10.91      │ds1@ecss1      │ds1@ecss1   │8m 9s │
│ │mycelium1@ecss1│ecss-mycelium-3.14.10.91│mycelium1@ecss1│not running │8m 10s│
└─┴───────────────┴────────────────────────┴───────────────┴────────────┴──────┘

All services are started.

Next, install passport and licenses to the system:

Без форматирования
admin@[mycelium1@ecss1]:/$ cluster/storage/ds1/licence/set-passport <passport>
admin@[mycelium1@ecss1]:/$ cluster/storage/ds1/licence/add <license>

Exit the CoCon, reboot the ecss-mycelium and ecss-ds subsystems, and then connect the remaining subsystems in the following order: ecss-core, ecss-pa-sip, ecss-media-server, ecss-restfs, ecss-mediator, ecss-web-conf.

Без форматирования
sudo systemctl start ecss-core ecss-pa-sip ecss-mediator ecss-media-server ecss-restfs ecss-web-conf

Return to the CoCon.

After that, the MSR- and Core-subsystems are connected. To do this, use the following command:

Без форматирования
admin@[mycelium1@ecss1]:/$ /system/media/resource/declare core1@ecss1 iface msr.ecss1 bond1_ecss1_pa default local true

To check, run system-status command and see the output:

Без форматирования
admin@mycelium1@ecss1$ system-status
                        
Checking... ┌─┬───────────────┬────────────────────────┬───────────────┬────────────┬──────┐ │
 
     
Node
      
'ECSS-ADV'
 limit       
Release
         
 
Erlang
 
nodes
  
│Mnesia
 
nodes│Uptime│ ├─┼───────────────┼────────────────────────┼───────────────┼────────────┼──────┤ │
 
│core1@ecss1
    
│ecss-core-3.14.10.91
    
│core1@ecss1
    
│not
 
running
 
│1m
 
59s│ │
 
│ds1@ecss1
      
│ecss-ds-3.14.10.91
    600000
 description 
│ds1@ecss1
      
│ds1@ecss1
   
│4h
    
│ │
 
│md1@ecss1
      
│ecss-mediator-3.14.10.91│md1@ecss1
      
│md1@ecss1
   
│1m
 
59s│ │
 
│mycelium1@ecss1│ecss-mycelium-3.14.10.91│mycelium1@ecss1│not
 
running
 
│4h
    
│ │
 
│sip1@ecss1
   "The 
│ecss-pa-sip-3.14.10.91 │sip1@ecss1
whole package of services"
 SS list   
│sip1@ecss1
  
│1m
 
59s│ └─┴───────────────┴────────────────────────┴───────────────┴────────────┴──────┘ All
 
services
 
are
 
started.
  
Active
 
media
 
resource
 
selected
 
list
 
specific: ┌─────────────┬───────────┬────────────┬───────────┬───────────┐ │
    
Node
     
     
MSR
   
    
MSR
     
 
Cc-status
 
 
Cc-uptime │ │
 [1,2,3,4,5]
             
           
  
version
   
           
           
│ ├─────────────┼───────────┼────────────┼───────────┼───────────┤ │
 
core1@ecss1
 
 
msr

.
ecss1
 
. 
3.14.10
.
42 │
 
connected
 
│ 00:01:31 │ └─────────────┴───────────┴────────────┴───────────┴───────────┘

Configure the SIP adapter according to the technical specification. Define a group of IP addresses (IP-set):

Без форматирования
admin@[mycelium1@ecss1]:/$ /cluster/adapter/sip1/sip/network/set ip_set test_set node-ip node = sip1@ecss1 ip = 10.0.3.238 

          
Property "ip_set" successfully changed from:

          
to
test_set: no ports set
test_set: sip1@ecss1 10.0.3.238
test_set: dscp 0.

Next, create a domain and assign to it the created group (IP-set) of the SIP adapter settings:

Без форматирования
admin@[mycelium1@ecss1]:/$ domain/declare test_domain --add-domain-admin-privileges --add-domain-user-privileges 
New domain test_domain is declared

          
domain/test_domain/sip/network/set ip_set [test_set] Property "ip_set" successfully changed from:

          
[] to ["test_set"].

After creating the domain, configure:

...


The service package name in this example is "ECSS-ADV".

Add the license service package named "ECSS-FULL+" (that's how it's described in the license) to the created policy:

Блок кода
languagebash
titlein CoCon
/domain/test_domain/ss/licence/politics/package-add new_sub ECSS-ADV 

Result:

Без форматирования
/domain/test_domain/ss/licence/politics/package-add new_sub ECSS-ADV 
Licence packages ["ECSS-ADV"] successfully added to politic new_sub.

The package has been added, but the policy is currently not active (cannot be applied to the subscriber). To activate the new_sub policy, run the following command:

Блок кода
languagebash
titlein CoCon
/domain/test_domain/ss/licence/politics/activate new_sub


Без форматирования
/domain/test_domain/ss/licence/politics/activate new_sub
Licence politic new_sub successfully activated.

Now we can use additional services when creating subscribers.