v0.0.0-...-6fff091 Latest Latest

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

Go to latest
Published: Mar 28, 2019 License: MIT Imports: 11 Imported by: 0



Package smpptest provides an SMPP test server.



This section is empty.


View Source
var (
	DefaultUser     = "client"
	DefaultPasswd   = "secret"
	DefaultSystemID = "smpptest"

Default settings.


func EchoHandler

func EchoHandler(cli Conn, m pdu.Body)

EchoHandler is the default Server HandlerFunc, and echoes back any PDUs received.


type Conn

type Conn interface {
	// Write serializes the given PDU and writes to the connection.
	Write(p pdu.Body) error

	// Close terminates the connection.
	Close() error

	// RemoteAddr returns the peer address.
	RemoteAddr() net.Addr

Conn implements a server side connection.

type HandlerFunc

type HandlerFunc func(c Conn, m pdu.Body)

HandlerFunc is the signature of a function passed to Server instances, that is called when client PDU messages arrive.

type Server

type Server struct {
	User    string
	Passwd  string
	TLS     *tls.Config
	Handler HandlerFunc
	// contains filtered or unexported fields

Server is an SMPP server for testing purposes. By default it authenticate clients with the configured credentials, and echoes any other PDUs back to the client.

func NewServer

func NewServer() *Server

NewServer creates and initializes a new Server. Callers are supposed to call Close on that server later.

func NewUnstartedServer

func NewUnstartedServer() *Server

NewUnstartedServer creates a new Server with default settings, and does not start it. Callers are supposed to call Start and Close later.

func (*Server) Addr

func (srv *Server) Addr() string

Addr returns the local address of the server, or an empty string if the server hasn't been started yet.

func (*Server) BroadcastMessage

func (srv *Server) BroadcastMessage(p pdu.Body)

broadcasts a test PDU to all clients bind to this server

func (*Server) Close

func (srv *Server) Close()

Close stops the server, causing the accept loop to break out.

func (*Server) Serve

func (srv *Server) Serve()

Serve accepts new clients and handle them by authenticating the first PDU, expected to be a Bind PDU, then echoing all other PDUs.

func (*Server) Start

func (srv *Server) Start()

Start starts the server.

Jump to

Keyboard shortcuts

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