spacewave_chat

package
v0.51.7 Latest Latest
Warning

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

Go to latest
Published: May 30, 2026 License: Apache-2.0 Imports: 15 Imported by: 0

Documentation

Index

Constants

View Source
const ChatChannelTypeID = "spacewave-chat/channel"

ChatChannelTypeID is the type identifier for chat channel objects.

View Source
const ChatMessageTypeID = "spacewave-chat/message"

ChatMessageTypeID is the type identifier for chat message objects.

View Source
const GeneralChannelKey = "chat/channel/general"

GeneralChannelKey is the default channel object key.

Variables

View Source
var CreateChatChannelOpId = "spacewave-chat/channel/create"

CreateChatChannelOpId is the operation id for CreateChatChannelOp.

View Source
var InitChatDemoOpId = "chat/init-chat-demo"

InitChatDemoOpId is the operation type ID.

View Source
var PredChannelMessage = quad.IRI("spacewave-chat/channel-message")

PredChannelMessage is the graph predicate linking a channel to its messages.

View Source
var PredMessageSender = quad.IRI("spacewave-chat/message-sender")

PredMessageSender is the graph predicate linking a message to its sender.

Functions

func LookupCreateChatChannelOp

func LookupCreateChatChannelOp(ctx context.Context, operationTypeID string) (world.Operation, error)

LookupCreateChatChannelOp looks up a CreateChatChannelOp operation type.

func LookupInitChatDemoOp

func LookupInitChatDemoOp(ctx context.Context, opTypeID string) (world.Operation, error)

LookupInitChatDemoOp looks up the init chat demo operation.

func NewCreateChatChannelOpBlock

func NewCreateChatChannelOpBlock() block.Block

NewCreateChatChannelOpBlock constructs a new CreateChatChannelOp block.

func NewInitChatDemoOpBlock

func NewInitChatDemoOpBlock() block.Block

NewInitChatDemoOpBlock creates an empty block for deserialization.

Types

type ChatChannel

type ChatChannel struct {

	// Name is the channel display name.
	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	// Topic is an optional channel topic description.
	Topic string `protobuf:"bytes,2,opt,name=topic,proto3" json:"topic,omitempty"`
	// CreatedAt is the creation timestamp.
	CreatedAt *timestamppb.Timestamp `protobuf:"bytes,3,opt,name=created_at,json=createdAt,proto3" json:"createdAt,omitempty"`
	// contains filtered or unexported fields
}

ChatChannel is a chat channel world object. All channels are visible to Space participants (no visibility field).

func (*ChatChannel) CloneMessageVT

func (m *ChatChannel) CloneMessageVT() protobuf_go_lite.CloneMessage

func (*ChatChannel) CloneVT

func (m *ChatChannel) CloneVT() *ChatChannel

func (*ChatChannel) EqualMessageVT

func (this *ChatChannel) EqualMessageVT(thatMsg any) bool

func (*ChatChannel) EqualVT

func (this *ChatChannel) EqualVT(that *ChatChannel) bool

func (*ChatChannel) GetCreatedAt

func (x *ChatChannel) GetCreatedAt() *timestamppb.Timestamp

func (*ChatChannel) GetName

func (x *ChatChannel) GetName() string

func (*ChatChannel) GetTopic

func (x *ChatChannel) GetTopic() string

func (*ChatChannel) MarshalBlock

func (c *ChatChannel) MarshalBlock() ([]byte, error)

MarshalBlock marshals the ChatChannel to bytes.

func (*ChatChannel) MarshalJSON

func (x *ChatChannel) MarshalJSON() ([]byte, error)

MarshalJSON marshals the ChatChannel to JSON.

func (*ChatChannel) MarshalProtoJSON

func (x *ChatChannel) MarshalProtoJSON(s *json.MarshalState)

MarshalProtoJSON marshals the ChatChannel message to JSON.

func (*ChatChannel) MarshalProtoText

func (x *ChatChannel) MarshalProtoText() string

func (*ChatChannel) MarshalToSizedBufferVT

func (m *ChatChannel) MarshalToSizedBufferVT(dAtA []byte) (int, error)

func (*ChatChannel) MarshalToVT

func (m *ChatChannel) MarshalToVT(dAtA []byte) (int, error)

func (*ChatChannel) MarshalVT

func (m *ChatChannel) MarshalVT() (dAtA []byte, err error)

func (*ChatChannel) ProtoMessage

func (*ChatChannel) ProtoMessage()

func (*ChatChannel) Reset

func (x *ChatChannel) Reset()

func (*ChatChannel) SizeVT

func (m *ChatChannel) SizeVT() (n int)

func (*ChatChannel) String

func (x *ChatChannel) String() string

func (*ChatChannel) UnmarshalBlock

func (c *ChatChannel) UnmarshalBlock(data []byte) error

UnmarshalBlock unmarshals the ChatChannel from bytes.

func (*ChatChannel) UnmarshalJSON

func (x *ChatChannel) UnmarshalJSON(b []byte) error

UnmarshalJSON unmarshals the ChatChannel from JSON.

func (*ChatChannel) UnmarshalProtoJSON

func (x *ChatChannel) UnmarshalProtoJSON(s *json.UnmarshalState)

UnmarshalProtoJSON unmarshals the ChatChannel message from JSON.

func (*ChatChannel) UnmarshalVT

func (m *ChatChannel) UnmarshalVT(dAtA []byte) error

func (*ChatChannel) Validate

func (c *ChatChannel) Validate() error

Validate performs cursory checks on the ChatChannel.

type ChatMessage

type ChatMessage struct {

	// SenderPeerId is the peer ID of the message sender.
	SenderPeerId string `protobuf:"bytes,1,opt,name=sender_peer_id,json=senderPeerId,proto3" json:"senderPeerId,omitempty"`
	// Content is the message content.
	Content *ChatMessageContent `protobuf:"bytes,2,opt,name=content,proto3" json:"content,omitempty"`
	// CreatedAt is the message creation timestamp.
	CreatedAt *timestamppb.Timestamp `protobuf:"bytes,3,opt,name=created_at,json=createdAt,proto3" json:"createdAt,omitempty"`
	// ReplyToKey is the object key of the message being replied to.
	ReplyToKey string `protobuf:"bytes,4,opt,name=reply_to_key,json=replyToKey,proto3" json:"replyToKey,omitempty"`
	// contains filtered or unexported fields
}

ChatMessage is a chat message world object linked to a channel.

func (*ChatMessage) CloneMessageVT

func (m *ChatMessage) CloneMessageVT() protobuf_go_lite.CloneMessage

func (*ChatMessage) CloneVT

func (m *ChatMessage) CloneVT() *ChatMessage

func (*ChatMessage) EqualMessageVT

func (this *ChatMessage) EqualMessageVT(thatMsg any) bool

func (*ChatMessage) EqualVT

func (this *ChatMessage) EqualVT(that *ChatMessage) bool

func (*ChatMessage) GetContent

func (x *ChatMessage) GetContent() *ChatMessageContent

func (*ChatMessage) GetCreatedAt

func (x *ChatMessage) GetCreatedAt() *timestamppb.Timestamp

func (*ChatMessage) GetReplyToKey

func (x *ChatMessage) GetReplyToKey() string

func (*ChatMessage) GetSenderPeerId

func (x *ChatMessage) GetSenderPeerId() string

func (*ChatMessage) MarshalBlock

func (m *ChatMessage) MarshalBlock() ([]byte, error)

MarshalBlock marshals the ChatMessage to bytes.

func (*ChatMessage) MarshalJSON

func (x *ChatMessage) MarshalJSON() ([]byte, error)

MarshalJSON marshals the ChatMessage to JSON.

func (*ChatMessage) MarshalProtoJSON

func (x *ChatMessage) MarshalProtoJSON(s *json.MarshalState)

MarshalProtoJSON marshals the ChatMessage message to JSON.

func (*ChatMessage) MarshalProtoText

func (x *ChatMessage) MarshalProtoText() string

func (*ChatMessage) MarshalToSizedBufferVT

func (m *ChatMessage) MarshalToSizedBufferVT(dAtA []byte) (int, error)

func (*ChatMessage) MarshalToVT

func (m *ChatMessage) MarshalToVT(dAtA []byte) (int, error)

func (*ChatMessage) MarshalVT

func (m *ChatMessage) MarshalVT() (dAtA []byte, err error)

func (*ChatMessage) ProtoMessage

func (*ChatMessage) ProtoMessage()

func (*ChatMessage) Reset

func (x *ChatMessage) Reset()

func (*ChatMessage) SizeVT

func (m *ChatMessage) SizeVT() (n int)

func (*ChatMessage) String

func (x *ChatMessage) String() string

func (*ChatMessage) UnmarshalBlock

func (m *ChatMessage) UnmarshalBlock(data []byte) error

UnmarshalBlock unmarshals the ChatMessage from bytes.

func (*ChatMessage) UnmarshalJSON

func (x *ChatMessage) UnmarshalJSON(b []byte) error

UnmarshalJSON unmarshals the ChatMessage from JSON.

func (*ChatMessage) UnmarshalProtoJSON

func (x *ChatMessage) UnmarshalProtoJSON(s *json.UnmarshalState)

UnmarshalProtoJSON unmarshals the ChatMessage message from JSON.

func (*ChatMessage) UnmarshalVT

func (m *ChatMessage) UnmarshalVT(dAtA []byte) error

func (*ChatMessage) Validate

func (m *ChatMessage) Validate() error

Validate performs cursory checks on the ChatMessage.

type ChatMessageContent

type ChatMessageContent struct {

	// Types that are assignable to Content:
	//
	//	*ChatMessageContent_Text
	Content isChatMessageContent_Content `protobuf_oneof:"content"`
	// contains filtered or unexported fields
}

ChatMessageContent contains the message body.

func (*ChatMessageContent) CloneMessageVT

func (m *ChatMessageContent) CloneMessageVT() protobuf_go_lite.CloneMessage

func (*ChatMessageContent) CloneVT

func (m *ChatMessageContent) CloneVT() *ChatMessageContent

func (*ChatMessageContent) EqualMessageVT

func (this *ChatMessageContent) EqualMessageVT(thatMsg any) bool

func (*ChatMessageContent) EqualVT

func (this *ChatMessageContent) EqualVT(that *ChatMessageContent) bool

func (*ChatMessageContent) GetContent

func (m *ChatMessageContent) GetContent() isChatMessageContent_Content

func (*ChatMessageContent) GetText

func (x *ChatMessageContent) GetText() string

func (*ChatMessageContent) MarshalJSON

func (x *ChatMessageContent) MarshalJSON() ([]byte, error)

MarshalJSON marshals the ChatMessageContent to JSON.

func (*ChatMessageContent) MarshalProtoJSON

func (x *ChatMessageContent) MarshalProtoJSON(s *json.MarshalState)

MarshalProtoJSON marshals the ChatMessageContent message to JSON.

func (*ChatMessageContent) MarshalProtoText

func (x *ChatMessageContent) MarshalProtoText() string

func (*ChatMessageContent) MarshalToSizedBufferVT

func (m *ChatMessageContent) MarshalToSizedBufferVT(dAtA []byte) (int, error)

func (*ChatMessageContent) MarshalToVT

func (m *ChatMessageContent) MarshalToVT(dAtA []byte) (int, error)

func (*ChatMessageContent) MarshalVT

func (m *ChatMessageContent) MarshalVT() (dAtA []byte, err error)

func (*ChatMessageContent) ProtoMessage

func (*ChatMessageContent) ProtoMessage()

func (*ChatMessageContent) Reset

func (x *ChatMessageContent) Reset()

func (*ChatMessageContent) SizeVT

func (m *ChatMessageContent) SizeVT() (n int)

func (*ChatMessageContent) String

func (x *ChatMessageContent) String() string

func (*ChatMessageContent) UnmarshalJSON

func (x *ChatMessageContent) UnmarshalJSON(b []byte) error

UnmarshalJSON unmarshals the ChatMessageContent from JSON.

func (*ChatMessageContent) UnmarshalProtoJSON

func (x *ChatMessageContent) UnmarshalProtoJSON(s *json.UnmarshalState)

UnmarshalProtoJSON unmarshals the ChatMessageContent message from JSON.

func (*ChatMessageContent) UnmarshalVT

func (m *ChatMessageContent) UnmarshalVT(dAtA []byte) error

type ChatMessageContent_Text

type ChatMessageContent_Text struct {
	// Text is a plain text message.
	Text string `protobuf:"bytes,1,opt,name=text,proto3,oneof"`
}

func (*ChatMessageContent_Text) CloneOneofVT

func (m *ChatMessageContent_Text) CloneOneofVT() isChatMessageContent_Content

func (*ChatMessageContent_Text) CloneVT

func (*ChatMessageContent_Text) EqualVT

func (this *ChatMessageContent_Text) EqualVT(thatIface isChatMessageContent_Content) bool

func (*ChatMessageContent_Text) MarshalToSizedBufferVT

func (m *ChatMessageContent_Text) MarshalToSizedBufferVT(dAtA []byte) (int, error)

func (*ChatMessageContent_Text) MarshalToVT

func (m *ChatMessageContent_Text) MarshalToVT(dAtA []byte) (int, error)

func (*ChatMessageContent_Text) SizeVT

func (m *ChatMessageContent_Text) SizeVT() (n int)

type CreateChatChannelOp

type CreateChatChannelOp struct {

	// ObjectKey is the key to create the channel at.
	ObjectKey string `protobuf:"bytes,1,opt,name=object_key,json=objectKey,proto3" json:"objectKey,omitempty"`
	// Name is the channel name.
	Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
	// Topic is the optional channel topic.
	Topic string `protobuf:"bytes,3,opt,name=topic,proto3" json:"topic,omitempty"`
	// Timestamp is the creation timestamp.
	Timestamp *timestamppb.Timestamp `protobuf:"bytes,4,opt,name=timestamp,proto3" json:"timestamp,omitempty"`
	// contains filtered or unexported fields
}

CreateChatChannelOp creates a new chat channel.

func (*CreateChatChannelOp) ApplyWorldObjectOp

func (o *CreateChatChannelOp) ApplyWorldObjectOp(
	ctx context.Context,
	le *logrus.Entry,
	os world.ObjectState,
	sender peer.ID,
) (sysErr bool, err error)

ApplyWorldObjectOp applies the operation to a world object.

func (*CreateChatChannelOp) ApplyWorldOp

func (o *CreateChatChannelOp) ApplyWorldOp(
	ctx context.Context,
	le *logrus.Entry,
	ws world.WorldState,
	sender peer.ID,
) (sysErr bool, err error)

ApplyWorldOp applies the operation as a world operation.

func (*CreateChatChannelOp) CloneMessageVT

func (*CreateChatChannelOp) CloneVT

func (*CreateChatChannelOp) EqualMessageVT

func (this *CreateChatChannelOp) EqualMessageVT(thatMsg any) bool

func (*CreateChatChannelOp) EqualVT

func (this *CreateChatChannelOp) EqualVT(that *CreateChatChannelOp) bool

func (*CreateChatChannelOp) GetName

func (x *CreateChatChannelOp) GetName() string

func (*CreateChatChannelOp) GetObjectKey

func (x *CreateChatChannelOp) GetObjectKey() string

func (*CreateChatChannelOp) GetOperationTypeId

func (o *CreateChatChannelOp) GetOperationTypeId() string

GetOperationTypeId returns the operation type identifier.

func (*CreateChatChannelOp) GetTimestamp

func (x *CreateChatChannelOp) GetTimestamp() *timestamppb.Timestamp

func (*CreateChatChannelOp) GetTopic

func (x *CreateChatChannelOp) GetTopic() string

func (*CreateChatChannelOp) MarshalBlock

func (o *CreateChatChannelOp) MarshalBlock() ([]byte, error)

MarshalBlock marshals the block to binary.

func (*CreateChatChannelOp) MarshalJSON

func (x *CreateChatChannelOp) MarshalJSON() ([]byte, error)

MarshalJSON marshals the CreateChatChannelOp to JSON.

func (*CreateChatChannelOp) MarshalProtoJSON

func (x *CreateChatChannelOp) MarshalProtoJSON(s *json.MarshalState)

MarshalProtoJSON marshals the CreateChatChannelOp message to JSON.

func (*CreateChatChannelOp) MarshalProtoText

func (x *CreateChatChannelOp) MarshalProtoText() string

func (*CreateChatChannelOp) MarshalToSizedBufferVT

func (m *CreateChatChannelOp) MarshalToSizedBufferVT(dAtA []byte) (int, error)

func (*CreateChatChannelOp) MarshalToVT

func (m *CreateChatChannelOp) MarshalToVT(dAtA []byte) (int, error)

func (*CreateChatChannelOp) MarshalVT

func (m *CreateChatChannelOp) MarshalVT() (dAtA []byte, err error)

func (*CreateChatChannelOp) ProtoMessage

func (*CreateChatChannelOp) ProtoMessage()

func (*CreateChatChannelOp) Reset

func (x *CreateChatChannelOp) Reset()

func (*CreateChatChannelOp) SizeVT

func (m *CreateChatChannelOp) SizeVT() (n int)

func (*CreateChatChannelOp) String

func (x *CreateChatChannelOp) String() string

func (*CreateChatChannelOp) UnmarshalBlock

func (o *CreateChatChannelOp) UnmarshalBlock(data []byte) error

UnmarshalBlock unmarshals the block to the object.

func (*CreateChatChannelOp) UnmarshalJSON

func (x *CreateChatChannelOp) UnmarshalJSON(b []byte) error

UnmarshalJSON unmarshals the CreateChatChannelOp from JSON.

func (*CreateChatChannelOp) UnmarshalProtoJSON

func (x *CreateChatChannelOp) UnmarshalProtoJSON(s *json.UnmarshalState)

UnmarshalProtoJSON unmarshals the CreateChatChannelOp message from JSON.

func (*CreateChatChannelOp) UnmarshalVT

func (m *CreateChatChannelOp) UnmarshalVT(dAtA []byte) error

func (*CreateChatChannelOp) Validate

func (o *CreateChatChannelOp) Validate() error

Validate performs cursory checks on the op.

type InitChatDemoOp

type InitChatDemoOp struct {

	// ChannelObjectKey is the key for the channel object.
	ChannelObjectKey string `protobuf:"bytes,1,opt,name=channel_object_key,json=channelObjectKey,proto3" json:"channelObjectKey,omitempty"`
	// Timestamp is the creation timestamp.
	Timestamp *timestamppb.Timestamp `protobuf:"bytes,2,opt,name=timestamp,proto3" json:"timestamp,omitempty"`
	// contains filtered or unexported fields
}

InitChatDemoOp creates a "General" channel on space quickstart.

func (*InitChatDemoOp) ApplyWorldObjectOp

func (o *InitChatDemoOp) ApplyWorldObjectOp(
	ctx context.Context,
	le *logrus.Entry,
	os world.ObjectState,
	sender peer.ID,
) (bool, error)

ApplyWorldObjectOp is not supported for this operation.

func (*InitChatDemoOp) ApplyWorldOp

func (o *InitChatDemoOp) ApplyWorldOp(
	ctx context.Context,
	le *logrus.Entry,
	ws world.WorldState,
	sender peer.ID,
) (bool, error)

ApplyWorldOp applies the init chat demo operation.

func (*InitChatDemoOp) CloneMessageVT

func (m *InitChatDemoOp) CloneMessageVT() protobuf_go_lite.CloneMessage

func (*InitChatDemoOp) CloneVT

func (m *InitChatDemoOp) CloneVT() *InitChatDemoOp

func (*InitChatDemoOp) EqualMessageVT

func (this *InitChatDemoOp) EqualMessageVT(thatMsg any) bool

func (*InitChatDemoOp) EqualVT

func (this *InitChatDemoOp) EqualVT(that *InitChatDemoOp) bool

func (*InitChatDemoOp) GetChannelObjectKey

func (x *InitChatDemoOp) GetChannelObjectKey() string

func (*InitChatDemoOp) GetOperationTypeId

func (o *InitChatDemoOp) GetOperationTypeId() string

GetOperationTypeId returns the operation type ID.

func (*InitChatDemoOp) GetTimestamp

func (x *InitChatDemoOp) GetTimestamp() *timestamppb.Timestamp

func (*InitChatDemoOp) MarshalBlock

func (o *InitChatDemoOp) MarshalBlock() ([]byte, error)

MarshalBlock marshals the operation to bytes.

func (*InitChatDemoOp) MarshalJSON

func (x *InitChatDemoOp) MarshalJSON() ([]byte, error)

MarshalJSON marshals the InitChatDemoOp to JSON.

func (*InitChatDemoOp) MarshalProtoJSON

func (x *InitChatDemoOp) MarshalProtoJSON(s *json.MarshalState)

MarshalProtoJSON marshals the InitChatDemoOp message to JSON.

func (*InitChatDemoOp) MarshalProtoText

func (x *InitChatDemoOp) MarshalProtoText() string

func (*InitChatDemoOp) MarshalToSizedBufferVT

func (m *InitChatDemoOp) MarshalToSizedBufferVT(dAtA []byte) (int, error)

func (*InitChatDemoOp) MarshalToVT

func (m *InitChatDemoOp) MarshalToVT(dAtA []byte) (int, error)

func (*InitChatDemoOp) MarshalVT

func (m *InitChatDemoOp) MarshalVT() (dAtA []byte, err error)

func (*InitChatDemoOp) ProtoMessage

func (*InitChatDemoOp) ProtoMessage()

func (*InitChatDemoOp) Reset

func (x *InitChatDemoOp) Reset()

func (*InitChatDemoOp) SizeVT

func (m *InitChatDemoOp) SizeVT() (n int)

func (*InitChatDemoOp) String

func (x *InitChatDemoOp) String() string

func (*InitChatDemoOp) UnmarshalBlock

func (o *InitChatDemoOp) UnmarshalBlock(data []byte) error

UnmarshalBlock unmarshals the operation from bytes.

func (*InitChatDemoOp) UnmarshalJSON

func (x *InitChatDemoOp) UnmarshalJSON(b []byte) error

UnmarshalJSON unmarshals the InitChatDemoOp from JSON.

func (*InitChatDemoOp) UnmarshalProtoJSON

func (x *InitChatDemoOp) UnmarshalProtoJSON(s *json.UnmarshalState)

UnmarshalProtoJSON unmarshals the InitChatDemoOp message from JSON.

func (*InitChatDemoOp) UnmarshalVT

func (m *InitChatDemoOp) UnmarshalVT(dAtA []byte) error

func (*InitChatDemoOp) Validate

func (o *InitChatDemoOp) Validate() error

Validate validates the operation.

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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