Python Slack 봇으로 한 번에 여러 사용자에게 서비스 제공

Dcastle

Django를 프레임 워크로 사용하여 Amazon EC2에서 실행되는 Python으로 작성된 봇이 있습니다. 봇의 최종 목표는 동일한 Slack 팀의 여러 사용자와 한 번에 대화를 지속하는 것입니다. 내가 알기로 Amazon은 Slack 팀 간의로드 베어링을 처리하지만 단일 Slack 내에서로드를 관리하는 방법을 알아 내려고합니다.

현재 내 봇은 단일 사용자가 응답하기를 기다리는 바쁜 루프에 있습니다. 저는 이것에 대해 조사를 해왔습니다. Celery가 작업에 적합한 도구입니까? 각 대화를 별도의 스레드 / 작업으로 분할해야합니까? 아니면 디스패처가 새 메시지를 처리하도록해야합니까? Slack이 인터럽트를 보낼 수있는 방법이 있습니까, 아니면 while 루프에 갇혀 있습니까?

도움 / 안내에 감사드립니다! 나는 이것에 꽤 익숙합니다.

편집 : 각 사용자와 관련된 "대화"개체 목록을 구현하여이 문제를 해결했습니다. 이러한 개체는 각 대화의 상태를 저장하므로 사용자가 다시 메시지를 보낼 때 봇이 중단 된 부분을 선택할 수 있습니다.

가정 :

  • Real Time Messaging API가 아닌 slack에서 발신 웹훅을 사용하고 있습니다.
  • 각 질문과 답변 사이의 상태가 유지되어야하는 일종의 다중 질문-답변을하려고하는 것이 아닙니다.

모든 Django 항목을 건너 뛰고 AWS Lambda를 사용하여 사용자 요청에 응답하십시오. 이것은 매우 단순한 "MyBot : do_something_for_me"스타일에만 작동하지만 우리에게는 꽤 잘 작동합니다. ec2, rds, 쉬운 배포 등이 없기 때문에 관리도 훨씬 더 쉽습니다. 각 Lambda 요청에 대해 합리적인 시간 제한을 설정했는지 확인하십시오. 내 경험상 3 초는 일반적으로 약간 더 큰 스크립트가 없다면 충분한 시간입니다.

정말로이 모든 상태를 유지해야한다면 django의 모든 설정을 거치는 것보다 Flask에서 어떤 종류의 빠른 작업을 작성하는 것이 좋습니다. 그런 다음 모든 웹 서비스에 대한 모든 배포, 자동 확장, 백업 rigmarole을 처리해야하지만 필요한 경우 필요합니다 =)

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

Firebase Cloud Functions-한 번에 여러 사용자에게 서비스 제공

분류에서Dev

Python에서 웹봇 브라우저를 사용하여 한 번에 여러 키를 누르는 방법

분류에서Dev

하나의 봇 인스턴스에서 여러 봇 제공

분류에서Dev

MS 봇 빌더를 사용하여 Slack 채널에서 "imBack"유형으로 버튼을 설정하는 방법

분류에서Dev

동일한 IP에서 서비스를 사용하여 여러 포드를 제공하는 Azure AKS Loadbalancer

분류에서Dev

동일한 서버에 배치 된 여러 Ear 간의 '서비스'제공

분류에서Dev

joomla htacess를 사용하여 URL에서 한 번에 여러 파일을 제한 할 수 있습니까? (경로의 끝은 사용자 번호입니다)

분류에서Dev

Python : 거북이에서 한 번에 여러 색상 사용

분류에서Dev

Podio에서 한 번의 요청으로 여러 파일 업로드 (제안)

분류에서Dev

CSS / LESS에서 동일한 클래스를 연속으로 여러 번 사용

분류에서Dev

동일한 프로세스에서 여러 번로드 된 공유 라이브러리의 주소 공간

분류에서Dev

Python으로 한 번에 여러 파일 이름 바꾸기

분류에서Dev

WooCommerce의 이전 주문 및 전화 번호를 기반으로 게스트 사용자가 같은 주에 특정 제품을 여러 번 구매하도록 제한

분류에서Dev

JMeter : 어떻게 한 번에 여러 스레드 그룹의 여러 사용자를 공격 할 수 있습니까?

분류에서Dev

여러 ServiceHost에 동일한 서비스 인스턴스를 제공해도 안전합니까?

분류에서Dev

JQuery를 사용하여 여러 요소와 클래스 이름을 공유하는 요소에 문자 제한을 어떻게 적용 할 수 있습니까?

분류에서Dev

Firebase push () 메서드를 사용하여 사용자에게 고유 한 하위 키 값 제공

분류에서Dev

mysql 데이터베이스에서 한 번에 여러 사용자에게 gcm 보내기

분류에서Dev

여러 클라이언트에 서비스를 제공하는 웹 API에 대한 Application Insights 전략

분류에서Dev

최종 사용자가 제공 한 값에서 ansible에서 여러 VM을 배포하고 싶었습니다.

분류에서Dev

Python에서 Discord 봇 프로그래밍-여러 client.events가 있지만 한 번에 하나만 작동합니다.

분류에서Dev

Slack Events API : 자체 봇 사용자의 응답을 위해 이벤트가 여러 번 게시됩니다.

분류에서Dev

사용자가 두 번째부터 Flask로 구축 된 웹 사이트에서 양식을 제출 한 후 Python 웹 스크래핑 스크립트를 성공적으로 실행할 수 없습니다.

분류에서Dev

systemd-내 서비스에 여러 인수 제공

분류에서Dev

PHP로 한 번에 여러 프로세스를 처리하는 문제

분류에서Dev

Graph API를 사용하여 Microsoft Teams의 봇 채널에서 봇으로 사용자에게 메시지 보내기

분류에서Dev

봇 메시지 게시 이벤트에서 Slack 사용자 인증

분류에서Dev

Python 요청 모듈-한 번에 여러 URL에 액세스

분류에서Dev

여러 작업 공간을 한 번에 R로로드

Related 관련 기사

  1. 1

    Firebase Cloud Functions-한 번에 여러 사용자에게 서비스 제공

  2. 2

    Python에서 웹봇 브라우저를 사용하여 한 번에 여러 키를 누르는 방법

  3. 3

    하나의 봇 인스턴스에서 여러 봇 제공

  4. 4

    MS 봇 빌더를 사용하여 Slack 채널에서 "imBack"유형으로 버튼을 설정하는 방법

  5. 5

    동일한 IP에서 서비스를 사용하여 여러 포드를 제공하는 Azure AKS Loadbalancer

  6. 6

    동일한 서버에 배치 된 여러 Ear 간의 '서비스'제공

  7. 7

    joomla htacess를 사용하여 URL에서 한 번에 여러 파일을 제한 할 수 있습니까? (경로의 끝은 사용자 번호입니다)

  8. 8

    Python : 거북이에서 한 번에 여러 색상 사용

  9. 9

    Podio에서 한 번의 요청으로 여러 파일 업로드 (제안)

  10. 10

    CSS / LESS에서 동일한 클래스를 연속으로 여러 번 사용

  11. 11

    동일한 프로세스에서 여러 번로드 된 공유 라이브러리의 주소 공간

  12. 12

    Python으로 한 번에 여러 파일 이름 바꾸기

  13. 13

    WooCommerce의 이전 주문 및 전화 번호를 기반으로 게스트 사용자가 같은 주에 특정 제품을 여러 번 구매하도록 제한

  14. 14

    JMeter : 어떻게 한 번에 여러 스레드 그룹의 여러 사용자를 공격 할 수 있습니까?

  15. 15

    여러 ServiceHost에 동일한 서비스 인스턴스를 제공해도 안전합니까?

  16. 16

    JQuery를 사용하여 여러 요소와 클래스 이름을 공유하는 요소에 문자 제한을 어떻게 적용 할 수 있습니까?

  17. 17

    Firebase push () 메서드를 사용하여 사용자에게 고유 한 하위 키 값 제공

  18. 18

    mysql 데이터베이스에서 한 번에 여러 사용자에게 gcm 보내기

  19. 19

    여러 클라이언트에 서비스를 제공하는 웹 API에 대한 Application Insights 전략

  20. 20

    최종 사용자가 제공 한 값에서 ansible에서 여러 VM을 배포하고 싶었습니다.

  21. 21

    Python에서 Discord 봇 프로그래밍-여러 client.events가 있지만 한 번에 하나만 작동합니다.

  22. 22

    Slack Events API : 자체 봇 사용자의 응답을 위해 이벤트가 여러 번 게시됩니다.

  23. 23

    사용자가 두 번째부터 Flask로 구축 된 웹 사이트에서 양식을 제출 한 후 Python 웹 스크래핑 스크립트를 성공적으로 실행할 수 없습니다.

  24. 24

    systemd-내 서비스에 여러 인수 제공

  25. 25

    PHP로 한 번에 여러 프로세스를 처리하는 문제

  26. 26

    Graph API를 사용하여 Microsoft Teams의 봇 채널에서 봇으로 사용자에게 메시지 보내기

  27. 27

    봇 메시지 게시 이벤트에서 Slack 사용자 인증

  28. 28

    Python 요청 모듈-한 번에 여러 URL에 액세스

  29. 29

    여러 작업 공간을 한 번에 R로로드

뜨겁다태그

보관