Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/sipcapture/hepipe.js
Pipe arbitrary data rows (logs, events, cdrs, esl, etc) to HEP Server (HOMER)
https://github.com/sipcapture/hepipe.js
esl event hep homer janus-events logs
Last synced: 9 days ago
JSON representation
Pipe arbitrary data rows (logs, events, cdrs, esl, etc) to HEP Server (HOMER)
- Host: GitHub
- URL: https://github.com/sipcapture/hepipe.js
- Owner: sipcapture
- License: mit
- Created: 2015-11-19T23:26:41.000Z (almost 9 years ago)
- Default Branch: master
- Last Pushed: 2024-06-28T14:33:01.000Z (4 months ago)
- Last Synced: 2024-07-31T19:17:55.893Z (3 months ago)
- Topics: esl, event, hep, homer, janus-events, logs
- Language: JavaScript
- Homepage: http://sipcapture.org
- Size: 107 KB
- Stars: 24
- Watchers: 8
- Forks: 16
- Open Issues: 9
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- awesome-hep - HEPipe.js - Pipe arbitrary data rows (logs, events, cdrs, esl, etc) to HEP Server (NodeJS) (Contribution Guidelines / Tools)
README
# HEPipe.js
##### HEP Enabled data harvesterHEPipe.js can work several types of feeds:
- Log based events
- Freeswitch ESL events
- Meetecho Janus eventsEach module features its own programming used to match and encapsulate extracted data using the desired HEP payload (e.g. JSON vs SIP) and send it to an [HOMER](https://github.com/sipcapture/homer) instance.
These are configured by setting the related sections in `config.js` (see `examples/` for managing log events, ESL events (log, RTCP, QoS) and Janus events (SIP, other events)).
## Installation and Run
Prepare with:
`sudo npm install`
Fill config.js as needed (please see `examples/`)
Run with:
`sudo node hepipe.js`
## Dockerisation
You can also run hepipe.js inside a Docker container.
config.js can be made available via a read-only Volume.
Ensure that the container can access the monitored log (e.g. via a Volume), and can connect to FS ESL or Janus Events API as needed.
## ESL client
### Events
| ESL Event | Hep Mode | HEP Type |
|:--|:--|:--|
| CHANNEL_CREATE | LOG | 100 |
| CHANNEL_ANSWER | LOG | 100 |
| CHANNEL_DESTROY | LOG | 100 |
| CUSTOM | LOG | 100 |
| RECV_RTCP_MESSAGE | RTCP | 5 |
| CHANNEL_DESTROY | CUSTOM QoS | 99 |### Correlation Headers
```Other-Leg-Unique-ID``` -> ```Unique-ID``` -> ```variable_sip_call_id```
## Janus client
### Events
| Janus Event | Janus Type | HEP Mode | HEP Type |
|:--|:--|:--|:--|
| SIP | 64 | SIP | 1 |
| CORE | 1 | LOG | 100 |
| SESSION | 2 | LOG | 100 |
| MEDIA | 32 | LOG | 100 |
| ICE | 16 | LOG | 100 |
| JSEP/SDP | 8 | LOG | 100 |### Correlation Headers
```session_id``` -> ```handle_id``` -> ```data.call_id```