

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

# Aufzeichnen von Interaktionsereignissen mit Artikeldaten
<a name="putevents-including-impressions-data"></a>

Wenn Sie das [Personalisierung durch Benutzer](native-recipe-new-item-USER_PERSONALIZATION.md) Rezept verwenden oder das Feld IMPRESSIONS zu Ihrem Schema für einen Datensatz in einer Domain-Datensatzgruppe hinzufügen, können Sie Impressionsdaten in Ihrem PutEvents Vorgang aufzeichnen. Impressionen sind Listen von Elementen, die für einen Benutzer sichtbar waren, wenn er mit einem bestimmten Element interagierte (z. B. darauf klickte oder es sich ansah). Amazon Personalize verwendet Impressionsdaten als Leitfaden für die Erkundung, wobei Empfehlungen Artikel mit weniger Interaktionsdaten oder Relevanz enthalten. Informationen zu den *impliziten* und *expliziten* Impressionen, die Amazon Personalize modellieren kann, finden Sie unter. [Daten zu Eindrücken](interactions-datasets.md#interactions-impressions-data) 

**Wichtig**  
Wenn Sie widersprüchliche implizite und explizite Impressionsdaten in Ihren `PutEvents` Anfragen angeben, verwendet Amazon Personalize standardmäßig die expliziten Impressionen.

Um die Amazon Personalize-Empfehlungen aufzuzeichnen, die Sie Ihrem Nutzer als Impressionsdaten anzeigen, fügen Sie diese `recommendationId` in Ihre [PutEvents](API_UBS_PutEvents.md) Anfrage ein und Amazon Personalize leitet die impliziten Impressionen auf der Grundlage Ihrer Empfehlungsdaten ab.

Um Impressionsdaten für ein Ereignis manuell aufzuzeichnen, listen Sie die Impressionen im Eingabeparameter des [PutEvents](API_UBS_PutEvents.md) Befehls auf. `impression` Das folgende Codebeispiel zeigt, wie Sie a `recommendationId` und an `impression` in eine PutEvents Operation mit dem SDK for Python (Boto3) oder dem SDK for Java 2.x einbeziehen. Wenn Sie beide angeben, verwendet Amazon Personalize standardmäßig die expliziten Impressionen.

------
#### [ SDK for Python (Boto3) ]

```
import boto3

personalize_events = boto3.client(service_name='personalize-events')

personalize_events.put_events(
    trackingId = '{{tracking_id}}',
    userId= '{{userId}}',
    sessionId = '{{sessionId}}',
    eventList = [{
        'eventId': '{{event1}}',
        'eventType': '{{rating}}',
        'sentAt': {{1553631760}},
        'itemId': '{{item id}}',
        'recommendationId': '{{recommendation id}}',
        'impression': ['{{itemId1}}', '{{itemId2}}', '{{itemId3}}']
        }]
)
```

------
#### [ SDK for Java 2.x ]

Verwenden Sie die folgende `putEvents` Methode, um ein Ereignis mit Impressionsdaten und einer RecommendationID aufzuzeichnen. Übergeben Sie für den Impressions-Parameter die Liste der ItemIDs als. ArrayList

```
public static void putEvents(PersonalizeEventsClient personalizeEventsClient, 
                                String trackingId, 
                                String sessionId, 
                                String userId, 
                                String eventType, 
                                Float eventValue, 
                                String itemId,
                                ArrayList<String> impressions,
                                String recommendationId) {

    try { 
        Event event = Event.builder()
            .eventType(eventType)
            .sentAt(Instant.ofEpochMilli(System.currentTimeMillis() + 10 * 60 * 1000))
            .itemId(itemId)
            .eventValue(eventValue)
            .impression(impressions)
            .recommendationId(recommendationId)
            .build();

        PutEventsRequest putEventsRequest = PutEventsRequest.builder()
            .trackingId(trackingId)
            .userId(userId)
            .sessionId(sessionId)
            .eventList(event)
            .build();

        int responseCode = personalizeEventsClient.putEvents(putEventsRequest)
            .sdkHttpResponse()
            .statusCode();
        System.out.println("Response code: " + responseCode);

    } catch (PersonalizeEventsException e) {
        System.out.println(e.awsErrorDetails().errorMessage());
    }
}
```

------