2.1.5 • Published 9 months ago

omni-sdk-ts v2.1.5

Weekly downloads
-
License
ISC
Repository
-
Last release
9 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

9 months ago

2.1.3

9 months ago

2.1.2

9 months ago

2.1.1

9 months ago

2.1.0

9 months ago

2.0.8

9 months ago

2.0.7

9 months ago

2.0.6

9 months ago

2.0.5

9 months ago

2.0.4

9 months ago

2.0.3

9 months ago

2.0.2

9 months ago

2.0.1

10 months ago

2.0.0

10 months ago

1.0.4

10 months ago

1.0.3

10 months ago

1.0.2

10 months ago

1.0.1

10 months ago

1.0.0

5 years ago