メインコンテンツまでスキップ

通知送信 ケース1:サーバー側の処理完了をお知らせ

サーバー側で画像生成を行い、処理完了時にお知らせするようなユースケースです。

リクエスト時にデバイストークンを受け取り、5秒待機後に通知を行うLambdaを作成しました。 使用しているAPIはsendMessagesです。

Lambda
  await sleep(5000)

const params = {
ApplicationId: applicationId,
MessageRequest: {
"Addresses": {
[body.token]: {
"ChannelType": "GCM"
}
},
"Endpoints": {},
"MessageConfiguration": {
"GCMMessage": {
"Title": "Push Title",
"Action": "URL",
"Body": "Body Message",
"ImageUrl": "https://placekitten.com/200/300",
"ImageIconUrl": "https://placekitten.com/g/96/96",
"Url": body.url || 'http://localhost:8080'
}
}
}
}

const res = await pinpoint.sendMessages(params).promise()

通知が出ました。

image.png

注記

他にはsendUsersMessagesで送信することも可能です。(Analytics.updateEndpointの際に指定したuserIdに対してメッセージ送信ができます)

Analytics.updateEndpoint({
address: deviceToken,
channelType: "GCM",
optOut: 'NONE',
user: {
userId: "USERID"
}
})