<!-- Do not edit this file. It is automatically generated by API Documenter. -->

[Home](./index.md) &gt; [sip.js](./sip.js.md) &gt; [ServerTransaction](./sip.js.servertransaction.md)

## ServerTransaction class

Server Transaction.

<b>Signature:</b>

```typescript
export declare abstract class ServerTransaction extends Transaction 
```

## Remarks

The server transaction is responsible for the delivery of requests to the TU and the reliable transmission of responses. It accomplishes this through a state machine. Server transactions are created by the core when a request is received, and transaction handling is desired for that request (this is not always the case). https://tools.ietf.org/html/rfc3261\#section-17.2

## Constructors

|  Constructor | Modifiers | Description |
|  --- | --- | --- |
|  [(constructor)(\_request, transport, user, state, loggerCategory)](./sip.js.servertransaction._constructor_.md) |  | Constructs a new instance of the <code>ServerTransaction</code> class |

## Properties

|  Property | Modifiers | Type | Description |
|  --- | --- | --- | --- |
|  [request](./sip.js.servertransaction.request.md) |  | <code>IncomingRequestMessage</code> | The incoming request the transaction handling. |
|  [user](./sip.js.servertransaction.user.md) |  | <code>ServerTransactionUser</code> |  |

## Methods

|  Method | Modifiers | Description |
|  --- | --- | --- |
|  [receiveRequest(request)](./sip.js.servertransaction.receiverequest.md) |  | Receive incoming requests from the transport which match this transaction. |
|  [receiveResponse(statusCode, response)](./sip.js.servertransaction.receiveresponse.md) |  | Receive outgoing responses to this request from the transaction user. Responses will be delivered to the transport as necessary. |

