# tls-sip-probe

> Tests SIP-TLS server availability trying to REGISTER into it

Latest version **1.0.5** (published 2017-02-28) · MIT license · 0 weekly downloads

## Install

```sh
npm install tls-sip-probe
pnpm add tls-sip-probe
yarn add tls-sip-probe
bun add tls-sip-probe
```

## Health

**Score 15/100 (F)** — status: abandoned.

Positive: no vulnerabilities.

Warnings: low downloads; no types; no esm support.

Negative: abandoned; low maintenance score.

## Facts

| | |
|---|---|
| Version | 1.0.5 |
| Published | 2017-02-28 |
| First published | 2017-02-24 |
| Weekly downloads | 0 |
| License | MIT |
| TypeScript types | none |
| Module format | CommonJS |
| Dependencies | 0 |
| Known vulnerabilities | 0 |
| Install scripts | no |
| Author | Max S. Ivanov |
| Maintainers | maxsivanov |

## Links

- npm: https://www.npmjs.com/package/tls-sip-probe
- Repository: https://github.com/maxsivanov/tls-sip-probe
- Issues: https://github.com/maxsivanov/tls-sip-probe/issues
- npm.io page: https://npm.io/package/tls-sip-probe

## Recent versions

- 1.0.5 (latest) — 2017-02-28
- 1.0.4 — 2017-02-27
- 1.0.3 — 2017-02-27
- 1.0.2 — 2017-02-24
- 1.0.1 — 2017-02-24
- 1.0.0 — 2017-02-24

## README

# TLS-SIP probe

This package can be used for:

* Testing SIP server availability
* Guess username/password pair is correct 

The package is suitable for testing SIP-TLS servers with self-signed certificates. **Certificate checks are disabled** so be careful. 

To be honest there are several approaches to do so.

* [sipp](http://sipp.sourceforge.net/)
* [baresip](http://creytiv.com/baresip.html)
* [node_baresip](https://github.com/AlexMarlo/node_baresip)
* [sip.js](https://github.com/kirm/sip.js)

But I found them to be cumbersome for such an easy task to probe SIP server. 

SIP-TLS supports only [digest auth](https://en.wikipedia.org/wiki/Digest_access_authentication) according to RFC 2069 **without**  "quality of protection" (qop) extensions introduced in  RFC 2617.

It was tested against Asterisk, so is might be not working against other servers.

## Install

`npm i tls-sip-probe --save`

## Example
```
var sip = require("tls-sip-probe");

/**
 * sip.connect(
 *     host, 
 *     port (0 for default), 
 *     user, 
 *     password
 * );
 */

sip.connect("127.0.0.1", 0, "1000", "password", function (err, result) {
	if (!err) {
		if (result === sip.results.OK) {
   			console.log("OK");
   		}
   		if (result === sip.results.FORBIDDEN) {
   			console.log("INCORRECT USER/PASSWORD");
   		}
   }
});
```

---
_Source: https://npm.io/package/tls-sip-probe · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
