amqp

package
v0.0.0-...-d3429b1 Latest Latest
Warning

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

Go to latest
Published: May 22, 2024 License: Apache-2.0 Imports: 10 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type MailRequest

type MailRequest struct {
	From         string         `json:"from"`
	To           string         `json:"to"`
	Subject      string         `json:"subject"`
	DataMap      map[string]any `json:"data_map"`
	TemplateName string         `json:"template_name"`
	AckRequired  bool           `json:"ack_required"`
	Priority     string         `json:"priority"`
}

type MailResponse

type MailResponse struct {
	Status        bool   `json:"status"`
	Message       string `json:"message"`
	CorrelationId string `json:"correlation_id"`
}

type RabbitAMQPClient

type RabbitAMQPClient struct {
	Conn            *amqp.Connection
	Ch              *amqp.Channel
	LogExName       string // exchange name for logs
	TracExName      string // exchange name for tracker
	WorkerRequestQ  string // exchange name for Worker Request
	WorkerResponseQ string // exchange name for Worker Response
	MailReqQName    string // routing key for sending mail
	MailResQName    string
	SMSReqQName     string // routing key for sending SMS
	SMSResQName     string
}

func Get

func Get() *RabbitAMQPClient

func (*RabbitAMQPClient) SendMail

func (r *RabbitAMQPClient) SendMail(msg []byte, cb func(MailResponse)) (string, error)

func (*RabbitAMQPClient) SendSMS

func (r *RabbitAMQPClient) SendSMS(msg []byte, cb func(SMSResponse)) (string, error)

func (*RabbitAMQPClient) SendWorkerRequest

func (a *RabbitAMQPClient) SendWorkerRequest(r WorkerRequest) error

func (*RabbitAMQPClient) SendWorkerResponse

func (a *RabbitAMQPClient) SendWorkerResponse(r WorkerResponse) error

func (*RabbitAMQPClient) Stop

func (a *RabbitAMQPClient) Stop()

func (*RabbitAMQPClient) TrackEvent

func (a *RabbitAMQPClient) TrackEvent(e []byte, sender, name string) error

func (*RabbitAMQPClient) Write

func (a *RabbitAMQPClient) Write(p []byte) (int, error)

type SMSRequest

type SMSRequest struct {
	From         string         `json:"from"`
	To           string         `json:"to"`
	CountryCode  string         `json:"country_code"`
	Name         string         `json:"name"`
	Subject      string         `json:"subject"`
	DataMap      map[string]any `json:"data_map"`
	TemplateName string         `json:"template_name"`
	AckRequired  bool           `json:"ack_required"`
	Priority     string         `json:"priority"`
}

type SMSResponse

type SMSResponse struct {
	Status        bool   `json:"status"`
	Message       string `json:"message"`
	CorrelationId string `json:"correlation_id"`
}

type TrackEvent

type TrackEvent struct {
	Sender    string    `json:"sender"`
	EventName string    `json:"event_name"`
	EventData string    `json:"event_data"`
	CreatedAt time.Time `json:"created_at"`
}

type WorkerRequest

type WorkerRequest struct {
	RequestId   string   `json:"request_id"`
	RequestType string   `json:"request_type"`
	Domain      string   `json:"domain,omitempty"`
	Angle       int64    `json:"angle,omitempty"`
	ImageType   string   `json:"image_type,omitempty"`
	PageNumbers []int    `json:"page_numbers,omitempty"`
	Ranges      []string `json:"ranges,omitempty"`
}

type WorkerResponse

type WorkerResponse struct {
	RequestId         string   `json:"request_id"`
	RequestType       string   `json:"request_type"`
	Year              string   `json:"year,omitempty"`
	Month             string   `json:"month,omitempty"`
	Day               string   `json:"day,omitempty"`
	IsProcessed       bool     `json:"is_processed"`
	IsError           bool     `json:"is_error"`
	OriginalSize      int64    `json:"original_size_in_bytes,omitempty"`
	OptimizedSize     int64    `json:"optimized_size_in_bytes,omitempty"`
	CompressionRatio  float64  `json:"compression_ratio,omitempty"`
	ProcessingTime    float64  `json:"processing_time_in_ms,omitempty"`
	OutputFileName    string   `json:"output_file_name,omitempty"`
	OutputZipFileName string   `json:"output_zip_file_name,omitempty"`
	OutputFileList    []string `json:"output_file_list,omitempty"`
	MergedFileSize    int64    `json:"merged_file_size,omitempty"`
	Message           string   `json:"message,omitempty"`
}

Jump to

Keyboard shortcuts

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