-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathoutputs.tf
More file actions
102 lines (82 loc) · 3.38 KB
/
Copy pathoutputs.tf
File metadata and controls
102 lines (82 loc) · 3.38 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
output "instance_id" {
description = "Amazon Connect instance ID."
value = module.amazon_connect.instance_id
}
output "instance_arn" {
description = "Amazon Connect instance ARN."
value = try(module.amazon_connect.instance.arn, null)
}
output "instance_alias" {
description = "Amazon Connect instance alias (subdomain)."
value = var.instance_alias
}
output "ccp_login_url" {
description = "Contact Control Panel (CCP) login URL for agents."
value = "https://${var.instance_alias}.my.connect.aws/ccp-v2/"
}
output "console_url" {
description = "Direct link to manage this instance in the AWS Console."
value = "https://${var.region}.console.aws.amazon.com/connect/v2/app/instance/${module.amazon_connect.instance_id}"
}
# ----------------------------------------------------------------------------
# Web chat widget config — drop these into React-Portfolio's .env
# ----------------------------------------------------------------------------
output "cognito_identity_pool_id" {
description = "Cognito Identity Pool ID for unauthenticated browser access to the Lex bot. Use as REACT_APP_COGNITO_IDENTITY_POOL_ID."
value = aws_cognito_identity_pool.web_chat.id
}
output "lex_bot_id" {
description = "Web chat Lex V2 bot ID (KylesWebsiteChatBot). Use as REACT_APP_LEX_BOT_ID."
value = local.lex_v2_web_chat_bot_id
}
output "lex_bot_alias_id" {
description = "Web chat Lex V2 bot alias ID. Use as REACT_APP_LEX_BOT_ALIAS_ID."
value = local.lex_v2_web_chat_bot_alias_id
}
output "lex_locale_id" {
description = "Lex V2 locale. Use as REACT_APP_LEX_LOCALE_ID."
value = "en_US"
}
output "aws_region" {
description = "AWS region (matches what the widget needs)."
value = var.region
}
output "after_hours_notifier_lambda_arn" {
description = "Lambda ARN invoked by InboundMain on the after-hours path."
value = aws_lambda_function.after_hours_notification.arn
}
# ----------------------------------------------------------------------------
# Fraud detection pipeline
# ----------------------------------------------------------------------------
output "fraud_events_bucket" {
description = "S3 bucket for partitioned fraud event JSON."
value = aws_s3_bucket.fraud_events.id
}
output "fraud_scorer_lambda_arn" {
description = "Lambda ARN invoked by EventBridge on Connect contact events."
value = aws_lambda_function.fraud_scorer.arn
}
output "fraud_eventbridge_rule" {
description = "EventBridge rule name routing Connect contact events to the fraud scorer."
value = aws_cloudwatch_event_rule.connect_contact_events.name
}
output "fraud_glue_database" {
description = "Glue Data Catalog database for fraud analytics."
value = aws_glue_catalog_database.fraud.name
}
output "fraud_glue_crawler" {
description = "Glue Crawler name — run on-demand after new events land in S3."
value = aws_glue_crawler.fraud_events.name
}
output "fraud_athena_workgroup" {
description = "Athena workgroup for fraud analytics queries."
value = aws_athena_workgroup.fraud.name
}
output "fraud_workflow_arn" {
description = "Step Functions state machine ARN for high-risk fraud workflows."
value = aws_sfn_state_machine.fraud_workflow.arn
}
output "fraud_alerts_sns_topic" {
description = "SNS topic for MEDIUM/HIGH fraud alerts."
value = aws_sns_topic.fraud_alerts.arn
}