pbx

package
v0.22.12 Latest Latest
Warning

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

Go to latest
Published: Jan 28, 2024 License: GPL-3.0 Imports: 8 Imported by: 5

README

Protocol Buffer and gRPC definitions

Definitions for Tinode gRPC client and plugins.

Tinode gRPC clients must implement rpc service Node, Tinode plugins Plugin.

Generated Go and Python code is included. For a sample Python implementation of a command line client see tn-cli. For a partial plugin implementation see chatbot.

If you want to make changes, you have to install protobuffers tool chain and gRPC:

$ python -m pip install grpcio grpcio-tools googleapis-common-protos

To generate Go bindings add the following comment to your code and run go generate (your actual path to /pbx may be different):

//go:generate protoc --proto_path=../pbx --go_out=plugins=grpc:../pbx ../pbx/model.proto

To generate Python bindings:

python -m grpc_tools.protoc -I../pbx --python_out=. --grpc_python_out=. ../pbx/model.proto

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	AuthLevel_name = map[int32]string{
		0:  "NONE",
		10: "ANON",
		20: "AUTH",
		30: "ROOT",
	}
	AuthLevel_value = map[string]int32{
		"NONE": 0,
		"ANON": 10,
		"AUTH": 20,
		"ROOT": 30,
	}
)

Enum value maps for AuthLevel.

View Source
var (
	InfoNote_name = map[int32]string{
		0: "X1",
		1: "READ",
		2: "RECV",
		3: "KP",
		4: "CALL",
	}
	InfoNote_value = map[string]int32{
		"X1":   0,
		"READ": 1,
		"RECV": 2,
		"KP":   3,
		"CALL": 4,
	}
)

Enum value maps for InfoNote.

View Source
var (
	CallEvent_name = map[int32]string{
		0: "X2",
		1: "ACCEPT",
		2: "ANSWER",
		3: "HANG_UP",
		4: "ICE_CANDIDATE",
		5: "INVITE",
		6: "OFFER",
		7: "RINGING",
	}
	CallEvent_value = map[string]int32{
		"X2":            0,
		"ACCEPT":        1,
		"ANSWER":        2,
		"HANG_UP":       3,
		"ICE_CANDIDATE": 4,
		"INVITE":        5,
		"OFFER":         6,
		"RINGING":       7,
	}
)

Enum value maps for CallEvent.

View Source
var (
	RespCode_name = map[int32]string{
		0: "CONTINUE",
		1: "DROP",
		2: "RESPOND",
		3: "REPLACE",
	}
	RespCode_value = map[string]int32{
		"CONTINUE": 0,
		"DROP":     1,
		"RESPOND":  2,
		"REPLACE":  3,
	}
)

Enum value maps for RespCode.

View Source
var (
	Crud_name = map[int32]string{
		0: "CREATE",
		1: "UPDATE",
		2: "DELETE",
	}
	Crud_value = map[string]int32{
		"CREATE": 0,
		"UPDATE": 1,
		"DELETE": 2,
	}
)

Enum value maps for Crud.

View Source
var (
	ClientDel_What_name = map[int32]string{
		0: "X0",
		1: "MSG",
		2: "TOPIC",
		3: "SUB",
		4: "USER",
		5: "CRED",
	}
	ClientDel_What_value = map[string]int32{
		"X0":    0,
		"MSG":   1,
		"TOPIC": 2,
		"SUB":   3,
		"USER":  4,
		"CRED":  5,
	}
)

Enum value maps for ClientDel_What.

View Source
var (
	ServerPres_What_name = map[int32]string{
		0:  "X3",
		1:  "ON",
		2:  "OFF",
		3:  "UA",
		4:  "UPD",
		5:  "GONE",
		6:  "ACS",
		7:  "TERM",
		8:  "MSG",
		9:  "READ",
		10: "RECV",
		11: "DEL",
		12: "TAGS",
	}
	ServerPres_What_value = map[string]int32{
		"X3":   0,
		"ON":   1,
		"OFF":  2,
		"UA":   3,
		"UPD":  4,
		"GONE": 5,
		"ACS":  6,
		"TERM": 7,
		"MSG":  8,
		"READ": 9,
		"RECV": 10,
		"DEL":  11,
		"TAGS": 12,
	}
)

Enum value maps for ServerPres_What.

View Source
var File_model_proto protoreflect.FileDescriptor
View Source
var Node_ServiceDesc = grpc.ServiceDesc{
	ServiceName: "pbx.Node",
	HandlerType: (*NodeServer)(nil),
	Methods:     []grpc.MethodDesc{},
	Streams: []grpc.StreamDesc{
		{
			StreamName:    "MessageLoop",
			Handler:       _Node_MessageLoop_Handler,
			ServerStreams: true,
			ClientStreams: true,
		},
	},
	Metadata: "model.proto",
}

Node_ServiceDesc is the grpc.ServiceDesc for Node service. It's only intended for direct use with grpc.RegisterService, and not to be introspected or modified (even as a copy)

View Source
var Plugin_ServiceDesc = grpc.ServiceDesc{
	ServiceName: "pbx.Plugin",
	HandlerType: (*PluginServer)(nil),
	Methods: []grpc.MethodDesc{
		{
			MethodName: "FireHose",
			Handler:    _Plugin_FireHose_Handler,
		},
		{
			MethodName: "Find",
			Handler:    _Plugin_Find_Handler,
		},
		{
			MethodName: "Account",
			Handler:    _Plugin_Account_Handler,
		},
		{
			MethodName: "Topic",
			Handler:    _Plugin_Topic_Handler,
		},
		{
			MethodName: "Subscription",
			Handler:    _Plugin_Subscription_Handler,
		},
		{
			MethodName: "Message",
			Handler:    _Plugin_Message_Handler,
		},
	},
	Streams:  []grpc.StreamDesc{},
	Metadata: "model.proto",
}

Plugin_ServiceDesc is the grpc.ServiceDesc for Plugin service. It's only intended for direct use with grpc.RegisterService, and not to be introspected or modified (even as a copy)

Functions

func RegisterNodeServer

func RegisterNodeServer(s grpc.ServiceRegistrar, srv NodeServer)

func RegisterPluginServer

func RegisterPluginServer(s grpc.ServiceRegistrar, srv PluginServer)

Types

type AccessMode

type AccessMode struct {

	// Access mode requested by the user
	Want string `protobuf:"bytes,1,opt,name=want,proto3" json:"want,omitempty"`
	// Access mode granted to the user by the admin
	Given string `protobuf:"bytes,2,opt,name=given,proto3" json:"given,omitempty"`
	// contains filtered or unexported fields
}

Actual access mode

func (*AccessMode) Descriptor deprecated

func (*AccessMode) Descriptor() ([]byte, []int)

Deprecated: Use AccessMode.ProtoReflect.Descriptor instead.

func (*AccessMode) GetGiven

func (x *AccessMode) GetGiven() string

func (*AccessMode) GetWant

func (x *AccessMode) GetWant() string

func (*AccessMode) ProtoMessage

func (*AccessMode) ProtoMessage()

func (*AccessMode) ProtoReflect added in v0.18.1

func (x *AccessMode) ProtoReflect() protoreflect.Message

func (*AccessMode) Reset

func (x *AccessMode) Reset()

func (*AccessMode) String

func (x *AccessMode) String() string

type AccountEvent

type AccountEvent struct {
	Action     Crud            `protobuf:"varint,1,opt,name=action,proto3,enum=pbx.Crud" json:"action,omitempty"`
	UserId     string          `protobuf:"bytes,2,opt,name=user_id,json=userId,proto3" json:"user_id,omitempty"`
	DefaultAcs *DefaultAcsMode `protobuf:"bytes,3,opt,name=default_acs,json=defaultAcs,proto3" json:"default_acs,omitempty"`
	Public     []byte          `protobuf:"bytes,4,opt,name=public,proto3" json:"public,omitempty"`
	// Indexable tags for user discovery
	Tags []string `protobuf:"bytes,8,rep,name=tags,proto3" json:"tags,omitempty"`
	// contains filtered or unexported fields
}

func (*AccountEvent) Descriptor deprecated

func (*AccountEvent) Descriptor() ([]byte, []int)

Deprecated: Use AccountEvent.ProtoReflect.Descriptor instead.

func (*AccountEvent) GetAction

func (x *AccountEvent) GetAction() Crud

func (*AccountEvent) GetDefaultAcs

func (x *AccountEvent) GetDefaultAcs() *DefaultAcsMode

func (*AccountEvent) GetPublic

func (x *AccountEvent) GetPublic() []byte

func (*AccountEvent) GetTags

func (x *AccountEvent) GetTags() []string

func (*AccountEvent) GetUserId

func (x *AccountEvent) GetUserId() string

func (*AccountEvent) ProtoMessage

func (*AccountEvent) ProtoMessage()

func (*AccountEvent) ProtoReflect added in v0.18.1

func (x *AccountEvent) ProtoReflect() protoreflect.Message

func (*AccountEvent) Reset

func (x *AccountEvent) Reset()

func (*AccountEvent) String

func (x *AccountEvent) String() string

type AuthLevel added in v0.15.7

type AuthLevel int32

Authentication level

const (
	AuthLevel_NONE AuthLevel = 0
	AuthLevel_ANON AuthLevel = 10
	AuthLevel_AUTH AuthLevel = 20
	AuthLevel_ROOT AuthLevel = 30
)

func (AuthLevel) Descriptor added in v0.18.1

func (AuthLevel) Descriptor() protoreflect.EnumDescriptor

func (AuthLevel) Enum added in v0.18.1

func (x AuthLevel) Enum() *AuthLevel

func (AuthLevel) EnumDescriptor deprecated added in v0.15.7

func (AuthLevel) EnumDescriptor() ([]byte, []int)

Deprecated: Use AuthLevel.Descriptor instead.

func (AuthLevel) Number added in v0.18.1

func (x AuthLevel) Number() protoreflect.EnumNumber

func (AuthLevel) String added in v0.15.7

func (x AuthLevel) String() string

func (AuthLevel) Type added in v0.18.1

type CallEvent added in v0.20.0

type CallEvent int32
const (
	// Invalid value. The name must be globally unique.
	CallEvent_X2            CallEvent = 0
	CallEvent_ACCEPT        CallEvent = 1
	CallEvent_ANSWER        CallEvent = 2
	CallEvent_HANG_UP       CallEvent = 3
	CallEvent_ICE_CANDIDATE CallEvent = 4
	CallEvent_INVITE        CallEvent = 5
	CallEvent_OFFER         CallEvent = 6
	CallEvent_RINGING       CallEvent = 7
)

func (CallEvent) Descriptor added in v0.20.0

func (CallEvent) Descriptor() protoreflect.EnumDescriptor

func (CallEvent) Enum added in v0.20.0

func (x CallEvent) Enum() *CallEvent

func (CallEvent) EnumDescriptor deprecated added in v0.20.0

func (CallEvent) EnumDescriptor() ([]byte, []int)

Deprecated: Use CallEvent.Descriptor instead.

func (CallEvent) Number added in v0.20.0

func (x CallEvent) Number() protoreflect.EnumNumber

func (CallEvent) String added in v0.20.0

func (x CallEvent) String() string

func (CallEvent) Type added in v0.20.0

type ClientAcc

type ClientAcc struct {
	Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	// User being created or updated
	UserId string `protobuf:"bytes,2,opt,name=user_id,json=userId,proto3" json:"user_id,omitempty"`
	// The initial authentication scheme the account can use
	Scheme string `protobuf:"bytes,3,opt,name=scheme,proto3" json:"scheme,omitempty"`
	// Shared secret
	Secret []byte `protobuf:"bytes,4,opt,name=secret,proto3" json:"secret,omitempty"`
	// Authenticate session with the newly created account
	Login bool `protobuf:"varint,5,opt,name=login,proto3" json:"login,omitempty"`
	// Indexable tags for user discovery
	Tags []string `protobuf:"bytes,6,rep,name=tags,proto3" json:"tags,omitempty"`
	// User initialization data when creating a new user, otherwise ignored
	Desc *SetDesc `protobuf:"bytes,7,opt,name=desc,proto3" json:"desc,omitempty"`
	// Credentials for verification.
	Cred []*ClientCred `protobuf:"bytes,8,rep,name=cred,proto3" json:"cred,omitempty"`
	// Authentication token used for resetting a password.
	Token []byte `protobuf:"bytes,9,opt,name=token,proto3" json:"token,omitempty"`
	// Account state: normal ("ok"), suspended
	State string `protobuf:"bytes,10,opt,name=state,proto3" json:"state,omitempty"`
	// AuthLevel
	AuthLevel AuthLevel `protobuf:"varint,11,opt,name=auth_level,json=authLevel,proto3,enum=pbx.AuthLevel" json:"auth_level,omitempty"`
	// Temporary auth params for one-off actions like password reset.
	TmpScheme string `protobuf:"bytes,12,opt,name=tmp_scheme,json=tmpScheme,proto3" json:"tmp_scheme,omitempty"`
	TmpSecret []byte `protobuf:"bytes,13,opt,name=tmp_secret,json=tmpSecret,proto3" json:"tmp_secret,omitempty"`
	// contains filtered or unexported fields
}

User creation message {acc}

func (*ClientAcc) Descriptor deprecated

func (*ClientAcc) Descriptor() ([]byte, []int)

Deprecated: Use ClientAcc.ProtoReflect.Descriptor instead.

func (*ClientAcc) GetAuthLevel added in v0.22.0

func (x *ClientAcc) GetAuthLevel() AuthLevel

func (*ClientAcc) GetCred added in v0.14.4

func (x *ClientAcc) GetCred() []*ClientCred

func (*ClientAcc) GetDesc

func (x *ClientAcc) GetDesc() *SetDesc

func (*ClientAcc) GetId

func (x *ClientAcc) GetId() string

func (*ClientAcc) GetLogin

func (x *ClientAcc) GetLogin() bool

func (*ClientAcc) GetScheme

func (x *ClientAcc) GetScheme() string

func (*ClientAcc) GetSecret

func (x *ClientAcc) GetSecret() []byte

func (*ClientAcc) GetState added in v0.16.4

func (x *ClientAcc) GetState() string

func (*ClientAcc) GetTags

func (x *ClientAcc) GetTags() []string

func (*ClientAcc) GetTmpScheme added in v0.22.0

func (x *ClientAcc) GetTmpScheme() string

func (*ClientAcc) GetTmpSecret added in v0.22.0

func (x *ClientAcc) GetTmpSecret() []byte

func (*ClientAcc) GetToken added in v0.15.7

func (x *ClientAcc) GetToken() []byte

func (*ClientAcc) GetUserId

func (x *ClientAcc) GetUserId() string

func (*ClientAcc) ProtoMessage

func (*ClientAcc) ProtoMessage()

func (*ClientAcc) ProtoReflect added in v0.18.1

func (x *ClientAcc) ProtoReflect() protoreflect.Message

func (*ClientAcc) Reset

func (x *ClientAcc) Reset()

func (*ClientAcc) String

func (x *ClientAcc) String() string

type ClientCred added in v0.16.0

type ClientCred struct {

	// Credential type, i.e. `email` or `tel`.
	Method string `protobuf:"bytes,1,opt,name=method,proto3" json:"method,omitempty"`
	// Value to verify, i.e. `user@example.com` or `+18003287448`
	Value string `protobuf:"bytes,2,opt,name=value,proto3" json:"value,omitempty"`
	// Verification response
	Response string `protobuf:"bytes,3,opt,name=response,proto3" json:"response,omitempty"`
	// Request parameters, such as preferences or country code.
	Params map[string][]byte `` /* 153-byte string literal not displayed */
	// contains filtered or unexported fields
}

Credentials such as email or phone number

func (*ClientCred) Descriptor deprecated added in v0.16.0

func (*ClientCred) Descriptor() ([]byte, []int)

Deprecated: Use ClientCred.ProtoReflect.Descriptor instead.

func (*ClientCred) GetMethod added in v0.16.0

func (x *ClientCred) GetMethod() string

func (*ClientCred) GetParams added in v0.16.0

func (x *ClientCred) GetParams() map[string][]byte

func (*ClientCred) GetResponse added in v0.16.0

func (x *ClientCred) GetResponse() string

func (*ClientCred) GetValue added in v0.16.0

func (x *ClientCred) GetValue() string

func (*ClientCred) ProtoMessage added in v0.16.0

func (*ClientCred) ProtoMessage()

func (*ClientCred) ProtoReflect added in v0.18.1

func (x *ClientCred) ProtoReflect() protoreflect.Message

func (*ClientCred) Reset added in v0.16.0

func (x *ClientCred) Reset()

func (*ClientCred) String added in v0.16.0

func (x *ClientCred) String() string

type ClientDel

type ClientDel struct {
	Id    string         `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	Topic string         `protobuf:"bytes,2,opt,name=topic,proto3" json:"topic,omitempty"`
	What  ClientDel_What `protobuf:"varint,3,opt,name=what,proto3,enum=pbx.ClientDel_What" json:"what,omitempty"`
	// Delete messages by id or range of ids
	DelSeq []*SeqRange `protobuf:"bytes,4,rep,name=del_seq,json=delSeq,proto3" json:"del_seq,omitempty"`
	// User ID of the subscription to delete
	UserId string `protobuf:"bytes,5,opt,name=user_id,json=userId,proto3" json:"user_id,omitempty"`
	// Credential to delete.
	Cred *ClientCred `protobuf:"bytes,6,opt,name=cred,proto3" json:"cred,omitempty"`
	// Request to hard-delete messages for all users, if such option is available.
	Hard bool `protobuf:"varint,7,opt,name=hard,proto3" json:"hard,omitempty"`
	// contains filtered or unexported fields
}

ClientDel delete messages or topic

func (*ClientDel) Descriptor deprecated

func (*ClientDel) Descriptor() ([]byte, []int)

Deprecated: Use ClientDel.ProtoReflect.Descriptor instead.

func (*ClientDel) GetCred added in v0.16.0

func (x *ClientDel) GetCred() *ClientCred

func (*ClientDel) GetDelSeq added in v0.14.2

func (x *ClientDel) GetDelSeq() []*SeqRange

func (*ClientDel) GetHard

func (x *ClientDel) GetHard() bool

func (*ClientDel) GetId

func (x *ClientDel) GetId() string

func (*ClientDel) GetTopic

func (x *ClientDel) GetTopic() string

func (*ClientDel) GetUserId

func (x *ClientDel) GetUserId() string

func (*ClientDel) GetWhat

func (x *ClientDel) GetWhat() ClientDel_What

func (*ClientDel) ProtoMessage

func (*ClientDel) ProtoMessage()

func (*ClientDel) ProtoReflect added in v0.18.1

func (x *ClientDel) ProtoReflect() protoreflect.Message

func (*ClientDel) Reset

func (x *ClientDel) Reset()

func (*ClientDel) String

func (x *ClientDel) String() string

type ClientDel_What

type ClientDel_What int32

What to delete, either "msg" to delete messages (default) or "topic" to delete the topic or "sub" to delete a subscription to topic.

const (
	// Invalid value. The name must be globally unique.
	ClientDel_X0    ClientDel_What = 0
	ClientDel_MSG   ClientDel_What = 1
	ClientDel_TOPIC ClientDel_What = 2
	ClientDel_SUB   ClientDel_What = 3
	ClientDel_USER  ClientDel_What = 4
	ClientDel_CRED  ClientDel_What = 5
)

func (ClientDel_What) Descriptor added in v0.18.1

func (ClientDel_What) Enum added in v0.18.1

func (x ClientDel_What) Enum() *ClientDel_What

func (ClientDel_What) EnumDescriptor deprecated

func (ClientDel_What) EnumDescriptor() ([]byte, []int)

Deprecated: Use ClientDel_What.Descriptor instead.

func (ClientDel_What) Number added in v0.18.1

func (ClientDel_What) String

func (x ClientDel_What) String() string

func (ClientDel_What) Type added in v0.18.1

type ClientExtra added in v0.18.0

type ClientExtra struct {
	Attachments []string `protobuf:"bytes,1,rep,name=attachments,proto3" json:"attachments,omitempty"`
	// Root user may send messages on behalf of other users.
	OnBehalfOf string    `protobuf:"bytes,2,opt,name=on_behalf_of,json=onBehalfOf,proto3" json:"on_behalf_of,omitempty"`
	AuthLevel  AuthLevel `protobuf:"varint,3,opt,name=auth_level,json=authLevel,proto3,enum=pbx.AuthLevel" json:"auth_level,omitempty"`
	// contains filtered or unexported fields
}

func (*ClientExtra) Descriptor deprecated added in v0.18.0

func (*ClientExtra) Descriptor() ([]byte, []int)

Deprecated: Use ClientExtra.ProtoReflect.Descriptor instead.

func (*ClientExtra) GetAttachments added in v0.18.0

func (x *ClientExtra) GetAttachments() []string

func (*ClientExtra) GetAuthLevel added in v0.18.0

func (x *ClientExtra) GetAuthLevel() AuthLevel

func (*ClientExtra) GetOnBehalfOf added in v0.18.0

func (x *ClientExtra) GetOnBehalfOf() string

func (*ClientExtra) ProtoMessage added in v0.18.0

func (*ClientExtra) ProtoMessage()

func (*ClientExtra) ProtoReflect added in v0.18.1

func (x *ClientExtra) ProtoReflect() protoreflect.Message

func (*ClientExtra) Reset added in v0.18.0

func (x *ClientExtra) Reset()

func (*ClientExtra) String added in v0.18.0

func (x *ClientExtra) String() string

type ClientGet

type ClientGet struct {
	Id    string    `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	Topic string    `protobuf:"bytes,2,opt,name=topic,proto3" json:"topic,omitempty"`
	Query *GetQuery `protobuf:"bytes,3,opt,name=query,proto3" json:"query,omitempty"`
	// contains filtered or unexported fields
}

Query topic state {get}

func (*ClientGet) Descriptor deprecated

func (*ClientGet) Descriptor() ([]byte, []int)

Deprecated: Use ClientGet.ProtoReflect.Descriptor instead.

func (*ClientGet) GetId

func (x *ClientGet) GetId() string

func (*ClientGet) GetQuery

func (x *ClientGet) GetQuery() *GetQuery

func (*ClientGet) GetTopic

func (x *ClientGet) GetTopic() string

func (*ClientGet) ProtoMessage

func (*ClientGet) ProtoMessage()

func (*ClientGet) ProtoReflect added in v0.18.1

func (x *ClientGet) ProtoReflect() protoreflect.Message

func (*ClientGet) Reset

func (x *ClientGet) Reset()

func (*ClientGet) String

func (x *ClientGet) String() string

type ClientHi

type ClientHi struct {
	Id         string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	UserAgent  string `protobuf:"bytes,2,opt,name=user_agent,json=userAgent,proto3" json:"user_agent,omitempty"`
	Ver        string `protobuf:"bytes,3,opt,name=ver,proto3" json:"ver,omitempty"`
	DeviceId   string `protobuf:"bytes,4,opt,name=device_id,json=deviceId,proto3" json:"device_id,omitempty"`
	Lang       string `protobuf:"bytes,5,opt,name=lang,proto3" json:"lang,omitempty"`
	Platform   string `protobuf:"bytes,6,opt,name=platform,proto3" json:"platform,omitempty"`
	Background bool   `protobuf:"varint,7,opt,name=background,proto3" json:"background,omitempty"`
	// contains filtered or unexported fields
}

Client handshake

func (*ClientHi) Descriptor deprecated

func (*ClientHi) Descriptor() ([]byte, []int)

Deprecated: Use ClientHi.ProtoReflect.Descriptor instead.

func (*ClientHi) GetBackground added in v0.16.6

func (x *ClientHi) GetBackground() bool

func (*ClientHi) GetDeviceId

func (x *ClientHi) GetDeviceId() string

func (*ClientHi) GetId

func (x *ClientHi) GetId() string

func (*ClientHi) GetLang

func (x *ClientHi) GetLang() string

func (*ClientHi) GetPlatform added in v0.15.9

func (x *ClientHi) GetPlatform() string

func (*ClientHi) GetUserAgent

func (x *ClientHi) GetUserAgent() string

func (*ClientHi) GetVer

func (x *ClientHi) GetVer() string

func (*ClientHi) ProtoMessage

func (*ClientHi) ProtoMessage()

func (*ClientHi) ProtoReflect added in v0.18.1

func (x *ClientHi) ProtoReflect() protoreflect.Message

func (*ClientHi) Reset

func (x *ClientHi) Reset()

func (*ClientHi) String

func (x *ClientHi) String() string

type ClientLeave

type ClientLeave struct {
	Id    string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	Topic string `protobuf:"bytes,2,opt,name=topic,proto3" json:"topic,omitempty"`
	Unsub bool   `protobuf:"varint,3,opt,name=unsub,proto3" json:"unsub,omitempty"`
	// contains filtered or unexported fields
}

Unsubscribe {leave} request message

func (*ClientLeave) Descriptor deprecated

func (*ClientLeave) Descriptor() ([]byte, []int)

Deprecated: Use ClientLeave.ProtoReflect.Descriptor instead.

func (*ClientLeave) GetId

func (x *ClientLeave) GetId() string

func (*ClientLeave) GetTopic

func (x *ClientLeave) GetTopic() string

func (*ClientLeave) GetUnsub

func (x *ClientLeave) GetUnsub() bool

func (*ClientLeave) ProtoMessage

func (*ClientLeave) ProtoMessage()

func (*ClientLeave) ProtoReflect added in v0.18.1

func (x *ClientLeave) ProtoReflect() protoreflect.Message

func (*ClientLeave) Reset

func (x *ClientLeave) Reset()

func (*ClientLeave) String

func (x *ClientLeave) String() string

type ClientLogin

type ClientLogin struct {
	Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	// Authentication scheme
	Scheme string `protobuf:"bytes,2,opt,name=scheme,proto3" json:"scheme,omitempty"`
	// Shared secret
	Secret []byte `protobuf:"bytes,3,opt,name=secret,proto3" json:"secret,omitempty"`
	// Credentials for verification.
	Cred []*ClientCred `protobuf:"bytes,4,rep,name=cred,proto3" json:"cred,omitempty"`
	// contains filtered or unexported fields
}

Login {login} message

func (*ClientLogin) Descriptor deprecated

func (*ClientLogin) Descriptor() ([]byte, []int)

Deprecated: Use ClientLogin.ProtoReflect.Descriptor instead.

func (*ClientLogin) GetCred added in v0.14.4

func (x *ClientLogin) GetCred() []*ClientCred

func (*ClientLogin) GetId

func (x *ClientLogin) GetId() string

func (*ClientLogin) GetScheme

func (x *ClientLogin) GetScheme() string

func (*ClientLogin) GetSecret

func (x *ClientLogin) GetSecret() []byte

func (*ClientLogin) ProtoMessage

func (*ClientLogin) ProtoMessage()

func (*ClientLogin) ProtoReflect added in v0.18.1

func (x *ClientLogin) ProtoReflect() protoreflect.Message

func (*ClientLogin) Reset

func (x *ClientLogin) Reset()

func (*ClientLogin) String

func (x *ClientLogin) String() string

type ClientMsg

type ClientMsg struct {

	// Types that are assignable to Message:
	//	*ClientMsg_Hi
	//	*ClientMsg_Acc
	//	*ClientMsg_Login
	//	*ClientMsg_Sub
	//	*ClientMsg_Leave
	//	*ClientMsg_Pub
	//	*ClientMsg_Get
	//	*ClientMsg_Set
	//	*ClientMsg_Del
	//	*ClientMsg_Note
	Message isClientMsg_Message `protobuf_oneof:"Message"`
	// Additional message parameters.
	Extra *ClientExtra `protobuf:"bytes,13,opt,name=extra,proto3" json:"extra,omitempty"`
	// contains filtered or unexported fields
}

func (*ClientMsg) Descriptor deprecated

func (*ClientMsg) Descriptor() ([]byte, []int)

Deprecated: Use ClientMsg.ProtoReflect.Descriptor instead.

func (*ClientMsg) GetAcc

func (x *ClientMsg) GetAcc() *ClientAcc

func (*ClientMsg) GetDel

func (x *ClientMsg) GetDel() *ClientDel

func (*ClientMsg) GetExtra added in v0.18.0

func (x *ClientMsg) GetExtra() *ClientExtra

func (*ClientMsg) GetGet

func (x *ClientMsg) GetGet() *ClientGet

func (*ClientMsg) GetHi

func (x *ClientMsg) GetHi() *ClientHi

func (*ClientMsg) GetLeave

func (x *ClientMsg) GetLeave() *ClientLeave

func (*ClientMsg) GetLogin

func (x *ClientMsg) GetLogin() *ClientLogin

func (*ClientMsg) GetMessage

func (m *ClientMsg) GetMessage() isClientMsg_Message

func (*ClientMsg) GetNote

func (x *ClientMsg) GetNote() *ClientNote

func (*ClientMsg) GetPub

func (x *ClientMsg) GetPub() *ClientPub

func (*ClientMsg) GetSet

func (x *ClientMsg) GetSet() *ClientSet

func (*ClientMsg) GetSub

func (x *ClientMsg) GetSub() *ClientSub

func (*ClientMsg) ProtoMessage

func (*ClientMsg) ProtoMessage()

func (*ClientMsg) ProtoReflect added in v0.18.1

func (x *ClientMsg) ProtoReflect() protoreflect.Message

func (*ClientMsg) Reset

func (x *ClientMsg) Reset()

func (*ClientMsg) String

func (x *ClientMsg) String() string

type ClientMsg_Acc

type ClientMsg_Acc struct {
	Acc *ClientAcc `protobuf:"bytes,2,opt,name=acc,proto3,oneof"`
}

type ClientMsg_Del

type ClientMsg_Del struct {
	Del *ClientDel `protobuf:"bytes,9,opt,name=del,proto3,oneof"`
}

type ClientMsg_Get

type ClientMsg_Get struct {
	Get *ClientGet `protobuf:"bytes,7,opt,name=get,proto3,oneof"`
}

type ClientMsg_Hi

type ClientMsg_Hi struct {
	Hi *ClientHi `protobuf:"bytes,1,opt,name=hi,proto3,oneof"`
}

type ClientMsg_Leave

type ClientMsg_Leave struct {
	Leave *ClientLeave `protobuf:"bytes,5,opt,name=leave,proto3,oneof"`
}

type ClientMsg_Login

type ClientMsg_Login struct {
	Login *ClientLogin `protobuf:"bytes,3,opt,name=login,proto3,oneof"`
}

type ClientMsg_Note

type ClientMsg_Note struct {
	Note *ClientNote `protobuf:"bytes,10,opt,name=note,proto3,oneof"`
}

type ClientMsg_Pub

type ClientMsg_Pub struct {
	Pub *ClientPub `protobuf:"bytes,6,opt,name=pub,proto3,oneof"`
}

type ClientMsg_Set

type ClientMsg_Set struct {
	Set *ClientSet `protobuf:"bytes,8,opt,name=set,proto3,oneof"`
}

type ClientMsg_Sub

type ClientMsg_Sub struct {
	Sub *ClientSub `protobuf:"bytes,4,opt,name=sub,proto3,oneof"`
}

type ClientNote

type ClientNote struct {
	Topic string `protobuf:"bytes,1,opt,name=topic,proto3" json:"topic,omitempty"`
	// what is being reported: "recv" - message received, "read" - message read,
	// "kp" - typing notification, "call" - voice/video call
	What InfoNote `protobuf:"varint,2,opt,name=what,proto3,enum=pbx.InfoNote" json:"what,omitempty"`
	// Server-issued message ID being reported
	SeqId int32 `protobuf:"varint,3,opt,name=seq_id,json=seqId,proto3" json:"seq_id,omitempty"`
	// Client's count of unread messages to report back to the server. Used in push notifications on iOS.
	Unread int32 `protobuf:"varint,4,opt,name=unread,proto3" json:"unread,omitempty"`
	// Call event.
	Event CallEvent `protobuf:"varint,5,opt,name=event,proto3,enum=pbx.CallEvent" json:"event,omitempty"`
	// Arbitrary json payload (used in video calls).
	Payload []byte `protobuf:"bytes,6,opt,name=payload,proto3" json:"payload,omitempty"`
	// contains filtered or unexported fields
}

ClientNote is a client-generated notification for topic subscribers

func (*ClientNote) Descriptor deprecated

func (*ClientNote) Descriptor() ([]byte, []int)

Deprecated: Use ClientNote.ProtoReflect.Descriptor instead.

func (*ClientNote) GetEvent added in v0.20.0

func (x *ClientNote) GetEvent() CallEvent

func (*ClientNote) GetPayload added in v0.20.0

func (x *ClientNote) GetPayload() []byte

func (*ClientNote) GetSeqId

func (x *ClientNote) GetSeqId() int32

func (*ClientNote) GetTopic

func (x *ClientNote) GetTopic() string

func (*ClientNote) GetUnread added in v0.20.0

func (x *ClientNote) GetUnread() int32

func (*ClientNote) GetWhat

func (x *ClientNote) GetWhat() InfoNote

func (*ClientNote) ProtoMessage

func (*ClientNote) ProtoMessage()

func (*ClientNote) ProtoReflect added in v0.18.1

func (x *ClientNote) ProtoReflect() protoreflect.Message

func (*ClientNote) Reset

func (x *ClientNote) Reset()

func (*ClientNote) String

func (x *ClientNote) String() string

type ClientPub

type ClientPub struct {
	Id      string            `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	Topic   string            `protobuf:"bytes,2,opt,name=topic,proto3" json:"topic,omitempty"`
	NoEcho  bool              `protobuf:"varint,3,opt,name=no_echo,json=noEcho,proto3" json:"no_echo,omitempty"`
	Head    map[string][]byte `` /* 149-byte string literal not displayed */
	Content []byte            `protobuf:"bytes,5,opt,name=content,proto3" json:"content,omitempty"`
	// contains filtered or unexported fields
}

ClientPub is client's request to publish data to topic subscribers {pub}

func (*ClientPub) Descriptor deprecated

func (*ClientPub) Descriptor() ([]byte, []int)

Deprecated: Use ClientPub.ProtoReflect.Descriptor instead.

func (*ClientPub) GetContent

func (x *ClientPub) GetContent() []byte

func (*ClientPub) GetHead

func (x *ClientPub) GetHead() map[string][]byte

func (*ClientPub) GetId

func (x *ClientPub) GetId() string

func (*ClientPub) GetNoEcho

func (x *ClientPub) GetNoEcho() bool

func (*ClientPub) GetTopic

func (x *ClientPub) GetTopic() string

func (*ClientPub) ProtoMessage

func (*ClientPub) ProtoMessage()

func (*ClientPub) ProtoReflect added in v0.18.1

func (x *ClientPub) ProtoReflect() protoreflect.Message

func (*ClientPub) Reset

func (x *ClientPub) Reset()

func (*ClientPub) String

func (x *ClientPub) String() string

type ClientReq

type ClientReq struct {
	Msg  *ClientMsg `protobuf:"bytes,1,opt,name=msg,proto3" json:"msg,omitempty"`
	Sess *Session   `protobuf:"bytes,2,opt,name=sess,proto3" json:"sess,omitempty"`
	// contains filtered or unexported fields
}

func (*ClientReq) Descriptor deprecated

func (*ClientReq) Descriptor() ([]byte, []int)

Deprecated: Use ClientReq.ProtoReflect.Descriptor instead.

func (*ClientReq) GetMsg

func (x *ClientReq) GetMsg() *ClientMsg

func (*ClientReq) GetSess

func (x *ClientReq) GetSess() *Session

func (*ClientReq) ProtoMessage

func (*ClientReq) ProtoMessage()

func (*ClientReq) ProtoReflect added in v0.18.1

func (x *ClientReq) ProtoReflect() protoreflect.Message

func (*ClientReq) Reset

func (x *ClientReq) Reset()

func (*ClientReq) String

func (x *ClientReq) String() string

type ClientSet

type ClientSet struct {
	Id    string    `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	Topic string    `protobuf:"bytes,2,opt,name=topic,proto3" json:"topic,omitempty"`
	Query *SetQuery `protobuf:"bytes,3,opt,name=query,proto3" json:"query,omitempty"`
	// contains filtered or unexported fields
}

Update topic state {set}

func (*ClientSet) Descriptor deprecated

func (*ClientSet) Descriptor() ([]byte, []int)

Deprecated: Use ClientSet.ProtoReflect.Descriptor instead.

func (*ClientSet) GetId

func (x *ClientSet) GetId() string

func (*ClientSet) GetQuery

func (x *ClientSet) GetQuery() *SetQuery

func (*ClientSet) GetTopic

func (x *ClientSet) GetTopic() string

func (*ClientSet) ProtoMessage

func (*ClientSet) ProtoMessage()

func (*ClientSet) ProtoReflect added in v0.18.1

func (x *ClientSet) ProtoReflect() protoreflect.Message

func (*ClientSet) Reset

func (x *ClientSet) Reset()

func (*ClientSet) String

func (x *ClientSet) String() string

type ClientSub

type ClientSub struct {
	Id    string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	Topic string `protobuf:"bytes,2,opt,name=topic,proto3" json:"topic,omitempty"`
	// mirrors {set}
	SetQuery *SetQuery `protobuf:"bytes,3,opt,name=set_query,json=setQuery,proto3" json:"set_query,omitempty"`
	// mirrors {get}
	GetQuery *GetQuery `protobuf:"bytes,4,opt,name=get_query,json=getQuery,proto3" json:"get_query,omitempty"`
	// contains filtered or unexported fields
}

Subscription request {sub} message

func (*ClientSub) Descriptor deprecated

func (*ClientSub) Descriptor() ([]byte, []int)

Deprecated: Use ClientSub.ProtoReflect.Descriptor instead.

func (*ClientSub) GetGetQuery

func (x *ClientSub) GetGetQuery() *GetQuery

func (*ClientSub) GetId

func (x *ClientSub) GetId() string

func (*ClientSub) GetSetQuery

func (x *ClientSub) GetSetQuery() *SetQuery

func (*ClientSub) GetTopic

func (x *ClientSub) GetTopic() string

func (*ClientSub) ProtoMessage

func (*ClientSub) ProtoMessage()

func (*ClientSub) ProtoReflect added in v0.18.1

func (x *ClientSub) ProtoReflect() protoreflect.Message

func (*ClientSub) Reset

func (x *ClientSub) Reset()

func (*ClientSub) String

func (x *ClientSub) String() string

type Crud

type Crud int32
const (
	Crud_CREATE Crud = 0
	Crud_UPDATE Crud = 1
	Crud_DELETE Crud = 2
)

func (Crud) Descriptor added in v0.18.1

func (Crud) Descriptor() protoreflect.EnumDescriptor

func (Crud) Enum added in v0.18.1

func (x Crud) Enum() *Crud

func (Crud) EnumDescriptor deprecated

func (Crud) EnumDescriptor() ([]byte, []int)

Deprecated: Use Crud.Descriptor instead.

func (Crud) Number added in v0.18.1

func (x Crud) Number() protoreflect.EnumNumber

func (Crud) String

func (x Crud) String() string

func (Crud) Type added in v0.18.1

func (Crud) Type() protoreflect.EnumType

type DefaultAcsMode

type DefaultAcsMode struct {
	Auth string `protobuf:"bytes,1,opt,name=auth,proto3" json:"auth,omitempty"`
	Anon string `protobuf:"bytes,2,opt,name=anon,proto3" json:"anon,omitempty"`
	// contains filtered or unexported fields
}

Topic default access mode

func (*DefaultAcsMode) Descriptor deprecated

func (*DefaultAcsMode) Descriptor() ([]byte, []int)

Deprecated: Use DefaultAcsMode.ProtoReflect.Descriptor instead.

func (*DefaultAcsMode) GetAnon

func (x *DefaultAcsMode) GetAnon() string

func (*DefaultAcsMode) GetAuth

func (x *DefaultAcsMode) GetAuth() string

func (*DefaultAcsMode) ProtoMessage

func (*DefaultAcsMode) ProtoMessage()

func (*DefaultAcsMode) ProtoReflect added in v0.18.1

func (x *DefaultAcsMode) ProtoReflect() protoreflect.Message

func (*DefaultAcsMode) Reset

func (x *DefaultAcsMode) Reset()

func (*DefaultAcsMode) String

func (x *DefaultAcsMode) String() string

type DelValues added in v0.14.2

type DelValues struct {
	DelId  int32       `protobuf:"varint,1,opt,name=del_id,json=delId,proto3" json:"del_id,omitempty"`
	DelSeq []*SeqRange `protobuf:"bytes,2,rep,name=del_seq,json=delSeq,proto3" json:"del_seq,omitempty"`
	// contains filtered or unexported fields
}

func (*DelValues) Descriptor deprecated added in v0.14.2

func (*DelValues) Descriptor() ([]byte, []int)

Deprecated: Use DelValues.ProtoReflect.Descriptor instead.

func (*DelValues) GetDelId added in v0.14.2

func (x *DelValues) GetDelId() int32

func (*DelValues) GetDelSeq added in v0.14.2

func (x *DelValues) GetDelSeq() []*SeqRange

func (*DelValues) ProtoMessage added in v0.14.2

func (*DelValues) ProtoMessage()

func (*DelValues) ProtoReflect added in v0.18.1

func (x *DelValues) ProtoReflect() protoreflect.Message

func (*DelValues) Reset added in v0.14.2

func (x *DelValues) Reset()

func (*DelValues) String added in v0.14.2

func (x *DelValues) String() string

type GetOpts

type GetOpts struct {

	// Timestamp in milliseconds since epoch 01/01/1970
	IfModifiedSince int64 `protobuf:"varint,1,opt,name=if_modified_since,json=ifModifiedSince,proto3" json:"if_modified_since,omitempty"`
	// Limit search to this user ID
	User string `protobuf:"bytes,2,opt,name=user,proto3" json:"user,omitempty"`
	// Limit search results to one topic;
	Topic string `protobuf:"bytes,3,opt,name=topic,proto3" json:"topic,omitempty"`
	// Load messages with seq id equal or greater than this
	SinceId int32 `protobuf:"varint,4,opt,name=since_id,json=sinceId,proto3" json:"since_id,omitempty"`
	// Load messages with seq id lower than this
	BeforeId int32 `protobuf:"varint,5,opt,name=before_id,json=beforeId,proto3" json:"before_id,omitempty"`
	// Maximum number of results to return
	Limit int32 `protobuf:"varint,6,opt,name=limit,proto3" json:"limit,omitempty"`
	// contains filtered or unexported fields
}

func (*GetOpts) Descriptor deprecated

func (*GetOpts) Descriptor() ([]byte, []int)

Deprecated: Use GetOpts.ProtoReflect.Descriptor instead.

func (*GetOpts) GetBeforeId added in v0.15.0

func (x *GetOpts) GetBeforeId() int32

func (*GetOpts) GetIfModifiedSince

func (x *GetOpts) GetIfModifiedSince() int64

func (*GetOpts) GetLimit

func (x *GetOpts) GetLimit() int32

func (*GetOpts) GetSinceId added in v0.15.0

func (x *GetOpts) GetSinceId() int32

func (*GetOpts) GetTopic added in v0.15.0

func (x *GetOpts) GetTopic() string

func (*GetOpts) GetUser added in v0.15.0

func (x *GetOpts) GetUser() string

func (*GetOpts) ProtoMessage

func (*GetOpts) ProtoMessage()

func (*GetOpts) ProtoReflect added in v0.18.1

func (x *GetOpts) ProtoReflect() protoreflect.Message

func (*GetOpts) Reset

func (x *GetOpts) Reset()

func (*GetOpts) String

func (x *GetOpts) String() string

type GetQuery

type GetQuery struct {
	What string `protobuf:"bytes,1,opt,name=what,proto3" json:"what,omitempty"`
	// Parameters of "desc" request
	Desc *GetOpts `protobuf:"bytes,2,opt,name=desc,proto3" json:"desc,omitempty"`
	// Parameters of "sub" request
	Sub *GetOpts `protobuf:"bytes,3,opt,name=sub,proto3" json:"sub,omitempty"`
	// Parameters of "data" request
	Data *GetOpts `protobuf:"bytes,4,opt,name=data,proto3" json:"data,omitempty"`
	// contains filtered or unexported fields
}

func (*GetQuery) Descriptor deprecated

func (*GetQuery) Descriptor() ([]byte, []int)

Deprecated: Use GetQuery.ProtoReflect.Descriptor instead.

func (*GetQuery) GetData

func (x *GetQuery) GetData() *GetOpts

func (*GetQuery) GetDesc

func (x *GetQuery) GetDesc() *GetOpts

func (*GetQuery) GetSub

func (x *GetQuery) GetSub() *GetOpts

func (*GetQuery) GetWhat

func (x *GetQuery) GetWhat() string

func (*GetQuery) ProtoMessage

func (*GetQuery) ProtoMessage()

func (*GetQuery) ProtoReflect added in v0.18.1

func (x *GetQuery) ProtoReflect() protoreflect.Message

func (*GetQuery) Reset

func (x *GetQuery) Reset()

func (*GetQuery) String

func (x *GetQuery) String() string

type InfoNote

type InfoNote int32
const (
	// Invalid value. The name must be globally unique.
	InfoNote_X1   InfoNote = 0
	InfoNote_READ InfoNote = 1
	InfoNote_RECV InfoNote = 2
	InfoNote_KP   InfoNote = 3
	InfoNote_CALL InfoNote = 4
)

func (InfoNote) Descriptor added in v0.18.1

func (InfoNote) Descriptor() protoreflect.EnumDescriptor

func (InfoNote) Enum added in v0.18.1

func (x InfoNote) Enum() *InfoNote

func (InfoNote) EnumDescriptor deprecated

func (InfoNote) EnumDescriptor() ([]byte, []int)

Deprecated: Use InfoNote.Descriptor instead.

func (InfoNote) Number added in v0.18.1

func (x InfoNote) Number() protoreflect.EnumNumber

func (InfoNote) String

func (x InfoNote) String() string

func (InfoNote) Type added in v0.18.1

type MessageEvent

type MessageEvent struct {
	Action Crud        `protobuf:"varint,1,opt,name=action,proto3,enum=pbx.Crud" json:"action,omitempty"`
	Msg    *ServerData `protobuf:"bytes,2,opt,name=msg,proto3" json:"msg,omitempty"`
	// contains filtered or unexported fields
}

func (*MessageEvent) Descriptor deprecated

func (*MessageEvent) Descriptor() ([]byte, []int)

Deprecated: Use MessageEvent.ProtoReflect.Descriptor instead.

func (*MessageEvent) GetAction

func (x *MessageEvent) GetAction() Crud

func (*MessageEvent) GetMsg added in v0.14.2

func (x *MessageEvent) GetMsg() *ServerData

func (*MessageEvent) ProtoMessage

func (*MessageEvent) ProtoMessage()

func (*MessageEvent) ProtoReflect added in v0.18.1

func (x *MessageEvent) ProtoReflect() protoreflect.Message

func (*MessageEvent) Reset

func (x *MessageEvent) Reset()

func (*MessageEvent) String

func (x *MessageEvent) String() string

type NodeClient

type NodeClient interface {
	// Client sends a stream of ClientMsg, server responds with a stream of ServerMsg
	MessageLoop(ctx context.Context, opts ...grpc.CallOption) (Node_MessageLoopClient, error)
}

NodeClient is the client API for Node service.

For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream.

func NewNodeClient

func NewNodeClient(cc grpc.ClientConnInterface) NodeClient

type NodeServer

type NodeServer interface {
	// Client sends a stream of ClientMsg, server responds with a stream of ServerMsg
	MessageLoop(Node_MessageLoopServer) error
	// contains filtered or unexported methods
}

NodeServer is the server API for Node service. All implementations must embed UnimplementedNodeServer for forward compatibility

type Node_MessageLoopClient

type Node_MessageLoopClient interface {
	Send(*ClientMsg) error
	Recv() (*ServerMsg, error)
	grpc.ClientStream
}

type Node_MessageLoopServer

type Node_MessageLoopServer interface {
	Send(*ServerMsg) error
	Recv() (*ClientMsg, error)
	grpc.ServerStream
}

type PluginClient

type PluginClient interface {
	// This plugin method is called by Tinode server for every message received from the clients. The
	// method returns a ServerCtrl message. Non-zero ServerCtrl.code indicates that no further
	// processing is needed. The Tinode server will generate a {ctrl} message from the returned ServerCtrl
	// and forward it to the client session.
	// ServerCtrl.code equals to 0 instructs the server to continue with default processing of the client message.
	FireHose(ctx context.Context, in *ClientReq, opts ...grpc.CallOption) (*ServerResp, error)
	// An alteranative user and topic discovery mechanism.
	// A search request issued on a 'fnd' topic. This method is called to generate an alternative result set.
	Find(ctx context.Context, in *SearchQuery, opts ...grpc.CallOption) (*SearchFound, error)
	// Account created, updated or deleted
	Account(ctx context.Context, in *AccountEvent, opts ...grpc.CallOption) (*Unused, error)
	// Topic created, updated [or deleted -- not supported yet]
	Topic(ctx context.Context, in *TopicEvent, opts ...grpc.CallOption) (*Unused, error)
	// Subscription created, updated or deleted
	Subscription(ctx context.Context, in *SubscriptionEvent, opts ...grpc.CallOption) (*Unused, error)
	// Message published or deleted
	Message(ctx context.Context, in *MessageEvent, opts ...grpc.CallOption) (*Unused, error)
}

PluginClient is the client API for Plugin service.

For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream.

func NewPluginClient

func NewPluginClient(cc grpc.ClientConnInterface) PluginClient

type PluginServer

type PluginServer interface {
	// This plugin method is called by Tinode server for every message received from the clients. The
	// method returns a ServerCtrl message. Non-zero ServerCtrl.code indicates that no further
	// processing is needed. The Tinode server will generate a {ctrl} message from the returned ServerCtrl
	// and forward it to the client session.
	// ServerCtrl.code equals to 0 instructs the server to continue with default processing of the client message.
	FireHose(context.Context, *ClientReq) (*ServerResp, error)
	// An alteranative user and topic discovery mechanism.
	// A search request issued on a 'fnd' topic. This method is called to generate an alternative result set.
	Find(context.Context, *SearchQuery) (*SearchFound, error)
	// Account created, updated or deleted
	Account(context.Context, *AccountEvent) (*Unused, error)
	// Topic created, updated [or deleted -- not supported yet]
	Topic(context.Context, *TopicEvent) (*Unused, error)
	// Subscription created, updated or deleted
	Subscription(context.Context, *SubscriptionEvent) (*Unused, error)
	// Message published or deleted
	Message(context.Context, *MessageEvent) (*Unused, error)
	// contains filtered or unexported methods
}

PluginServer is the server API for Plugin service. All implementations must embed UnimplementedPluginServer for forward compatibility

type RespCode added in v0.14.2

type RespCode int32

Plugin response codes

const (
	// Instruct Tinode server to continue with default processing of the client request.
	RespCode_CONTINUE RespCode = 0
	// Drop the request as if the client did not send it
	RespCode_DROP RespCode = 1
	// Send the the provided response to the client.
	RespCode_RESPOND RespCode = 2
	// Replace client's original request with the provided request then continue with
	// processing.
	RespCode_REPLACE RespCode = 3
)

func (RespCode) Descriptor added in v0.18.1

func (RespCode) Descriptor() protoreflect.EnumDescriptor

func (RespCode) Enum added in v0.18.1

func (x RespCode) Enum() *RespCode

func (RespCode) EnumDescriptor deprecated added in v0.14.2

func (RespCode) EnumDescriptor() ([]byte, []int)

Deprecated: Use RespCode.Descriptor instead.

func (RespCode) Number added in v0.18.1

func (x RespCode) Number() protoreflect.EnumNumber

func (RespCode) String added in v0.14.2

func (x RespCode) String() string

func (RespCode) Type added in v0.18.1

type SearchFound added in v0.14.2

type SearchFound struct {
	Status RespCode `protobuf:"varint,1,opt,name=status,proto3,enum=pbx.RespCode" json:"status,omitempty"`
	// New search query If status == REPLACE, otherwise unset.
	Query string `protobuf:"bytes,2,opt,name=query,proto3" json:"query,omitempty"`
	// Search results.
	Result []*TopicSub `protobuf:"bytes,3,rep,name=result,proto3" json:"result,omitempty"`
	// contains filtered or unexported fields
}

func (*SearchFound) Descriptor deprecated added in v0.14.2

func (*SearchFound) Descriptor() ([]byte, []int)

Deprecated: Use SearchFound.ProtoReflect.Descriptor instead.

func (*SearchFound) GetQuery added in v0.15.0

func (x *SearchFound) GetQuery() string

func (*SearchFound) GetResult added in v0.14.2

func (x *SearchFound) GetResult() []*TopicSub

func (*SearchFound) GetStatus added in v0.14.2

func (x *SearchFound) GetStatus() RespCode

func (*SearchFound) ProtoMessage added in v0.14.2

func (*SearchFound) ProtoMessage()

func (*SearchFound) ProtoReflect added in v0.18.1

func (x *SearchFound) ProtoReflect() protoreflect.Message

func (*SearchFound) Reset added in v0.14.2

func (x *SearchFound) Reset()

func (*SearchFound) String added in v0.14.2

func (x *SearchFound) String() string

type SearchQuery added in v0.14.2

type SearchQuery struct {
	UserId string `protobuf:"bytes,1,opt,name=user_id,json=userId,proto3" json:"user_id,omitempty"`
	Query  string `protobuf:"bytes,2,opt,name=query,proto3" json:"query,omitempty"`
	// contains filtered or unexported fields
}

func (*SearchQuery) Descriptor deprecated added in v0.14.2

func (*SearchQuery) Descriptor() ([]byte, []int)

Deprecated: Use SearchQuery.ProtoReflect.Descriptor instead.

func (*SearchQuery) GetQuery added in v0.15.0

func (x *SearchQuery) GetQuery() string

func (*SearchQuery) GetUserId added in v0.14.2

func (x *SearchQuery) GetUserId() string

func (*SearchQuery) ProtoMessage added in v0.14.2

func (*SearchQuery) ProtoMessage()

func (*SearchQuery) ProtoReflect added in v0.18.1

func (x *SearchQuery) ProtoReflect() protoreflect.Message

func (*SearchQuery) Reset added in v0.14.2

func (x *SearchQuery) Reset()

func (*SearchQuery) String added in v0.14.2

func (x *SearchQuery) String() string

type SeqRange added in v0.14.2

type SeqRange struct {
	Low int32 `protobuf:"varint,1,opt,name=low,proto3" json:"low,omitempty"`
	Hi  int32 `protobuf:"varint,2,opt,name=hi,proto3" json:"hi,omitempty"`
	// contains filtered or unexported fields
}

func (*SeqRange) Descriptor deprecated added in v0.14.2

func (*SeqRange) Descriptor() ([]byte, []int)

Deprecated: Use SeqRange.ProtoReflect.Descriptor instead.

func (*SeqRange) GetHi added in v0.14.2

func (x *SeqRange) GetHi() int32

func (*SeqRange) GetLow added in v0.14.2

func (x *SeqRange) GetLow() int32

func (*SeqRange) ProtoMessage added in v0.14.2

func (*SeqRange) ProtoMessage()

func (*SeqRange) ProtoReflect added in v0.18.1

func (x *SeqRange) ProtoReflect() protoreflect.Message

func (*SeqRange) Reset added in v0.14.2

func (x *SeqRange) Reset()

func (*SeqRange) String added in v0.14.2

func (x *SeqRange) String() string

type ServerCred added in v0.16.0

type ServerCred struct {

	// Credential type, i.e. `email` or `tel`.
	Method string `protobuf:"bytes,1,opt,name=method,proto3" json:"method,omitempty"`
	// Value to verify, i.e. `user@example.com` or `+18003287448`
	Value string `protobuf:"bytes,2,opt,name=value,proto3" json:"value,omitempty"`
	// Indicator that the credential is validated
	Done bool `protobuf:"varint,3,opt,name=done,proto3" json:"done,omitempty"`
	// contains filtered or unexported fields
}

Credentials

func (*ServerCred) Descriptor deprecated added in v0.16.0

func (*ServerCred) Descriptor() ([]byte, []int)

Deprecated: Use ServerCred.ProtoReflect.Descriptor instead.

func (*ServerCred) GetDone added in v0.16.0

func (x *ServerCred) GetDone() bool

func (*ServerCred) GetMethod added in v0.16.0

func (x *ServerCred) GetMethod() string

func (*ServerCred) GetValue added in v0.16.0

func (x *ServerCred) GetValue() string

func (*ServerCred) ProtoMessage added in v0.16.0

func (*ServerCred) ProtoMessage()

func (*ServerCred) ProtoReflect added in v0.18.1

func (x *ServerCred) ProtoReflect() protoreflect.Message

func (*ServerCred) Reset added in v0.16.0

func (x *ServerCred) Reset()

func (*ServerCred) String added in v0.16.0

func (x *ServerCred) String() string

type ServerCtrl

type ServerCtrl struct {
	Id     string            `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	Topic  string            `protobuf:"bytes,2,opt,name=topic,proto3" json:"topic,omitempty"`
	Code   int32             `protobuf:"varint,3,opt,name=code,proto3" json:"code,omitempty"`
	Text   string            `protobuf:"bytes,4,opt,name=text,proto3" json:"text,omitempty"`
	Params map[string][]byte `` /* 153-byte string literal not displayed */
	// contains filtered or unexported fields
}

{ctrl} message

func (*ServerCtrl) Descriptor deprecated

func (*ServerCtrl) Descriptor() ([]byte, []int)

Deprecated: Use ServerCtrl.ProtoReflect.Descriptor instead.

func (*ServerCtrl) GetCode

func (x *ServerCtrl) GetCode() int32

func (*ServerCtrl) GetId

func (x *ServerCtrl) GetId() string

func (*ServerCtrl) GetParams

func (x *ServerCtrl) GetParams() map[string][]byte

func (*ServerCtrl) GetText

func (x *ServerCtrl) GetText() string

func (*ServerCtrl) GetTopic

func (x *ServerCtrl) GetTopic() string

func (*ServerCtrl) ProtoMessage

func (*ServerCtrl) ProtoMessage()

func (*ServerCtrl) ProtoReflect added in v0.18.1

func (x *ServerCtrl) ProtoReflect() protoreflect.Message

func (*ServerCtrl) Reset

func (x *ServerCtrl) Reset()

func (*ServerCtrl) String

func (x *ServerCtrl) String() string

type ServerData

type ServerData struct {
	Topic string `protobuf:"bytes,1,opt,name=topic,proto3" json:"topic,omitempty"`
	// ID of the user who originated the message as {pub}, could be empty if sent by the system
	FromUserId string `protobuf:"bytes,2,opt,name=from_user_id,json=fromUserId,proto3" json:"from_user_id,omitempty"`
	// Timestamp when the message was sent.
	Timestamp int64 `protobuf:"varint,7,opt,name=timestamp,proto3" json:"timestamp,omitempty"`
	// Timestamp when the message was deleted or 0. Milliseconds since the epoch 01/01/1970
	DeletedAt int64             `protobuf:"varint,3,opt,name=deleted_at,json=deletedAt,proto3" json:"deleted_at,omitempty"`
	SeqId     int32             `protobuf:"varint,4,opt,name=seq_id,json=seqId,proto3" json:"seq_id,omitempty"`
	Head      map[string][]byte `` /* 149-byte string literal not displayed */
	Content   []byte            `protobuf:"bytes,6,opt,name=content,proto3" json:"content,omitempty"`
	// contains filtered or unexported fields
}

{data} message

func (*ServerData) Descriptor deprecated

func (*ServerData) Descriptor() ([]byte, []int)

Deprecated: Use ServerData.ProtoReflect.Descriptor instead.

func (*ServerData) GetContent

func (x *ServerData) GetContent() []byte

func (*ServerData) GetDeletedAt

func (x *ServerData) GetDeletedAt() int64

func (*ServerData) GetFromUserId

func (x *ServerData) GetFromUserId() string

func (*ServerData) GetHead

func (x *ServerData) GetHead() map[string][]byte

func (*ServerData) GetSeqId

func (x *ServerData) GetSeqId() int32

func (*ServerData) GetTimestamp added in v0.15.10

func (x *ServerData) GetTimestamp() int64

func (*ServerData) GetTopic

func (x *ServerData) GetTopic() string

func (*ServerData) ProtoMessage

func (*ServerData) ProtoMessage()

func (*ServerData) ProtoReflect added in v0.18.1

func (x *ServerData) ProtoReflect() protoreflect.Message

func (*ServerData) Reset

func (x *ServerData) Reset()

func (*ServerData) String

func (x *ServerData) String() string

type ServerInfo

type ServerInfo struct {
	Topic      string    `protobuf:"bytes,1,opt,name=topic,proto3" json:"topic,omitempty"`
	FromUserId string    `protobuf:"bytes,2,opt,name=from_user_id,json=fromUserId,proto3" json:"from_user_id,omitempty"`
	What       InfoNote  `protobuf:"varint,3,opt,name=what,proto3,enum=pbx.InfoNote" json:"what,omitempty"`
	SeqId      int32     `protobuf:"varint,4,opt,name=seq_id,json=seqId,proto3" json:"seq_id,omitempty"`
	Src        string    `protobuf:"bytes,5,opt,name=src,proto3" json:"src,omitempty"`
	Event      CallEvent `protobuf:"varint,6,opt,name=event,proto3,enum=pbx.CallEvent" json:"event,omitempty"`
	Payload    []byte    `protobuf:"bytes,7,opt,name=payload,proto3" json:"payload,omitempty"`
	// contains filtered or unexported fields
}

{info} message: server-side copy of ClientNote with From and optional Src added.

func (*ServerInfo) Descriptor deprecated

func (*ServerInfo) Descriptor() ([]byte, []int)

Deprecated: Use ServerInfo.ProtoReflect.Descriptor instead.

func (*ServerInfo) GetEvent added in v0.20.0

func (x *ServerInfo) GetEvent() CallEvent

func (*ServerInfo) GetFromUserId

func (x *ServerInfo) GetFromUserId() string

func (*ServerInfo) GetPayload added in v0.20.0

func (x *ServerInfo) GetPayload() []byte

func (*ServerInfo) GetSeqId

func (x *ServerInfo) GetSeqId() int32

func (*ServerInfo) GetSrc added in v0.16.10

func (x *ServerInfo) GetSrc() string

func (*ServerInfo) GetTopic

func (x *ServerInfo) GetTopic() string

func (*ServerInfo) GetWhat

func (x *ServerInfo) GetWhat() InfoNote

func (*ServerInfo) ProtoMessage

func (*ServerInfo) ProtoMessage()

func (*ServerInfo) ProtoReflect added in v0.18.1

func (x *ServerInfo) ProtoReflect() protoreflect.Message

func (*ServerInfo) Reset

func (x *ServerInfo) Reset()

func (*ServerInfo) String

func (x *ServerInfo) String() string

type ServerMeta

type ServerMeta struct {
	Id    string        `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	Topic string        `protobuf:"bytes,2,opt,name=topic,proto3" json:"topic,omitempty"`
	Desc  *TopicDesc    `protobuf:"bytes,3,opt,name=desc,proto3" json:"desc,omitempty"`
	Sub   []*TopicSub   `protobuf:"bytes,4,rep,name=sub,proto3" json:"sub,omitempty"`
	Del   *DelValues    `protobuf:"bytes,5,opt,name=del,proto3" json:"del,omitempty"`
	Tags  []string      `protobuf:"bytes,6,rep,name=tags,proto3" json:"tags,omitempty"`
	Cred  []*ServerCred `protobuf:"bytes,7,rep,name=cred,proto3" json:"cred,omitempty"`
	// contains filtered or unexported fields
}

{meta} message

func (*ServerMeta) Descriptor deprecated

func (*ServerMeta) Descriptor() ([]byte, []int)

Deprecated: Use ServerMeta.ProtoReflect.Descriptor instead.

func (*ServerMeta) GetCred added in v0.16.0

func (x *ServerMeta) GetCred() []*ServerCred

func (*ServerMeta) GetDel added in v0.14.2

func (x *ServerMeta) GetDel() *DelValues

func (*ServerMeta) GetDesc

func (x *ServerMeta) GetDesc() *TopicDesc

func (*ServerMeta) GetId

func (x *ServerMeta) GetId() string

func (*ServerMeta) GetSub

func (x *ServerMeta) GetSub() []*TopicSub

func (*ServerMeta) GetTags added in v0.15.12

func (x *ServerMeta) GetTags() []string

func (*ServerMeta) GetTopic

func (x *ServerMeta) GetTopic() string

func (*ServerMeta) ProtoMessage

func (*ServerMeta) ProtoMessage()

func (*ServerMeta) ProtoReflect added in v0.18.1

func (x *ServerMeta) ProtoReflect() protoreflect.Message

func (*ServerMeta) Reset

func (x *ServerMeta) Reset()

func (*ServerMeta) String

func (x *ServerMeta) String() string

type ServerMsg

type ServerMsg struct {

	// Types that are assignable to Message:
	//	*ServerMsg_Ctrl
	//	*ServerMsg_Data
	//	*ServerMsg_Pres
	//	*ServerMsg_Meta
	//	*ServerMsg_Info
	Message isServerMsg_Message `protobuf_oneof:"Message"`
	// DEPRECATED. Will be removed soon.
	// When response is sent to Root, send internal topic name too.
	//
	// Deprecated: Do not use.
	Topic string `protobuf:"bytes,6,opt,name=topic,proto3" json:"topic,omitempty"`
	// contains filtered or unexported fields
}

Cumulative message

func (*ServerMsg) Descriptor deprecated

func (*ServerMsg) Descriptor() ([]byte, []int)

Deprecated: Use ServerMsg.ProtoReflect.Descriptor instead.

func (*ServerMsg) GetCtrl

func (x *ServerMsg) GetCtrl() *ServerCtrl

func (*ServerMsg) GetData

func (x *ServerMsg) GetData() *ServerData

func (*ServerMsg) GetInfo

func (x *ServerMsg) GetInfo() *ServerInfo

func (*ServerMsg) GetMessage

func (m *ServerMsg) GetMessage() isServerMsg_Message

func (*ServerMsg) GetMeta

func (x *ServerMsg) GetMeta() *ServerMeta

func (*ServerMsg) GetPres

func (x *ServerMsg) GetPres() *ServerPres

func (*ServerMsg) GetTopic deprecated added in v0.15.7

func (x *ServerMsg) GetTopic() string

Deprecated: Do not use.

func (*ServerMsg) ProtoMessage

func (*ServerMsg) ProtoMessage()

func (*ServerMsg) ProtoReflect added in v0.18.1

func (x *ServerMsg) ProtoReflect() protoreflect.Message

func (*ServerMsg) Reset

func (x *ServerMsg) Reset()

func (*ServerMsg) String

func (x *ServerMsg) String() string

type ServerMsg_Ctrl

type ServerMsg_Ctrl struct {
	Ctrl *ServerCtrl `protobuf:"bytes,1,opt,name=ctrl,proto3,oneof"`
}

type ServerMsg_Data

type ServerMsg_Data struct {
	Data *ServerData `protobuf:"bytes,2,opt,name=data,proto3,oneof"`
}

type ServerMsg_Info

type ServerMsg_Info struct {
	Info *ServerInfo `protobuf:"bytes,5,opt,name=info,proto3,oneof"`
}

type ServerMsg_Meta

type ServerMsg_Meta struct {
	Meta *ServerMeta `protobuf:"bytes,4,opt,name=meta,proto3,oneof"`
}

type ServerMsg_Pres

type ServerMsg_Pres struct {
	Pres *ServerPres `protobuf:"bytes,3,opt,name=pres,proto3,oneof"`
}

type ServerPres

type ServerPres struct {
	Topic        string          `protobuf:"bytes,1,opt,name=topic,proto3" json:"topic,omitempty"`
	Src          string          `protobuf:"bytes,2,opt,name=src,proto3" json:"src,omitempty"`
	What         ServerPres_What `protobuf:"varint,3,opt,name=what,proto3,enum=pbx.ServerPres_What" json:"what,omitempty"`
	UserAgent    string          `protobuf:"bytes,4,opt,name=user_agent,json=userAgent,proto3" json:"user_agent,omitempty"`
	SeqId        int32           `protobuf:"varint,5,opt,name=seq_id,json=seqId,proto3" json:"seq_id,omitempty"`
	DelId        int32           `protobuf:"varint,6,opt,name=del_id,json=delId,proto3" json:"del_id,omitempty"`
	DelSeq       []*SeqRange     `protobuf:"bytes,7,rep,name=del_seq,json=delSeq,proto3" json:"del_seq,omitempty"`
	TargetUserId string          `protobuf:"bytes,8,opt,name=target_user_id,json=targetUserId,proto3" json:"target_user_id,omitempty"`
	ActorUserId  string          `protobuf:"bytes,9,opt,name=actor_user_id,json=actorUserId,proto3" json:"actor_user_id,omitempty"`
	Acs          *AccessMode     `protobuf:"bytes,10,opt,name=acs,proto3" json:"acs,omitempty"`
	// contains filtered or unexported fields
}

{pres} message

func (*ServerPres) Descriptor deprecated

func (*ServerPres) Descriptor() ([]byte, []int)

Deprecated: Use ServerPres.ProtoReflect.Descriptor instead.

func (*ServerPres) GetAcs

func (x *ServerPres) GetAcs() *AccessMode

func (*ServerPres) GetActorUserId

func (x *ServerPres) GetActorUserId() string

func (*ServerPres) GetDelId added in v0.14.2

func (x *ServerPres) GetDelId() int32

func (*ServerPres) GetDelSeq added in v0.14.2

func (x *ServerPres) GetDelSeq() []*SeqRange

func (*ServerPres) GetSeqId

func (x *ServerPres) GetSeqId() int32

func (*ServerPres) GetSrc

func (x *ServerPres) GetSrc() string

func (*ServerPres) GetTargetUserId

func (x *ServerPres) GetTargetUserId() string

func (*ServerPres) GetTopic

func (x *ServerPres) GetTopic() string

func (*ServerPres) GetUserAgent

func (x *ServerPres) GetUserAgent() string

func (*ServerPres) GetWhat

func (x *ServerPres) GetWhat() ServerPres_What

func (*ServerPres) ProtoMessage

func (*ServerPres) ProtoMessage()

func (*ServerPres) ProtoReflect added in v0.18.1

func (x *ServerPres) ProtoReflect() protoreflect.Message

func (*ServerPres) Reset

func (x *ServerPres) Reset()

func (*ServerPres) String

func (x *ServerPres) String() string

type ServerPres_What

type ServerPres_What int32
const (
	// Invalid value. The name must be globally unique.
	ServerPres_X3   ServerPres_What = 0
	ServerPres_ON   ServerPres_What = 1
	ServerPres_OFF  ServerPres_What = 2
	ServerPres_UA   ServerPres_What = 3
	ServerPres_UPD  ServerPres_What = 4
	ServerPres_GONE ServerPres_What = 5
	ServerPres_ACS  ServerPres_What = 6
	ServerPres_TERM ServerPres_What = 7
	ServerPres_MSG  ServerPres_What = 8
	ServerPres_READ ServerPres_What = 9
	ServerPres_RECV ServerPres_What = 10
	ServerPres_DEL  ServerPres_What = 11
	ServerPres_TAGS ServerPres_What = 12
)

func (ServerPres_What) Descriptor added in v0.18.1

func (ServerPres_What) Enum added in v0.18.1

func (x ServerPres_What) Enum() *ServerPres_What

func (ServerPres_What) EnumDescriptor deprecated

func (ServerPres_What) EnumDescriptor() ([]byte, []int)

Deprecated: Use ServerPres_What.Descriptor instead.

func (ServerPres_What) Number added in v0.18.1

func (ServerPres_What) String

func (x ServerPres_What) String() string

func (ServerPres_What) Type added in v0.18.1

type ServerResp

type ServerResp struct {
	Status RespCode   `protobuf:"varint,1,opt,name=status,proto3,enum=pbx.RespCode" json:"status,omitempty"`
	Srvmsg *ServerMsg `protobuf:"bytes,2,opt,name=srvmsg,proto3" json:"srvmsg,omitempty"`
	Clmsg  *ClientMsg `protobuf:"bytes,3,opt,name=clmsg,proto3" json:"clmsg,omitempty"`
	// contains filtered or unexported fields
}

func (*ServerResp) Descriptor deprecated

func (*ServerResp) Descriptor() ([]byte, []int)

Deprecated: Use ServerResp.ProtoReflect.Descriptor instead.

func (*ServerResp) GetClmsg

func (x *ServerResp) GetClmsg() *ClientMsg

func (*ServerResp) GetSrvmsg

func (x *ServerResp) GetSrvmsg() *ServerMsg

func (*ServerResp) GetStatus

func (x *ServerResp) GetStatus() RespCode

func (*ServerResp) ProtoMessage

func (*ServerResp) ProtoMessage()

func (*ServerResp) ProtoReflect added in v0.18.1

func (x *ServerResp) ProtoReflect() protoreflect.Message

func (*ServerResp) Reset

func (x *ServerResp) Reset()

func (*ServerResp) String

func (x *ServerResp) String() string

type Session

type Session struct {
	SessionId  string    `protobuf:"bytes,1,opt,name=session_id,json=sessionId,proto3" json:"session_id,omitempty"`
	UserId     string    `protobuf:"bytes,2,opt,name=user_id,json=userId,proto3" json:"user_id,omitempty"`
	AuthLevel  AuthLevel `protobuf:"varint,3,opt,name=auth_level,json=authLevel,proto3,enum=pbx.AuthLevel" json:"auth_level,omitempty"`
	RemoteAddr string    `protobuf:"bytes,4,opt,name=remote_addr,json=remoteAddr,proto3" json:"remote_addr,omitempty"`
	UserAgent  string    `protobuf:"bytes,5,opt,name=user_agent,json=userAgent,proto3" json:"user_agent,omitempty"`
	DeviceId   string    `protobuf:"bytes,6,opt,name=device_id,json=deviceId,proto3" json:"device_id,omitempty"`
	Language   string    `protobuf:"bytes,7,opt,name=language,proto3" json:"language,omitempty"`
	// contains filtered or unexported fields
}

Context message

func (*Session) Descriptor deprecated

func (*Session) Descriptor() ([]byte, []int)

Deprecated: Use Session.ProtoReflect.Descriptor instead.

func (*Session) GetAuthLevel

func (x *Session) GetAuthLevel() AuthLevel

func (*Session) GetDeviceId

func (x *Session) GetDeviceId() string

func (*Session) GetLanguage

func (x *Session) GetLanguage() string

func (*Session) GetRemoteAddr

func (x *Session) GetRemoteAddr() string

func (*Session) GetSessionId

func (x *Session) GetSessionId() string

func (*Session) GetUserAgent

func (x *Session) GetUserAgent() string

func (*Session) GetUserId

func (x *Session) GetUserId() string

func (*Session) ProtoMessage

func (*Session) ProtoMessage()

func (*Session) ProtoReflect added in v0.18.1

func (x *Session) ProtoReflect() protoreflect.Message

func (*Session) Reset

func (x *Session) Reset()

func (*Session) String

func (x *Session) String() string

type SetDesc

type SetDesc struct {
	DefaultAcs *DefaultAcsMode `protobuf:"bytes,1,opt,name=default_acs,json=defaultAcs,proto3" json:"default_acs,omitempty"`
	Public     []byte          `protobuf:"bytes,2,opt,name=public,proto3" json:"public,omitempty"`
	Private    []byte          `protobuf:"bytes,3,opt,name=private,proto3" json:"private,omitempty"`
	Trusted    []byte          `protobuf:"bytes,4,opt,name=trusted,proto3" json:"trusted,omitempty"`
	// contains filtered or unexported fields
}

SetDesc: C2S in set.what == "desc" and sub.init message

func (*SetDesc) Descriptor deprecated

func (*SetDesc) Descriptor() ([]byte, []int)

Deprecated: Use SetDesc.ProtoReflect.Descriptor instead.

func (*SetDesc) GetDefaultAcs

func (x *SetDesc) GetDefaultAcs() *DefaultAcsMode

func (*SetDesc) GetPrivate

func (x *SetDesc) GetPrivate() []byte

func (*SetDesc) GetPublic

func (x *SetDesc) GetPublic() []byte

func (*SetDesc) GetTrusted added in v0.18.0

func (x *SetDesc) GetTrusted() []byte

func (*SetDesc) ProtoMessage

func (*SetDesc) ProtoMessage()

func (*SetDesc) ProtoReflect added in v0.18.1

func (x *SetDesc) ProtoReflect() protoreflect.Message

func (*SetDesc) Reset

func (x *SetDesc) Reset()

func (*SetDesc) String

func (x *SetDesc) String() string

type SetQuery

type SetQuery struct {

	// Topic metadata, new topic & new subscriptions only
	Desc *SetDesc `protobuf:"bytes,1,opt,name=desc,proto3" json:"desc,omitempty"`
	// Subscription parameters
	Sub *SetSub `protobuf:"bytes,2,opt,name=sub,proto3" json:"sub,omitempty"`
	// Indexable tags
	Tags []string `protobuf:"bytes,3,rep,name=tags,proto3" json:"tags,omitempty"`
	// Credential being updated.
	Cred *ClientCred `protobuf:"bytes,4,opt,name=cred,proto3" json:"cred,omitempty"`
	// contains filtered or unexported fields
}

func (*SetQuery) Descriptor deprecated

func (*SetQuery) Descriptor() ([]byte, []int)

Deprecated: Use SetQuery.ProtoReflect.Descriptor instead.

func (*SetQuery) GetCred added in v0.16.0

func (x *SetQuery) GetCred() *ClientCred

func (*SetQuery) GetDesc

func (x *SetQuery) GetDesc() *SetDesc

func (*SetQuery) GetSub

func (x *SetQuery) GetSub() *SetSub

func (*SetQuery) GetTags added in v0.15.0

func (x *SetQuery) GetTags() []string

func (*SetQuery) ProtoMessage

func (*SetQuery) ProtoMessage()

func (*SetQuery) ProtoReflect added in v0.18.1

func (x *SetQuery) ProtoReflect() protoreflect.Message

func (*SetQuery) Reset

func (x *SetQuery) Reset()

func (*SetQuery) String

func (x *SetQuery) String() string

type SetSub

type SetSub struct {

	// User affected by this request. Default (empty): current user
	UserId string `protobuf:"bytes,1,opt,name=user_id,json=userId,proto3" json:"user_id,omitempty"`
	// Access mode change, either Given or Want depending on context
	Mode string `protobuf:"bytes,2,opt,name=mode,proto3" json:"mode,omitempty"`
	// contains filtered or unexported fields
}

SetSub: payload in set.sub request to update current subscription or invite another user, {sub.what} == "sub"

func (*SetSub) Descriptor deprecated

func (*SetSub) Descriptor() ([]byte, []int)

Deprecated: Use SetSub.ProtoReflect.Descriptor instead.

func (*SetSub) GetMode

func (x *SetSub) GetMode() string

func (*SetSub) GetUserId

func (x *SetSub) GetUserId() string

func (*SetSub) ProtoMessage

func (*SetSub) ProtoMessage()

func (*SetSub) ProtoReflect added in v0.18.1

func (x *SetSub) ProtoReflect() protoreflect.Message

func (*SetSub) Reset

func (x *SetSub) Reset()

func (*SetSub) String

func (x *SetSub) String() string

type SubscriptionEvent

type SubscriptionEvent struct {
	Action  Crud        `protobuf:"varint,1,opt,name=action,proto3,enum=pbx.Crud" json:"action,omitempty"`
	Topic   string      `protobuf:"bytes,2,opt,name=topic,proto3" json:"topic,omitempty"`
	UserId  string      `protobuf:"bytes,3,opt,name=user_id,json=userId,proto3" json:"user_id,omitempty"`
	DelId   int32       `protobuf:"varint,4,opt,name=del_id,json=delId,proto3" json:"del_id,omitempty"`
	ReadId  int32       `protobuf:"varint,5,opt,name=read_id,json=readId,proto3" json:"read_id,omitempty"`
	RecvId  int32       `protobuf:"varint,6,opt,name=recv_id,json=recvId,proto3" json:"recv_id,omitempty"`
	Mode    *AccessMode `protobuf:"bytes,7,opt,name=mode,proto3" json:"mode,omitempty"`
	Private []byte      `protobuf:"bytes,8,opt,name=private,proto3" json:"private,omitempty"`
	// contains filtered or unexported fields
}

func (*SubscriptionEvent) Descriptor deprecated

func (*SubscriptionEvent) Descriptor() ([]byte, []int)

Deprecated: Use SubscriptionEvent.ProtoReflect.Descriptor instead.

func (*SubscriptionEvent) GetAction

func (x *SubscriptionEvent) GetAction() Crud

func (*SubscriptionEvent) GetDelId added in v0.14.2

func (x *SubscriptionEvent) GetDelId() int32

func (*SubscriptionEvent) GetMode added in v0.14.2

func (x *SubscriptionEvent) GetMode() *AccessMode

func (*SubscriptionEvent) GetPrivate added in v0.14.2

func (x *SubscriptionEvent) GetPrivate() []byte

func (*SubscriptionEvent) GetReadId added in v0.14.2

func (x *SubscriptionEvent) GetReadId() int32

func (*SubscriptionEvent) GetRecvId added in v0.14.2

func (x *SubscriptionEvent) GetRecvId() int32

func (*SubscriptionEvent) GetTopic added in v0.14.2

func (x *SubscriptionEvent) GetTopic() string

func (*SubscriptionEvent) GetUserId added in v0.14.2

func (x *SubscriptionEvent) GetUserId() string

func (*SubscriptionEvent) ProtoMessage

func (*SubscriptionEvent) ProtoMessage()

func (*SubscriptionEvent) ProtoReflect added in v0.18.1

func (x *SubscriptionEvent) ProtoReflect() protoreflect.Message

func (*SubscriptionEvent) Reset

func (x *SubscriptionEvent) Reset()

func (*SubscriptionEvent) String

func (x *SubscriptionEvent) String() string

type TopicDesc

type TopicDesc struct {
	CreatedAt int64           `protobuf:"varint,1,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"`
	UpdatedAt int64           `protobuf:"varint,2,opt,name=updated_at,json=updatedAt,proto3" json:"updated_at,omitempty"`
	TouchedAt int64           `protobuf:"varint,3,opt,name=touched_at,json=touchedAt,proto3" json:"touched_at,omitempty"`
	Defacs    *DefaultAcsMode `protobuf:"bytes,4,opt,name=defacs,proto3" json:"defacs,omitempty"`
	Acs       *AccessMode     `protobuf:"bytes,5,opt,name=acs,proto3" json:"acs,omitempty"`
	SeqId     int32           `protobuf:"varint,6,opt,name=seq_id,json=seqId,proto3" json:"seq_id,omitempty"`
	ReadId    int32           `protobuf:"varint,7,opt,name=read_id,json=readId,proto3" json:"read_id,omitempty"`
	RecvId    int32           `protobuf:"varint,8,opt,name=recv_id,json=recvId,proto3" json:"recv_id,omitempty"`
	DelId     int32           `protobuf:"varint,9,opt,name=del_id,json=delId,proto3" json:"del_id,omitempty"`
	Public    []byte          `protobuf:"bytes,10,opt,name=public,proto3" json:"public,omitempty"`
	Private   []byte          `protobuf:"bytes,11,opt,name=private,proto3" json:"private,omitempty"`
	State     string          `protobuf:"bytes,12,opt,name=state,proto3" json:"state,omitempty"`
	StateAt   int64           `protobuf:"varint,13,opt,name=state_at,json=stateAt,proto3" json:"state_at,omitempty"`
	Trusted   []byte          `protobuf:"bytes,14,opt,name=trusted,proto3" json:"trusted,omitempty"`
	IsChan    bool            `protobuf:"varint,17,opt,name=is_chan,json=isChan,proto3" json:"is_chan,omitempty"` // 17!
	Online    bool            `protobuf:"varint,18,opt,name=online,proto3" json:"online,omitempty"`
	// P2P only: other user's last online timestamp & user agent
	LastSeenTime      int64  `protobuf:"varint,15,opt,name=last_seen_time,json=lastSeenTime,proto3" json:"last_seen_time,omitempty"`
	LastSeenUserAgent string `protobuf:"bytes,16,opt,name=last_seen_user_agent,json=lastSeenUserAgent,proto3" json:"last_seen_user_agent,omitempty"`
	// contains filtered or unexported fields
}

Topic description, S2C in Meta message

func (*TopicDesc) Descriptor deprecated

func (*TopicDesc) Descriptor() ([]byte, []int)

Deprecated: Use TopicDesc.ProtoReflect.Descriptor instead.

func (*TopicDesc) GetAcs

func (x *TopicDesc) GetAcs() *AccessMode

func (*TopicDesc) GetCreatedAt

func (x *TopicDesc) GetCreatedAt() int64

func (*TopicDesc) GetDefacs

func (x *TopicDesc) GetDefacs() *DefaultAcsMode

func (*TopicDesc) GetDelId added in v0.14.2

func (x *TopicDesc) GetDelId() int32

func (*TopicDesc) GetIsChan added in v0.18.0

func (x *TopicDesc) GetIsChan() bool

func (*TopicDesc) GetLastSeenTime added in v0.17.8

func (x *TopicDesc) GetLastSeenTime() int64

func (*TopicDesc) GetLastSeenUserAgent added in v0.17.8

func (x *TopicDesc) GetLastSeenUserAgent() string

func (*TopicDesc) GetOnline added in v0.22.5

func (x *TopicDesc) GetOnline() bool

func (*TopicDesc) GetPrivate

func (x *TopicDesc) GetPrivate() []byte

func (*TopicDesc) GetPublic

func (x *TopicDesc) GetPublic() []byte

func (*TopicDesc) GetReadId

func (x *TopicDesc) GetReadId() int32

func (*TopicDesc) GetRecvId

func (x *TopicDesc) GetRecvId() int32

func (*TopicDesc) GetSeqId

func (x *TopicDesc) GetSeqId() int32

func (*TopicDesc) GetState added in v0.16.4

func (x *TopicDesc) GetState() string

func (*TopicDesc) GetStateAt added in v0.16.4

func (x *TopicDesc) GetStateAt() int64

func (*TopicDesc) GetTouchedAt added in v0.14.6

func (x *TopicDesc) GetTouchedAt() int64

func (*TopicDesc) GetTrusted added in v0.18.0

func (x *TopicDesc) GetTrusted() []byte

func (*TopicDesc) GetUpdatedAt

func (x *TopicDesc) GetUpdatedAt() int64

func (*TopicDesc) ProtoMessage

func (*TopicDesc) ProtoMessage()

func (*TopicDesc) ProtoReflect added in v0.18.1

func (x *TopicDesc) ProtoReflect() protoreflect.Message

func (*TopicDesc) Reset

func (x *TopicDesc) Reset()

func (*TopicDesc) String

func (x *TopicDesc) String() string

type TopicEvent

type TopicEvent struct {
	Action Crud       `protobuf:"varint,1,opt,name=action,proto3,enum=pbx.Crud" json:"action,omitempty"`
	Name   string     `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
	Desc   *TopicDesc `protobuf:"bytes,3,opt,name=desc,proto3" json:"desc,omitempty"`
	// contains filtered or unexported fields
}

func (*TopicEvent) Descriptor deprecated

func (*TopicEvent) Descriptor() ([]byte, []int)

Deprecated: Use TopicEvent.ProtoReflect.Descriptor instead.

func (*TopicEvent) GetAction

func (x *TopicEvent) GetAction() Crud

func (*TopicEvent) GetDesc

func (x *TopicEvent) GetDesc() *TopicDesc

func (*TopicEvent) GetName

func (x *TopicEvent) GetName() string

func (*TopicEvent) ProtoMessage

func (*TopicEvent) ProtoMessage()

func (*TopicEvent) ProtoReflect added in v0.18.1

func (x *TopicEvent) ProtoReflect() protoreflect.Message

func (*TopicEvent) Reset

func (x *TopicEvent) Reset()

func (*TopicEvent) String

func (x *TopicEvent) String() string

type TopicSub

type TopicSub struct {
	UpdatedAt int64       `protobuf:"varint,1,opt,name=updated_at,json=updatedAt,proto3" json:"updated_at,omitempty"`
	DeletedAt int64       `protobuf:"varint,2,opt,name=deleted_at,json=deletedAt,proto3" json:"deleted_at,omitempty"`
	Online    bool        `protobuf:"varint,3,opt,name=online,proto3" json:"online,omitempty"`
	Acs       *AccessMode `protobuf:"bytes,4,opt,name=acs,proto3" json:"acs,omitempty"`
	ReadId    int32       `protobuf:"varint,5,opt,name=read_id,json=readId,proto3" json:"read_id,omitempty"`
	RecvId    int32       `protobuf:"varint,6,opt,name=recv_id,json=recvId,proto3" json:"recv_id,omitempty"`
	Public    []byte      `protobuf:"bytes,7,opt,name=public,proto3" json:"public,omitempty"`
	Trusted   []byte      `protobuf:"bytes,16,opt,name=trusted,proto3" json:"trusted,omitempty"` // 16!
	Private   []byte      `protobuf:"bytes,8,opt,name=private,proto3" json:"private,omitempty"`
	// Uid of the subscribed user
	UserId string `protobuf:"bytes,9,opt,name=user_id,json=userId,proto3" json:"user_id,omitempty"`
	// Topic name of this subscription
	Topic     string `protobuf:"bytes,10,opt,name=topic,proto3" json:"topic,omitempty"`
	TouchedAt int64  `protobuf:"varint,11,opt,name=touched_at,json=touchedAt,proto3" json:"touched_at,omitempty"`
	// ID of the last {data} message in a topic
	SeqId int32 `protobuf:"varint,12,opt,name=seq_id,json=seqId,proto3" json:"seq_id,omitempty"`
	// Messages are deleted up to this ID
	DelId int32 `protobuf:"varint,13,opt,name=del_id,json=delId,proto3" json:"del_id,omitempty"`
	// Other user's last online timestamp & user agent
	LastSeenTime      int64  `protobuf:"varint,14,opt,name=last_seen_time,json=lastSeenTime,proto3" json:"last_seen_time,omitempty"`
	LastSeenUserAgent string `protobuf:"bytes,15,opt,name=last_seen_user_agent,json=lastSeenUserAgent,proto3" json:"last_seen_user_agent,omitempty"`
	// contains filtered or unexported fields
}

MsgTopicSub: topic subscription details, sent in Meta message

func (*TopicSub) Descriptor deprecated

func (*TopicSub) Descriptor() ([]byte, []int)

Deprecated: Use TopicSub.ProtoReflect.Descriptor instead.

func (*TopicSub) GetAcs

func (x *TopicSub) GetAcs() *AccessMode

func (*TopicSub) GetDelId added in v0.14.2

func (x *TopicSub) GetDelId() int32

func (*TopicSub) GetDeletedAt

func (x *TopicSub) GetDeletedAt() int64

func (*TopicSub) GetLastSeenTime

func (x *TopicSub) GetLastSeenTime() int64

func (*TopicSub) GetLastSeenUserAgent

func (x *TopicSub) GetLastSeenUserAgent() string

func (*TopicSub) GetOnline

func (x *TopicSub) GetOnline() bool

func (*TopicSub) GetPrivate

func (x *TopicSub) GetPrivate() []byte

func (*TopicSub) GetPublic

func (x *TopicSub) GetPublic() []byte

func (*TopicSub) GetReadId

func (x *TopicSub) GetReadId() int32

func (*TopicSub) GetRecvId

func (x *TopicSub) GetRecvId() int32

func (*TopicSub) GetSeqId

func (x *TopicSub) GetSeqId() int32

func (*TopicSub) GetTopic

func (x *TopicSub) GetTopic() string

func (*TopicSub) GetTouchedAt added in v0.14.6

func (x *TopicSub) GetTouchedAt() int64

func (*TopicSub) GetTrusted added in v0.18.0

func (x *TopicSub) GetTrusted() []byte

func (*TopicSub) GetUpdatedAt

func (x *TopicSub) GetUpdatedAt() int64

func (*TopicSub) GetUserId

func (x *TopicSub) GetUserId() string

func (*TopicSub) ProtoMessage

func (*TopicSub) ProtoMessage()

func (*TopicSub) ProtoReflect added in v0.18.1

func (x *TopicSub) ProtoReflect() protoreflect.Message

func (*TopicSub) Reset

func (x *TopicSub) Reset()

func (*TopicSub) String

func (x *TopicSub) String() string

type UnimplementedNodeServer added in v0.18.3

type UnimplementedNodeServer struct {
}

UnimplementedNodeServer must be embedded to have forward compatible implementations.

func (UnimplementedNodeServer) MessageLoop added in v0.18.3

type UnimplementedPluginServer added in v0.18.3

type UnimplementedPluginServer struct {
}

UnimplementedPluginServer must be embedded to have forward compatible implementations.

func (UnimplementedPluginServer) Account added in v0.18.3

func (UnimplementedPluginServer) Find added in v0.18.3

func (UnimplementedPluginServer) FireHose added in v0.18.3

func (UnimplementedPluginServer) Message added in v0.18.3

func (UnimplementedPluginServer) Subscription added in v0.18.3

func (UnimplementedPluginServer) Topic added in v0.18.3

type UnsafeNodeServer added in v0.18.3

type UnsafeNodeServer interface {
	// contains filtered or unexported methods
}

UnsafeNodeServer may be embedded to opt out of forward compatibility for this service. Use of this interface is not recommended, as added methods to NodeServer will result in compilation errors.

type UnsafePluginServer added in v0.18.3

type UnsafePluginServer interface {
	// contains filtered or unexported methods
}

UnsafePluginServer may be embedded to opt out of forward compatibility for this service. Use of this interface is not recommended, as added methods to PluginServer will result in compilation errors.

type Unused

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

Dummy placeholder message.

func (*Unused) Descriptor deprecated

func (*Unused) Descriptor() ([]byte, []int)

Deprecated: Use Unused.ProtoReflect.Descriptor instead.

func (*Unused) ProtoMessage

func (*Unused) ProtoMessage()

func (*Unused) ProtoReflect added in v0.18.1

func (x *Unused) ProtoReflect() protoreflect.Message

func (*Unused) Reset

func (x *Unused) Reset()

func (*Unused) String

func (x *Unused) String() string

Jump to

Keyboard shortcuts

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