Skip to content

Commit 41326ee

Browse files
authored
Update app.start()'s message and docstring (slackapi#54)
1 parent a4a8634 commit 41326ee

4 files changed

Lines changed: 29 additions & 7 deletions

File tree

samples/app.py

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,12 @@ def log_request(logger, payload, next):
2020
return next()
2121

2222

23+
@app.command("/hello-bolt-python")
24+
def hello_command(ack, payload):
25+
user_id = payload["user_id"]
26+
ack(f"Hi <@{user_id}>!")
27+
28+
2329
@app.event("app_mention")
2430
def event_test(payload, say, logger):
2531
logger.info(payload)

samples/async_app.py

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -28,8 +28,9 @@ async def event_test(payload, say, logger):
2828

2929
@app.command("/hello-bolt-python")
3030
# or app.command(re.compile(r"/hello-.+"))(test_command)
31-
async def command(ack):
32-
await ack("Thanks!")
31+
async def command(ack, payload):
32+
user_id = payload["user_id"]
33+
await ack(f"Hi <@{user_id}>!")
3334

3435

3536
if __name__ == "__main__":

slack_bolt/app/app.py

Lines changed: 15 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -260,10 +260,10 @@ def listener_error_handler(self) -> ListenerErrorHandler:
260260
# standalone server
261261

262262
def start(self, port: int = 3000, path: str = "/slack/events") -> None:
263-
self.server = SlackAppServer(
263+
self._development_server = SlackAppDevelopmentServer(
264264
port=port, path=path, app=self, oauth_flow=self.oauth_flow,
265265
)
266-
self.server.start()
266+
self._development_server.start()
267267

268268
# -------------------------
269269
# main dispatcher
@@ -803,10 +803,20 @@ def _register_listener(
803803
# -------------------------
804804

805805

806-
class SlackAppServer:
806+
class SlackAppDevelopmentServer:
807807
def __init__(
808808
self, port: int, path: str, app: App, oauth_flow: Optional[OAuthFlow] = None,
809809
):
810+
"""Slack App Development Server
811+
812+
This is a thin wrapper of http.server.HTTPServer and is good enough
813+
for your local development or prototyping.
814+
815+
However, as mentioned in Python official documents, using http.server module in production
816+
is not recommended. Please consider using an adapter (refer to slack_bolt.adapter.*)
817+
along with a production-grade server when running the app for end users.
818+
https://docs.python.org/3/library/http.server.html#http.server.HTTPServer
819+
"""
810820
self._port: int = port
811821
self._bolt_endpoint_path: str = path
812822
self._bolt_app: App = app
@@ -881,9 +891,9 @@ def _send_response(
881891

882892
def start(self):
883893
if self._bolt_app.logger.level > logging.INFO:
884-
print("⚡️ Bolt app is running!")
894+
print("⚡️ Bolt app is running! (development server)")
885895
else:
886-
self._bolt_app.logger.info("⚡️ Bolt app is running!")
896+
self._bolt_app.logger.info("⚡️ Bolt app is running! (development server)")
887897

888898
try:
889899
self._server.serve_forever(0.05)

slack_bolt/app/async_server.py

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,11 @@ class AsyncSlackAppServer:
1010
def __init__(
1111
self, port: int, path: str, app, # AsyncApp
1212
):
13+
"""Standalone AIOHTTP Web Server
14+
15+
Refer to AIOHTTP documents for details.
16+
https://docs.aiohttp.org/en/stable/web.html
17+
"""
1318
self._port = port
1419
self._endpoint_path = path
1520
self._bolt_app: "AsyncApp" = app

0 commit comments

Comments
 (0)