sms

package
v3.4.1 Latest Latest
Warning

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

Go to latest
Published: Dec 4, 2023 License: MIT Imports: 4 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Channel

type Channel struct {
	ReqHandler internal.HTTPHandler
}

func (*Channel) CreateTFAApplication added in v3.1.0

func (sms *Channel) CreateTFAApplication(
	ctx context.Context,
	req models.CreateTFAApplicationRequest,
) (resp models.CreateTFAApplicationResponse, respDetails models.ResponseDetails, err error)

func (*Channel) CreateTFAMessageTemplate added in v3.1.0

func (sms *Channel) CreateTFAMessageTemplate(
	ctx context.Context,
	appID string,
	req models.CreateTFAMessageTemplateRequest,
) (resp models.CreateTFAMessageTemplateResponse, respDetails models.ResponseDetails, err error)

func (*Channel) GetDeliveryReports

func (sms *Channel) GetDeliveryReports(
	ctx context.Context,
	queryParams models.GetSMSDeliveryReportsParams) (
	resp models.GetSMSDeliveryReportsResponse, respDetails models.ResponseDetails, err error)

func (*Channel) GetInboundMessages

func (sms *Channel) GetInboundMessages(
	ctx context.Context,
	queryParams models.GetInboundSMSParams,
) (resp models.GetInboundSMSResponse, respDetails models.ResponseDetails, err error)

func (*Channel) GetLogs

func (sms *Channel) GetLogs(
	ctx context.Context,
	queryParams models.GetSMSLogsParams,
) (resp models.GetSMSLogsResponse, respDetails models.ResponseDetails, err error)

func (*Channel) GetScheduledMessages

func (sms *Channel) GetScheduledMessages(
	ctx context.Context,
	queryParams models.GetScheduledSMSParams,
) (resp models.GetScheduledSMSResponse, respDetails models.ResponseDetails, err error)

func (*Channel) GetScheduledMessagesStatus

func (sms *Channel) GetScheduledMessagesStatus(
	ctx context.Context,
	queryParams models.GetScheduledSMSStatusParams,
) (resp models.GetScheduledSMSStatusResponse, respDetails models.ResponseDetails, err error)

func (*Channel) GetTFAApplication added in v3.1.0

func (sms *Channel) GetTFAApplication(
	ctx context.Context,
	appID string,
) (resp models.GetTFAApplicationResponse, respDetails models.ResponseDetails, err error)

func (*Channel) GetTFAApplications added in v3.1.0

func (sms *Channel) GetTFAApplications(
	ctx context.Context,
) (resp models.GetTFAApplicationsResponse, respDetails models.ResponseDetails, err error)

func (*Channel) GetTFAMessageTemplate added in v3.1.0

func (sms *Channel) GetTFAMessageTemplate(
	ctx context.Context,
	appID string,
	templateID string,
) (resp models.GetTFAMessageTemplateResponse, respDetails models.ResponseDetails, err error)

func (*Channel) GetTFAMessageTemplates added in v3.1.0

func (sms *Channel) GetTFAMessageTemplates(
	ctx context.Context,
	appID string,
) (resp models.GetTFAMessageTemplatesResponse, respDetails models.ResponseDetails, err error)

func (*Channel) GetTFAVerificationStatus added in v3.1.0

func (sms *Channel) GetTFAVerificationStatus(
	ctx context.Context,
	appID string,
	queryParams models.GetTFAVerificationStatusParams,
) (resp models.GetTFAVerificationStatusResponse, respDetails models.ResponseDetails, err error)

func (*Channel) Preview

func (sms *Channel) Preview(
	ctx context.Context,
	req models.PreviewSMSRequest,
) (resp models.PreviewSMSResponse, respDetails models.ResponseDetails, err error)

func (*Channel) RescheduleMessages

func (sms *Channel) RescheduleMessages(
	ctx context.Context,
	req models.RescheduleSMSRequest,
	queryParams models.RescheduleSMSParams,
) (resp models.RescheduleSMSResponse, respDetails models.ResponseDetails, err error)

func (*Channel) ResendPINOverSMS added in v3.1.0

func (sms *Channel) ResendPINOverSMS(
	ctx context.Context,
	pinID string,
	req models.ResendPINOverSMSRequest,
) (resp models.ResendPINOverSMSResponse, respDetails models.ResponseDetails, err error)

func (*Channel) ResendPINOverVoice added in v3.1.0

func (sms *Channel) ResendPINOverVoice(
	ctx context.Context,
	pinID string,
	req models.ResendPINOverVoiceRequest,
) (resp models.ResendPINOverVoiceResponse, respDetails models.ResponseDetails, err error)

func (*Channel) Send

func (sms *Channel) Send(
	ctx context.Context,
	req models.SendSMSRequest,
) (resp models.SendSMSResponse, respDetails models.ResponseDetails, err error)

func (*Channel) SendBinary

func (sms *Channel) SendBinary(
	ctx context.Context,
	req models.SendBinarySMSRequest,
) (resp models.SendBinarySMSResponse, respDetails models.ResponseDetails, err error)

func (*Channel) SendOverQueryParams

func (sms *Channel) SendOverQueryParams(
	ctx context.Context,
	queryParams models.SendSMSOverQueryParamsParams,
) (resp models.SendSMSOverQueryParamsResponse, respDetails models.ResponseDetails, err error)

func (*Channel) SendPINOverSMS added in v3.1.0

func (sms *Channel) SendPINOverSMS(
	ctx context.Context,
	queryParams models.SendPINOverSMSParams,
	req models.SendPINOverSMSRequest,
) (resp models.SendPINOverSMSResponse, respDetails models.ResponseDetails, err error)

func (*Channel) SendPINOverVoice added in v3.1.0

func (sms *Channel) SendPINOverVoice(
	ctx context.Context,
	req models.SendPINOverVoiceRequest,
) (resp models.SendPINOverVoiceResponse, respDetails models.ResponseDetails, err error)

func (*Channel) UpdateTFAApplication added in v3.1.0

func (sms *Channel) UpdateTFAApplication(
	ctx context.Context,
	appID string,
	req models.UpdateTFAApplicationRequest,
) (resp models.UpdateTFAApplicationResponse, respDetails models.ResponseDetails, err error)

func (*Channel) UpdateTFAMessageTemplate added in v3.1.0

func (sms *Channel) UpdateTFAMessageTemplate(
	ctx context.Context,
	appID string,
	messageID string,
	req models.UpdateTFAMessageTemplateRequest,
) (resp models.UpdateTFAMessageTemplateResponse, respDetails models.ResponseDetails, err error)

func (*Channel) VerifyPhoneNumber added in v3.1.0

func (sms *Channel) VerifyPhoneNumber(
	ctx context.Context,
	pinID string,
	req models.VerifyPhoneNumberRequest,
) (resp models.VerifyPhoneNumberResponse, respDetails models.ResponseDetails, err error)

type SMS

type SMS interface {
	// Send sends everything from a simple single message to a single destination, up to batch sending of personalized
	// messages to the thousands of recipients with a single API request.
	Send(ctx context.Context, req models.SendSMSRequest) (
		resp models.SendSMSResponse, respDetails models.ResponseDetails, err error)

	// SendBinary sends single or multiple binary messages to one or more destination addresses.
	SendBinary(ctx context.Context, req models.SendBinarySMSRequest) (
		resp models.SendBinarySMSResponse, respDetails models.ResponseDetails, err error)

	// SendOverQueryParams sends messages over query parameters. All message parameters of the message can be defined
	// in the query string. Use this method only if Send message is not an option for your use case!
	// Note: Make sure that special characters and user credentials are properly encoded. Use a URL encoding reference
	// as a guide.
	SendOverQueryParams(ctx context.Context, queryParams models.SendSMSOverQueryParamsParams) (
		resp models.SendSMSOverQueryParamsResponse, respDetails models.ResponseDetails, err error)

	// Preview returns information on how different message configurations will affect your message text, number of
	// characters and message parts.
	Preview(ctx context.Context, req models.PreviewSMSRequest) (
		resp models.PreviewSMSResponse, respDetails models.ResponseDetails, err error)

	// GetDeliveryReports returns information about if and when the message has been delivered to the recipient. Each
	// request will return a batch of delivery reports only once. The request will return only new reports that arrived
	// since the last request in the last 48 hours.
	GetDeliveryReports(ctx context.Context, queryParams models.GetSMSDeliveryReportsParams) (
		resp models.GetSMSDeliveryReportsResponse, respDetails models.ResponseDetails, err error)

	// GetLogs returns logs for the last 48 hours, and you can only retrieve maximum of 1000 logs per call. See
	// GetDeliveryReports if your use case is to verify message delivery.
	GetLogs(ctx context.Context, queryParams models.GetSMSLogsParams) (
		resp models.GetSMSLogsResponse, respDetails models.ResponseDetails, err error)

	// GetInboundMessages returns inbound messages. If for some reason you are unable to receive incoming SMS to the
	// endpoint of your choice in real time, you can use this call to fetch messages. Each request will return a batch of
	// received messages only once. The API request will only return new messages that arrived since the last request.
	GetInboundMessages(ctx context.Context, queryParams models.GetInboundSMSParams) (
		resp models.GetInboundSMSResponse, respDetails models.ResponseDetails, err error)

	// GetScheduledMessages returns the status and the scheduled time of your SMS messages.
	GetScheduledMessages(ctx context.Context, queryParams models.GetScheduledSMSParams) (
		resp models.GetScheduledSMSResponse, respDetails models.ResponseDetails, err error)

	// RescheduleMessages changes the date and time for sending scheduled messages.
	RescheduleMessages(
		ctx context.Context, req models.RescheduleSMSRequest, queryParams models.RescheduleSMSParams) (
		resp models.RescheduleSMSResponse, respDetails models.ResponseDetails, err error)

	// GetScheduledMessagesStatus returns the status of scheduled messages.
	GetScheduledMessagesStatus(ctx context.Context, queryParams models.GetScheduledSMSStatusParams) (
		resp models.GetScheduledSMSStatusResponse, respDetails models.ResponseDetails, err error)

	// UpdateScheduledMessagesStatus changes status or completely cancels sending of scheduled messages.
	UpdateScheduledMessagesStatus(
		ctx context.Context,
		req models.UpdateScheduledSMSStatusRequest,
		queryParams models.UpdateScheduledSMSStatusParams,
	) (resp models.UpdateScheduledSMSStatusResponse, respDetails models.ResponseDetails, err error)

	// GetTFAApplications returns your applications list.
	GetTFAApplications(
		ctx context.Context,
	) (resp models.GetTFAApplicationsResponse, respDetails models.ResponseDetails, err error)

	// CreateTFAApplication create and configure a new 2FA application.
	CreateTFAApplication(
		ctx context.Context,
		req models.CreateTFAApplicationRequest,
	) (resp models.CreateTFAApplicationResponse, respDetails models.ResponseDetails, err error)

	// GetTFAApplication returns a single 2FA message template from an application to see its configuration details.
	GetTFAApplication(
		ctx context.Context,
		appID string,
	) (resp models.GetTFAApplicationResponse, respDetails models.ResponseDetails, err error)

	// UpdateTFAApplication changes configuration options for your existing 2FA application.
	UpdateTFAApplication(
		ctx context.Context,
		appID string,
		req models.UpdateTFAApplicationRequest,
	) (resp models.UpdateTFAApplicationResponse, respDetails models.ResponseDetails, err error)

	// GetTFAMessageTemplates returns a list of all message templates in a 2FA application.
	GetTFAMessageTemplates(
		ctx context.Context,
		appID string,
	) (resp models.GetTFAMessageTemplatesResponse, respDetails models.ResponseDetails, err error)

	// CreateTFAMessageTemplate creates one or more message templates where your PIN will be dynamically
	// included when you send the PIN message.
	CreateTFAMessageTemplate(
		ctx context.Context,
		appID string,
		req models.CreateTFAMessageTemplateRequest,
	) (resp models.CreateTFAMessageTemplateResponse, respDetails models.ResponseDetails, err error)

	// GetTFAMessageTemplate returns a single 2FA message template from an application to see its configuration details.
	GetTFAMessageTemplate(
		ctx context.Context,
		appID string,
		templateID string,
	) (resp models.GetTFAMessageTemplateResponse, respDetails models.ResponseDetails, err error)

	// UpdateTFAMessageTemplate changes configuration options for your existing 2FA application message template.
	UpdateTFAMessageTemplate(
		ctx context.Context,
		appID string,
		messageID string,
		req models.UpdateTFAMessageTemplateRequest,
	) (resp models.UpdateTFAMessageTemplateResponse, respDetails models.ResponseDetails, err error)

	// SendPINOverSMS sends a PIN code over SMS using a previously created message template.
	SendPINOverSMS(
		ctx context.Context,
		queryParams models.SendPINOverSMSParams,
		req models.SendPINOverSMSRequest,
	) (resp models.SendPINOverSMSResponse, respDetails models.ResponseDetails, err error)

	// ResendPINOverSMS resends the same (previously sent) PIN code over SMS.
	ResendPINOverSMS(
		ctx context.Context,
		pinID string,
		req models.ResendPINOverSMSRequest,
	) (resp models.ResendPINOverSMSResponse, respDetails models.ResponseDetails, err error)

	// SendPINOverVoice sends a PIN code over voice using a previously created message template.
	SendPINOverVoice(
		ctx context.Context,
		req models.SendPINOverVoiceRequest,
	) (resp models.SendPINOverVoiceResponse, respDetails models.ResponseDetails, err error)

	// ResendPINOverVoice resends the same (previously sent) PIN code over voice.
	ResendPINOverVoice(
		ctx context.Context,
		pinID string,
		req models.ResendPINOverVoiceRequest,
	) (resp models.ResendPINOverVoiceResponse, respDetails models.ResponseDetails, err error)

	// VerifyPhoneNumber verifies a phone number to confirm successful 2FA authentication.
	VerifyPhoneNumber(
		ctx context.Context,
		pinID string,
		req models.VerifyPhoneNumberRequest,
	) (resp models.VerifyPhoneNumberResponse, respDetails models.ResponseDetails, err error)

	// GetTFAVerificationStatus checks if a phone number is already verified for a specific 2FA application.
	GetTFAVerificationStatus(
		ctx context.Context,
		appID string,
		queryParams models.GetTFAVerificationStatusParams,
	) (resp models.GetTFAVerificationStatusResponse, respDetails models.ResponseDetails, err error)
}

Jump to

Keyboard shortcuts

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