标签: aws-lambda

在 python Lambda 函数中访问来自 Lex 的用户输入/话语

我正在寻找一种方法来访问用户在 python Lambda 函数代码中对 Lex 提出的实际问题(或话语)。当我打印event参数时,lambda_handler(event, context)我看到打印以下内容:

input_request={'messageVersion': '1.0', 'invocationSource': 'FulfillmentCodeHook', 'userId': 'user1', 'sessionAttributes': None, 'bot': {'name': 'bot_name', 'alias': None, 'version': '$LATEST'}, 'outputDialogMode': 'Text', 'currentIntent': {'name': 'bo1', 'slots': {'Time': '10:00','Date': '2017-06-20'}, 'confirmationStatus': 'Confirmed'}, 'inputTranscript': 'yes'}
Run Code Online (Sandbox Code Playgroud)

我没有看到任何选项可以访问用户提出的实际问题,甚至是与该特定问题匹配的话语。如果我错过了它,有没有办法做到这一点?

python lambda aws-lambda amazon-lex

0
推荐指数
1
解决办法
1390
查看次数

我可以在 AWS Lambda 上使用 Google Analytics 吗?

我正在尝试将google 分析初始化调用嵌入到 AWS Lambda 函数中。我得到了一个例外ReferenceError: window is not defined,因为没有浏览器窗口,所以这是有道理的。有没有办法初始化脚本,以便我可以ga()在 AWS Lambda 中进行调用?

谢谢!

javascript lambda google-analytics amazon-web-services aws-lambda

0
推荐指数
1
解决办法
1458
查看次数

如何在 AWS Lambda 中调用 http GET 并使用响应?

我查看了其他一些答案,但确实无法正常工作。

我想从 Alexa 调用 lambda - 这很好,并给了我一个回应。我想将此响应基于对 http GET Web 服务的调用。到目前为止,我已经获得了以下代码(已更新以显示完整的 lambda 代码):

/**

 Copyright 2016 Brian Donohue.

*/

'use strict';

// Route the incoming request based on type (LaunchRequest, IntentRequest,
// etc.) The JSON body of the request is provided in the event parameter.
exports.handler = function (event, context) {
    try {
        console.log("event.session.application.applicationId=" + event.session.application.applicationId);

        /**
         * Uncomment this if statement and populate with your skill's application ID to
         * prevent someone else from configuring a skill that sends …
Run Code Online (Sandbox Code Playgroud)

web-services amazon-web-services alexa node.js aws-lambda

0
推荐指数
1
解决办法
3671
查看次数

AWS Lambda 创建别名

根据 AWS 文档,我可以创建一个新的 lambda 函数别名,例如: aws lambda create-alias \ --region us-west-2 \ --function-name helloworld \ --description "sample alias" \ --function-version "\$LATEST" \ --name DEV \ --profile adminuser

据我了解,此命令基本上将代码部署到最新的 lambda 别名。所以我相信一旦我部署它,它就会变得活跃。但我会在让它上线之前对其进行测试。我的问题是,将它置于中间阶段以便它可以等到我的 Jenkins 测试完成然后激活它的最简单方法是什么?我应该创建另一个像 $PRE_LATEST 这样的函数版本吗?

alias jenkins aws-lambda

0
推荐指数
1
解决办法
1114
查看次数

如何在 lambda 上导入和正确运行 pip 导入的库?

boto3在 python 中为我的 lambda 函数导入。当我测试 lambda 时,它给出了这个错误:No module named boto3这是意料之中的。然后我参考了文档,确切地说是这个链接https://docs.aws.amazon.com/lambda/latest/dg/lambda-python-how-to-create-deployment-package.html并意识到我需要创建部署包的问题是我对文档的理解不够好,无法跟上,并希望已经完成所需步骤的人以更简单的方式再次解释它们。

aws-lambda

0
推荐指数
1
解决办法
2269
查看次数

通过AWS Lambda启动EC2实例

我试图在AWS上创建一个lambda函数来启动和停止EC2实例,但是它给出了以下错误

botocore.exceptions.ClientError: An error occurred (UnauthorizedOperation) when calling the StartInstances operation: You are not authorized to perform this operation.
Run Code Online (Sandbox Code Playgroud)

我应采取哪些步骤来阻止此错误?我不是开发人员,只是试图通过EC2运行一些ML模型.我阅读了有关创建IAM角色的内容,我使用完全EC2访问权限,但我不确定如何在lambda函数中使用相同的内容.任何人都可以指导我吗?

amazon-ec2 amazon-web-services aws-lambda aws-iam

0
推荐指数
1
解决办法
105
查看次数

是否可以在控制台中编辑AWS Lambda图层代码?

有没有办法在控制台中编辑AWS Lambda层的代码?

是否可以像lambda一样在控制台中更新图层的代码?

amazon-web-services aws-lambda

0
推荐指数
1
解决办法
110
查看次数

dynamodb获取项目打字稿地狱

任何人都可以解释在调用DocumentClient.get时如何使用GetItemInput类型,如果我传入任何类型的对象都可以工作,但是如果我尝试强烈键入params对象,则会收到错误消息

ValidationException:提供的键元素与架构不匹配

这是我的lambda函数代码,我在其中传递参数作为任何类型...

export const get: Handler = async (event: APIGatewayProxyEvent): Promise<APIGatewayProxyResult> => {

  console.log(event.pathParameters)
  if (!event.pathParameters) {
    throw Error("no path params")
  }

  const params: any = {
    Key: {
      id: event.pathParameters.id
    },
    TableName: table
  }

  console.log(params)
  try {
    const result: any = await dynamoDb.get(params).promise()
    return {
      body: JSON.stringify(result.Item),
      statusCode: result.$response.httpResponse.statusCode
    }

  } catch (error) {
    console.log(error)
    return {
      body: JSON.stringify({
        message: `Failed to get project with id: ${event.pathParameters!.id}`
      }),
      statusCode: 500
    }
  }
}
Run Code Online (Sandbox Code Playgroud)

这是我尝试使其与GetItemInput类型一起使用 …

amazon-web-services amazon-dynamodb aws-sdk aws-lambda aws-sdk-js

0
推荐指数
2
解决办法
1212
查看次数

如何在AWS Lambda上安装phantomjs?

我发现一个有4年历史的项目应该在mbda上安装phantomjs,但是我做错了什么,或者自从创建回购以来事情已经发生了变化,并且不再起作用。克隆并部署此存储库时,尝试运行phantomjs时出现此错误:

{
  "errorType": "Error",
  "errorMessage": "write EPIPE",
  "code": "EPIPE",
  "stack": [
    "Error: write EPIPE",
    "    at WriteWrap.afterWrite [as oncomplete] (net.js:779:14)"
  ],
  "errno": "EPIPE",
  "syscall": "write"
}

{
  "errorType": "Error",
  "errorMessage": "html-pdf: Received the exit code '127'\n./phantomjs_lambda/phantomjs_linux-x86_64: error while loading shared libraries: libfreetype.so.6: cannot open shared object file: No such file or directory\n",
  "stack": [
    "Error: html-pdf: Received the exit code '127'",
    "./phantomjs_lambda/phantomjs_linux-x86_64: error while loading shared libraries: libfreetype.so.6: cannot open shared object file: No such file or directory", …
Run Code Online (Sandbox Code Playgroud)

amazon-web-services node.js aws-lambda

0
推荐指数
1
解决办法
1114
查看次数

Lambda链接-使用Terraform从另一个Lambda调用Lambda

我试图从另一个调用一个AWS Lambda并执行Lambda链接。这样做的基本原理是,AWS不提供来自同一S3存储桶的多个触发器。

我创建了一个带s3触发器的lambda。第一个lambda的Java代码将侦听S3事件,并包含另一个lambda的调用。第二个lambda将从第一个lambda调用。两种lambda的创建都是通过terraform完成的。

Lambda A具有S3触发器。这将在特定存储桶上的S3事件上调用。Lambda A将进行处理,并使用调用请求来调用LambdaB。来自Lambda A的Lambda B调用Java中的代码是:

public class EventHandler implements RequestHandler<S3Event, String> {
  @Override
  public String handleRequest(S3Event event, Context context) throws RuntimeException {
    InvokeRequest req = new InvokeRequest()
    .withFunctionName("LambdaFunctionB")
    .withPayload(json);
    return "Lambda B invoked"
  }
}
Run Code Online (Sandbox Code Playgroud)

两个lambda都是使用terraform创建的。以下脚本:
Lambda terraform:

module "lambda_function" {
   source = "Git Path"
   absolute_artifact_path = "../lambda.jar"
   lambda_function_name = "LambdaFunctionA"
   lambda_function_description = ""
   lambda_function_runtime = "java8"
   lambda_handler_name = "EventHandler"
   lambda_execution_role_name = "lambda-iam-role"
   lambda_memory = "512"
   dead_letter_target_arn = "error-handling-arn"

}

resource "aws_lambda_permission" "allow_bucket" {
  statement_id  = "statementId" …
Run Code Online (Sandbox Code Playgroud)

aws-lambda terraform terraform-provider-aws

0
推荐指数
1
解决办法
83
查看次数