복원력 있는 Bot에서 VBScript 패키지 사용 예

Microsoft Visual Basic 스크립트를 실행하는 Bot을 작성합니다. Try/Catch 패키지를 사용하여 Bot이 실패할 경우 Bot을 정상적으로 종료하여 충돌에 대한 복원력을 높입니다. 복원력 있는 Bot을 사용하면 현재 Bot에 오류가 발생하더라도 예약 및 대기 중인 Bot을 계속 실행할 수 있습니다.

이 Bot에서는 사용자에게 숫자를 입력하도록 요청합니다. Bot은 숫자를 Microsoft Visual Basic 스크립트에 전달하여 pi를 곱한 값을 반환합니다. 그런 다음 Bot은 결과를 사용자에게 보고합니다. VBScript 작업을 사용하여 외부 스크립트를 가져오거나 봇에 직접 입력할 수 있습니다. 이 예에서는 스크립트를 수동으로 입력합니다. 또한 오류 처리를 추가하여 Bot에 복원력을 추가합니다.

프로시저

  1. Bot을 작성합니다.
    1. 왼쪽 창에서 자동화를 클릭합니다.
      이용 가능한 Bot 목록 및 양식이 표시됩니다.
    2. 새 항목 생성 > Bot을 클릭합니다.
    3. Bot 이름을 입력합니다. MultiplyPi
    4. 다음 폴더 위치를 입력합니다. Bots\TaskBotExample
    5. 생성 및 편집을 클릭합니다.
  2. 변수: nPromptAnswer:
    • 유형: 숫자
    • 이름: nPromptAnswer
  3. 변수: lNumbersForPi:
    • 유형: 목록
    • 하위 유형: 숫자
    • 이름: lNumbersForPi
  4. 저장을 클릭합니다.
  5. 프롬프트 > 작업을 사용하여 사용자에게 숫자를 요청합니다.
    1. 작업 창에서 표시 링크를 클릭합니다.
    2. 프롬프트 값 작업을 더블클릭하거나 드래그하여 봇에 추가합니다.
    3. 프롬프트 창 캡션 필드에 다음을 입력합니다. Any Number
    4. 프롬프트 메시지 필드에 다음을 입력합니다. Enter any number to multiply by pi.
    5. 변수에 값 지정 필드에서 SampleString을 선택합니다.
  6. 저장을 클릭합니다.
  7. 오류 처리기 > 시도 작업을 사용하여 사용자가 숫자를 입력하지 않는 등의 오류가 발생한 경우 봇을 정상적으로 종료합니다.
    1. 오류 처리기 > 시도 작업을 더블클릭하거나 드래그합니다.
    2. 프롬프트 > 작업오류 처리기 > 시도 작업 아래로 드래그합니다.
  8. 저장을 클릭합니다.
  9. SampleString(문자열)을 숫자 값으로 변환합니다.
    1. 문자열 > 숫자로 변환 작업을 더블클릭하거나 드래그하여 오류 처리기: Catch 작업 앞의 마지막 줄에 추가합니다.
    2. 문자열 입력 필드에서 F2 키를 눌러 변수 목록을 열고 SampleString을 선택합니다.
    3. 예, 삽입합니다를 클릭합니다.
    4. 출력을 변수에 지정 필드에서 nPromptAnswer를 선택합니다.
  10. 저장을 클릭합니다.
  11. VBScript에 전달할 숫자 목록의 첫 번째 항목에 숫자 값을 복사합니다.
    1. 목록 > 항목 추가 작업을 더블클릭하거나 드래그하여 오류 처리기: Catch 작업 앞의 마지막 줄에 추가합니다.
    2. 목록 변수 필드에서 lNumbersForPi를 선택합니다.
    3. 추가할 항목 필드에서 nPromptAnswer를 선택합니다.
  12. 저장을 클릭합니다.
  13. VBScript > 열기 작업을 사용하여 Visual Basic 소스 코드를 제공합니다.
    1. VBScript 열기 작업을 더블클릭하거나 드래그하여 오류 처리기: Catch 작업 앞의 마지막 줄에 추가합니다.
    2. VBScript 옵션에서 수동 입력을 선택합니다.
    3. 다음 코드를 복사하여 여기에 스크립트 입력 필드에 붙여넣습니다.
      Dim Arg, var1, var2
      Set Arg = WScript.Arguments
      Function MultiplyPi(Arg)
        var1 = Arg(0)
        var2 = 3.14159
        MultiplyPi = cdbl(var1)*var2
      End Function
  14. 저장을 클릭합니다.
  15. VBScript > 함수 실행 작업을 사용하여 스크립트를 실행합니다.
    1. VBScript 함수 실행 작업을 더블클릭하거나 드래그하여 오류 처리기: Catch 작업 앞의 마지막 줄에 추가합니다.
    2. 실행할 함수의 이름 입력(선택 사항)MultiplyPi를 입력합니다.
    3. 매개변수(선택 사항) 필드에서 lNumbersForPi 변수를 선택합니다.
    4. 출력을 변수에 지정(선택 사항) 필드에서 SampleString을 선택합니다.
  16. 저장을 클릭합니다.
  17. VBScript > 닫기 작업을 사용하여 세션을 종료합니다.
    1. VBScript 닫기 작업 을 더블클릭하거나 드래그하여 오류 처리기: Catch 작업 앞의 마지막 줄에 추가합니다.
  18. 저장을 클릭합니다.
  19. VBScript에서 생성된 답변을 화면에 출력합니다.
    1. 메시지 상자 작업을 더블클릭하거나 드래그하여 오류 처리기: Catch 작업 앞의 마지막 줄에 추가합니다.
    2. 표시할 메시지 입력 필드에 Pi times your number is: 을 입력한다음 F2를 눌러 변수 목록을 엽니다. SampleString을 선택합니다.
    3. 예, 삽입합니다를 클릭합니다.
  20. 저장을 클릭합니다.
  21. 오류가 발생하면 사용자에게 알리고 Bot을 정상적으로 종료합니다.
    1. 오류 처리기: Catch AllErrors 작업을 한 번 클릭하여 봇에서 강조 표시되도록 합니다.
    2. 메시지 상자 작업을 더블클릭하거나 드래그하여 마지막 봇 작업으로 삽입합니다.
    3. 표시할 메시지 입력 필드에 다음을 입력합니다. Bot failed. Please be sure to enter only numbers.
  22. 저장을 클릭합니다.
  23. 코드를 텍스트로만 보려면 목록 탭을 클릭합니다.
    코드는 다음과 같습니다.
    Start
    Error handler: Try
        Prompt: For value during bot execution and assign the value $SampleString$
        String: To number Convert string $SampleString$ to a number and assign it to number variable $nPromptAnswer$
        List: Add item $nPromptAnswer$ to $lNumbersForPi$
        VBScript: Open VBScript manual script of 7 lines
        VBScript: Run function "MultiplyPi"
        VBScript: Close VBScript "Default"
        Message box "Pi times your number is: $SampleString$"
    Error handler: Catch AllErrors
        Message box "Bot failed.  Please be sure to enter only numbers."
    End
  24. Bot을 실행합니다.
  25. Bot이 성공적으로 실행되면 값을 입력하는 프롬프트 창이 열리고 메시지 상자에 계산된 숫자가 표시됩니다. 메시지를 확인하고 닫기를 클릭합니다.
    프롬프트 창에 값을 입력하십시오.
    메시지 상자에 표시되는 계산된 값
    Bot을 다시 실행하고 숫자 대신 문자를 입력하여 Bot의 복원력을 테스트할 수 있습니다.