2.1.5 • Published 10 months ago

omni-sdk-ts v2.1.5

Weekly downloads
-
License
ISC
Repository
-
Last release
10 months ago

OMNI-SDK-JS


omni sdk JavaScript(TypeScript) 입니다. node.js 와 next 환경에서 구동할 수 있으며 react 와 같은 front 환경에서는 CORS 가 발생할 수 있습니다.

설치 (Installation)

## 소스 설치
## 받으신 소스 파일을 원하는 경로에 설치합니다.
C:/sdk/omni-sdk-js

## 사용하실 프로젝트에 SDK 를 로컬 경로로 링크합니다.
npm install ./[다운로드한 SDK의 경로]

## 직접 node_module 에 복사합니다.
cp -R ./[다운로드한 SDK의 경로] ./node_modules/omni-sdk-js

사용법 (Usage)

토큰 발급

Node.js

// node 일 경우 
const { OMNI, OMNIOptionsBuilder } = require('omni-sdk-ts');

// main 으로 감싸기
async function main() {
    try {
        const option = new OMNIOptionsBuilder()
            .setBaseURL(baseURL)
            .setId(userId)
            .setPassword(userPassword)
            .build();
        
        const omni = new OMNI(option);

        // 비동기 함수인 getToken을 await로 호출
        const token = await omni.auth.getToken();
        console.log('Token:', token);

    } catch (error) {
        console.error('Error:', error);
    }
}

// main 함수 실행
main();

Next.js

import { OMNI, OMNIOptionsBuilder }  from 'omni-sdk-js';

export async function POST(req) {
  try {
    const { baseURL, userId, userPassword } = await req.json();

    const authParam = new OMNIOptionsBuilder().setBaseURL(baseURL).setId(userId).setPassword(userPassword).build();
    const authService = new OMNI(authParam);

    const tokenResponse = await authService.auth.getToken();

    return new Response(JSON.stringify({ message: 'Login successful', success: tokenResponse }), {
      status: 200,
      headers: {
        'Content-Type': 'application/json',
      },
    });
  } catch (error) {
    console.error('Login failed:', error);
    return new Response(JSON.stringify({ message: 'Login failed', error: error.message }), {
      status: 500,
      headers: {
        'Content-Type': 'application/json',
      },
    });
  }
}

전송

Node.js

async function send() {
    try {
        const option = new OMNIOptionsBuilder()
            .setBaseURL("https://stg-omni.ibapi.kr")
            .setToken("{{발급한 토큰}}")
            .build();
        
        const omni = new OMNI(option);

        const req = new SMSRequestBodyBuilder()
            .setTo("01000000000")
            .setFrom("0316281500")
            .setText("테스트 발송입니다.")
            .build();

        const res = await omni.send?.sendSMS(req);
        console.log('전송결과:', res);

        console.log(omni);
    } catch (error) {
        console.error('Error:', error);
    }

}

send();

Next.js

// src/app/api/test/route.js
import { NextResponse } from 'next/server';
import { OMNI, OMNIOptionsBuilder, SMSRequestBodyBuilder} from 'omni-sdk-js';

export async function POST() {

  const option = new OMNIOptionsBuilder().setBaseURL("http://172.16.0.73:7000").setToken("{{발급한 토큰}}").build();

  const omni = new OMNI(option);

  const req = new SMSRequestBodyBuilder().setFrom("0310000000").setTo("01012364566").setText("test 발송입니다.").build();

  const req1 = {
    form : "0310000000",
    to : "010123455678",
    text : "test 발송입니다."
  }

  const result  = await omni.send?.sendSMS(JSON.stringify(req1));

  console.log(result);

  return NextResponse.json({ result: result });
}
2.1.5

10 months ago

2.1.3

10 months ago

2.1.2

10 months ago

2.1.1

10 months ago

2.1.0

10 months ago

2.0.8

10 months ago

2.0.7

10 months ago

2.0.6

10 months ago

2.0.5

10 months ago

2.0.4

10 months ago

2.0.3

10 months ago

2.0.2

10 months ago

2.0.1

11 months ago

2.0.0

11 months ago

1.0.4

11 months ago

1.0.3

11 months ago

1.0.2

11 months ago

1.0.1

11 months ago

1.0.0

5 years ago