forked from AkkomaGang/akkoma
Push: add missing notification_type field
This commit is contained in:
parent
7facbb2b8d
commit
d8984b7bf8
1 changed files with 14 additions and 3 deletions
|
@ -58,14 +58,15 @@ def handle_cast(
|
|||
body =
|
||||
Jason.encode!(%{
|
||||
title: format_title(notification),
|
||||
access_token: record.token.token,
|
||||
body: format_body(notification, actor),
|
||||
notification_id: notification.id,
|
||||
notification_type: format_type(notification),
|
||||
icon: User.avatar_url(actor),
|
||||
preferred_locale: "en",
|
||||
access_token: record.token.token
|
||||
preferred_locale: "en"
|
||||
})
|
||||
|
||||
case WebPushEncryption.send_web_push(body, subscription, @gcm_api_key) do
|
||||
case WebPushEncryption.send_web_push(body, subscription) do
|
||||
{:ok, %{status_code: code}} when 400 <= code and code < 500 ->
|
||||
Logger.debug("Removing subscription record")
|
||||
Repo.delete!(record)
|
||||
|
@ -92,6 +93,16 @@ def handle_cast({:send, _}, state) do
|
|||
{:noreply, state}
|
||||
end
|
||||
|
||||
# https://github.com/tootsuite/mastodon/blob/master/app/models/notification.rb#L19
|
||||
defp format_type(%{activity: %{data: %{"type" => type}}}) do
|
||||
case type do
|
||||
"Create" -> "mention"
|
||||
"Follow" -> "follow"
|
||||
"Announce" -> "reblog"
|
||||
"Favorite" -> "favourite"
|
||||
end
|
||||
end
|
||||
|
||||
defp format_title(%{activity: %{data: %{"type" => type}}}) do
|
||||
case type do
|
||||
"Create" -> "New Mention"
|
||||
|
|
Loading…
Reference in a new issue