【问题标题】:"Amazon Personalize" PutItems, PutEvents, PutUsers using aws/aws-sdk-php使用 aws/aws-sdk-php 的“Amazon Personalize”PutItems、PutEvents、PutUsers
【发布时间】:2021-07-15 18:14:31
【问题描述】:

我正在使用以下方法在我的 Laravel 应用程序和 Amazon Personalize 之间构建一个集成:

aws/aws-sdk-php 

一切正常,但是当我查看如何使用新用户、交互和项目更新数据集时,我找不到正确的方法/方法来执行此操作,或者甚至没有可能。

我已经创建了事件跟踪器,但我找不到如何将此 Python 代码复制到 PHP 中:

    # Configure Properties:
    event = {
    "itemId": str(ITEM_ID),
    }
    event_json = json.dumps(event)
        
    # Make Call
    personalize_events.put_events(
    trackingId = TRACKING_ID,
    userId= USER_ID,
    sessionId = session_ID,
    eventList = [{
        'sentAt': int(time.time()),
        'eventType': 'EVENT_TYPE',
        'properties': event_json
        }] 

上面的代码是从https://github.com/aws-samples/amazon-personalize-samples/blob/master/getting_started/notebooks/1.Building_Your_First_Campaign.ipynb这里提取的一部分

这将用于跟踪新事件: https://docs.aws.amazon.com/personalize/latest/dg/API_UBS_PutEvents.html

如果有机会更好地避免执行额外的 Python 脚本,如果没有,我会选择该选项。

提前致谢!

【问题讨论】:

    标签: php amazon-web-services amazon-personalize


    【解决方案1】:

    我发现为此需要使用 PersonalizeEventsClient 而不是 PersonalizeClient,如下所述:

    https://docs.aws.amazon.com/aws-sdk-php/v3/api/api-personalize-events-2018-03-22.html#putevents

    该链接是 AWS Personalize 文档的一部分,我之前错过了,他们解释了如何使用 AWS SDK PHP 放置事件、项目和用户,例如:

    $client = AWS::createClient('personalizeevents');
    $result = $client->putEvents([
        'eventList' => [ // REQUIRED
            [
                'eventId' => '<string>',
                'eventType' => '<string>', // REQUIRED
                'eventValue' => <float>,
                'impression' => ['<string>', ...],
                'itemId' => '<string>',
                'properties' => '<string>',
                'recommendationId' => '<string>',
                'sentAt' => <integer || string || DateTime>, // REQUIRED
            ],
            // ...
        ],
        'sessionId' => '<string>', // REQUIRED
        'trackingId' => '<string>', // REQUIRED
        'userId' => '<string>',
    ]);
    

    我也在为 Laravel 使用这个服务提供者:

    https://github.com/aws/aws-sdk-php-laravel

    【讨论】:

    猜你喜欢
    • 2017-05-04
    • 2017-06-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-07-25
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多