TMX Module

Daniel-Constantin Mierla

Edited by

Daniel-Constantin Mierla

Table of Contents

1. Admin Guide
1. Overview
2. Dependencies
2.1. Kamailio Modules
2.2. External Libraries or Applications
3. Exported Functions
3.1. t_cancel_branches(which)
4. Exported pseudo-variables
5. Exported MI Functions
5.1. t_uac_dlg
5.2. t_uac_cancel
5.3. t_hash
5.4. t_reply
6. Exported statistics
6.1. received_replies
6.2. relayed_replies
6.3. local_replies
6.4. UAS_transactions
6.5. UAC_transactions
6.6. 2xx_transactions
6.7. 3xx_transactions
6.8. 4xx_transactions
6.9. 5xx_transactions
6.10. 6xx_transactions
6.11. inuse_transactions

List of Examples

1.1. t_cancel_branches usage

Chapter 1. Admin Guide

1. Overview

This module collects extensions from Kamailio TM module.

Kamailio TM (Transaction Management) module documentation is available at:

2. Dependencies

2.1. Kamailio Modules

The following modules must be loaded before this module:

  • tm - transaction management.

2.2. External Libraries or Applications

The following libraries or applications must be installed before running Kamailio with this module loaded:

  • None.

3. Exported Functions

3.1.  t_cancel_branches(which)

Cancel branches of an active SIP transaction. The function can be called for a SIP reply that will identify the current branch.

Parameter can be:.

  • all - cancel all branches.

  • others - cancel all branches but the current one.

  • this - cancel current branch.

This function can be used in ONREPLY_ROUTE.

Example 1.1. t_cancel_branches usage

if (t_cancel_branches("all")) {
	xlog("cancelled all branches\n");

4. Exported pseudo-variables

  • $T_branch_idx

  • $T_reply_code

  • $T_req(pv)

  • $T_rpl(pv)

Exported pseudo-variables are documented at

5. Exported MI Functions

5.1.  t_uac_dlg

Generates and sends a local SIP request.


  • method - request method

  • RURI - request SIP URI

  • NEXT HOP - next hop SIP URI (OBP); use “.” if no value.

  • socket - local socket to be used for sending the request; use “.” if no value.

  • headers - set of additional headers to be added to the request; at least “From” and “To” headers must be specify)

  • body - (optional, may not be present) request body (if present, requires the “Content-Type” and “Content-length” headers)

5.2.  t_uac_cancel

Generates and sends a CANCEL for an existing local SIP request.


  • callid - callid of the INVITE request to be cancelled.

  • cseq - cseq of the INVITE request to be cancelled.

5.3.  t_hash

Gets information about the load of TM internal hash table.


  • none

5.4.  t_reply

Generates and sends a reply for an existing inbound SIP transaction.


  • code - reply code

  • reason - reason phrase.

  • trans_id - transaction identifier (has the hash_entry:label format)

  • to_tag - To tag to be added to TO header

  • new_headers - extra headers to be appended to the reply; use a dot (“.”) char only if there are no headers;

  • body - (optional, may not be present) reply body (if present, requires the “Content-Type” and “Content-length” headers)

6. Exported statistics

Exported statistics are listed in the next sections. All statistics except “inuse_transactions” can be reset.

6.1. received_replies

Total number of total replies received by TM module.

6.2. relayed_replies

Total number of replies received and relayed by TM module.

6.3. local_replies

Total number of replies local generated by TM module.

6.4. UAS_transactions

Total number of transactions created by received requests.

6.5. UAC_transactions

Total number of transactions created by local generated requests.

6.6. 2xx_transactions

Total number of transactions completed with 2xx replies.

6.7. 3xx_transactions

Total number of transactions completed with 3xx replies.

6.8. 4xx_transactions

Total number of transactions completed with 4xx replies.

6.9. 5xx_transactions

Total number of transactions completed with 5xx replies.

6.10. 6xx_transactions

Total number of transactions completed with 6xx replies.

6.11. inuse_transactions

Number of transactions existing in memory at current time.