Skip to content

Commit 1821772

Browse files
authored
Merge pull request #1094 from iceljc/bugfix/detour-rate-limit
detour rate limit
2 parents 6d35224 + 0da486a commit 1821772

File tree

1 file changed

+4
-4
lines changed

1 file changed

+4
-4
lines changed

src/Infrastructure/BotSharp.Logger/Hooks/RateLimitConversationHook.cs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,10 @@ public RateLimitConversationHook(IServiceProvider services, ILogger<RateLimitCon
2525
public override async Task OnMessageReceived(RoleDialogModel message)
2626
{
2727
var settings = _services.GetRequiredService<ConversationSetting>();
28+
var states = _services.GetRequiredService<IConversationStateService>();
29+
2830
var rateLimit = settings.RateLimit;
31+
var channel = states.GetState("channel");
2932

3033
// Check max input length
3134
var charCount = message.Content.Length;
@@ -45,7 +48,7 @@ public override async Task OnMessageReceived(RoleDialogModel message)
4548
var userSents = Dialogs.Where(x => x.Role == AgentRole.User)
4649
.TakeLast(2).ToList();
4750

48-
if (userSents.Count > 1)
51+
if (channel != ConversationChannel.Phone && userSents.Count > 1)
4952
{
5053
var seconds = (DateTime.UtcNow - userSents.First().CreatedAt).TotalSeconds;
5154
if (seconds < rateLimit.MinTimeSecondsBetweenMessages)
@@ -56,9 +59,6 @@ public override async Task OnMessageReceived(RoleDialogModel message)
5659
}
5760
}
5861

59-
var states = _services.GetRequiredService<IConversationStateService>();
60-
var channel = states.GetState("channel");
61-
6262
// Check the number of conversations
6363
if (channel != ConversationChannel.Phone && channel != ConversationChannel.Email && channel != ConversationChannel.Database)
6464
{

0 commit comments

Comments
 (0)