service

package
v1.4.22 Latest Latest
Warning

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

Go to latest
Published: Jan 14, 2024 License: MIT Imports: 13 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

Set provides a wire set.

Functions

This section is empty.

Types

type Bot

type Bot interface {
	EventsFromRequest(r *http.Request) ([]*model.Event, error)
	ReplyMessage(context.Context, *model.Event, repository.MessageProvider) error
	PushMessage(context.Context, model.ConversationID, repository.MessageProvider) error
}

type BotImpl

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

func NewBot

func NewBot(
	bot repository.Bot,
	message repository.MessageProviderSet,
) *BotImpl

func (*BotImpl) EventsFromRequest

func (b *BotImpl) EventsFromRequest(r *http.Request) ([]*model.Event, error)

func (*BotImpl) PushMessage added in v1.1.0

func (b *BotImpl) PushMessage(ctx context.Context, conversationID model.ConversationID, msg repository.MessageProvider) error

func (*BotImpl) ReplyMessage

func (b *BotImpl) ReplyMessage(ctx context.Context, e *model.Event, msg repository.MessageProvider) error

type Conversation added in v1.0.15

type Conversation interface {
	GetStatus(context.Context, model.ConversationID) (*model.ConversationStatus, error)
	SetStatus(context.Context, *model.ConversationStatus) error
}

type ConversationImpl added in v1.0.15

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

func NewConversation added in v1.0.15

func NewConversation(
	conversation repository.Conversation,
) *ConversationImpl

func (*ConversationImpl) GetStatus added in v1.0.15

func (s *ConversationImpl) GetStatus(ctx context.Context, conversationID model.ConversationID) (*model.ConversationStatus, error)

func (*ConversationImpl) SetStatus added in v1.0.15

func (s *ConversationImpl) SetStatus(ctx context.Context, status *model.ConversationStatus) error

type ReminderImpl added in v1.1.0

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

func NewReminder added in v1.1.0

func NewReminder(
	reminder repository.Reminder,
	scheduler repository.ScheduleSynchronizer,
) *ReminderImpl

func (*ReminderImpl) Add added in v1.1.0

func (r *ReminderImpl) Add(ctx context.Context, item *model.ReminderItem) error

func (*ReminderImpl) Delete added in v1.1.0

func (r *ReminderImpl) Delete(ctx context.Context, conversationID model.ConversationID, itemID model.ReminderItemID) error

func (*ReminderImpl) Get added in v1.1.0

func (r *ReminderImpl) Get(ctx context.Context, conversationID model.ConversationID, itemID model.ReminderItemID) (*model.ReminderItem, error)

func (*ReminderImpl) List added in v1.1.0

func (r *ReminderImpl) List(ctx context.Context, conversationID model.ConversationID) (model.ReminderItems, error)

func (*ReminderImpl) ListAll added in v1.1.0

func (r *ReminderImpl) ListAll(ctx context.Context) (model.ReminderItems, error)

func (*ReminderImpl) SyncSchedule added in v1.1.0

func (r *ReminderImpl) SyncSchedule(ctx context.Context, items model.ReminderItems) error

type Shopping

type Shopping interface {
	List(ctx context.Context, conversationID model.ConversationID) (model.ShoppingItems, error)
	AddItem(ctx context.Context, conversationID model.ConversationID, items ...*model.ShoppingItem) error
	DeleteAllItem(ctx context.Context, conversationID model.ConversationID) error
	DeleteItems(ctx context.Context, conversationID model.ConversationID, ids []string) error
	SetStatus(ctx context.Context, conversationID model.ConversationID) error
}

type ShoppingImpl

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

func NewShopping

func NewShopping(
	conversation repository.Conversation,
	shopping repository.Shopping,
) *ShoppingImpl

func (*ShoppingImpl) AddItem

func (s *ShoppingImpl) AddItem(ctx context.Context, conversationID model.ConversationID, items ...*model.ShoppingItem) error

func (*ShoppingImpl) DeleteAllItem

func (s *ShoppingImpl) DeleteAllItem(ctx context.Context, conversationID model.ConversationID) error

func (*ShoppingImpl) DeleteItems

func (s *ShoppingImpl) DeleteItems(ctx context.Context, conversationID model.ConversationID, ids []string) error

func (*ShoppingImpl) List

func (s *ShoppingImpl) List(ctx context.Context, conversationID model.ConversationID) (model.ShoppingItems, error)

func (*ShoppingImpl) SetStatus

func (s *ShoppingImpl) SetStatus(ctx context.Context, conversationID model.ConversationID) error

type Weather added in v1.2.0

type Weather interface {
	SaveImage(context.Context, io.Reader) error
	LatestImage(context.Context) (string, error)
}

type WeatherImpl added in v1.2.0

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

func NewWeather added in v1.2.0

func NewWeather(
	imageStore repository.WeatherImageStore,
	ct *config.Time,
	conf *config.ServiceEndpoint,
) (*WeatherImpl, error)

func (*WeatherImpl) LatestImage added in v1.3.2

func (w *WeatherImpl) LatestImage(ctx context.Context) (string, error)

func (*WeatherImpl) SaveImage added in v1.2.3

func (w *WeatherImpl) SaveImage(ctx context.Context, r io.Reader) error

Jump to

Keyboard shortcuts

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