ping protocol is implemented
This commit is contained in:
parent
fa070c24d7
commit
f72100c4f5
|
@ -14,7 +14,6 @@ import {
|
||||||
CallForwardType
|
CallForwardType
|
||||||
} from '@ucap-webmessenger/core';
|
} from '@ucap-webmessenger/core';
|
||||||
|
|
||||||
// tslint:disable-next-line: no-empty-interface
|
|
||||||
export interface CallUpdateRequest extends ProtocolRequest {
|
export interface CallUpdateRequest extends ProtocolRequest {
|
||||||
// 0 IPPhoneYN(s)
|
// 0 IPPhoneYN(s)
|
||||||
useIpPhone: boolean;
|
useIpPhone: boolean;
|
||||||
|
|
|
@ -10,7 +10,6 @@ import {
|
||||||
PacketBodyValue
|
PacketBodyValue
|
||||||
} from '@ucap-webmessenger/protocol';
|
} from '@ucap-webmessenger/protocol';
|
||||||
|
|
||||||
// tslint:disable-next-line: no-empty-interface
|
|
||||||
export interface RegUpdateRequest extends ProtocolRequest {
|
export interface RegUpdateRequest extends ProtocolRequest {
|
||||||
// 0 알림방법(n)
|
// 0 알림방법(n)
|
||||||
notificationMethod: NotificationMethod;
|
notificationMethod: NotificationMethod;
|
||||||
|
|
|
@ -8,7 +8,6 @@ import {
|
||||||
PacketBodyValue
|
PacketBodyValue
|
||||||
} from '@ucap-webmessenger/protocol';
|
} from '@ucap-webmessenger/protocol';
|
||||||
|
|
||||||
// tslint:disable-next-line: no-empty-interface
|
|
||||||
export interface UpdateRequest extends ProtocolRequest {
|
export interface UpdateRequest extends ProtocolRequest {
|
||||||
// 알람여부(y)
|
// 알람여부(y)
|
||||||
receiveAlarm: boolean;
|
receiveAlarm: boolean;
|
||||||
|
|
|
@ -0,0 +1,34 @@
|
||||||
|
import {
|
||||||
|
ProtocolRequest,
|
||||||
|
ProtocolResponse,
|
||||||
|
ProtocolEncoder,
|
||||||
|
PacketBody,
|
||||||
|
ProtocolDecoder,
|
||||||
|
ProtocolMessage,
|
||||||
|
PacketBodyValue
|
||||||
|
} from '@ucap-webmessenger/protocol';
|
||||||
|
|
||||||
|
export interface PingRequest extends ProtocolRequest {
|
||||||
|
/** 상태코드(s) */
|
||||||
|
statusCode: string;
|
||||||
|
}
|
||||||
|
|
||||||
|
// tslint:disable-next-line: no-empty-interface
|
||||||
|
export interface PingResponse extends ProtocolResponse {}
|
||||||
|
|
||||||
|
export const encodePing: ProtocolEncoder<PingRequest> = (req: PingRequest) => {
|
||||||
|
const bodyList: PacketBody[] = [];
|
||||||
|
|
||||||
|
bodyList.push({
|
||||||
|
type: PacketBodyValue.String,
|
||||||
|
value: req.statusCode
|
||||||
|
});
|
||||||
|
|
||||||
|
return bodyList;
|
||||||
|
};
|
||||||
|
|
||||||
|
export const decodePing: ProtocolDecoder<PingResponse> = (
|
||||||
|
message: ProtocolMessage
|
||||||
|
) => {
|
||||||
|
return {} as PingResponse;
|
||||||
|
};
|
|
@ -1,8 +1,29 @@
|
||||||
import { Injectable } from '@angular/core';
|
import { Injectable } from '@angular/core';
|
||||||
|
import { ProtocolService } from '@ucap-webmessenger/protocol';
|
||||||
|
|
||||||
|
import { Observable } from 'rxjs';
|
||||||
|
import { take, map } from 'rxjs/operators';
|
||||||
|
|
||||||
|
import {
|
||||||
|
PingRequest,
|
||||||
|
PingResponse,
|
||||||
|
encodePing,
|
||||||
|
decodePing
|
||||||
|
} from '../protocols/ping';
|
||||||
|
import { SVC_TYPE_PING, SSVC_TYPE_PING_REQ } from '../types/service';
|
||||||
|
|
||||||
@Injectable({
|
@Injectable({
|
||||||
providedIn: 'root'
|
providedIn: 'root'
|
||||||
})
|
})
|
||||||
export class PingProtocolService {
|
export class PingProtocolService {
|
||||||
constructor() {}
|
constructor(private protocolService: ProtocolService) {}
|
||||||
|
|
||||||
|
public ping(req: PingRequest): Observable<PingResponse> {
|
||||||
|
return this.protocolService
|
||||||
|
.call(SVC_TYPE_PING, SSVC_TYPE_PING_REQ, ...encodePing(req))
|
||||||
|
.pipe(
|
||||||
|
take(1),
|
||||||
|
map(res => decodePing(res))
|
||||||
|
);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -0,0 +1,4 @@
|
||||||
|
export const SVC_TYPE_PING = 99;
|
||||||
|
|
||||||
|
export const SSVC_TYPE_PING_REQ = 1;
|
||||||
|
export const SSVC_TYPE_PING_RES = 2;
|
|
@ -4,4 +4,6 @@
|
||||||
|
|
||||||
export * from './lib/services/ping-protocol.service';
|
export * from './lib/services/ping-protocol.service';
|
||||||
|
|
||||||
|
export * from './lib/types/service';
|
||||||
|
|
||||||
export * from './lib/ucap-ping-protocol.module';
|
export * from './lib/ucap-ping-protocol.module';
|
||||||
|
|
Loading…
Reference in New Issue
Block a user