Skip to content

HEP Collector

Hamid R. Hashmi edited this page Jan 30, 2025 · 2 revisions

What is HEP Collector?

HEP Collector is a service that takes HEP packets as input and forwards them to HEP Server. It's like a proxy for HEP traffic.

How to Use HEP Collector?

image

How to run heplify as HEP Collector?

we can use param -hin as HEP collector

heplify -e -hs HEPServer1:9063,HEPserver2:9063 -hin tcp:1.2.3.4:9060

now you need to point all hep traffic to ip 1.2.3.4 and port 9060 from rtpagent, heplify or HEP agents in Asterisk, Freeswitch etc. HEP Collector will receive this traffic and forward it to HEPServer1 and HEPserver2.


HEP Collector with HEP Buffer

You can also run Heplify as a HEP Collector service with HEP buffering capability in case of disconnection.

Example

To start Heplify in Collector mode listens for HEP traffic on TCP port 9060 with the HEP buffer and forward it to the HEP Server 127.0.0.1:9062 .

Replace the unit file /lib/systemd/system/heplify.service with the following unit file:

[Unit]
Description=Captures packets from wire and sends them to Hepic
After=network.target

[Service]
Environment="HEP_SERVER=127.0.0.1:9062"
Environment="HEP_BUFFER_FILE=/root/HEP.dump"
Environment="HEP_COLLECTOR=tcp:0.0.0.0:9060"
ExecStart=/usr/local/bin/heplify -hep-buffer-activate -hep-buffer-file $HEP_BUFFER_FILE -i any -t af_packet -m SIPRTCP -hs $HEP_SERVER -l info -nt tcp -hin $HEP_COLLECTOR
ExecStop=/bin/kill ${MAINPID}
Restart=on-failure
RestartSec=10s
Type=simple

[Install]
WantedBy=multi-user.target

Reload systemd and start the service

systemctl daemon-reload
systemctl start heplify

Check the status of heplify

systemctl status heplify