You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/english/concepts/message-sending.md
+60-1Lines changed: 60 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -5,6 +5,7 @@ Within your listener function, `say()` is available whenever there is an associa
5
5
In the case that you'd like to send a message outside of a listener or you want to do something more advanced (like handle specific errors), you can call `client.chat_postMessage`[using the client attached to your Bolt instance](/tools/bolt-python/concepts/web-api).
6
6
7
7
Refer to [the module document](https://docs.slack.dev/tools/bolt-python/reference/kwargs_injection/args.html) to learn the available listener arguments.
8
+
8
9
```python
9
10
# Listens for messages containing "knock knock" and responds with an italicized "who's there?"
The Python Slack SDK provides a [`chat_stream()`](https://docs.slack.dev/tools/python-slack-sdk/reference/web/client.html#slack_sdk.web.client.WebClient.chat_stream) helper utility to streamline calling these methods. Here's an excerpt from our [Assistant template app](https://github.com/slack-samples/bolt-python-assistant-template):
In that example, a [feedback buttons](/reference/block-kit/block-elements/feedback-buttons-element) block element is passed to `streamer.stop` to provide feedback buttons to the user at the bottom of the message. Interaction with these buttons will send a block action event to your app to receive the feedback.
75
+
76
+
```python
77
+
defcreate_feedback_block() -> List[Block]:
78
+
blocks: List[Block] = [
79
+
ContextActionsBlock(
80
+
elements=[
81
+
FeedbackButtonsElement(
82
+
action_id="feedback",
83
+
positive_button=FeedbackButtonObject(
84
+
text="Good Response",
85
+
accessibility_label="Submit positive feedback on this response",
86
+
value="good-feedback",
87
+
),
88
+
negative_button=FeedbackButtonObject(
89
+
text="Bad Response",
90
+
accessibility_label="Submit negative feedback on this response",
91
+
value="bad-feedback",
92
+
),
93
+
)
94
+
]
95
+
)
96
+
]
97
+
return blocks
98
+
```
99
+
100
+
For information on calling the `chat_*Stream` API methods without the helper utility, see the [_Sending streaming messages_](/tools/python-slack-sdk/web#sending-streaming-messages) section of the Python Slack SDK docs.
"""Registers a new `view_submission` listener.
3021
-
Refer to https://docs.slack.dev/reference/interaction-payloads/view-interactions-payload/#view_submission for details."""
3023
+
Refer to https://docs.slack.dev/reference/interaction-payloads/view-interactions-payload/#view_submission for
3024
+
details.
3025
+
"""
3022
3026
3023
3027
def __call__(*args, **kwargs):
3024
3028
functions = self._to_listener_functions(kwargs) if kwargs else list(args)
@@ -3028,7 +3032,8 @@ <h2 id="args">Args</h2>
3028
3032
return __call__</code></pre>
3029
3033
</details>
3030
3034
<divclass="desc"><p>Registers a new <code>view_submission</code> listener.
3031
-
Refer to <ahref="https://docs.slack.dev/reference/interaction-payloads/view-interactions-payload/#view_submission">https://docs.slack.dev/reference/interaction-payloads/view-interactions-payload/#view_submission</a> for details.</p></div>
3035
+
Refer to <ahref="https://docs.slack.dev/reference/interaction-payloads/view-interactions-payload/#view_submission">https://docs.slack.dev/reference/interaction-payloads/view-interactions-payload/#view_submission</a> for
"""Registers a new `view_submission` listener.
3078
-
Refer to https://docs.slack.dev/reference/interaction-payloads/view-interactions-payload/#view_submission for details."""
3080
+
Refer to https://docs.slack.dev/reference/interaction-payloads/view-interactions-payload/#view_submission for
3081
+
details.
3082
+
"""
3079
3083
3080
3084
def __call__(*args, **kwargs):
3081
3085
functions = self._to_listener_functions(kwargs) if kwargs else list(args)
@@ -3085,7 +3089,8 @@ <h2 id="args">Args</h2>
3085
3089
return __call__</code></pre>
3086
3090
</details>
3087
3091
<divclass="desc"><p>Registers a new <code>view_submission</code> listener.
3088
-
Refer to <ahref="https://docs.slack.dev/reference/interaction-payloads/view-interactions-payload/#view_submission">https://docs.slack.dev/reference/interaction-payloads/view-interactions-payload/#view_submission</a> for details.</p></div>
3092
+
Refer to <ahref="https://docs.slack.dev/reference/interaction-payloads/view-interactions-payload/#view_submission">https://docs.slack.dev/reference/interaction-payloads/view-interactions-payload/#view_submission</a> for
"""Registers a new `view_submission` listener.
3040
-
Refer to https://docs.slack.dev/reference/interaction-payloads/view-interactions-payload/#view_submission for details."""
3042
+
Refer to https://docs.slack.dev/reference/interaction-payloads/view-interactions-payload/#view_submission for
3043
+
details.
3044
+
"""
3041
3045
3042
3046
def __call__(*args, **kwargs):
3043
3047
functions = self._to_listener_functions(kwargs) if kwargs else list(args)
@@ -3047,7 +3051,8 @@ <h2 id="args">Args</h2>
3047
3051
return __call__</code></pre>
3048
3052
</details>
3049
3053
<divclass="desc"><p>Registers a new <code>view_submission</code> listener.
3050
-
Refer to <ahref="https://docs.slack.dev/reference/interaction-payloads/view-interactions-payload/#view_submission">https://docs.slack.dev/reference/interaction-payloads/view-interactions-payload/#view_submission</a> for details.</p></div>
3054
+
Refer to <ahref="https://docs.slack.dev/reference/interaction-payloads/view-interactions-payload/#view_submission">https://docs.slack.dev/reference/interaction-payloads/view-interactions-payload/#view_submission</a> for
"""Registers a new `view_submission` listener.
3169
-
Refer to https://docs.slack.dev/reference/interaction-payloads/view-interactions-payload/#view_submission for details."""
3171
+
Refer to https://docs.slack.dev/reference/interaction-payloads/view-interactions-payload/#view_submission for
3172
+
details.
3173
+
"""
3170
3174
3171
3175
def __call__(*args, **kwargs):
3172
3176
functions = self._to_listener_functions(kwargs) if kwargs else list(args)
@@ -3176,7 +3180,8 @@ <h2 id="args">Args</h2>
3176
3180
return __call__</code></pre>
3177
3181
</details>
3178
3182
<divclass="desc"><p>Registers a new <code>view_submission</code> listener.
3179
-
Refer to <ahref="https://docs.slack.dev/reference/interaction-payloads/view-interactions-payload/#view_submission">https://docs.slack.dev/reference/interaction-payloads/view-interactions-payload/#view_submission</a> for details.</p></div>
3183
+
Refer to <ahref="https://docs.slack.dev/reference/interaction-payloads/view-interactions-payload/#view_submission">https://docs.slack.dev/reference/interaction-payloads/view-interactions-payload/#view_submission</a> for
0 commit comments