Uso de AddAttachmentsToSet con un SDK de AWS o la CLI - AWS Support

Uso de AddAttachmentsToSet con un SDK de AWS o la CLI

Los siguientes ejemplos de código muestran cómo utilizar AddAttachmentsToSet.

Los ejemplos de acciones son extractos de código de programas más grandes y deben ejecutarse en contexto. Puede ver esta acción en contexto en el siguiente ejemplo de código:

.NET
SDK para .NET
nota

Hay más en GitHub. Busque el ejemplo completo y aprenda a configurar y ejecutar en el Repositorio de ejemplos de código de AWS.

/// <summary> /// Add an attachment to a set, or create a new attachment set if one does not exist. /// </summary> /// <param name="data">The data for the attachment.</param> /// <param name="fileName">The file name for the attachment.</param> /// <param name="attachmentSetId">Optional setId for the attachment. Creates a new attachment set if empty.</param> /// <returns>The setId of the attachment.</returns> public async Task<string> AddAttachmentToSet(MemoryStream data, string fileName, string? attachmentSetId = null) { var response = await _amazonSupport.AddAttachmentsToSetAsync( new AddAttachmentsToSetRequest { AttachmentSetId = attachmentSetId, Attachments = new List<Attachment> { new Attachment { Data = data, FileName = fileName } } }); return response.AttachmentSetId; }
  • Para obtener información sobre la API, consulte AddAttachmentsToSet en la Referencia de la API de AWS SDK para .NET.

CLI
AWS CLI

Para añadir un archivo adjunto a un conjunto

En el siguiente ejemplo de add-attachments-to-set, se agrega una imagen a un conjunto que, a continuación, puede especificar para un caso de soporte en su cuenta de AWS.

aws support add-attachments-to-set \ --attachment-set-id "as-2f5a6faa2a4a1e600-mu-nk5xQlBr70-G1cUos5LZkd38KOAHZa9BMDVzNEXAMPLE" \ --attachments fileName=troubleshoot-screenshot.png,data=base64-encoded-string

Salida:

{ "attachmentSetId": "as-2f5a6faa2a4a1e600-mu-nk5xQlBr70-G1cUos5LZkd38KOAHZa9BMDVzNEXAMPLE", "expiryTime": "2020-05-14T17:04:40.790+0000" }

Para obtener más información, consulte Administración de casos en la Guía del usuario de soporte de AWS.

  • Para obtener detalles sobre la API, consulte AddAttachmentsToSet en la Referencia de comandos de la AWS CLI.

Java
SDK para Java 2.x
nota

Hay más en GitHub. Busque el ejemplo completo y aprenda a configurar y ejecutar en el Repositorio de ejemplos de código de AWS.

public static String addAttachment(SupportClient supportClient, String fileAttachment) { try { File myFile = new File(fileAttachment); InputStream sourceStream = new FileInputStream(myFile); SdkBytes sourceBytes = SdkBytes.fromInputStream(sourceStream); Attachment attachment = Attachment.builder() .fileName(myFile.getName()) .data(sourceBytes) .build(); AddAttachmentsToSetRequest setRequest = AddAttachmentsToSetRequest.builder() .attachments(attachment) .build(); AddAttachmentsToSetResponse response = supportClient.addAttachmentsToSet(setRequest); return response.attachmentSetId(); } catch (SupportException | FileNotFoundException e) { System.out.println(e.getLocalizedMessage()); System.exit(1); } return ""; }
  • Para obtener información sobre la API, consulte AddAttachmentsToSet en la Referencia de la API de AWS SDK for Java 2.x.

JavaScript
SDK para JavaScript (v3)
nota

Hay más en GitHub. Busque el ejemplo completo y aprenda a configurar y ejecutar en el Repositorio de ejemplos de código de AWS.

import { AddAttachmentsToSetCommand } from "@aws-sdk/client-support"; import { client } from "../libs/client.js"; export const main = async () => { try { // Create a new attachment set or add attachments to an existing set. // Provide an 'attachmentSetId' value to add attachments to an existing set. // Use AddCommunicationToCase or CreateCase to associate an attachment set with a support case. const response = await client.send( new AddAttachmentsToSetCommand({ // You can add up to three attachments per set. The size limit is 5 MB per attachment. attachments: [ { fileName: "example.txt", data: new TextEncoder().encode("some example text"), }, ], }), ); // Use this ID in AddCommunicationToCase or CreateCase. console.log(response.attachmentSetId); return response; } catch (err) { console.error(err); } };
  • Para obtener información sobre la API, consulte AddAttachmentsToSet en la Referencia de la API de AWS SDK para JavaScript.

Kotlin
SDK para Kotlin
nota

Hay más en GitHub. Busque el ejemplo completo y aprenda a configurar y ejecutar en el Repositorio de ejemplos de código de AWS.

suspend fun addAttachment(fileAttachment: String): String? { val myFile = File(fileAttachment) val sourceBytes = (File(fileAttachment).readBytes()) val attachmentVal = Attachment { fileName = myFile.name data = sourceBytes } val setRequest = AddAttachmentsToSetRequest { attachments = listOf(attachmentVal) } SupportClient.fromEnvironment { region = "us-west-2" }.use { supportClient -> val response = supportClient.addAttachmentsToSet(setRequest) return response.attachmentSetId } }
  • Para obtener información sobre la API, consulte AddAttachmentsToSet en la Referencia de la API de AWSSDK para Kotlin.

Python
SDK para Python (Boto3)
nota

Hay más en GitHub. Busque el ejemplo completo y aprenda a configurar y ejecutar en el Repositorio de ejemplos de código de AWS.

class SupportWrapper: """Encapsulates Support actions.""" def __init__(self, support_client): """ :param support_client: A Boto3 Support client. """ self.support_client = support_client @classmethod def from_client(cls): """ Instantiates this class from a Boto3 client. """ support_client = boto3.client("support") return cls(support_client) def add_attachment_to_set(self): """ Add an attachment to a set, or create a new attachment set if one does not exist. :return: The attachment set ID. """ try: response = self.support_client.add_attachments_to_set( attachments=[ { "fileName": "attachment_file.txt", "data": b"This is a sample file for attachment to a support case.", } ] ) new_set_id = response["attachmentSetId"] except ClientError as err: if err.response["Error"]["Code"] == "SubscriptionRequiredException": logger.info( "You must have a Business, Enterprise On-Ramp, or Enterprise Support " "plan to use the AWS Support API. \n\tPlease upgrade your subscription to run these " "examples." ) else: logger.error( "Couldn't add attachment. Here's why: %s: %s", err.response["Error"]["Code"], err.response["Error"]["Message"], ) raise else: return new_set_id
  • Para obtener información acerca de la API, consulte AddAttachmentsToSet en la Referencia de la API del AWS SDK para Python (Boto3).

Para obtener una lista completa de las guías para desarrolladores de AWS SDK y ejemplos de código, consulte Uso de AWS Support con un AWS SKD. En este tema también se incluye información sobre cómo comenzar a utilizar el SDK y detalles sobre sus versiones anteriores.