dd
This commit is contained in:
parent
698e052f7f
commit
1514e7fd88
Binary file not shown.
28
documents/protocol/fileInfo.txt
Normal file
28
documents/protocol/fileInfo.txt
Normal file
|
@ -0,0 +1,28 @@
|
|||
export const SVC_TYPE_FILE = 53; // File
|
||||
export const SSVC_TYPE_FILE_INFO_REQ = 1; // File 정보 전송 요청
|
||||
export const SSVC_TYPE_FILE_INFO_DATA = 2; // File 정보 Data
|
||||
export const SSVC_TYPE_FILE_INFO_CHECK_DATA = 3; // File 다운로드 체크 Data
|
||||
export const SSVC_TYPE_FILE_INFO_RES = 4; // File 정보 전송 응답
|
||||
export const SSVC_TYPE_FILE_DOWN_CHECK_REQ = 11; // File 다운로드 완료 요청
|
||||
export const SSVC_TYPE_FILE_DOWN_CHECK_RES = 12; // File 다운로드 완료 응답
|
||||
|
||||
export const decodeInfoCheckData: ProtocolDecoder<InfoCheckData> = (
|
||||
message: ProtocolMessage
|
||||
) => {
|
||||
const fileDownloadInfos: FileDownloadInfo[] = [];
|
||||
message.bodyList.forEach(fileInfo => {
|
||||
const info = fileInfo.split(BodyStringDivider);
|
||||
fileDownloadInfos.push({
|
||||
roomSeq: info[0],
|
||||
seq: Number(info[1]),
|
||||
userSeq: Number(info[2]),
|
||||
userName: info[3],
|
||||
downloadDate: info[4],
|
||||
isDownload: info[5] === 'Y' ? true : false
|
||||
});
|
||||
});
|
||||
|
||||
return decodeProtocolMessage(message, {
|
||||
fileDownloadInfos
|
||||
} as InfoCheckData);
|
||||
};
|
260
documents/type/environment.type.ts
Normal file
260
documents/type/environment.type.ts
Normal file
|
@ -0,0 +1,260 @@
|
|||
export type UCapRuntime = 'browser' | 'electron';
|
||||
|
||||
export interface Environment {
|
||||
production: boolean;
|
||||
runtime?: UCapRuntime;
|
||||
title: string;
|
||||
|
||||
companyConfig: {
|
||||
companyGroupCode: string;
|
||||
fixedCompanyCode: string;
|
||||
};
|
||||
|
||||
productConfig: {
|
||||
productId: string;
|
||||
productName: string;
|
||||
authentication: {
|
||||
usePrivateInformationAgree: boolean;
|
||||
rememberMe: {
|
||||
use: boolean;
|
||||
};
|
||||
autoLogin: {
|
||||
use: boolean;
|
||||
};
|
||||
};
|
||||
updateCheckConfig: {
|
||||
deviceType: DeviceType;
|
||||
intervalHour: number;
|
||||
};
|
||||
defaultSettings: Settings;
|
||||
|
||||
CommonSetting: {
|
||||
/** 파일업로드 제한 사이즈 (mb) */
|
||||
defaultFileAllowSize: number;
|
||||
|
||||
/** 내 프로필 이미지 수정 가능 여부 */
|
||||
editableProfileImage: boolean;
|
||||
|
||||
/** 소속부서(내부서) 그룹핑 사용여부 */
|
||||
useMyDeptGroup: boolean;
|
||||
/** 소속부서(내부서) 고정 그룹 SEQ */
|
||||
myDeptGroupSeq: number;
|
||||
/** 삭제,수정 불가 그룹 Seqs:number[] */
|
||||
fixedGroupSeqs: number[];
|
||||
|
||||
/** 타이머대화방 사용유무 */
|
||||
useTimerRoom: boolean;
|
||||
/** 타이머대화방 기본 interval */
|
||||
timerRoomDefaultInterval: number;
|
||||
|
||||
/** 최대 대화방 참여인원 */
|
||||
maxChatRoomUser: number;
|
||||
/** 대용량대화 기준 */
|
||||
masstextLength: number;
|
||||
|
||||
/** 대화방 초기 로딩 이벤트 갯수 */
|
||||
eventRequestInitCount: number;
|
||||
/** 대화방 이벤트 조회 개수 */
|
||||
eventRequestDefaultCount: number;
|
||||
|
||||
/** 여기까지 읽음을 보여줄 최소 이벤트 개수 (show: over) */
|
||||
readHereShowMinimumEventCount: number;
|
||||
/** 여기까지 읽음을 보여줄 최대 이벤트 개수 (show: under) */
|
||||
readHereShowMaximumEventCount: number;
|
||||
/** 여기까지 읽음이 보여질때 대화방 이벤트 조회 개수. */
|
||||
readHereEventRequestCount: number;
|
||||
};
|
||||
};
|
||||
|
||||
customConfig?: any;
|
||||
|
||||
commonApiModuleConfig: CommonApiModuleConfig;
|
||||
publicApiModuleConfig: PublicApiModuleConfig;
|
||||
externalApiModuleConfig: ExternalApiModuleConfig;
|
||||
messageApiModuleConfig: MessageApiModuleConfig;
|
||||
promptApiModuleConfig: PromptApiModuleConfig;
|
||||
piModuleConfig: PiModuleConfig;
|
||||
protocolModuleConfig: ProtocolModuleConfig;
|
||||
nativeModuleConfig: NativeModuleConfig;
|
||||
}
|
||||
|
||||
export const commonApiUrls: CommonApiUrls = {
|
||||
fileProfileSave: '/Common/FileProfileSave.aspx',
|
||||
fileTalkDownload: '/Common/FileTalkDownload.aspx',
|
||||
fileTalkSave: '/Common/FileTalkSave.aspx',
|
||||
fileTalkShare: '/Common/FileTalkShare.aspx',
|
||||
massTalkDownload: '/Common/MassTalkDownload.aspx',
|
||||
massTalkSave: '/Common/MassTalkSave.aspx',
|
||||
transMassTalkDownload: '/Common/TransMassTalkDownload.aspx',
|
||||
transMassTalkSave: '/Common/TransMassTalkSave.aspx',
|
||||
translationReq: '/Common/TranslationReq.aspx',
|
||||
translationSave: '/Common/TranslationSave.aspx'
|
||||
};
|
||||
|
||||
http://15.164.139.105/WebFile/GUC100/2020/01/29/MA_9829_111249476815_2.png.thumb.jpg
|
||||
|
||||
export const publicApiUrls: PublicApiUrls = {
|
||||
versionInfo2: '/Pub/verinfo2.aspx',
|
||||
updateInfo: '/Pub/updinfo.aspx'
|
||||
};
|
||||
export const externalApiUrls: ExternalApiUrls = {
|
||||
checkUserInfoEx: '/Extern/CheckUserInfoEx.aspx',
|
||||
companyList: '/Extern/CompanyList.aspx',
|
||||
tokenUpdate: '/Extern/TokenUpdate.aspx',
|
||||
urlInfo: '/Extern/urlinfo.aspx'
|
||||
};
|
||||
export const messageApiUrls: MessageApiUrls = {
|
||||
retrieveSendMessageList: '/uCapMsg/msg/retrieveSendMessageList.do',
|
||||
retrieveRecvMessageList: '/uCapMsg/msg/retrieveRecvMessageList.do',
|
||||
retrieveReservationMessageList:
|
||||
'/uCapMsg/msg/retrieveReservationMessageList.do',
|
||||
retrieveSearchMessage: '/uCapMsg/msg/retrieveSearchMessage.do',
|
||||
|
||||
sendNewMessage: '/uCapMsg/msg/sendNewMessage.do',
|
||||
|
||||
retrieveMessageDetail: '/uCapMsg/msg/retrieveMessageDetail.do',
|
||||
readMessage: '/uCapMsg/msg/readMessage.do',
|
||||
retrieveReadCheck: '/uCapMsg/msg/retrieveReadCheck.do',
|
||||
cancelMessage: '/uCapMsg/msg/cancelMessage.do',
|
||||
cancelReservationMessage: '/uCapMsg/msg/cancelReservationMessage.do',
|
||||
retrieveResourceFile: '/uCapMsg/msg/retrieveResourceFile.do',
|
||||
|
||||
deleteMessage: '/uCapMsg/msg/deleteMessage.do',
|
||||
|
||||
saveMyMessage: '/uCapMsg/msg/saveMyMessage.do',
|
||||
retrieveMyMessage: '/uCapMsg/msg/retrieveMyMessage.do',
|
||||
deleteMyMessage: '/uCapMsg/msg/deleteMyMessage.do',
|
||||
editMyMessage: '/uCapMsg/msg/editMyMessage.do',
|
||||
|
||||
editReservationMessageEx: '/uCapMsg/msg/editReservationMessageEx.do',
|
||||
|
||||
sendCopyMessage: '/uCapMsg/msg/sendCopyMessage.do',
|
||||
|
||||
retrieveUnreadCount: '/uCapMsg/msg/retrieveUnreadCount.do',
|
||||
|
||||
retrieveNoticeList: '/uCapMsg/notice/retrieveNoticeList.do'
|
||||
};
|
||||
export const promptUrls: PromptUrls = {
|
||||
sendCall: '/uCapPrompt/api/call/clicktocall'
|
||||
};
|
||||
export const piUrls: PiUrls = {
|
||||
login2: '/uCapPi/login2',
|
||||
userTermsAction: '/uCapPi/user/terms.action',
|
||||
passwordInitStep1: '/uCapPi/password/initStep1',
|
||||
passwordChange: '/uCapPi/password/change',
|
||||
policyTotal: '/uCapPi/policy/total',
|
||||
policyService: '/uCapPi/policy/service',
|
||||
policyPrivacy: '/uCapPi/policy/privacy',
|
||||
tokenCheck: '/uCapPi/tokenCheck',
|
||||
userMobileAuth: '/uCapPi/user/mobileAuth',
|
||||
userUserAuth: '/uCapPi/user/userAuth',
|
||||
userCall: '/uCapPi/user/call',
|
||||
userMoblieCallAuth: '/uCapPi/user/moblieCallAuth',
|
||||
eventSendEventMail: '/uCapPi/event/sendEventMail',
|
||||
userMobileInitial1: '/uCapPi/user/mobileInitial1',
|
||||
eventSendInvite: '/uCapPi/event/sendInvite',
|
||||
userRoom: '/uCapPi/user/room',
|
||||
scheduleRetrieveScheduleList: '/uCapPi/schedule/retrieveScheduleList',
|
||||
userScreenCapture: '/uCapPi/user/screenCapture'
|
||||
};
|
||||
export const protocolUrls: ProtocolUrls = {
|
||||
base: '/'
|
||||
};
|
||||
|
||||
export const commonApiacceptableFileExtensions: string[] = [
|
||||
// 문서1
|
||||
'csv',
|
||||
'd01',
|
||||
'doc',
|
||||
'docx',
|
||||
'dot',
|
||||
'dotx',
|
||||
'hwp',
|
||||
'log',
|
||||
'one',
|
||||
'pdf',
|
||||
'pot',
|
||||
'potx',
|
||||
'pps',
|
||||
'ppsx',
|
||||
'ppt',
|
||||
'pptx',
|
||||
'ps',
|
||||
// 문서2
|
||||
'rtf',
|
||||
'txt',
|
||||
'vcf',
|
||||
'xls',
|
||||
'xlsx',
|
||||
'xlt',
|
||||
'xltx',
|
||||
'xlsm',
|
||||
'ods',
|
||||
// CAD
|
||||
'asc',
|
||||
'dwg',
|
||||
'dws',
|
||||
'dwt',
|
||||
'dxf',
|
||||
'pgp',
|
||||
'plt',
|
||||
// MAC
|
||||
'pages',
|
||||
'keynote',
|
||||
// 압축
|
||||
'7z',
|
||||
'a01',
|
||||
'a02',
|
||||
'a03',
|
||||
'alz',
|
||||
'egg',
|
||||
'gz',
|
||||
'rar',
|
||||
'tar',
|
||||
'zip',
|
||||
// 오디오
|
||||
'aac',
|
||||
'aiff',
|
||||
'flac',
|
||||
'm4a',
|
||||
'mp2',
|
||||
'mp3',
|
||||
'mpega',
|
||||
'mpga',
|
||||
'ogg',
|
||||
'wma',
|
||||
'wav',
|
||||
// 플래쉬
|
||||
'fla',
|
||||
'flv',
|
||||
'swf',
|
||||
// 이미지
|
||||
'ai',
|
||||
'bmp',
|
||||
'cdr',
|
||||
'emf',
|
||||
'eps',
|
||||
'gif',
|
||||
'jpeg',
|
||||
'jpg',
|
||||
'png',
|
||||
'psd',
|
||||
'tif',
|
||||
'tiff',
|
||||
'wmf',
|
||||
// 동영상
|
||||
'3gp',
|
||||
'avi',
|
||||
'm4v',
|
||||
'mkv',
|
||||
'mov',
|
||||
'mp4',
|
||||
'mpeg',
|
||||
'mpg',
|
||||
'rv',
|
||||
'ts',
|
||||
'webm',
|
||||
'wmv',
|
||||
// 폴더전송용
|
||||
'zdr'
|
||||
];
|
56
documents/type/event.type.ts
Normal file
56
documents/type/event.type.ts
Normal file
|
@ -0,0 +1,56 @@
|
|||
export enum EventType {
|
||||
/** J: 대화참여 */
|
||||
Join = 'J',
|
||||
/** C: 대화전송 */
|
||||
Character = 'C',
|
||||
/** F: 파일전송 */
|
||||
File = 'F',
|
||||
/** S: 스티커 */
|
||||
Sticker = 'S',
|
||||
/** T: Mass Text */
|
||||
MassText = 'T',
|
||||
/** E: 대화퇴장 */
|
||||
Exit = 'E',
|
||||
/** P: 일정 */
|
||||
Plan = 'P',
|
||||
/** V: 화상회의 */
|
||||
VideoConference = 'V',
|
||||
/** L: 링크(Legacy) */
|
||||
Link = 'L',
|
||||
/** R: 대화방명변경 */
|
||||
RenameRoom = 'R',
|
||||
/** Y: 번역 */
|
||||
Translation = 'Y',
|
||||
/** Z: 대용량 번역 */
|
||||
MassTranslation = 'Z',
|
||||
/** U: 회수된 메시지 */
|
||||
RecalledMessage = 'U',
|
||||
/** N: 방Timer 변경 안내 */
|
||||
GuideForRoomTimerChanged = 'N',
|
||||
/** X: iOS캡쳐알림 */
|
||||
NotificationForiOSCapture = 'X',
|
||||
/** B: 타이머대화방알림 */
|
||||
NotificationForTimerRoom = 'B',
|
||||
/** Q: 2개월전 메시지 */
|
||||
Before2MonthsAgo = 'Q',
|
||||
/** G: 강제 퇴장 */
|
||||
ForcedExit = 'G',
|
||||
/** H: 챗봇대화 시작 */
|
||||
ChatbotStart = 'H',
|
||||
/** K: 챗봇대화 종료 */
|
||||
ChatbotEnd = 'K',
|
||||
/** I: 챗봇대화 전송 */
|
||||
ChatbotSend = 'I',
|
||||
/** A: 챗봇 대용량 대화 전송 */
|
||||
ChatbotSendMass = 'A',
|
||||
/** M: 동영상 스트리밍 */
|
||||
VideoStreamming = 'M',
|
||||
/** O: SNS 공유 */
|
||||
SnsShare = 'O',
|
||||
|
||||
// [daesang]
|
||||
/** p: 코끼리 알림 */
|
||||
AllimElephant = 'p',
|
||||
/** g: TMS 알림 */
|
||||
AllimTms = 'g'
|
||||
}
|
26
documents/type/file.type.ts
Normal file
26
documents/type/file.type.ts
Normal file
|
@ -0,0 +1,26 @@
|
|||
export enum FileType {
|
||||
/** I : 이미지 */
|
||||
Image = 'I',
|
||||
/** V : 동영상 */
|
||||
Video = 'V',
|
||||
/** F : 파일 */
|
||||
File = 'F',
|
||||
/** S : 사운드파일 */
|
||||
Sound = 'S',
|
||||
/** "" 빈값이면 모든 타입을 내려줌 */
|
||||
All = ' '
|
||||
}
|
||||
|
||||
|
||||
roomSeq(pin):"48"
|
||||
eventSeq(pin):23
|
||||
seq(pin):90
|
||||
senderSeq(pin):9828
|
||||
type(pin):"F"
|
||||
name(pin):"GUI_Display_V2.pptx"
|
||||
url(pin):"/AttFile/GUC100/2020/01/05/MA_9828_210505505194_2.pptx"
|
||||
size(pin):"394389"
|
||||
sendDate(pin):"2020-01-05 21:05:05"
|
||||
receivedUserCount(pin):0
|
||||
receiverCount(pin):1
|
||||
sentMessage(pin):"{ "StatusCode":"200", "ErrorMessage":"", "RoomID":"48", "FileName":"GUI_Display_V2.pptx", "FileExt":"pptx", "FileType":"F", "ThumbURL":"", "AttSEQ":"90", "AttSize":"394389", "AttRegDate":"2020-01-05 21:05:05", "ImageWidth":"320", "ImageHeight":"320", "CompanyCode":"GUC100", "VoiceTime":"", "SynappKey":"" }"
|
Loading…
Reference in New Issue
Block a user