Send message to HoP and analytics

This commit is contained in:
Joseph Ferano 2022-05-10 18:09:11 +07:00
parent 6106ff81c2
commit caf902725b
2 changed files with 17 additions and 9 deletions

View File

@ -108,19 +108,19 @@ let sellItemCommand (discordMember : DiscordMember) store =
] ]
track "Sell Item Command Invoked" discordMember.Id data track "Sell Item Command Invoked" discordMember.Id data
let buyWeaponButton (discordMember : DiscordMember) itemName itemPrice = let buyItemButton (discordMember : DiscordMember) itemName itemPrice =
let data = [ let data = [
"user_display_name" , discordMember.Username "user_display_name" , discordMember.Username
"weapon_name" , itemName "item_name" , itemName
"weapon_price" , string itemPrice "item_price" , string itemPrice
] ]
track "Buy Weapon Button Clicked" discordMember.Id data track "Buy Weapon Button Clicked" discordMember.Id data
let sellWeaponButton (discordMember : DiscordMember) (weapon : Item) price = let sellItemButton (discordMember : DiscordMember) (item : Item) price =
let data = [ let data = [
"user_display_name" , discordMember.Username "user_display_name" , discordMember.Username
"weapon_name" , weapon.Name "item_name" , item.Name
"weapon_price" , string price "item_price" , string price
] ]
track "Sell Weapon Button Clicked" discordMember.Id data track "Sell Weapon Button Clicked" discordMember.Id data

View File

@ -161,7 +161,7 @@ let purchaseItemEmbed quantity (item : Item) =
embed.Title <- $"Purchased {quantity}x {item.Name}" embed.Title <- $"Purchased {quantity}x {item.Name}"
match item.Type with match item.Type with
| ItemType.Jpeg -> | ItemType.Jpeg ->
embed.Description <- $"Congratulations! You are in the draw for the {item.Name}. The winner will be announced soon in the <#{GuildEnvironment.channelGiveaway}>" embed.Description <- $"Congratulations! You are in the draw for the {item.Name}.\n\nThe winner will be announced soon in the <#{GuildEnvironment.channelGiveaway}>"
embed.ImageUrl <- item.ImageUrl embed.ImageUrl <- item.ImageUrl
embed.Thumbnail <- DiscordEmbedBuilder.EmbedThumbnail() embed.Thumbnail <- DiscordEmbedBuilder.EmbedThumbnail()
embed.Thumbnail.Url <- item.IconUrl embed.Thumbnail.Url <- item.IconUrl
@ -261,7 +261,15 @@ let handleBuyItem (ctx : IDiscordContext) itemId =
| _ -> () | _ -> ()
builder.AddEmbed(embed) |> ignore builder.AddEmbed(embed) |> ignore
do! ctx.FollowUp builder |> Async.AwaitTask do! ctx.FollowUp builder |> Async.AwaitTask
do! Analytics.buyWeaponButton (ctx.GetDiscordMember()) item.Name price
let builder = DiscordMessageBuilder()
builder.WithContent($"{player.Name} just purchased {item.Name}!") |> ignore
let channel = ctx.GetGuild().GetChannel(GuildEnvironment.channelEventsHackerBattle)
do! channel.SendMessageAsync(builder)
|> Async.AwaitTask
|> Async.Ignore
do! Analytics.buyItemButton (ctx.GetDiscordMember()) item.Id price
}) })
}) })
@ -279,7 +287,7 @@ let handleSell (ctx : IDiscordContext) itemId =
DbService.removeFromPlayerInventory player.DiscordId item |> Async.Ignore DbService.removeFromPlayerInventory player.DiscordId item |> Async.Ignore
DbService.removeShieldEvent player.DiscordId itemId |> Async.Ignore DbService.removeShieldEvent player.DiscordId itemId |> Async.Ignore
sendFollowUpMessage ctx $"Sold {item.Name} for {price}! New Balance: {player.Bank + price}" sendFollowUpMessage ctx $"Sold {item.Name} for {price}! New Balance: {player.Bank + price}"
Analytics.sellWeaponButton (ctx.GetDiscordMember()) item price ] Analytics.sellItemButton (ctx.GetDiscordMember()) item price ]
|> Async.Parallel |> Async.Parallel
|> Async.Ignore |> Async.Ignore
| _ -> () | _ -> ()