rclone/vendor/github.com/aws/aws-sdk-go/service/connect/api.go
Nick Craig-Wood 6427029c4e vendor: update all dependencies
* Update all dependencies
  * Remove all `[[constraint]]` from Gopkg.toml
  * Add in the minimum number of `[[override]]` to build
  * Remove go get of github.com/inconshreveable/mousetrap as it is vendored
  * Update docs with new policy on constraints
2018-05-05 15:52:24 +01:00

439 lines
16 KiB
Go

// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT.
package connect
import (
"github.com/aws/aws-sdk-go/aws"
"github.com/aws/aws-sdk-go/aws/awsutil"
"github.com/aws/aws-sdk-go/aws/request"
)
const opStartOutboundVoiceContact = "StartOutboundVoiceContact"
// StartOutboundVoiceContactRequest generates a "aws/request.Request" representing the
// client's request for the StartOutboundVoiceContact operation. The "output" return
// value will be populated with the request's response once the request completes
// successfuly.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See StartOutboundVoiceContact for more information on using the StartOutboundVoiceContact
// API call, and error handling.
//
// This method is useful when you want to inject custom logic or configuration
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
//
//
// // Example sending a request using the StartOutboundVoiceContactRequest method.
// req, resp := client.StartOutboundVoiceContactRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/StartOutboundVoiceContact
func (c *Connect) StartOutboundVoiceContactRequest(input *StartOutboundVoiceContactInput) (req *request.Request, output *StartOutboundVoiceContactOutput) {
op := &request.Operation{
Name: opStartOutboundVoiceContact,
HTTPMethod: "PUT",
HTTPPath: "/contact/outbound-voice",
}
if input == nil {
input = &StartOutboundVoiceContactInput{}
}
output = &StartOutboundVoiceContactOutput{}
req = c.newRequest(op, input, output)
return
}
// StartOutboundVoiceContact API operation for Amazon Connect Service.
//
// The StartOutboundVoiceContact operation initiates a contact flow to place
// an outbound call to a customer.
//
// There is a throttling limit placed on usage of the API that includes a RateLimit
// of 2 per second, and a BurstLimit of 5 per second.
//
// If you are using an IAM account, it must have permissions to the connect:StartOutboundVoiceContact
// action.
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for Amazon Connect Service's
// API operation StartOutboundVoiceContact for usage and error information.
//
// Returned Error Codes:
// * ErrCodeInvalidRequestException "InvalidRequestException"
// The request is not valid.
//
// * ErrCodeInvalidParameterException "InvalidParameterException"
// One or more of the parameters provided to the operation are not valid.
//
// * ErrCodeResourceNotFoundException "ResourceNotFoundException"
// The specified resource was not found.
//
// * ErrCodeInternalServiceException "InternalServiceException"
// Request processing failed due to an error or failure with the service.
//
// * ErrCodeLimitExceededException "LimitExceededException"
// The limit exceeded the maximum allowed active calls in a queue.
//
// * ErrCodeDestinationNotAllowedException "DestinationNotAllowedException"
// Outbound calls to the destination number are not allowed for your instance.
// You can request that the country be included in the allowed countries for
// your instance by submitting a Service Limit Increase (https://console.aws.amazon.com/support/v1#/case/create?issueType=service-limit-increase).
//
// * ErrCodeOutboundContactNotPermittedException "OutboundContactNotPermittedException"
// The contact is not permitted because outbound calling is not enabled for
// the instance.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/StartOutboundVoiceContact
func (c *Connect) StartOutboundVoiceContact(input *StartOutboundVoiceContactInput) (*StartOutboundVoiceContactOutput, error) {
req, out := c.StartOutboundVoiceContactRequest(input)
return out, req.Send()
}
// StartOutboundVoiceContactWithContext is the same as StartOutboundVoiceContact with the addition of
// the ability to pass a context and additional request options.
//
// See StartOutboundVoiceContact for details on how to use this API operation.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func (c *Connect) StartOutboundVoiceContactWithContext(ctx aws.Context, input *StartOutboundVoiceContactInput, opts ...request.Option) (*StartOutboundVoiceContactOutput, error) {
req, out := c.StartOutboundVoiceContactRequest(input)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return out, req.Send()
}
const opStopContact = "StopContact"
// StopContactRequest generates a "aws/request.Request" representing the
// client's request for the StopContact operation. The "output" return
// value will be populated with the request's response once the request completes
// successfuly.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See StopContact for more information on using the StopContact
// API call, and error handling.
//
// This method is useful when you want to inject custom logic or configuration
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
//
//
// // Example sending a request using the StopContactRequest method.
// req, resp := client.StopContactRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/StopContact
func (c *Connect) StopContactRequest(input *StopContactInput) (req *request.Request, output *StopContactOutput) {
op := &request.Operation{
Name: opStopContact,
HTTPMethod: "POST",
HTTPPath: "/contact/stop",
}
if input == nil {
input = &StopContactInput{}
}
output = &StopContactOutput{}
req = c.newRequest(op, input, output)
return
}
// StopContact API operation for Amazon Connect Service.
//
// Ends the contact initiated by the StartOutboundVoiceContact operation.
//
// If you are using an IAM account, it must have permissions to the connect:StopContact
// operation.
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for Amazon Connect Service's
// API operation StopContact for usage and error information.
//
// Returned Error Codes:
// * ErrCodeInvalidRequestException "InvalidRequestException"
// The request is not valid.
//
// * ErrCodeContactNotFoundException "ContactNotFoundException"
// The contact with the specified ID is not active or does not exist.
//
// * ErrCodeInvalidParameterException "InvalidParameterException"
// One or more of the parameters provided to the operation are not valid.
//
// * ErrCodeResourceNotFoundException "ResourceNotFoundException"
// The specified resource was not found.
//
// * ErrCodeInternalServiceException "InternalServiceException"
// Request processing failed due to an error or failure with the service.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/StopContact
func (c *Connect) StopContact(input *StopContactInput) (*StopContactOutput, error) {
req, out := c.StopContactRequest(input)
return out, req.Send()
}
// StopContactWithContext is the same as StopContact with the addition of
// the ability to pass a context and additional request options.
//
// See StopContact for details on how to use this API operation.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func (c *Connect) StopContactWithContext(ctx aws.Context, input *StopContactInput, opts ...request.Option) (*StopContactOutput, error) {
req, out := c.StopContactRequest(input)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return out, req.Send()
}
type StartOutboundVoiceContactInput struct {
_ struct{} `type:"structure"`
// Specify a custom key-value pair using an attribute map. The attributes are
// standard Amazon Connect attributes, and can be accessed in contact flows
// just like any other contact attributes.
//
// There can be up to 32,768 UTF-8 bytes across all key-value pairs. Attribute
// keys can include only alphanumeric, dash, and underscore characters.
//
// For example, to play a greeting when the customer answers the call, you can
// pass the customer name in attributes similar to the following:
Attributes map[string]*string `type:"map"`
// A unique, case-sensitive identifier that you provide to ensure the idempotency
// of the request. The token is valid for 7 days after creation. If a contact
// is already started, the contact ID is returned. If the contact is disconnected,
// a new contact is started.
ClientToken *string `type:"string" idempotencyToken:"true"`
// The identifier for the contact flow to execute for the outbound call. This
// is a GUID value only. Amazon Resource Name (ARN) values are not supported.
//
// To find the ContactFlowId, open the contact flow to use in the Amazon Connect
// contact flow designer. The ID for the contact flow is displayed in the address
// bar as part of the URL. For example, an address displayed when you open a
// contact flow is similar to the following: https://myconnectinstance.awsapps.com/connect/contact-flows/edit?id=arn:aws:connect:us-east-1:361814831152:instance/2fb42df9-78a2-4b99-b484-f5cf80dc300c/contact-flow/b0b8f2dd-ed1b-4c44-af36-ce189a178181.
// At the end of the URL, you see contact-flow/b0b8f2dd-ed1b-4c44-af36-ce189a178181.
// The ContactFlowID for this contact flow is b0b8f2dd-ed1b-4c44-af36-ce189a178181.
// Make sure to include only the GUID after the "contact-flow/" in your requests.
//
// ContactFlowId is a required field
ContactFlowId *string `type:"string" required:"true"`
// The phone number, in E.164 format, of the customer to call with the outbound
// contact.
//
// DestinationPhoneNumber is a required field
DestinationPhoneNumber *string `type:"string" required:"true"`
// The identifier for your Amazon Connect instance. To find the InstanceId value
// for your Amazon Connect instance, open the Amazon Connect console (https://console.aws.amazon.com/connect/).
// Select the instance alias of the instance and view the instance ID in the
// Overview section. For example, the instance ID is the set of characters at
// the end of the instance ARN, after "instance/", such as 10a4c4eb-f57e-4d4c-b602-bf39176ced07.
//
// InstanceId is a required field
InstanceId *string `type:"string" required:"true"`
// The queue to which to add the call. If you specify a queue, the phone displayed
// for caller ID is the phone number defined for the queue. If you do not specify
// a queue, the queue used is the queue defined in the contact flow specified
// by ContactFlowId.
//
// To find the QueueId, open the queue to use in the Amazon Connect queue editor.
// The ID for the queue is displayed in the address bar as part of the URL.
// For example, the QueueId value is the set of characters at the end of the
// URL, after "queue/", such as aeg40574-2d01-51c3-73d6-bf8624d2168c.
QueueId *string `type:"string"`
// The phone number, in E.164 format, associated with your Amazon Connect instance
// to use to place the outbound call.
SourcePhoneNumber *string `type:"string"`
}
// String returns the string representation
func (s StartOutboundVoiceContactInput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation
func (s StartOutboundVoiceContactInput) GoString() string {
return s.String()
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *StartOutboundVoiceContactInput) Validate() error {
invalidParams := request.ErrInvalidParams{Context: "StartOutboundVoiceContactInput"}
if s.ContactFlowId == nil {
invalidParams.Add(request.NewErrParamRequired("ContactFlowId"))
}
if s.DestinationPhoneNumber == nil {
invalidParams.Add(request.NewErrParamRequired("DestinationPhoneNumber"))
}
if s.InstanceId == nil {
invalidParams.Add(request.NewErrParamRequired("InstanceId"))
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
// SetAttributes sets the Attributes field's value.
func (s *StartOutboundVoiceContactInput) SetAttributes(v map[string]*string) *StartOutboundVoiceContactInput {
s.Attributes = v
return s
}
// SetClientToken sets the ClientToken field's value.
func (s *StartOutboundVoiceContactInput) SetClientToken(v string) *StartOutboundVoiceContactInput {
s.ClientToken = &v
return s
}
// SetContactFlowId sets the ContactFlowId field's value.
func (s *StartOutboundVoiceContactInput) SetContactFlowId(v string) *StartOutboundVoiceContactInput {
s.ContactFlowId = &v
return s
}
// SetDestinationPhoneNumber sets the DestinationPhoneNumber field's value.
func (s *StartOutboundVoiceContactInput) SetDestinationPhoneNumber(v string) *StartOutboundVoiceContactInput {
s.DestinationPhoneNumber = &v
return s
}
// SetInstanceId sets the InstanceId field's value.
func (s *StartOutboundVoiceContactInput) SetInstanceId(v string) *StartOutboundVoiceContactInput {
s.InstanceId = &v
return s
}
// SetQueueId sets the QueueId field's value.
func (s *StartOutboundVoiceContactInput) SetQueueId(v string) *StartOutboundVoiceContactInput {
s.QueueId = &v
return s
}
// SetSourcePhoneNumber sets the SourcePhoneNumber field's value.
func (s *StartOutboundVoiceContactInput) SetSourcePhoneNumber(v string) *StartOutboundVoiceContactInput {
s.SourcePhoneNumber = &v
return s
}
type StartOutboundVoiceContactOutput struct {
_ struct{} `type:"structure"`
// The unique identifier of this contact within your Amazon Connect instance.
ContactId *string `min:"1" type:"string"`
}
// String returns the string representation
func (s StartOutboundVoiceContactOutput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation
func (s StartOutboundVoiceContactOutput) GoString() string {
return s.String()
}
// SetContactId sets the ContactId field's value.
func (s *StartOutboundVoiceContactOutput) SetContactId(v string) *StartOutboundVoiceContactOutput {
s.ContactId = &v
return s
}
type StopContactInput struct {
_ struct{} `type:"structure"`
// The unique identifier of the contact to end. This is the ContactId value
// returned from the StartOutboundVoiceContact operation.
//
// ContactId is a required field
ContactId *string `min:"1" type:"string" required:"true"`
// The identifier of the Amazon Connect instance in which the contact is active.
//
// InstanceId is a required field
InstanceId *string `type:"string" required:"true"`
}
// String returns the string representation
func (s StopContactInput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation
func (s StopContactInput) GoString() string {
return s.String()
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *StopContactInput) Validate() error {
invalidParams := request.ErrInvalidParams{Context: "StopContactInput"}
if s.ContactId == nil {
invalidParams.Add(request.NewErrParamRequired("ContactId"))
}
if s.ContactId != nil && len(*s.ContactId) < 1 {
invalidParams.Add(request.NewErrParamMinLen("ContactId", 1))
}
if s.InstanceId == nil {
invalidParams.Add(request.NewErrParamRequired("InstanceId"))
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
// SetContactId sets the ContactId field's value.
func (s *StopContactInput) SetContactId(v string) *StopContactInput {
s.ContactId = &v
return s
}
// SetInstanceId sets the InstanceId field's value.
func (s *StopContactInput) SetInstanceId(v string) *StopContactInput {
s.InstanceId = &v
return s
}
type StopContactOutput struct {
_ struct{} `type:"structure"`
}
// String returns the string representation
func (s StopContactOutput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation
func (s StopContactOutput) GoString() string {
return s.String()
}