Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
28 changes: 26 additions & 2 deletions Samples/HelloWorld/Program.cs
Original file line number Diff line number Diff line change
Expand Up @@ -7,15 +7,18 @@
using Slackbot.Net.Endpoints.Models.Interactive.MessageActions;

var builder = WebApplication.CreateBuilder(args);
builder.Logging.SetMinimumLevel(LogLevel.Trace);

// Needed in production to verify that incoming event payloads are from Slack
builder.Services.AddAuthentication()
.AddSlackbotEvents(c => c.SigningSecret = Environment.GetEnvironmentVariable("CLIENT_SIGNING_SECRET"));
.AddSlackbotEvents(c => c.SigningSecret = "garbage");

// Setup event handlers
builder.Services.AddSlackBotEvents()
.AddMessageActionsHandler<DoOtherStuff>()
.AddAppMentionHandler<DoStuff>();
.AddAppMentionHandler<DoStuff>()
.AddTeamJoinHandler<OnTeamJoins>()
.AddEmojiChangedHandler<OnEmojiChanged>();


var app = builder.Build();
Expand Down Expand Up @@ -48,3 +51,24 @@ public async Task<EventHandledResponse> Handle(MessageActionInteraction @event)
return new EventHandledResponse("OK");
}
}

class OnTeamJoins : IHandleTeamJoin
{
public Task<EventHandledResponse> Handle(EventMetaData eventMetadata, TeamJoinEvent @event)
{
var str = JsonSerializer.Serialize(@event);
Console.WriteLine(str);
return Task.FromResult(new EventHandledResponse("OK"));
}
}

class OnEmojiChanged : IHandleEmojiChanged
{

public Task<EventHandledResponse> Handle(EventMetaData eventMetadata, EmojiChangedEvent @event)
{
var str = JsonSerializer.Serialize(@event);
Console.WriteLine(str);
return Task.FromResult(new EventHandledResponse("OK"));
}
}
3 changes: 2 additions & 1 deletion Samples/HelloWorld/appsettings.Development.json
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,8 @@
"LogLevel": {
"Default": "Information",
"Microsoft": "Warning",
"Microsoft.Hosting.Lifetime": "Information"
"Microsoft.Hosting.Lifetime": "Information",
"Slackbot.Net.Endpoints": "Trace"
}
}
}
34 changes: 17 additions & 17 deletions source/src/Slackbot.Net.Endpoints/Models/Events/TeamJoinEvent.cs
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ public class JoiningUser
{
public string Id { get; set; }
public string Name { get; set; }
public string RealName { get; set; }
public string Real_Name { get; set; }
public JoiningUserProfile? Profile { get; set; }
}

Expand All @@ -18,20 +18,20 @@ public class JoiningUserProfile
public string Title { get; set; }
public string Phone { get; set; }
public string Skype { get; set; }
public string RealName { get; set; }
public string RealNameNormalized { get; set; }
public string DisplayName { get; set; }
public string DisplayNameNormalized { get; set; }
public string StatusText { get; set; }
public string StatusEmoji { get; set; }
public int StatusExpiration { get; set; }
public string AvatarHash { get; set; }
public string FirstName { get; set; }
public string LastName { get; set; }
public string Image24 { get; set; }
public string Image32 { get; set; }
public string Image48 { get; set; }
public string Image72 { get; set; }
public string Image192 { get; set; }
public string Image512 { get; set; }
public string Real_Name { get; set; }
public string Real_Name_Normalized { get; set; }
public string Display_Name { get; set; }
public string Display_Name_Normalized { get; set; }
public string Status_Text { get; set; }
public string Status_Emoji { get; set; }
public int Status_Expiration { get; set; }
public string Avatar_Hash { get; set; }
public string First_Name { get; set; }
public string Last_Name { get; set; }
public string Image_24 { get; set; }
public string Image_32 { get; set; }
public string Image_48 { get; set; }
public string Image_72 { get; set; }
public string Image_192 { get; set; }
public string Image_512 { get; set; }
}