Skip to main content

@netforbpo/aws-cdk-aws-connect-lib

Project description

Amazon Connect L2 Construct library

License

This CDK Construct Library provides L2 constructs for Amazon Connect.

This is used in production internally. However, it is alpha and subject to breaking changes as better ways of managing resources are designed.

Package Installation

NPM

yarn add @netforbpo/aws-cdk-aws-connect-lib
# or
npm install @netforbpo/aws-cdk-aws-connect-lib

PyPI

uv add netforbpo-aws-cdk-aws-connect-lib
# or
pip install netforbpo-aws-cdk-aws-connect-lib

Basic Usage

Typescript

import * as connect from '@netforbpo/aws-cdk-aws-connect-lib';
import {
  aws_s3 as s3
} from '@aws-cdk';

// assuming `this` is your stack or other construct

const instance = new connect.Instance(this, 'myInstance', {
  identityManagementType: connect.IdentityManagementType.CONNECT_MANAGED,
  instanceAlias: 'my-instance-alias',
  telephonyConfig: {
    inboundCalls: true,
    outboundCalls: true,
  },
  otherConfig: {
    contactFlowLogs: true,
  }
});

const bucket = s3.Bucket(this, 'ConnectStorage');

instance.addStorageConfig(connect.SttorageConfig.buildS3(
    connect.StorageType.CALL_RECORDINGS,
    {
      bucket,
      prefix: 'call-recordings'
    }
));

Python

import aws_cdk_aws_connect_lib as connect
from aws_cdk import aws_s3 as s3

# Assuming `self` is your stack or other construct

self.instance = new connect.Instance(self, 'myInstance',
  identity_management_type=connect.IdentityManagementType.CONNECT_MANAGED,
  instance_alias='my-instance-alias',
  telephony_config=connect.TelephonyConfigProps(
    inbound_calls=True,
    outbound_calls=True,
  ),
  other_config=connect.OtherConfigProps(
    contact_flow_logs=True,
  )
)

self.bucket = s3.Bucket(stack, 'ConnectStorage')

self.instance.add_storage_config(
    connect.SttorageConfig.buildS3(
        resource_type=connect.StorageType.CALL_RECORDINGS,
        bucket=self.bucket,
        prefix='call-recordings'
    )
)

locating resources

Currently only Instance has a fromLookup method to build an Instance object from an previousl created connect instance (from another stack, or manually).

All the other resources can be used against that looked-up instance.

The ability to look up other resources will be added in the future once a PR gets merged into core aws-cdk ( aws/aws-cdk-cli#1015 ).

Example usage

import aws_cdk_aws_connect_lib as connect

self.instance = connect.Instance.from_lookup(self, 'myInstance',
    instance_name='my-instance-alias'
    # instance_arn and instance_id are also available
)

# Assuming self.bucket is an S3 bucket
self.instance.add_storage_config(
    connect.SttorageConfig.buildS3(
        resource_type=connect.StorageType.CHAT_TRANSCRIPTS,
        bucket=self.bucket,
        prefix='chat-transcripts'
    )
)

Associating Lex & Lambda bots

To associate a Lex Bot or Lambda Function to a connect instance there are two helper methods available on an instance (whether created or looked-up)

import aws_cdk_aws_connect_lib as connect

# and to associate a Lex Bot or Lambda Function to the connect instance

# Assuming self.lex_bot is a Lex Bot Alias
self.instance.associate_lex_bot('MyLexBot', self.lex_bot_alias)

# Assuming self.lambda_function is a Lambda Function or lambda function alias
self.instance.associate_lambda_function('MyLambda', self.lambda_function)

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

netforbpo_aws_cdk_aws_connect_lib-0.2.1.tar.gz (1.7 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

File details

Details for the file netforbpo_aws_cdk_aws_connect_lib-0.2.1.tar.gz.

File metadata

File hashes

Hashes for netforbpo_aws_cdk_aws_connect_lib-0.2.1.tar.gz
Algorithm Hash digest
SHA256 d3fe72f1ab227fd5c2f7baae32c75b7962e180568f50662cfadc1ebcc7995143
MD5 30af353c15bfac968bae4f70f4e4b28f
BLAKE2b-256 7ef605ddd0f785f9da7d103cda77e945d80055cc20f745e5cbd1db844643c4ed

See more details on using hashes here.

File details

Details for the file netforbpo_aws_cdk_aws_connect_lib-0.2.1-py3-none-any.whl.

File metadata

File hashes

Hashes for netforbpo_aws_cdk_aws_connect_lib-0.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 59561eec1a2d920e7dfb93bb5ec91c2ff79b2c6ca0fc41d1f785ef8a1f5bd087
MD5 bfcfdba0d70243b3580975f6f40ea489
BLAKE2b-256 ed9bff3260c7087a099dfd41a27c09cf577ec6f8fd5b6a122592092b5429a722

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page