| No | Checklist item | Command | Expected result | Recommendations |
|---|---|---|---|---|
Testing the started services | ||||
| 1 | Checking the started telephony services:
ON EACH HOST | sudo systemctl list-units --all |\
grep -E "ecss-core|myc|ecss-ds|sip|mediator" |\
awk '{print $1, $3"("$4")"}' |\
jq -R 'split(" ")|{servise:.[0], status:.[1]}'
Copy all strings of the command in their entirety | {
"servise": "ecss-core.service",
"status": "active(running)"
}
{
"servise": "ecss-ds.service",
"status": "active(running)"
}
{
"servise": "ecss-mediator.service",
"status": "active(running)"
}
{
"servise": "ecss-mycelium.service",
"status": "active(running)"
}
{
"servise": "ecss-pa-sip.service",
"status": "active(running)"
}
Make sure all services from the list are active (running) | Start the service which status is: inactive (dead), or different from active (running) |
| 2 | Checking the started service for processing voice/video traffic:
ON EACH HOST | sudo systemctl list-units --all |\
grep "ecss-media-server.service" |\
awk '{print $1, $3"("$4")"}' |\
jq -R 'split(" ")|{servise:.[0], status:.[1]}'
Copy all strings of the command in their entirety | {
"servise": "ecss-media-server.service",
"status": "active(running)"
}
Make sure the ecss-media-server is active(running) | Start the ecss-media-server.service service if its status is different from: active(running) |
| 3 | Checking the started restfs* services (The services are responsible for storing and providing call recording files and automated message files) ON EACH HOST | sudo systemctl list-units --all | tr -d '●' |\
grep -E "restfs" | grep -E "card|core|unit|timer|writer" |\
awk '{print $1,$3 "("$4")"}' |\
jq -R 'split(" ")|{servise:.[0], status:.[1]}'
Copy all strings of the command in their entirety | {
"servise": "ecss-restfs-card.service",
"status": "active(exited)"
}
{
"servise": "ecss-restfs-core.service",
"status": "active(exited)"
}
{
"servise": "ecss-restfs-unit-conf.service",
"status": "active(exited)"
}
{
"servise": "ecss-restfs-unit.service",
"status": "active(running)"
}
{
"servise": "ecss-restfs-writer.service",
"status": "active(running)"
}
{
"servise": "ecss-restfs-cleaner.timer",
"status": "active(waiting)"
}
{
"servise": "ecss-restfs-crawler.timer",
"status": "active(waiting)"
}
Make sure all services from the list are active. active(exited) – is a normal status for:
active(waiting) – is a normal status for:
| Start the services the status of which starts with inactive |
| 4 | Checking web services:
ON EACH HOST | sudo systemctl list-units --all |\
grep -E "ecss-web|teleconf|cc-ui" |\
awk '{print $1,$3 "("$4")"}' |\
jq -R 'split(" ")|{servise:.[0], status:.[1]}'
Copy all strings of the command in their entirety | {
"servise": "ecss-cc-ui-api.service",
"status": "active(running)"
}
{
"servise": "ecss-cc-ui.service",
"status": "active(exited)"
}
{
"servise": "ecss-teleconference-ui-api.service",
"status": "active(running)"
}
{
"servise": "ecss-teleconference-ui.service",
"status": "active(exited)"
}
{
"servise": "ecss-web-conf.service",
"status": "active(running)"
}
{
"servise": "ecss-web-socket.service",
"status": "active(running)"
}
Make sure all services from the list are active. active(exited) – is a normal status for:
| Start the services the status of which starts with inactive |
| 5 | Checking system services connected to ECSS-10ON EACH HOST | sudo systemctl list-units -all | grep dnsmasq |\
awk '{print $1,$3 "("$4")"}' |\
jq -R 'split(" ")|{service:.[0],status:.[1]}'
Copy all strings of the command in their entirety | {
"service": "dnsmasq.service",
"status": "active(running)"
}
Make sure that the dnsmasq service is active(running). | Start the service if its status is inactive |
cat /etc/resolv.conf | # Generated by NetworkManager search eltex.loc nameserver 127.0.0.1 Make sure that 127.0.0.1 address is specified in the nameserver; your root domain can be specified in the search. | Change nameserver address to 127.0.0.1 | ||
| 6 | Checking the status of the glusterfs distributed storage for restfsON EACH HOST | sudo systemctl list-units --all |\
grep -E '[sb*]-glusterf|glusterd' |\
awk {'print $1, $3 "("$4")"'} |\
jq -R 'split(" ")|{service:.[0], status:.[1]}'
Copy all strings of the command in their entirety | {
"service": "var-lib-glusterfs.mount",
"status": "active(mounted)"
}
{
"service": "ecss-glusterfs-mount.service",
"status": "active(running)"
}
{
"service": "glusterd.service",
"status": "active(running)"
}
Make sure all services from the list are active (running) | Start the services the status of which isn't active. |
| 6.1 | Viewing the status of a distributed glusterfs storage systemON EACH HOST | sudo gluster volume info | Volume Name: ecss_volume Type: Replicate Volume ID: 3fcc1c59-1243-406c-9990-f0ff33fb2ce5 Status: Started Snapshot Count: 0 Number of Bricks: 1 x 2 = 2 Transport-type: tcp Bricks: Brick1: <IP ECSS1>:/var/lib/ecss/glusterfs Brick2: <IP ECSS2>:/var/lib/ecss/glusterfs Options Reconfigured: performance.client-io-threads: off nfs.disable: on transport.address-family: inet cluster.favorite-child-policy: size Make sure that the Status field contains the Started value. | If the status is “Stopped,” run the “start” command for this network storage device |
| 6.2 | Viewing a distributed glusterfs storage system connected to a file systemON EACH HOST | df -h | grep ecss_volume | localhost:/ecss_volume 9.8G 2.1G 7.4G 22% /var/lib/ecss/restfs Check that this line, which begins with localhost:/ecss_volume, is present, and ensure there is sufficient free space (you can estimate this based on the value in %). Make sure that the network storage is connected specifically to /var/lib/ecss/restfs. | |
| 7 | Checking the ECSS-10 database status | |||
Checking the services started inside the ECSS-10 | ||||
| 1 | Checking the connection to the management console (CoCon):The following steps are performed without exiting CoCon. ON ECSS1 | ssh admin@localhost -p 8023 | admin@localhost's password: admin@[mycelium1@ecss1#ECSS-ID]:/ Make sure you are logged in to CoCon and that your ECSS-ID is listed in the invitation line. | Contact technical support |
| 2 | Viewing the nodes connected to the ECSS-10 clusterON ECSS1 | node/check-services | Nodes:
core1@ecss1 core1@ecss2
ds1@ecss1 ds1@ecss2
md1@ecss1 md1@ecss2
mycelium1@ecss1 mycelium1@ecss2
sip1@ecss1 sip1@ecss2
All services are started
Make sure that your system has exactly the same list of nodes running in the ECSS-10 cluster. | Start a service that is not running on your system but is listed here |
| 3 | Viewing the MSRs connected to the ECSS-10 clusterON ECSS1 | system/media/resource/list short | support@[mycelium1@ecss1#ECSS 000118]:/$ system/media/resource/list short Active media resource selected list specific: ┌─────────────┬───────────┬────────────┬───────────┬─────────────┐ │ Node │ MSR │ MSR │ Cc-status │ Cc-uptime │ │ │ │ version │ │ │ ├─────────────┼───────────┼────────────┼───────────┼─────────────┤ │ core1@ecss1 │ MSR1.name │ 3.14.15.243│ connected │ 29 03:34:52 │ │ │ MSR2.name │ 3.14.15.243│ connected │ 29 03:15:03 │ │ core1@ecss2 │ MSR1.name │ 3.14.15.243│ connected │ 29 00:34:36 │ │ │ MSR2.name │ 3.14.15.243│ connected │ 29 00:33:35 │ └─────────────┴───────────┴────────────┴───────────┴─────────────┘ Verify that the Cc-status for the MSRs named MSR1.name and MSR2.name are connected. On your system, the MSR name may differ from those listed here. There may also be other MSRs, but the minimum number of MSRs for the cluster is 4. | Check that the following configuration files are correct:
|
| 4 | Viewing the status of the restfs storageON ECSS1 | restfs/list | ┌────────────┬──────────────────────────────┬─────────┐ │Cluster name│ Peer │ Status │ ├────────────┼──────────────────────────────┼─────────┤ │default │http://system.restfs.ecss:9990│connected│ └────────────┴──────────────────────────────┴─────────┘ Succesfull Make sure that default restfs has the connected status. | Contact technical support |
| 5 | Viewing the available auto-informer filesON ECSS1 | restfs/default/list | Type Name Size directory domain 4K directory system 4K directory template 4K file cleaner.json 1.03K Make sure the command output includes the following required names:
Other files and directories may also be present, but only the four listed above are required. | Contact technical support |
| 6 | Viewing the active commercial licenseON ECSS1 | cluster/storage/ds1/licence/list-licence | ┌──┬───────────────────┬────────────┬──────┬──────────────────────┬────────────────────┬──────────┐ │Id│Creation date(UTC) │ SSW ID │Active│ Description │Expiration date(UTC)│Time left │ ├──┼───────────────────┼────────────┼──────┼──────────────────────┼────────────────────┼──────────┤ │1 │05.08.2025 13:50:00│ECSS-Test │* │Eltex-SC test │05.08.2026 13:50:00 │83d 6h 36m│ │0 │ │ECSS DEFAULT│ │Default licence │ │ │ └──┴───────────────────┴────────────┴──────┴──────────────────────┴────────────────────┴──────────┘ Make sure that the command output includes a license with an ID other than 0, and that this row contains an "*" in the Active column. There may be multiple licenses, but only one can be active (the Active column will contain an “*”) – the one with the highest value in the ID column. | |
Testing the functionality of the ECSS-10 telephony | ||||
| 1 | Checking the playback of auto-attendant files to the calling subscriber using the "My Number" service as an example | On the station subscriber’s phone, dial the feature code: *123. | The caller should hear their own phone number through the handset or speaker | |
| 2 | Checking intra-exchange calls | |||
Checking the routing of a direct call from one exchange subscriber to another (A → B). | On the phone of exchange subscriber “A,” dial the phone number of exchange subscriber “B.” |
| ||
Checking a return call from one exchange subscriber to another (B → A) | On subscriber B’s telephone, dial the phone number of the other exchange subscriber, subscriber A. | |||
| 3 | Checking calls to local numbersPERFORM ON ALL TRUNKS | |||
Проверка совершения прямого вызова между абонентом станции и городским номером (транковый вызов) (А → Бгор) | На телефоне абонента станции необходимо набрать городской (семизначный) номер телефона не принадлежащий данной АТС |
| ||
Проверка совершения обратного вызова между абонентом станции и городским номером (транковый вызов) (Бгор → А) | Выполнить вызов с городского номера на номер абонента станции, используя его городской номер | |||
| 4 | Проверка междугородних вызовов и вызовов на мобильные номераPERFORM ON ALL TRUNKS | |||
Проверка совершения прямого вызова между абонентом станции и междугороним номером (транковый вызов) (А → Бмг/моб) | На телефоне абонента станции необходимо набрать номер телефона в междугородном формате (11 знаков) |
| ||
Проверка совершения обратного вызова между абонентом станции и междугороним номером (транковый вызов) (Бмг/моб → А) | Выполнить вызов с междугороднего номера или мобильного номера, на номер абонента станции, используя его городской номер | |||
| 5 | Проверка корректного выполнения переадресаций (CFU/CFNR/CFT/CFB) | |||
Проверка корректности совершения переадресации на абонента станции А → Б → Cаб | На абоненте "Б" установить любую из доступных видов переадресацию на абонента "С" через веб-интерфейс станции или через feature-code. Совершить вызов с абонента "А" на абонента "Б" |
| ||
Проверка корректности совершения переадресации на мобильный номер А → Б → Cмоб | На абоненте "Б" установить любую из доступных видов переадресацию на мобильный номер "С" через веб-интерфейс станции или через feature-code. Совершить вызов с абонента "А" на абонента "Б" | |||
Проверка корректности совершения переадресации на мобильный номер при входящем вызове с мобильного/городского номера Амг/моб → Б → Cмоб | На абоненте "Б" установить любую из доступных видов переадресацию на мобильный номер "С" через веб-интерфейс станции или через feature-code. Совершить вызов с мобильного номера "А" на абонента "Б", используя его городской номер |
| ||
| 6 | Проверка сбора конференции (add-on) | |||
Проверка корректности организации конференции с тремя участниками А → Б А → С А + Б + С | С абонента "А"( при наличии у него услуг: add-on, ctr, chold) организовать конференцию с другими абонентами "Б" и "С" |
| ||
7+ | Проверка остальных используемых сервисов | |||
Выполнить проверки функций всех сервисов/интеграций, которые используются в вашей компании, например:
и другие | ||||