Skip to content

Commit beba392

Browse files
authored
docs: filter against bot_id in listener middleware example (#1339)
1 parent 88ddc7c commit beba392

File tree

2 files changed

+11
-13
lines changed

2 files changed

+11
-13
lines changed

docs/content/concepts/listener-middleware.md

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -11,11 +11,10 @@ If your listener middleware is a quite simple one, you can use a listener matche
1111
Refer to [the module document](https://tools.slack.dev/bolt-python/api-docs/slack_bolt/kwargs_injection/args.html) to learn the available listener arguments.
1212

1313
```python
14-
# Listener middleware which filters out messages with "bot_message" subtype
14+
# Listener middleware which filters out messages from a bot
1515
def no_bot_messages(message, next):
16-
subtype = message.get("subtype")
17-
if subtype != "bot_message":
18-
next()
16+
if "bot_id" not in message:
17+
next()
1918

2019
# This listener only receives messages from humans
2120
@app.event(event="message", middleware=[no_bot_messages])
@@ -24,10 +23,10 @@ def log_message(logger, event):
2423

2524
# Listener matchers: simplified version of listener middleware
2625
def no_bot_messages(message) -> bool:
27-
return message.get("subtype") != "bot_message"
26+
return "bot_id" not in message
2827

2928
@app.event(
30-
event="message",
29+
event="message",
3130
matchers=[no_bot_messages]
3231
# or matchers=[lambda message: message.get("subtype") != "bot_message"]
3332
)

docs/i18n/ja-jp/docusaurus-plugin-content-docs/current/concepts/listener-middleware.md

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -11,11 +11,10 @@ slug: /concepts/listener-middleware
1111
<span>指定可能な引数の一覧は<a href="https://tools.slack.dev/bolt-python/api-docs/slack_bolt/kwargs_injection/args.html">モジュールドキュメント</a>を参考にしてください。</span>
1212

1313
```python
14-
# "bot_message" サブタイプのメッセージを抽出するリスナーミドルウェア
14+
# ボットからのメッセージをフィルタリングするリスナーミドルウェア
1515
def no_bot_messages(message, next):
16-
subtype = message.get("subtype")
17-
if subtype != "bot_message":
18-
next()
16+
if "bot_id" not in message:
17+
next()
1918

2019
# このリスナーは人間によって送信されたメッセージのみを受け取ります
2120
@app.event(event="message", middleware=[no_bot_messages])
@@ -24,13 +23,13 @@ def log_message(logger, event):
2423

2524
# リスナーマッチャー: 簡略化されたバージョンのリスナーミドルウェア
2625
def no_bot_messages(message) -> bool:
27-
return message.get("subtype") != "bot_message"
26+
return "bot_id" not in message
2827

2928
@app.event(
30-
event="message",
29+
event="message",
3130
matchers=[no_bot_messages]
3231
# or matchers=[lambda message: message.get("subtype") != "bot_message"]
3332
)
3433
def log_message(logger, event):
3534
logger.info(f"(MSG) User: {event['user']}\nMessage: {event['text']}")
36-
```
35+
```

0 commit comments

Comments
 (0)