1 / 18

이번 시간에는 ...

이번 시간에는. 지난 시간까지 2 회차에 걸쳐 WMLScript 의 구성과 문법 , WMLScript 표준 Library 및 그 사용 예제와 WMLScript 로 구성하는 WAP 숫자 맞추기 데모 프로그램에 대해서 알아보았습니다 . 이번 시간에는 2 회차에 걸쳐 , WTAI 를 이용한 전화부가 서비스 개발에 대해서 학습해 보도록 하겠습니다. 학습 목표. 19 회차 강의에서 다루게 되는 내용은 다음과 같습니다. WTAI 개발 - I. 이번 장의 학습 목표.

Download Presentation

이번 시간에는 ...

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 이번 시간에는... 지난 시간까지 2회차에 걸쳐 WMLScript의 구성과 문법, WMLScript 표준 Library 및 그 사용 예제와 WMLScript로 구성하는 WAP 숫자 맞추기 데모 프로그램에 대해서 알아보았습니다. 이번 시간에는 2회차에 걸쳐, WTAI를 이용한 전화부가 서비스 개발에 대해서 학습해 보도록 하겠습니다.

  2. 학습 목표 19 회차 강의에서 다루게 되는 내용은 다음과 같습니다. WTAI 개발 - I 이번 장의 학습 목표 WMLScript 보안 Library에 대해 알 수 있다. WTAI Public Library에 대해 알 수 있다. WTAI Voice Call Library에 대해 알 수 있다. WTAI Network Message Library에 대해 알 수 있다.

  3. 부인봉쇄 웹서버 클라이언트 WMLScript Function (Crypto.signText) 전자서명된 문서 (WAP signed_content) Signed data (PKCS#7 포맷) 구매신청서 서명검증 WAP 게이트웨이 서명용 비밀키 WIM - 비밀키 보관 - 서명 계산 PKCS#7 : Cryptographic Message Syntax Std. WMLScript 보안 Library • WMLScript Crypto Library • WAP 보안 기술 • WAP 보안은 네트워크 전송 망 보안이라 할 수 있는 WTLS (Wireless Transport Layer Security)와 통신할 데이터 자체를 암호화하는 애플리케이션 레이어에서의 보안인 WALS (Wireless Application Layer Security), 그리고 WIM (WAP Identity Module)으로 구분 • WALS (전자서명) 는 WML Script에서 WMLScript Crypto 암호화 Library를 사용 WMLScript Crypto Library는 일반적으로 국가 보안 표준으로 채택된 인증 방식을 구현한 보안 업체 제공 보안 Library 이용

  4. WMLScript 보안 Library • WMLScript Crypto Library • WMLScript Cryptographic Library 함수 • WMLScript Crypto Library는 signText() 함수를 제공하며, signText()는 사용자 입력 값 등 통신에 사용하는 데이터에 대한 암호화 기능 제공 • WMLScript Crypto Library 형식 : Crypto.signText( stringTosign, option, keyIDtype, keyID )

  5. WMLScript 보안 Library • WMLScript Crypto Library • WMLScript Cryptographic Library 함수 • WMLScript Crypto Library에서 데이터 암호화에 사용하는 SHA-1 전자 서명 HASH 데이터 암호화 방식 사용 • Crypto.signText(..) 함수 Return 값은 Base-64(RFC1521)로 인코딩된 Signed 컨텐츠 Return • WMLScript Cryptographic Library 사용 예 var foo = Crypto.signText( "Bill of Sale \n // stringTosign 파라미터 ------------------ \n 3 Bolognese $18.00 \n 1 Pepperoni $7.00 \n 4 Lemonade $6.00 \n ------------------ \n Total Price $31.00", 0, // option 파라미터 0=0x0000 1, // keyIDtype 파라미터, 1=서비스 자체사용 보안 Key "\x37\x00\xB6\x96\x37\x75\xE3\x93\x48\x74\xD3\x98\x47\x53\x94\x34\x58\x97\xB5\xD6“ ); // keyIDtype=1에 상응하는 20Byte HASH 보안 Key 값

  6. WTAI 전화기능 Library • WTAI Library • WTAI는 Wireless Telephony Application Interface의 약자로, 전화 부가 기능 및 제어를 위한 WTA 서비스 구현을 위해 제공하는 WTA용 API (Application Programming Interface) Set • 전화 통신 제어를 위한 네트워크 WTAI와 단말기 자체 전화 기능을 위한 Public WTAI로 구성 • WTAI Library의 사용은 WML 문서에서는 URI (Uniform Resource Identifier) 링크 방식, WMLScript에서는 WTAI Library 함수 호출 방식 사용 • WTAI Public Library 함수 • WTAI Network Library 함수

  7. WTAI 전화기능 Library • WTAI Public Library • WTAI Public Library 함수 • WTAI Public Library 함수 makeCall 사용 예 // 011-555-4637로 전화걸기 var flag = WTAPublic.makeCall(“0115554367"); WMLScript에서 Library Call 사용 Return 값은 flag 에 저장 // 011-555-4637로 전화걸기 <go href="wtai://wp/mc;5554367!resultvar"/> WML 문서에서 URI 사용 Return 값은 resultvar 에 저장 • WTAI Public Library 함수 실행 실패 Return 값 –다음 값이 아닌 경우, 전화 걸기 성공 • "-105" = 상대방 통화 중 • "-106" = 이동통신 망 사용 불가 (“연결할수없습니다” 메시지 출력) • "-107" = 상대방이 전화받지 않은 경우 • "-200" = 프로그램 오류 • "-1" = 그밖의 정의되지 않은 오류 발생

  8. WTAI 전화기능 Library • WTAI Public Library • WTAI Public Library 함수 addPBEntry 사용 예 • 다음 예제에서 addPBEntry의 return 값은 WMLScript의 경우, flag에, WML 문서의 경우 resultvar에 저장된다. 전화번호 저장이 성공하면 Return 값은 “” 또는 실행 실패 시 Return 값 외의 값을 가진다. // 011-555-4637 전화번호를 김갑돌로 저장 var flag = WTAPublic.addPBEntry(“0115554367", “김갑돌"); WMLScript에서 Library Call 사용 // 011-555-4637 전화번호를 김갑돌로 저장 <go href="wtai://wp/ap;5554367;김갑돌!resultvar"/> WML 문서에서 URI 사용 • WTAI Public Library 함수 실행 실패 Return 값 • "-100" = 저장할 이름 값이 너무 길거나 올바른 저장 이름이 아닌 경우 • "-102" = 저장할 전화번호가 너무 긴 경우 • "-103" = 단말기의 전화번호부 (Phonebook)에 저장을 위한 정보 기록 작업 실패 • "-104" = 단말기의 전화번호부 (Phonebook) 용량 초과 • "-200" = 프로그램 오류 • "-1" = 그 밖의 정의되지 않은 오류 발생

  9. WTAI 전화기능 Library • WTAI Voice Call Library • WTAI Network Voice Call Library 함수는 걸려온 전화 (Incoming Call) 또는 전화 걸기 (Outgoing Call)에 대한 Call 제어 기능 제공 • WTAI Network Library 사용을 위한 Incoming & Outgoing Call State 존재 • Voice Incoming Call State Model Incoming Call 전화를 받고 끊을 때까지 4개 State 거치며 각 State는 사용자 통화버튼 클릭과 같은 Event에 의해 다음 Event로 전이 • Voice Outgoing Call State Model Outgoing Call은 6개의 State를 거치며 각 State는 Event에 의해 다음 State로 전이

  10. Call Object • Voice Call Handle • 통화를 위한 각각의 Call에 대한 제어를 위해 각각의 Call Handle을 객체화(Object)하여 처리  걸려온 전화, 전화 걸기 행위 등 Voice Call 관련 행위에 Handle을 부여하여, 각 Handle을 조작할 수 있도록 하여 Voice Call 제어 • Call Handle 구성 • Number • Status • Mode • Name, Duration Outgoing Call Incoming Call Outgoing Call WTAI 전화기능 Library • WTAI Voice Call Library • WTAI Network Voice Call Library는 URI를 지원 하지 않으며, 따라서 WML 문서에서 직접 호출하여 사용할 수 없고, WMLScript를 통해 사용해야 함 • Call Handle 객체 구성 • Call Handle은 Number, Status, Mode, (Name, Duration) Field를 가짐 • Number Field는 Incoming 또는 Outgoing Call 전화 번호 저장 • Mode Field는 true (Keep) 또는 false (Drop) 값을 가지며, true일 경우, Call 계속 시도, false 일 경우, Call 종료 (Drop)을 의미 • Name은 (전화번호) Number 에 해당하는 (사람, 장소 등 전화번호) 이름 • Status는, 1 = "call pending", 2 = "initiating call", 3 = "waiting for ringing“, 4 = "waiting for answer", 5 = "in call", 6 = "end" 상태

  11. WTAI 전화기능 Library • WTAI Voice Call Library • Voice Call Control 함수 (Cont’)

  12. WTAI 전화기능 Library • WTAI Voice Call Library • Voice Call Control 함수

  13. WTAI 전화기능 Library • WTAI Network Messages Library • WTAI Network Messages Library는 이동통신망으로 SMS 단문 메시지 전송 및 제어를 지원하는 API 함수로 구성되며, URI를 지원 하지 않아 WML 문서에서 직접 호출하여 사용할 수 없다 • Voice Call Handle과 마찬가지로 Sending & Receiving Network Message에 대한 Handle을 가진다. • Network Message Handle 객체 구성 • text Field : 네트워크 메시지 Body를 구성하는 문자열 • tstamp Field : Incoming 메시지 도착 시간 String, Outgoing 메시지 경우 Null String 값 • address Field : Incoming 메시지의 경우 메시지 전송지 주소 (Originating Address), Outgoing 메시지는 메시지 도착지 주소 (Destination Address) String 포함 • read Field : true (메시지 읽음) 또는 false (메시지 읽지 않음) 값 • status Field : 1 = "unsent" state, 2 = "received" state, 3 = "end" state • Incoming & Outgoing Network Message Model

  14. WTAI 전화기능 Library • WTAI Network Messages Library • Network Message Control 함수 (Cont’)

  15. WTAI 전화기능 Library • WTAI Network Messages Library • Network Message Control 함수

  16. 요약 정리 이번 시간에 소개했던 내용을 정리해 봅시다. WMLScript의 보안 Library에 대해 알아 보았습니다. 전화 받기, 전화 걸기 기능을 제공하는 WTAI Public Library에 대해 알아보았습니다. 다양한 전화 통신 제어를 위한 WTAI Voice Call Library에 대해 알아 보았습니다. 문자 메시지 통신 제어를 위한 WTAI Network Message Library에 대해 알아 보았습니다. 다음 시간에는 WTAI 개발 - II에 대하여 학습하시게 될 것입니다.

  17. 평가 하기 문제1 WMLScript가 제공하는 보안 라이브러리는 무엇입니까? 정답은 다음과 같습니다. WMLScript Crypto Library 해설내용: WMLScript Crypto Library는 signText() 함수를 제공하며, 사용자 입력 값 등 통신에 사용하는 데이터에 대한 암호화 기능을 제공하여 애플리케이션 수준의 보안 기능을 제공합니다. 문제2 WTAI Public Library가 제공하는 기능을 말해보시오 정답은 다음과 같습니다. 전화 걸기, 전화 받기, DTMF 전송 기능 해설내용: WTAI Public Library에는 전화 걸기 함수, 전화 받기 함수 및 DTMF 전송 기능 함수가 있어, 기본적인 전화 통신을 위한 기능을 제공하며, URI 및 라이브러리 함수를 제공하여, WML 문서와 WMLScript에서 모두 사용이 가능합니다.

  18. 평가 하기 Voice Call Handle은 무엇입니까? 문제3 정답은 다음과 같습니다. Voice Call을 객체화하여 각 Voice Call을 구분할 수 있는 지정 값 해설내용: WTAI에서는 Voice Call을 객체화하여 각 Voice Call을 구분할 수 있는 값을 지정하는데 이를 Voice Call 핸들이라 합니다. 따라서 Voice Call 핸들에는 전화번호, 전화 스테이트 정보, 이름 정보와 함께, 전화 모드 정보가 포함됩니다.

More Related