Skip to content

Commit 113153d

Browse files
committed
Refactor MessageIM to Message event handling
Renamed all MessageIM-related interfaces, classes, and methods to use the more general 'Message' naming. Updated event type constants, handler registration, and middleware to reflect this change, consolidating message event handling and improving clarity.
1 parent 0b5bb1f commit 113153d

9 files changed

Lines changed: 24 additions & 21 deletions

File tree

Samples/HelloWorld/Program.cs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@
1919
.AddAppMentionHandler<DoStuff>()
2020
.AddTeamJoinHandler<OnTeamJoins>()
2121
.AddEmojiChangedHandler<OnEmojiChanged>()
22-
.AddMessageIMHandler<OnMessageIM>();
22+
.AddMessageHandler<OnMessage>();
2323

2424

2525
var app = builder.Build();
@@ -74,9 +74,9 @@ public Task<EventHandledResponse> Handle(EventMetaData eventMetadata, EmojiChang
7474
}
7575
}
7676

77-
class OnMessageIM : IHandleMessageIM
77+
class OnMessage : IHandleMessage
7878
{
79-
public Task<EventHandledResponse> Handle(EventMetaData eventMetadata, MessageIMEvent @event)
79+
public Task<EventHandledResponse> Handle(EventMetaData eventMetadata, MessageEvent @event)
8080
{
8181
var str = JsonSerializer.Serialize(@event);
8282
Console.WriteLine(str);

source/src/Slackbot.Net.Endpoints/Abstractions/IHandleMessageIM.cs renamed to source/src/Slackbot.Net.Endpoints/Abstractions/IHandleMessage.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
namespace Slackbot.Net.Endpoints.Abstractions;
44

5-
public interface IHandleMessageIM
5+
public interface IHandleMessage
66
{
7-
Task<EventHandledResponse> Handle(EventMetaData eventMetadata, MessageIMEvent appHomeMessage);
7+
Task<EventHandledResponse> Handle(EventMetaData eventMetadata, MessageEvent appHomeMessage);
88
}

source/src/Slackbot.Net.Endpoints/EventTypes.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,5 +9,5 @@ public static class EventTypes
99
public const string AppHomeOpened = "app_home_opened";
1010
public const string TeamJoin = "team_join";
1111
public const string EmojiChanged = "emoji_changed";
12-
public const string MessageIM = "message";
12+
public const string Message = "message";
1313
}

source/src/Slackbot.Net.Endpoints/Hosting/IAppBuilderExtensions.cs

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,10 @@ namespace Slackbot.Net.Endpoints.Hosting;
55

66
public static class IAppBuilderExtensions
77
{
8-
public static IApplicationBuilder UseSlackbot(this IApplicationBuilder app, bool enableAuth = true)
8+
public static IApplicationBuilder UseSlackbot(
9+
this IApplicationBuilder app,
10+
bool enableAuth = true
11+
)
912
{
1013
if (enableAuth)
1114
{
@@ -21,7 +24,7 @@ public static IApplicationBuilder UseSlackbot(this IApplicationBuilder app, bool
2124
app.MapWhen(InteractiveEvents.ShouldRun, b => b.UseMiddleware<InteractiveEvents>());
2225
app.MapWhen(TeamJoinEvents.ShouldRun, b => b.UseMiddleware<TeamJoinEvents>());
2326
app.MapWhen(EmojiChangedEvents.ShouldRun, b => b.UseMiddleware<EmojiChangedEvents>());
24-
app.MapWhen(MessageIMEvents.ShouldRun, b => b.UseMiddleware<MessageIMEvents>());
27+
app.MapWhen(MessageEvents.ShouldRun, b => b.UseMiddleware<MessageEvents>());
2528

2629
return app;
2730
}

source/src/Slackbot.Net.Endpoints/Hosting/ISlackbotHandlersBuilder.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,5 +18,5 @@ public ISlackbotHandlersBuilder AddInteractiveBlockActionsHandler<T>()
1818
public ISlackbotHandlersBuilder AddMessageActionsHandler<T>() where T : class, IHandleMessageActions;
1919
public ISlackbotHandlersBuilder AddTeamJoinHandler<T>() where T : class, IHandleTeamJoin;
2020
public ISlackbotHandlersBuilder AddEmojiChangedHandler<T>() where T : class, IHandleEmojiChanged;
21-
public ISlackbotHandlersBuilder AddMessageIMHandler<T>() where T : class, IHandleMessageIM;
21+
public ISlackbotHandlersBuilder AddMessageHandler<T>() where T : class, IHandleMessage;
2222
}

source/src/Slackbot.Net.Endpoints/Hosting/SlackBotHandlersBuilder.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -66,9 +66,9 @@ public ISlackbotHandlersBuilder AddEmojiChangedHandler<T>() where T : class, IHa
6666
return this;
6767
}
6868

69-
public ISlackbotHandlersBuilder AddMessageIMHandler<T>() where T : class, IHandleMessageIM
69+
public ISlackbotHandlersBuilder AddMessageHandler<T>() where T : class, IHandleMessage
7070
{
71-
services.AddSingleton<IHandleMessageIM, T>();
71+
services.AddSingleton<IHandleMessage, T>();
7272
return this;
7373
}
7474
}

source/src/Slackbot.Net.Endpoints/Middlewares/HttpItemsManager.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -79,8 +79,8 @@ private static SlackEvent ToEventType(JsonElement eventJson, string raw)
7979
return JsonSerializer.Deserialize<TeamJoinEvent>(json, WebOptions);
8080
case EventTypes.EmojiChanged:
8181
return JsonSerializer.Deserialize<EmojiChangedEvent>(json, WebOptions);
82-
case EventTypes.MessageIM:
83-
return JsonSerializer.Deserialize<MessageIMEvent>(json, WebOptions);
82+
case EventTypes.Message:
83+
return JsonSerializer.Deserialize<MessageEvent>(json, WebOptions);
8484
default:
8585
var unknownSlackEvent = JsonSerializer.Deserialize<UnknownSlackEvent>(json, WebOptions);
8686
unknownSlackEvent.RawJson = raw;

source/src/Slackbot.Net.Endpoints/Middlewares/MessageIMEvents.cs renamed to source/src/Slackbot.Net.Endpoints/Middlewares/MessageEvents.cs

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -5,29 +5,29 @@
55

66
namespace Slackbot.Net.Endpoints.Middlewares;
77

8-
public class MessageIMEvents(
8+
public class MessageEvents(
99
RequestDelegate next,
10-
ILogger<MessageIMEvents> logger,
11-
IEnumerable<IHandleMessageIM> responseHandlers
10+
ILogger<MessageEvents> logger,
11+
IEnumerable<IHandleMessage> responseHandlers
1212
)
1313
{
1414
public async Task Invoke(HttpContext context)
1515
{
16-
var messageIMEvent = (MessageIMEvent)context.Items[HttpItemKeys.SlackEventKey];
16+
var messageEvent = (MessageEvent)context.Items[HttpItemKeys.SlackEventKey];
1717
var metadata = (EventMetaData)context.Items[HttpItemKeys.EventMetadataKey];
1818
var handler = responseHandlers.FirstOrDefault();
1919

2020
if (handler == null)
2121
{
22-
logger.LogError("No handler registered for IHandleMessageIM");
22+
logger.LogError("No handler registered for IHandleMessage");
2323
}
2424
else
2525
{
2626
logger.LogInformation("Handling using {HandlerType}", handler.GetType());
2727
try
2828
{
2929
logger.LogInformation("Handling using {HandlerType}", handler.GetType());
30-
var response = await handler.Handle(metadata, messageIMEvent);
30+
var response = await handler.Handle(metadata, messageEvent);
3131
logger.LogInformation("Handler response: {Response}", response.Response);
3232
}
3333
catch (Exception e)
@@ -42,6 +42,6 @@ public async Task Invoke(HttpContext context)
4242
public static bool ShouldRun(HttpContext ctx)
4343
{
4444
return ctx.Items.ContainsKey(HttpItemKeys.EventTypeKey)
45-
&& ctx.Items[HttpItemKeys.EventTypeKey].ToString() == EventTypes.MessageIM;
45+
&& ctx.Items[HttpItemKeys.EventTypeKey].ToString() == EventTypes.Message;
4646
}
4747
}

source/src/Slackbot.Net.Endpoints/Models/Events/MessageIMEvent.cs renamed to source/src/Slackbot.Net.Endpoints/Models/Events/MessageEvent.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
namespace Slackbot.Net.Endpoints.Models.Events;
22

3-
public class MessageIMEvent : SlackEvent
3+
public class MessageEvent : SlackEvent
44
{
55
public string Channel { get; set; }
66
public string User { get; set; }

0 commit comments

Comments
 (0)