매뉴얼

Similar documents
API STORE 키발급및 API 사용가이드 Document Information 문서명 : API STORE 언어별 Client 사용가이드작성자 : 작성일 : 업무영역 : 버전 : 1 st Draft. 서브시스템 : 문서번호 : 단계 : Docum

3ÆÄÆ®-14

rmi_박준용_final.PDF

Office 365 사용자 가이드

Install stm32cubemx and st-link utility

목차 INDEX JSON? - JSON 개요 - JSONObject - JSONArray 서울시공공데이터 API 살펴보기 - 요청인자살펴보기 - Result Code - 출력값 HttpClient - HttpHelper 클래스작성 - JSONParser 클래스작성 공공

SBR-100S User Manual

3ÆÄÆ®-11

Week13

I T C o t e n s P r o v i d e r h t t p : / / w w w. h a n b i t b o o k. c o. k r

신림프로그래머_클린코드.key

Analytics > Log & Crash Search > Unity ios SDK [Deprecated] Log & Crash Unity ios SDK. TOAST SDK. Log & Crash Unity SDK Log & Crash Search. Log & Cras

<C0CCBCBCBFB52DC1A4B4EBBFF82DBCAEBBE7B3EDB9AE2D D382E687770>

12-file.key

MasoJava4_Dongbin.PDF

Web Scraper in 30 Minutes 강철

GiGA Genie AI API 서비스가이드 <GiGA Genie AI 영상분석 API> 1 / 33

Microsoft Outlook G Suite 가이드

대량문자API연동 (with directsend)

Microsoft Word - Crackme 15 from Simples 문제 풀이_by JohnGang.docx

Microsoft PowerPoint - 04-UDP Programming.ppt

Microsoft PowerPoint - CSharp-15-채팅

Multi Channel Analysis. Multi Channel Analytics :!! - (Ad network ) Report! -! -!. Valuepotion Multi Channel Analytics! (1) Install! (2) 3 (4 ~ 6 Page

Mstage.PDF

EEAP - Proposal Template

사용설명서를 읽기 전에 ios용 아이디스 모바일은 네트워크 연결을 통해 ios 플랫폼 기반의 모바일 기기(iOS 버전 6.0 이상의 ipod Touch, iphone 또는 ipad)에서 장치(DVR, 네트워크 비디오 서버 및 네트워크 카메라)에 접속하여 원격으로 영상을

메뉴얼41페이지-2

슬라이드 1

PowerPoint 프레젠테이션

API - Notification 메크로를통하여어느특정상황이되었을때 SolidWorks 및보낸경로를통하여알림메시지를보낼수있습니다. 이번기술자료에서는메크로에서이벤트처리기를통하여진행할예정이며, 메크로에서작업을수행하는데유용할것입니다. 알림이벤트핸들러는응용프로그램구현하는데있어

Eclipse 와 Firefox 를이용한 Javascript 개발 발표자 : 문경대 11 년 10 월 26 일수요일

PowerPoint 프레젠테이션

PathEye 공식 블로그 다운로드 받으세요!! 지속적으로 업그래이드 됩니다. 여러분의 의견을 주시면 개발에 반영하겠 습니다.

gcloud storage 사용자가이드 1 / 17

NTD36HD Manual

Microsoft PowerPoint - web-part03-ch19-node.js기본.pptx

14-Servlet

사용설명서를 읽기 전에 안드로이드(Android)용 아이디스 모바일은 네트워크 연결을 통해 안드로이드 플랫폼 기반의 모바일 기기에서 장치 (DVR, NVR, 네트워크 비디오 서버, 네트워크 카메라) 에 접속하여 원격으로 영상을 감시할 수 있는 프로그램입니다. 장치의 사

슬라이드 1

자바-11장N'1-502

Microsoft Word - ntasFrameBuilderInstallGuide2.5.doc

1. Windows 설치 (Client 설치 ) 원하는위치에다운받은발송클라이언트압축파일을해제합니다. Step 2. /conf/config.xml 파일수정 conf 폴더에서 config.xml 파일을텍스트에디터를이용하여 Open 합니다. config.xml 파일에서, 아

Microsoft PowerPoint - Supplement-03-TCP Programming.ppt [호환 모드]

3장

Microsoft PowerPoint _사용자매뉴얼.ppt

1. SNS Topic 생성여기를클릭하여펼치기... Create Topic 실행 Topic Name, Display name 입력후 Create topic * Topic name : 특수문자는 hyphens( - ), underscores( _ ) 만허용한다. Topi

PowerPoint 프레젠테이션

VPN.hwp

Spring Boot/JDBC JdbcTemplate/CRUD 예제

MF Driver Installation Guide

JMF3_심빈구.PDF

2파트-07

12. OAuth 2.0 으로사용자관리하기 12.1 들어가며 대부분의회사나조직은직원과고객데이터베이스를가지고있습니다. 쓰리래빗츠를도입하면 일부데이터베이스를이중으로관리해야하는불편함에직면합니다. 이문제를해결하기위해서 쓰리래빗츠는 OAuth 2.0 으로사용자를관리하는기능을제공

Interstage5 SOAP서비스 설정 가이드

View Licenses and Services (customer)

Studuino소프트웨어 설치

ibmdw_rest_v1.0.ppt

tiawPlot ac 사용방법

게임 기획서 표준양식 연구보고서

B2B 매뉴얼

기존에 Windchill Program 이 설치된 Home Directory 를 선택해준다. 프로그램설치후설치내역을확인해보면 Adobe Acrobat 6.0 Support 내역을확인할수 있다.

Microsoft PowerPoint - 03-TCP Programming.ppt

서비스 구성. 서비스 정의. 심플CRM 주요 기능 구성 0 0. 다운로드 및 설치. 기본 구성 6 6. 제공사양 0 심플CRM 표준형 6 심플CRM 녹취형 7 사용하기. 서비스 신청. 홈페이지 로그인 및 인증 안내 가입자 인증 비밀번호 재설정 비밀번호 찾기

Microsoft PowerPoint 웹 연동 기술.pptx

07 자바의 다양한 클래스.key

@OneToOne(cascade = = "addr_id") private Addr addr; public Emp(String ename, Addr addr) { this.ename = ename; this.a

C H A P T E R 2

04장

PowerPoint 프레젠테이션

Mobile Service > IAP > Android SDK [ ] IAP SDK TOAST SDK. IAP SDK. Android Studio IDE Android SDK Version (API Level 10). Name Reference V

서비스개발자매뉴얼 오픈 제 1 장 RIPIS 오픈서비스개요 Korea Intellectual Property Strategy Institute

다른 JSP 페이지호출 forward() 메서드 - 하나의 JSP 페이지실행이끝나고다른 JSP 페이지를호출할때사용한다. 예 ) <% RequestDispatcher dispatcher = request.getrequestdispatcher(" 실행할페이지.jsp");

JMF2_심빈구.PDF

MF5900 Series MF Driver Installation Guide

PowerPoint Template

MF3010 MF Driver Installation Guide

쉽게 풀어쓴 C 프로그래밊

EMBARCADERO TECHNOLOGIES (Humphery Kim) RAD Studio : h=p://tech.devgear.co.kr/ : h=p://blog.hjf.pe.kr/ Facebook : h=p://d.com/hjfactory :

11 템플릿적용 - Java Program Performance Tuning (김명호기술이사)

DocsPin_Korean.pages

Spring Data JPA Many To Many 양방향 관계 예제

201112_SNUwifi_upgrade.hwp

오핀 (OFIN) SDK Guide Fintech Mobile SDK Guide - Android V 1.0 OPPFLIB 1

목차 1. Application 가이드 Application 설치및접속... 2 메인화면소개... 3 출석체크... 4 돌발체크... 5 출석현황... 6 시간표... 7 공지사항... 8

PowerPoint 프레젠테이션

게시판 스팸 실시간 차단 시스템

PowerPoint 프레젠테이션

Java

목 차

ALTIBASE 사용자가이드 Templete

about_by5

고도몰5 manual

var answer = confirm(" 확인이나취소를누르세요."); // 확인창은사용자의의사를묻는데사용합니다. if(answer == true){ document.write(" 확인을눌렀습니다."); else { document.write(" 취소를눌렀습니다.");

<4D F736F F F696E74202D20C1A63235C0E520B3D7C6AEBFF6C5A920C7C1B7CEB1D7B7A1B9D628B0ADC0C729205BC8A3C8AF20B8F0B5E55D>

부록부록 1 1. 자바 9의특징 2. 자바 10의특징 3. 이클립스플러그인설치와 Amateras Modeler 사용 4. 외부라이브러리추가와 logback 사용

Todo list Universal app

Microsoft PowerPoint - CSharp-10-예외처리

SRC PLUS 제어기 MANUAL

09-interface.key

Transcription:

채널연동메뉴얼

1.1. 엠싱크채널개요 MThink ( 엠씽크 ) 는채널 API 를제공하여 Legacy System 에서발생하는정보및메시지를채널을통해공유함으로써 Mobile Single View 를제공합니다. IT Monitoring Legacy System e-mail Cloud GroupWar e SMS, DB Mon, NMS DR Sol. APM ERP CRM Securit y All Event & Message ㆍㆍㆍㆍㆍ System N Channel Service 1 2 3 ㆍㆍㆍㆍㆍ N Feed User ㆍㆍㆍㆍㆍㆍ 1

1.2. 채널관리 채널종류 - 오픈채널 : 사용자들이자유롭게구독을할수있습니다. - 관리자지정 : 관리자가구독자를지정합니다. - 사용자인증 : 별도의사용자인증이필요한채널입니다. 메뉴에서 [ 사이트관리 > 사이트정보 > 채널관리 ] 메뉴로이동합니다. 2

1.2. 채널관리 채널을생성하거나변경, 채널구독자를관리할수있습니다. 구분항목설명 채널추가 ( ) 새로운채널을생성합니다. 채널목록 채널정보 ( ) 채널정보를수정합니다. 채널명, 썸네일이미지등을변경합니다. 삭제 ( ) 해당채널을삭제합니다. 단, 구독자가있는채널은삭제핛수없습니다. 해당채널서비스를중지하려면미사용으로변경하기바랍니다. 구독자추가 ( ) 관리자지정채널은구독자를관리자가지정핛수있습니다. 채널구독자 변경 ( ) 해당구독자의정보를변경합니다. 삭제 ( ) 해당사용자를채널구독자목록에서제거합니다. 3

1.3. 채널생성 채널을생성합니다. 1 2 3 6 4 5 7 항목 설명 채널 ID 채널의 ID 입니다. 시스템에서의해서자동적으로부여됩니다. 사용 해당채널의서비스상태를설정합니다. 미사용채널은구독싞청을핛수없습니다. 채널이름채널의이름을지정합니다. 채널주소 채널종류 소식을젂달해줄주소를입력합니다. 채널주소는사용자인증채널일경우인증이필요핚경우정의합니다. 채널의종류를선택합니다. - 오픈채널 : 사용자들이자유롭게구독을핛수있습니다. - 관리자지정 : 관리자가구독자를지정합니다. - 사용자인증 : 별도의사용자인증이필요핚채널입니다. 채널이미지채널썸네일에사용핛이미지를등록합니다. 채널설명채널에대핚설명을입력합니다. 4

1.3. 채널생성 관리자지정채널의구독자를지정합니다. 관리자지정유형의채널은관리자가구독자를지정합니다. 1. 채널구독자의추가 ( ) 버튼을클릭합니다. 2. 좌측조직도에서추가하고자하는사람이있는조직을클릭합니다. 3. 우측사용자목록에서구독자로추가핛사용자를체크 ( ) 합니다. 추가핚사용자를 [X] 버튼을클릭하여선택취소가능합니다. 4. 사용자선택이완료되었으면팝업창의추가 ( ) 버튼을클릭하여선택을완료합니다. 5

1.4. 채널구독방법 ( 일반사용자메뉴 ) PC 에서오픈형채널의구독신청을합니다. 1. 메뉴 > 채널을클릭하여구독싞청가능핚채널목록을확인합니다. 2. 구독싞청을원하는채널의구독 ( ) 버튼을클릭합니다. 3. 나타나는팝업에서확인버튼을클릭하여구독싞청을완료합니다. 6

1.4. 채널구독방법 ( 일반사용자메뉴 ) 모바일에서오픈형채널의구독신청을합니다. 1. 메뉴 > 채널목록에서구독싞청을원하는채널을클릭합니다. 2. 구독싞청화면에서 [ 구독싞청 ] 버튼을클릭합니다. 7

1.5. 채널 API 스펙 채널 API 스펙은다음과같습니다. 구분 설명 경로 Produces Consumes Headers https://[ 엠싱크URL]/rest/channel application/json application/x-www-form-urlencoded X-Auth-Token [ 채널관리에생성된 Access Key] Query parameters 필수설명 chnlid 필수시스템에서부여하는채널 ID chnluserids 선택 채널을젂달핛사용자입니다. 입력하지않으면해당채널을구독중인모든사용자열람가능엠싱크에정의핚사용자번호를지정하면됩니다. ( 일반적으로고객사인사번호, 학번등 ) title 필수채널에서젂송될피드의제목 content 필수채널피드의본문. html 태그사용가능 htmlyn 필수 Content 의내용이 html 태그이면 1, 일반텍스트는 0 contentlink 선택 채널내용 ( 본문 ) 에링크를작성하여동작실행이나 URL 링크 ( 서비스준비중 ) 8

1.5. 채널 API 스펙 채널메시지전송시입력하는값과채널정보의값의비교입니다. chnlid 에해당하는채널명 chnluserids title Content contentlink : 현재미사용 ( 서비스준비중 ) 9

1.6. 채널연동 API 샘플.NET 샘플 (VB.Net) <%@ Page Language="VisualBasic" EnableSessionState="true" AutoEventWireup="false" %> <%@ Import Namespace="System.Net" %> <%@ Import Namespace="System.IO" %> <% Dim spostdata As String Dim sdatabankpushurl As String Dim sauthtoken As String Dim schnlid As String Dim schnluserids As String Dim stitle As String Dim scontent As String Dim scontentlink As String Dim shtmlyn As String sdatabankpushurl = "https://mthink.idatabank.com/rest/channel/" sauthtoken = "GINNw3yhPZbrpvCRTwKqDWTD3DziP7AjVNLkZ11q2sMHRw98OtatcHqEAaYbiBVIvVvpJFQDPt8Wp9RtjX5 Q1LQQL65FBdFEt8suoVQnETVFa7o4bhlpiawZ25BXWq9N schnlid = "101" schnluserids = dbs044,dbs001" stitle = " 채널타이틀입니다." scontent = "<p> 그룹웨어채널피드테스트입니다.</p><p> 테스트내용을입력합니다.</p>" scontentlink = "" shtmlyn = 1 Try spostdata = " spostdata += "chnlid=" + HttpUtility.UrlEncode(sChnlId) spostdata += "&" spostdata += "chnluserids=" + HttpUtility.UrlEncode(sChnlUserIds) spostdata += "& spostdata += "title=" + HttpUtility.UrlEncode(sTitle) spostdata += "& spostdata += "content=" + HttpUtility.UrlEncode(sContent) spostdata += "& spostdata += "contentlink=" + HttpUtility.UrlEncode(sContentLink) spostdata += "& spostdata += "htmlyn=" + HttpUtility.UrlEncode(sHtmlYn) Using client As New WebClient() client.headers(httprequestheader.contenttype) = "application/x-www-form-urlencoded client.headers("x-auth-token") = sauthtoken client.headers("accept") = "application/json client.encoding = UTF8Encoding.UTF8 result = client.uploadstring(sdatabankpushurl, "POST", spostdata) End Using Catch result_err = Err.Description End Try %> 10

1.6. 채널연동 API 샘플.NET 샘플 (C#) 1/2 using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; using System.Net; using System.IO; namespace ChannelApiDemoCsharp { public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void btnchannelsave_click(object sender, EventArgs e) { // 테스트채널 3 String sdatabankpushurl = "https://mtdev.idatabank.com/rest/channel/"; String sauthtoken = @"Jmao7ybbqBuwa4fSYDBlxP302x0vkcz8ulEValtRp6dEPhO5GTveJmOWW0p4TmWojZW5Ln33Spz9h3k97K Q0Om3H1qqOVVRAyKogD2YHTYdz83C3lXcnmbdyxNHFKGwP"; String channelid = "3"; String userids = "dbs250,dbs251,dbs252,databank1,databank2"; String title = " 채널타이틀입니다. 테스트채널 3"; String content = "<p> 그룹웨어채널피드테스트입니다.</p><p> 테스트내용을입력합니다.</p>"; String contentlink = ""; String htmlyn = "1"; HttpWebRequest request = HttpWebRequest.Create(sDataBankPushUrl) as HttpWebRequest; Dictionary<string, string> parameters = new Dictionary<string, string>(); parameters.add("chnlid", channelid); parameters.add("chnluserids", userids); // 수싞자사번목록 parameters.add("title", title); // 제목 parameters.add("content", content); // 내용 parameters.add("contentlink", contentlink); // 내용 Link parameters.add("htmlyn", htmlyn); // HTML 여부 : 1 - HTML, 0 Plain // Reuse the login cookie request.cookiecontainer = new CookieContainer(); request.headers.add("x-auth-token", sauthtoken); HttpWebResponse response = apipost(request, parameters); ( 뒷장계속 ) 11

1.6. 채널연동 API 샘플.NET 샘플 (C#)( 계속 ) 2/2 Stream stream = response.getresponsestream(); StreamReader reader = new StreamReader(stream, Encoding.UTF8); string strreturn = reader.readtoend().trim(); // 리턴값 {\n \"status\" : 200\n} Console.WriteLine("strReturn:{0}", strreturn); // 소켓클로즈 reader.close(); stream.close(); response.close(); } /// <summary> /// Post 방식으로서버젂송하기위핚함수 /// </summary> /// <param name="request"></param> /// <param name="parameters"></param> /// <returns></returns> private HttpWebResponse apipost( HttpWebRequest request, IDictionary<string, string> parameters) { request.contenttype = "application/x-www-form-urlencoded"; request.method = "POST"; // ASCIIEncoding encoding = new ASCIIEncoding(); StringBuilder postdata = new StringBuilder(); foreach (var parameter in parameters) { postdata = postdata.append(string.concat(parameter.key, "=", parameter.value, "&")); } postdata.remove(postdata.length - 1, 1); byte[] rawdata = Encoding.UTF8.GetBytes(postData.ToString()); //byte[] rawdata = encoding.getbytes(postdata.tostring()); request.contentlength = rawdata.length; Stream stream = request.getrequeststream(); stream.write(rawdata, 0, rawdata.length); stream.close(); stream.dispose(); } } } return request.getresponse() as HttpWebResponse; 12

1.6. 채널연동 API 샘플 Java 샘플 1/2 package mthink.demo.channel_push; import java.io.bufferedreader; import java.io.ioexception; import java.io.inputstreamreader; import java.io.unsupportedencodingexception; import java.util.arraylist; import java.util.list; import org.apache.http.namevaluepair; import org.apache.http.client.clientprotocolexception; import org.apache.http.client.entity.urlencodedformentity; import org.apache.http.client.methods.closeablehttpresponse; import org.apache.http.client.methods.httppost; import org.apache.http.impl.client.closeablehttpclient; import org.apache.http.impl.client.httpclients; import org.apache.http.message.basicnamevaluepair; import org.slf4j.logger; import org.slf4j.loggerfactory; import org.springframework.beans.factory.annotation.value; import org.springframework.stereotype.service; @Service public class ChannelService { private static final Logger LOGGER = LoggerFactory.getLogger(ChannelService.class); // 채널 URL : ex. https ://mthink.idatabank.com/rest/channel @Value("${channel.url}") private String channelendpoint = null; // 채널인증키 @Value("${channel.accessToken}") private String accesstoken = null; // 채널 ID : ex. 165 @Value("${channel.channelId}") private String channelid = null; ( 뒷장계속 ) 13

1.6. 채널연동 API 샘플 Java 샘플 ( 계속 ) 2/2 public void dochannelpush(string userids, String title, String content, String contentlink, String htmlyn) { LOGGER.info("Channel EndPoint : " + channelendpoint); LOGGER.info("Channel AccessToken : " + accesstoken); LOGGER.info("Channel ID : " + channelid); CloseableHttpClient httpclient = HttpClients.createDefault(); HttpPost httppost = new HttpPost(channelEndPoint); List nvps = new ArrayList(); nvps.add(new BasicNameValuePair("chnlId", channelid)); nvps.add(new BasicNameValuePair("chnlUserIds", userids)); // 수싞자사번목록 nvps.add(new BasicNameValuePair("title", title)); // 제목 nvps.add(new BasicNameValuePair("content", content)); // 내용 nvps.add(new BasicNameValuePair("contentLink", contentlink)); // 내용 Link nvps.add(new BasicNameValuePair("htmlYn", htmlyn)); // HTML 여부 : 1 - HTML, 0 Plain try { httppost.setentity(new UrlEncodedFormEntity(nvps, "UTF-8")); httppost.setheader("content-type", "application/x-www-form-urlencoded"); httppost.setheader("x-auth-token", accesstoken); CloseableHttpResponse response = httpclient.execute(httppost); BufferedReader br = new BufferedReader(new InputStreamReader(response.getEntity().getContent())); String line = null; while ((line = br.readline())!= null) { LOGGER.info(line); } } catch (UnsupportedEncodingException e) { LOGGER.warn(e.getMessage(), e); } catch (ClientProtocolException e) { LOGGER.warn(e.getMessage(), e); } catch (IOException e) { LOGGER.warn(e.getMessage(), e); } } } 14

1.7. 채널테스트 Chrome 확장프로그램설치를통한채널 API 테스트안내입니다. 1. 구글 Chrome 브라우저를설치합니다. 2. Chrome 을실행핚후메뉴 -> 설정을클릭하여설정메뉴로들어갑니다. 15

1.7. 채널테스트 채널메시지전송테스트를위한 Chrome 확장프로그램설치입니다. 1. 설정화면에서 [ 확장프로그램 ] 메뉴로이동합니다. 2. [ 더많은확장프로그램다운로드 ] 를클릭합니다. 16

1.7. 채널테스트 채널메시지전송테스트를위한 Chrome 확장프로그램설치입니다. 1. Chrome 웹스토어에서 postman 을검색합니다. 2. 검색결과에서확장프로그램에있는 [Postman - REST Client] 를 [CHROME 에추가 ] 버튼을클릭하고나타난확인창에서 [ 확장프로그램추가 ] 를클릭하여설치합니다. 17

1.7. 채널테스트 채널메시지전송테스트입니다. 1 2 3 4 5 6 7 1. 우측상단의 [Postman - REST Client] 아이콘을클릭합니다. 2. 나타나는화면에서 [Enter request URL here] 부분에 [https://mthink.idatabank.com/rest/channel] 을입력합니다. <-고객홖경에따라다름 3. URL입력후 [POST] 를선택합니다. 4. Headers( ) 아이콘을클릭하여나타나는부분에 Header : X-Auth-Token Value : 채널의 Access-Key값을입력합니다. -> 메뉴 > 사이트관리 > 사이트정보 > 채널관리에서확인 18

1.7. 채널테스트 채널메시지전송테스트입니다. 1 2 3 4 5 6 7 5. x-www-form-urlencoded버튼 ( ) 을클릭합니다. 6. 하단에해당항목을입력합니다. chnlid : 채널ID chnluserids : 채널수싞자ID ( 여러개면 ',' 로구분 ), 입력하지않으면구독자젂원에게젂송 title : 피드제목 content : 피드내용, html코드를넣는경우하단의 htmlyn을 1로입력해야함 contentlink : 피드원본링크, 없는경우입력하지않아도됨 htmlyn : html여부 (1 : html, 0 : 일반텍스트 ) 7. 내용을모두입력하면 Send 버튼을클릭하여젂송합니다. 19

1.7. 채널테스트 채널 API 전송을위한 Header 값정보찾는방법을설명합니다. 20

1.7. 채널테스트 1 채널메시지예시값입니다. 2 3 4 5 6 1. Enter request url here : http://mthink.idatabank.com/rest/channel 2. [POST] 선택 3. [Headers] 버튼을클릭 4. Header : X-Auth-Token / Value : tzvkpnutau4...gd2mwigfb0ms 5. [x-www-form-urlencoded] 버튼을클릭 6. Key와 Value 입력 chnlid : 184 title : DR-ARK content : <!doctype html> <html> </html> htmlyn : 1 chnluserids, contentlink값은입력하지않음 7. 입력을완료후 [Send] 버튼을클릭 21

1.7. 채널테스트 채널메시지를수신했을때화면입니다. PC 화면 모바일화면 22