Documentation ¶
Index ¶
Constants ¶
const ( // EnvStandard is the standard env EnvStandard = "Standard" // EnvEnterprise is the enterprise env EnvEnterprise = "Enterprise" )
API ENV
const ( SmsVerifyURI = "/v1/verify/sms" SmsURI = "/v1/messaging" )
URI
const ( // MessageTypeARN type MessageTypeARN = "ARN" // MessageTypeMKT type MessageTypeMKT = "MKT" // MessageTypeOTP type MessageTypeOTP = "OTP" )
MessageType
const ( IsPrimaryTrue = "true" IsPrimaryFalse = "false" )
IsPrimary
const (
// DefaultHTTPTimeout Default http interface timeout
DefaultHTTPTimeout = 10
)
const (
// ErrorCodeAccountLimitReached 已达到账号限额
ErrorCodeAccountLimitReached = -30003
)
Error Code Docs: https://developer.telesign.com/enterprise/docs/all-status-and-error-codes
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type AdditionalInfo ¶
type AdditionalInfo struct { CodeEntered string `json:"code_entered"` MessagePartsCount int `json:"message_parts_count"` }
AdditionalInfo returned by telesign API
type Client ¶
type Client struct {
// contains filtered or unexported fields
}
Client telesign client
func (*Client) SendSms ¶
func (c *Client) SendSms(req *SendSmsReq) (*SendSmsResp, error)
SendSms Send an SMS message Docs: https://developer.telesign.com/enterprise/reference/post_v1-messaging
func (*Client) SendSmsVerify ¶
func (c *Client) SendSmsVerify(req *SendSmsVerifyReq) (*SendSmsVerifyResp, error)
SendSmsVerify Send SMS Verification Code Docs: https://developer.telesign.com/enterprise/reference/sendsmsverificationcode
type MainResponse ¶
type MainResponse struct { StatusCode int ResourceURI string `json:"resource_uri"` ReferenceID string `json:"reference_id"` Status StatusResponse `json:"status"` }
MainResponse returned by telesign API
type SendSmsReq ¶
type SendSmsReq struct { PhoneNumber string `schema:"phone_number"` // required 包含国家/地区代码的最终用户电话号码. 避免使用特殊字符和空格. Message string `schema:"message"` // required 要发送给最终用户的消息文本. 您被限制为 1600 个字符. 如果您发送很长的消息, TeleSign 会将您的消息拆分为单独的部分. TeleSign 建议尽可能不要发送需要多条 SMS 的消息. MessageType string `schema:"message_type"` // required 此参数指定消息中发送的流量类型. 您可以提供以下值之一: OTP(一次性密码) ARN(警报、提醒和通知) MKT(营销流量). AccountLifecycleEvent string `schema:"account_lifecycle_event"` // 此参数允许您指示您在发送交易时处于生命周期的哪个阶段. 此参数的选项是 - create - 用于创建新帐户 登录 最终用户登录其帐户时. 交易 - 当最终用户在其帐户中完成交易时 update - 执行更新时, 例如更新帐户信息或类似信息. 删除 - 删除帐户时. SenderID string `schema:"sender_id"` // 指定要在 SMS 消息上显示给最终用户的发件人 ID. 在使用它之前, 请将您可能想要使用的任何发件人 ID 提供给我们的客户支持团队, 以便我们可以将它们添加到我们的允许列表中. 如果此字段中的发件人 ID 不在此列表中, 则不使用它. 我们不保证会使用您指定的发件人 ID; TeleSign 可能会覆盖此值以提高交付质量或遵循特定国家/地区的 SMS 法规。我们建议将值限制为 0-9 和 AZ, 因为对其他 ASCII 字符的支持因运营商而异. ExternalID string `schema:"external_id"` // 客户为此交易生成的 ID. 响应只是回显为此参数提供的值. OriginatingIP string `schema:"originating_ip"` // 您的最终用户的 IP 地址(不要发送您自己的 IP 地址). 此值必须采用 Internet 工程任务组 (IETF) 在标题为 IPv4 和 IPv6 地址的文本表示的 Internet 草案文档中定义的格式. CallbackURL string `schema:"callback_url"` // 您希望发送与您的请求相关的交付报告的 URL. 这会覆盖您之前设置的任何默认回调 URL. 覆盖仅持续此请求. IsPrimary string `schema:"is_primary"` // 无论您是使用此服务作为主要提供者发送此消息 ( ”true”) 还是在主要提供者失败后作为备份 ( ”false”). 我们使用这些数据来优化消息路由. }
SendSmsReq object
func (*SendSmsReq) GetMethod ¶
func (r *SendSmsReq) GetMethod() string
GetMethod return method request
type SendSmsResp ¶
type SendSmsResp struct { MainResponse AdditionalInfo AdditionalInfo `json:"additional_info"` }
SendSmsResp returned by telesign API
type SendSmsVerifyReq ¶
type SendSmsVerifyReq struct { PhoneNumber string `schema:"phone_number"` // required 您要向其发送消息的最终用户的电话号码,以不带空格或特殊字符的数字形式, 以国家/地区拨号代码开头. UcID string `schema:"ucid"` // 场景 A code specifying the use case you are making the request for. OriginatingIP string `schema:"originating_ip"` // 您的最终用户的 IP 地址(不要发送您自己的 IP 地址). 这用于帮助 TeleSign 改进我们的服务. 支持 IPv4 和 IPv6. Language string `schema:"language"` // 指定您希望使用的预定义模板的语言的代码. 有关代码的完整列表, 请参阅支持的语言部分. 如果您在 template 参数中提供覆盖消息文本, 则不使用此字段. VerifyCode string `schema:"verify_code"` // 用于代码质询的验证码. 默认情况下,TeleSign 会为您随机生成一个七位数的数值. 您可以通过在此参数中包含您自己的数字代码来覆盖默认行为, 其值介于000和之间9999999. 无论哪种方式,验证码都会替换消息模板中的变量$$CODE$$. Template string `schema:"template"` // 覆盖预定义消息模板内容的文本. 包含 $$CODE$$ 变量以自动插入验证码, 最多可包含 1600 个字符. SenderID string `schema:"sender_id"` // 指定要在 SMS 消息上显示给最终用户的发件人 ID. 在使用它之前, 请将您可能想要使用的任何发件人 ID 提供给我们的客户支持团队, 以便我们可以将它们添加到我们的允许列表中. 如果此字段中的发件人 ID 不在此列表中, 则不使用它. 我们不保证会使用您指定的发件人 ID; TeleSign 可能会覆盖此值以提高交付质量或遵循特定国家/地区的 SMS 法规. TeleSign 建议将值限制为 0-9 和 AZ, 因为对其他 ASCII 字符的支持因运营商而异 CallbackURL string `schema:"callback_url"` // 您希望发送与您的请求相关的交付报告的 URL. 这会覆盖您之前设置的任何默认回调 URL. 覆盖仅持续此请求. IsPrimary string `schema:"is_primary"` // 无论您是使用此服务作为主要提供者发送此消息 ( ”true”) 还是在主要提供者失败后作为备份 ( ”false”). 我们使用这些数据来优化消息路由. }
SendSmsVerifyReq object
func (*SendSmsVerifyReq) GetBody ¶
func (r *SendSmsVerifyReq) GetBody() string
GetBody return body request
func (*SendSmsVerifyReq) GetMethod ¶
func (r *SendSmsVerifyReq) GetMethod() string
GetMethod return method request
func (*SendSmsVerifyReq) GetPath ¶
func (r *SendSmsVerifyReq) GetPath() string
GetPath return path request
func (*SendSmsVerifyReq) GetURI ¶
func (r *SendSmsVerifyReq) GetURI() string
GetURI return uri request
type SendSmsVerifyResp ¶
type SendSmsVerifyResp struct { MainResponse SubResource string `json:"sub_resource"` Errors []Error `json:"errors"` SmsVerify struct { CodeState string `json:"code_state"` CodeEntered string `json:"code_entered"` } `json:"verify"` ExternalID string `json:"external_id"` SignatureString string `json:"signature_string"` }
SendSmsVerifyResp returned by telesign API
type StatusResponse ¶
type StatusResponse struct { Code int `json:"code"` UpdatedOn string `json:"updated_on"` Description string `json:"description"` }
StatusResponse returned by telesign API