Return a json with all login from an user, (*16)
Problem: We need a trigger to feed the user's config page with all of his logins.
The config page will make an api request whenever the user request the login data., (*17)
Solution: We have the method returnEvents which filter events based on given arguments.
In this case, we want to filter by EventTypeId and UserId.
We can obtain the UserId from the subscription, so it is a variable.
Since we already know the EventTypeId, we define a constant., (*18)
$trigger = new Trigger('UserLogins.v1', 'Shows all logins from an user', 'Manual', 'method::returnJson');
$trigger->addSubscriptionKey('UserId');
$userId = $trigger->createVariable('userId', 'userId');
$eventTypeId = $trigger->createConstant('eventTypeId', 'User.Login');
$eventsMethod = $trigger->createMethod('returnJson', [$userId, $eventTypeId]);
$events = $trigger->createVariable('events', $eventsMethod);
$trigger->addActionParameter($events);
$trigger->save();
Result:, (*19)
- Trigger ID: UserLogins.v1
- Trigger Description: Shows all logins from an user
- Type: Manual
- Subscription Key: UserId
- Action: method::returnJson
- Action Parameters: events::{{returnEvents||userId::[[userId]]||eventTypeId::User.Login}}
Usage:, (*20)
http://notification-service-url/queryEvents/UserLogins.v1/subscriber-id, (*21)