You're viewing a demo portfolio

Join the waitlist
PRSM

diff_sip_messages

Active

Tool of Sipflow

declared in 0.2.0

[cost: free (pure CPU, no network) | read-only, no persistence] Take two SIP messages (typically the same request observed at two adjacent hops - e.g. the INVITE leaving FreeSWITCH and the INVITE arriving at Kamailio) and surface a structured per-header diff: `added`, `removed`, `mutated` (with old/new value), `duplicated` (single header → many), `de-duplicated`, `whitespace-only-change`, `parameter-reorder` (Via params, From tag), and `body-changed`. SDP bodies on both sides are delegated to `compareSdp` for codec / DTLS / ICE diffs. Use FIRST when the user has two captures or two log lines that should be carrying the same message and wants to know what an intermediate proxy / SBC / B2BUA changed. Far more reliable than visual inspection. Pair with: `parse_sip_message` to inspect either side in isolation; `lint_sip_request` if the diff reveals the downstream side became malformed; `search_sip_docs(vendor=<intermediate>)` once you know which hop's behavior is the source of the change.

Parameters schema

{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "before",
    "after"
  ],
  "properties": {
    "after": {
      "type": "string",
      "maxLength": 64000,
      "minLength": 1,
      "description": "SIP message as observed at the *downstream* hop (e.g. what Kamailio believes it received)."
    },
    "before": {
      "type": "string",
      "maxLength": 64000,
      "minLength": 1,
      "description": "SIP message as observed at the *upstream* hop (e.g. what FreeSWITCH believes it sent)."
    },
    "labelAfter": {
      "type": "string",
      "default": "after",
      "maxLength": 80,
      "description": "Display label for the downstream side. Default \"after\"."
    },
    "labelBefore": {
      "type": "string",
      "default": "before",
      "maxLength": 80,
      "description": "Display label for the upstream side. Default \"before\"."
    }
  },
  "additionalProperties": false
}

What this tool wraps· 0 endpoints

min confidence0.700.50

No endpoints wrapped at confidence ≥ 0.50.

Parent server

Sipflow

https://github.com/cmendes0101/sipflow-cursor-plugin

1/7 registries
View full server →