"Amazon Personalize" PutItems、PutEvents、PutUsers 使用 aws/aws-sdk-php
"Amazon Personalize" PutItems, PutEvents, PutUsers using aws/aws-sdk-php
我正在 Laravel 应用程序和 Amazon Personalize 之间建立集成,使用:
aws/aws-sdk-php
一切顺利,但当我查看如何使用新用户、交互和项目更新数据集时,我找不到合适的 method/approach 来执行此操作,甚至找不到合适的方法。
我已经创建了事件跟踪器,但我找不到如何将此 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://docs.aws.amazon.com/personalize/latest/dg/API_UBS_PutEvents.html
如果有机会更好地避免执行额外的 Python 脚本,否则我会选择那个选项。
提前致谢!
我发现为此我需要使用 PersonalizeEventsClient 而不是 PersonalizeClient,如下所述:
https://docs.aws.amazon.com/aws-sdk-php/v3/api/api-personalize-events-2018-03-22.html#putevents
link 是 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:
我正在 Laravel 应用程序和 Amazon Personalize 之间建立集成,使用:
aws/aws-sdk-php
一切顺利,但当我查看如何使用新用户、交互和项目更新数据集时,我找不到合适的 method/approach 来执行此操作,甚至找不到合适的方法。
我已经创建了事件跟踪器,但我找不到如何将此 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://docs.aws.amazon.com/personalize/latest/dg/API_UBS_PutEvents.html
如果有机会更好地避免执行额外的 Python 脚本,否则我会选择那个选项。
提前致谢!
我发现为此我需要使用 PersonalizeEventsClient 而不是 PersonalizeClient,如下所述:
https://docs.aws.amazon.com/aws-sdk-php/v3/api/api-personalize-events-2018-03-22.html#putevents
link 是 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: