sync-protocol-service
  3. SSVC_TYPE_SYNC_PHONEBOOK_READY_NOTI 준비 요청에 대한 노티피케이션 등록
  5. SSVC_TYPE_SYNC_PHONEBOOK_SND_NOTI      전송 요청에 대한 노티피케이션 등록
  SSVC_TYPE_SYNC_PHONEBOOK_READY_OK_NOTI (기존 소스에서는 사용하지 않음)

  1. SSVC_TYPE_SYNC_PHONEBOOK_READY_REQ 콜
  2. SSVC_TYPE_SYNC_PHONEBOOK_READY_RES 응답
      30초 카운트 시작
  4. SSVC_TYPE_SYNC_PHONEBOOK_READY_OK_REQ 콜
  SSVC_TYPE_SYNC_PHONEBOOK_READY_RES (기존 소스에서는 사용하지 않음)

notification-service
  3. SSVC_TYPE_SYNC_PHONEBOOK_READY_NOTI
      dispatch(PC 동기화 준비 완료 요청)
  5. SSVC_TYPE_SYNC_PHONEBOOK_SND_NOTI
    dispatch(데이터 파싱)

데이터 파싱
  dispatch(수신 완료 요청)

createGroupAndBuddy 액션 확인


SSVC_TYPE_SYNC_PHONEBOOK_READY_RES
  phoneBookReadyResponse -> syncStartDate에 현재 시간을 저장



phoneBook state management
  1. export interface PhoneBookState extends EntityState<PhoneBookInfo> {
    syncDate: string;
   }
  2. legacy state object code added
    phoneBook: PhoneBookState;
  3. adapterPhoneBook 생성
  4. phoneBookInitialState 스테이트 초기화 
  5. init state object code added
  6. phoneBook select code added
  7. selector function modify
    create selector (phoneBook)

reducer management

액션
  폰 동기화 요청
    props x
  폰 동기화 응답
    동기화 시작 시간 
    동기화 유효 시간 
  폰 동기화 실패
    state 동기화 실패 결과값 수정
  폰 동기화 준비 완료 요청
    props x
  폰 동기화 준비 완료 응답
    응답 확인 
  폰 동기화 준비 완료 실패
    state 동기화 실패 결과값 수정
  폰 동기화 전송 노티
    state 
      현재 시간 - 동기화 시작 시간 < 유효시간 체크
        전체 개수
        현재 개수
        페이지 개수
        dataList 처리
      else
        state 동기화 실패 결과값 수정
  폰 동기화 완료 요청
    state 값 조회

  폰 동기화 완료 응답
  폰 동기화 완료 실패

state 생성
  폰북 리스트 
    주소록 번호
  동기화 시작 시간
  동기화 완료 시간
  동기화 유효 시간

{주소록정보}	
  주소록SEQ
  사진파일
  이름
  태그
  번호1
  번호2
  번호3
  번호4
  번호5
  이메일	
  메모	
  ActiveYN

contact json model
  이름 
  폰번호: string[]
  image


{
  'totalcount': 100,
  'contact': [
    {
      "name":"박성균", 
      "phone":[
      "01091568989",
      "022563212"
      ],
      "image":"~~~~~~"
    },
  ]
}

파일 정보 조회 
0: {roomSeq: "13", eventSeq: 48, seq: 716, senderSeq: 9829, type: "F", …}
1: {roomSeq: "13", eventSeq: 49, seq: 717, senderSeq: 9829, type: "F", …}
2: {roomSeq: "13", eventSeq: 36, seq: 580, senderSeq: 9829, type: "b", …}
3: {roomSeq: "13", eventSeq: 37, seq: 581, senderSeq: 9829, type: "b", …}
4: {roomSeq: "13", eventSeq: 43, seq: 709, senderSeq: 9824, type: "b", …}
5: {roomSeq: "13", eventSeq: 44, seq: 710, senderSeq: 9824, type: "b", …}
6: {roomSeq: "13", eventSeq: 42, seq: 708, senderSeq: 9824, type: "I", …}
7: {roomSeq: "13", eventSeq: 45, seq: 711, senderSeq: 9829, type: "F", …}
8: {roomSeq: "13", eventSeq: 46, seq: 714, senderSeq: 9829, type: "F", …}
9: {roomSeq: "13", eventSeq: 47, seq: 715, senderSeq: 9829, type: "V", …}
10: {roomSeq: "13", eventSeq: 9, seq: 41, senderSeq: 9829, type: "I", …}
11: {roomSeq: "13", eventSeq: 27, seq: 296, senderSeq: 9829, type: "I", …}
12: {roomSeq: "13", eventSeq: 28, seq: 297, senderSeq: 9829, type: "I", …}
13: {roomSeq: "13", eventSeq: 31, seq: 574, senderSeq: 9829, type: "b", …}
14: {roomSeq: "13", eventSeq: 32, seq: 576, senderSeq: 9829, type: "b", …}
15: {roomSeq: "13", eventSeq: 33, seq: 577, senderSeq: 9829, type: "b", …}
16: {roomSeq: "13", eventSeq: 34, seq: 578, senderSeq: 9829, type: "b", …}
17: {roomSeq: "13", eventSeq: 35, seq: 579, senderSeq: 9829, type: "b", …}

20일 와서 할일
  주소록 동기화 테스트
    모바일로 테스트 하지 못할경우
      JSON 데이터 만들어서 테스트 진행
  state
  reducer
  action
  sync-service 
  테스트 후 수정