2017-04-27 5 views
0

다시 텍스트 링크를 만드는 것입니다. 다른 명령에 "링크"를 반환하는 일부 명령을 원합니다.은 가능한 여유 봇에 내가 성공적으로 명령의 긴 목록에 응답 할 수 <a href="https://github.com/slack-ruby/slack-ruby-client" rel="nofollow noreferrer">https://github.com/slack-ruby/slack-ruby-client</a></p> <p>내 봇을 사용하여 여유 봇을 배포 한 로봇

그래서 예를 들어 내가 좋아하는 일이있을 수 있습니다 봇은 응답 그리고

Bot: "Result for operation one with arguments..."

를 반환합니다

Me: Bot do_operation_one arguments=....

을 나는 수도 체인 같은 다른 명령에 대한 응답, 뭔가 :

Bot do_operation_two arguments="Result_for_operation_one"

봇이 operation_two/operation_three 등을 입력 할 필요없이 호출 할 수있는 필수 매개 변수를 포함하는 다른 작업에 대한 링크가 포함 된 결과를 반환 할 수 있다면 훨씬 더 편리 할 것입니다. 사용하여, 그것을 적용하는 이상적으로 각 버전은 다른 작업을 할 수

Me: bot list version

Bot: 1.0,1.1,1.2,1.3,.....

: 내 특정 경우

내 봇 봇에서 버전의 목록을 반환하고 매개 변수로 버전 :

Bot: 1.0: link_operation1, link_operation2, link_operation3 ... 1.1: link_operation1, link_operation2, link_operation3 ... 1.2: link_operation1, link_operation2, link_operation3 ...

이것은 느슨한 봇에서 가능합니까?

답변

0

기술적으로 "다른 명령"이라고하는 링크를 제공 할 수는 있지만 더 나은 해결책이 있다고 생각합니다.

동적으로 생성 된 HTML 링크를 응답에 포함시켜 스크립트에 연결할 수는 있지만 그 접근법에는 두 가지 문제가 있습니다. 1) 해당 링크는 항상 GET 요청이므로 해당 링크에 포함 된 모든 컨텍스트 정보 (예 : 사용자 ID)가 사용자에게 표시됩니다. 이것은 보안 문제 일 수 있습니다. 이 주제에 대한 전체적인 논의가 있지만 한 가지 해결책은 URL의 모든 매개 변수를 암호화하는 것입니다. 2) 링크를 클릭하면 사용자가 수동으로 다시 닫아야하는 브라우저 창이 열립니다. 이것은 쇼 스토퍼 일 필요는 없지만 일부 사용자를 혼란스럽게하거나 불쾌하게 만들 수 있습니다.

나는 이러한 문제 때문에 더 안전하고 사용자 친화적 인 다른 접근 방식을 제안합니다.

링크를 제공하는 대신 제안 된 "다른 명령"목록을 message buttons 또는 message menu으로 제공하는 것이 좋습니다.

꽤 많은 "서로 다른 명령"이있는 것처럼 보입니다. 모든 "다른 명령"의 동적으로 생성 된 드롭 다운 목록이 가장 잘 작동한다고 생각합니다.