transaction

package
v0.0.0-...-87a8fe7 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 21, 2020 License: LGPL-2.1 Imports: 11 Imported by: 0

Documentation

Index

Constants

View Source
const (
	T1 = 500 * time.Millisecond
	T2 = 4 * time.Second
)

Variables

This section is empty.

Functions

This section is empty.

Types

type ClientTransaction

type ClientTransaction struct {
	// contains filtered or unexported fields
}

func (*ClientTransaction) Ack

func (tx *ClientTransaction) Ack()

Send an automatic ACK.

func (*ClientTransaction) Delete

func (tx *ClientTransaction) Delete()

func (*ClientTransaction) Destination

func (tx *ClientTransaction) Destination() string

func (*ClientTransaction) Errors

func (tx *ClientTransaction) Errors() <-chan error

Return the channel we send errors on.

func (*ClientTransaction) MakeBye

func (tx *ClientTransaction) MakeBye() (*base.Request, error)

func (*ClientTransaction) MakeNonInviteMessage

func (tx *ClientTransaction) MakeNonInviteMessage(method base.Method) (*base.Request, error)

func (*ClientTransaction) Ok

func (tx *ClientTransaction) Ok()

Send an automatic Ok.

func (*ClientTransaction) Origin

func (tx *ClientTransaction) Origin() *base.Request

func (*ClientTransaction) Receive

func (tx *ClientTransaction) Receive(m base.SipMessage)

func (*ClientTransaction) Requests

func (tx *ClientTransaction) Requests() <-chan *base.Request

Return the channel we send requests on.

func (*ClientTransaction) Responses

func (tx *ClientTransaction) Responses() <-chan *base.Response

Return the channel we send responses on.

func (*ClientTransaction) Terminate

func (tx *ClientTransaction) Terminate()

Terminate this transaction

func (*ClientTransaction) Transport

func (tx *ClientTransaction) Transport() transport.Manager

type Manager

type Manager struct {
	// contains filtered or unexported fields
}

func NewManager

func NewManager(t transport.Manager, addr string) (*Manager, error)

func (*Manager) LocalAddress

func (mng *Manager) LocalAddress(addr string) (net.Addr, error)

func (*Manager) Requests

func (mng *Manager) Requests() <-chan *ServerTransaction

func (*Manager) Send

func (mng *Manager) Send(r *base.Request, dest string) *ClientTransaction

Create Client transaction.

func (*Manager) Stop

func (mng *Manager) Stop()

Stop the manager and close down all processing on it, losing all transactions in progress.

type ServerTransaction

type ServerTransaction struct {
	// contains filtered or unexported fields
}

func (*ServerTransaction) Ack

func (tx *ServerTransaction) Ack() <-chan *base.Request

func (*ServerTransaction) Delete

func (tx *ServerTransaction) Delete()

func (*ServerTransaction) Destination

func (tx *ServerTransaction) Destination() string

func (*ServerTransaction) Origin

func (tx *ServerTransaction) Origin() *base.Request

func (*ServerTransaction) Receive

func (tx *ServerTransaction) Receive(m base.SipMessage)

func (*ServerTransaction) Respond

func (tx *ServerTransaction) Respond(r *base.Response)

func (*ServerTransaction) Transport

func (tx *ServerTransaction) Transport() transport.Manager

type Transaction

type Transaction interface {
	Receive(m base.SipMessage)
	Origin() *base.Request
	Destination() string
	Transport() transport.Manager
	Delete()
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL