<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
  <channel>
    <title>StartIT</title>
    <link>https://tobepro.tistory.com/</link>
    <description></description>
    <language>ko</language>
    <pubDate>Wed, 15 Apr 2026 11:25:29 +0900</pubDate>
    <generator>TISTORY</generator>
    <ttl>100</ttl>
    <managingEditor>IT스타터</managingEditor>
    <item>
      <title>zoom api 이용하기 - 3</title>
      <link>https://tobepro.tistory.com/38</link>
      <description>&lt;p&gt;&lt;a href=&quot;https://tobepro.tistory.com/37?category=441528&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;tobepro.tistory.com/37?category=441528&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1607405835830&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-og-type=&quot;article&quot; data-og-title=&quot;zoom api 이용하기 - 2&quot; data-og-description=&quot;tobepro.tistory.com/36 zoom api 이용하기(1) tobepro.tistory.com/35 zoom iframe 으로 크기 조절하기 tobepro.tistory.com/32?category=441528 zoom sdk 이용하기(web) 코로나의 여파로 인해 zoom같은 비대면..&quot; data-og-host=&quot;tobepro.tistory.com&quot; data-og-source-url=&quot;https://tobepro.tistory.com/37?category=441528&quot; data-og-url=&quot;https://tobepro.tistory.com/37&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/dAEPsD/hyIvjaM4Ut/9sbKjg6sjBQ9vJmdaJHn30/img.png?width=800&amp;amp;height=481&amp;amp;face=0_0_800_481,https://scrap.kakaocdn.net/dn/1MNes/hyIvetLZ0Q/wVS8XiKkqAJyo4UB2HWNz0/img.png?width=800&amp;amp;height=481&amp;amp;face=0_0_800_481,https://scrap.kakaocdn.net/dn/DM9dS/hyIu4LtEFg/awbbKmoNkEudctl31em9iK/img.png?width=2560&amp;amp;height=1540&amp;amp;face=0_0_2560_1540&quot;&gt;&lt;a href=&quot;https://tobepro.tistory.com/37?category=441528&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://tobepro.tistory.com/37?category=441528&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/dAEPsD/hyIvjaM4Ut/9sbKjg6sjBQ9vJmdaJHn30/img.png?width=800&amp;amp;height=481&amp;amp;face=0_0_800_481,https://scrap.kakaocdn.net/dn/1MNes/hyIvetLZ0Q/wVS8XiKkqAJyo4UB2HWNz0/img.png?width=800&amp;amp;height=481&amp;amp;face=0_0_800_481,https://scrap.kakaocdn.net/dn/DM9dS/hyIu4LtEFg/awbbKmoNkEudctl31em9iK/img.png?width=2560&amp;amp;height=1540&amp;amp;face=0_0_2560_1540');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot;&gt;zoom api 이용하기 - 2&lt;/p&gt;
&lt;p class=&quot;og-desc&quot;&gt;tobepro.tistory.com/36 zoom api 이용하기(1) tobepro.tistory.com/35 zoom iframe 으로 크기 조절하기 tobepro.tistory.com/32?category=441528 zoom sdk 이용하기(web) 코로나의 여파로 인해 zoom같은 비대면..&lt;/p&gt;
&lt;p class=&quot;og-host&quot;&gt;tobepro.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p&gt;위 포스팅으로 api 이용하여 녹화영상을 다운로드 받는 것 까지 해봤다.&lt;/p&gt;
&lt;p&gt;사실 여기까지만 해도 다른 api를 이용함에 있어서 크게 문제되는 것이 없다.&lt;/p&gt;
&lt;p&gt;하지만 딱 하나 걸리는 게 있는데, 서버와의 통신이다. CORS정책을 피해서 서버단에서 jsp의 java로 zoom api의 데이터를 가져오는 것 까지는 좋았으나, 이 과정은 해당 페이지가 처음으로 로드될 때, 맨 처음 딱 한 번만 진행된다. 이게 무슨 문제가 생기냐하면 훗날 유저들에게 서비스를 제공했을 때, 해당 유저의 정보들을 가지고 zoom api 데이터를 가지고 와야하는데, 클라이언트단으로 유저들의 정보를 제공받으면 서버단이 먼저 진행되기 때문에 에러가 발생한다.&lt;/p&gt;
&lt;p&gt;이를 위해서는&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;1. 이전페이지에서 클라이언트로 정보를 제공 받은 뒤, 다음 페이지로 넘어갈 때 그 정보를 주고 페이지를 로드한다.&lt;/p&gt;
&lt;p&gt;2. 서버와의 통신을 통해 클라이언트로 정보를 받은 뒤 api(jsp의 자바)를 실행한다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;정도의 방법이 있겠다.&lt;/p&gt;
&lt;p&gt;하지만 1번같은 경우 만약 이전페이지가 아니라 동일한 페이지에서 미팅에 접속하는 화면이 있다면? 이전페이지, 다음페이지라는 개념이 없는 경우이므로, 유저정보를 받은 뒤에 저장한 뒤 새로고침하여 다시 java를 실행시키고 페이지를 로드해야 될 것이다. 보여지는 화면이 갑자기 새로고침을 하면 유저입장에서는 오류라고 생각할 수도 있고, 화면상으로도 좋은 것이 아니기에 우리는 2번 방법을 해보도록 하겠다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;2번을 하기 위해서는 먼저 ajax에 대해 알아야 한다.&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;https://coding-factory.tistory.com/143&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;coding-factory.tistory.com/143&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1607408480545&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-og-type=&quot;article&quot; data-og-title=&quot;[Ajax] Ajax란 무엇인가?&quot; data-og-description=&quot;▶&amp;nbsp;Ajax란? Ajax는 JavaScript의 라이브러리중 하나이며&amp;nbsp;Asynchronous Javascript And Xml(비동기식 자바스크립트와 xml)의 약자입니다.&amp;nbsp;브라우저가 가지고있는 XMLHttpRequest 객체를 이용해서&amp;nbsp;전체 페이지를..&quot; data-og-host=&quot;coding-factory.tistory.com&quot; data-og-source-url=&quot;https://coding-factory.tistory.com/143&quot; data-og-url=&quot;https://coding-factory.tistory.com/143&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/dOTyiR/hyIveUUe1e/qj7cGFdHvDf3ZIRpKlrlBK/img.png?width=728&amp;amp;height=373&amp;amp;face=123_200_199_283,https://scrap.kakaocdn.net/dn/cAWery/hyIvdIrPK8/wf1VfqC0YWKOu7xqkCDk50/img.png?width=728&amp;amp;height=373&amp;amp;face=123_200_199_283,https://scrap.kakaocdn.net/dn/b94eCh/hyIvfzwCGH/Z2bEs2FuH9C13GpwaHwgTK/img.png?width=728&amp;amp;height=373&amp;amp;face=123_200_199_283&quot;&gt;&lt;a href=&quot;https://coding-factory.tistory.com/143&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://coding-factory.tistory.com/143&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/dOTyiR/hyIveUUe1e/qj7cGFdHvDf3ZIRpKlrlBK/img.png?width=728&amp;amp;height=373&amp;amp;face=123_200_199_283,https://scrap.kakaocdn.net/dn/cAWery/hyIvdIrPK8/wf1VfqC0YWKOu7xqkCDk50/img.png?width=728&amp;amp;height=373&amp;amp;face=123_200_199_283,https://scrap.kakaocdn.net/dn/b94eCh/hyIvfzwCGH/Z2bEs2FuH9C13GpwaHwgTK/img.png?width=728&amp;amp;height=373&amp;amp;face=123_200_199_283');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot;&gt;[Ajax] Ajax란 무엇인가?&lt;/p&gt;
&lt;p class=&quot;og-desc&quot;&gt;▶&amp;nbsp;Ajax란? Ajax는 JavaScript의 라이브러리중 하나이며&amp;nbsp;Asynchronous Javascript And Xml(비동기식 자바스크립트와 xml)의 약자입니다.&amp;nbsp;브라우저가 가지고있는 XMLHttpRequest 객체를 이용해서&amp;nbsp;전체 페이지를..&lt;/p&gt;
&lt;p class=&quot;og-host&quot;&gt;coding-factory.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p&gt;&lt;a href=&quot;https://rimkongs.tistory.com/4&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;rimkongs.tistory.com/4&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1607408344938&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-og-type=&quot;article&quot; data-og-title=&quot;Ajax (1) - 데이터 전송받기 (javascript,jQuery,Ajax)&quot; data-og-description=&quot;오늘 진행 할 예제 test1.jsp =&amp;gt; javascript로만 Ajax를 구현 test2.jsp =&amp;gt; JQuery의 Ajax 기능을 통해서 Ajax를 구현 (많이씀) test3.jsp =&amp;gt; JQuery로만 Ajax를 구현 test4.jsp =&amp;gt; JQuery의 Ajax를 이용하여 get,..&quot; data-og-host=&quot;rimkongs.tistory.com&quot; data-og-source-url=&quot;https://rimkongs.tistory.com/4&quot; data-og-url=&quot;https://rimkongs.tistory.com/4&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/o0Ovj/hyIve8rKAB/sgmOs5dSZkJGKRm6Spb6pk/img.png?width=660&amp;amp;height=190&amp;amp;face=0_0_660_190,https://scrap.kakaocdn.net/dn/25pph/hyIvc3RuxH/0xek0zk6ABcVFkfgvdczk0/img.png?width=660&amp;amp;height=190&amp;amp;face=0_0_660_190,https://scrap.kakaocdn.net/dn/A3aOd/hyIvbw7pSv/zXa4GbBkC49wXY5VZOfwW1/img.png?width=264&amp;amp;height=200&amp;amp;face=0_0_264_200&quot;&gt;&lt;a href=&quot;https://rimkongs.tistory.com/4&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://rimkongs.tistory.com/4&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/o0Ovj/hyIve8rKAB/sgmOs5dSZkJGKRm6Spb6pk/img.png?width=660&amp;amp;height=190&amp;amp;face=0_0_660_190,https://scrap.kakaocdn.net/dn/25pph/hyIvc3RuxH/0xek0zk6ABcVFkfgvdczk0/img.png?width=660&amp;amp;height=190&amp;amp;face=0_0_660_190,https://scrap.kakaocdn.net/dn/A3aOd/hyIvbw7pSv/zXa4GbBkC49wXY5VZOfwW1/img.png?width=264&amp;amp;height=200&amp;amp;face=0_0_264_200');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot;&gt;Ajax (1) - 데이터 전송받기 (javascript,jQuery,Ajax)&lt;/p&gt;
&lt;p class=&quot;og-desc&quot;&gt;오늘 진행 할 예제 test1.jsp =&amp;gt; javascript로만 Ajax를 구현 test2.jsp =&amp;gt; JQuery의 Ajax 기능을 통해서 Ajax를 구현 (많이씀) test3.jsp =&amp;gt; JQuery로만 Ajax를 구현 test4.jsp =&amp;gt; JQuery의 Ajax를 이용하여 get,..&lt;/p&gt;
&lt;p class=&quot;og-host&quot;&gt;rimkongs.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p&gt;해당 사이트들을 참고하거나, 구글링을 해서 ajax에 대해 공부를 하기를 바란다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;쉽게 이야기 하면 ajax란 자바스크립트를 사용한 비동기 통신, 서버와의 데이터를 송수신하는 기술이다.&lt;/p&gt;
&lt;p&gt;비동기 통신임으로 전체 페이지를 다시 로드할 필요가 없이 일부분만을 다시 로드하고, 먼저 요청된 응답들을 기다렸다가 응답을 하는것이 아니라 다른 요청과는 상관없이 응답처리가 가능하다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;그러면 일단 먼저, meeting_iframe.jsp 파일의 수정을 한다.&lt;/p&gt;
&lt;p&gt;기존에 있었던 자바 부분은 모두 삭제하고 함수를 추가한다.&lt;/p&gt;
&lt;div class=&quot;colorscripter-code&quot; style=&quot;color: #f0f0f0; font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace !important; position: relative !important; overflow: auto;&quot;&gt;
&lt;table class=&quot;colorscripter-code-table&quot; style=&quot;margin: 0; padding: 0; border: none; background-color: #272727; border-radius: 4px;&quot; cellspacing=&quot;0&quot; cellpadding=&quot;0&quot;&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td style=&quot;padding: 6px; border-right: 2px solid #4f4f4f;&quot;&gt;
&lt;div style=&quot;margin: 0; padding: 0; word-break: normal; text-align: right; color: #aaa; font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace !important; line-height: 130%;&quot;&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;1&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;2&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;3&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;4&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;5&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;6&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;7&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;8&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;9&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;10&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;11&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;12&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;13&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;14&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;15&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;16&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;17&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;18&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;19&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;20&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;21&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;22&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;23&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;24&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;25&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;26&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;27&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;28&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;29&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;30&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;31&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;32&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;33&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;34&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;35&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;36&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;37&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;38&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;39&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;40&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;41&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;42&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;43&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;44&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;45&lt;/div&gt;
&lt;/div&gt;
&lt;/td&gt;
&lt;td style=&quot;padding: 6px 0; text-align: left;&quot;&gt;
&lt;div style=&quot;margin: 0; padding: 0; color: #f0f0f0; font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace !important; line-height: 130%;&quot;&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;lt;&lt;/span&gt;script&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;function&lt;/span&gt;&amp;nbsp;ajaxZoom(type){&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;$.ajax({&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;type&quot;&lt;/span&gt;:&amp;nbsp;&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;POST&quot;&lt;/span&gt;,&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;url&quot;&lt;/span&gt;:&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;zoom_api.jsp&quot;&lt;/span&gt;,&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;data&quot;&lt;/span&gt;:{&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;meetingId&amp;nbsp;:&amp;nbsp;&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;*********&quot;&lt;/span&gt;,&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;auth&amp;nbsp;:&amp;nbsp;&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;***********************************************************************************************************&quot;&lt;/span&gt;,&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;userId&amp;nbsp;:&amp;nbsp;&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;*******************&quot;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;},&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;dataType&quot;&lt;/span&gt;:&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;json&quot;&lt;/span&gt;,&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;success:&lt;span style=&quot;color: #ff3399;&quot;&gt;function&lt;/span&gt;(data){&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #4be6fa;&quot;&gt;console&lt;/span&gt;.log(&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;ajax&amp;nbsp;success&quot;&lt;/span&gt;);&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #ff3399;&quot;&gt;for&lt;/span&gt;(&lt;span style=&quot;color: #ff3399;&quot;&gt;var&lt;/span&gt;&amp;nbsp;i&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #c10aff;&quot;&gt;0&lt;/span&gt;;&amp;nbsp;i&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;lt;&lt;/span&gt;data.meetings.&lt;span style=&quot;color: #4be6fa;&quot;&gt;length&lt;/span&gt;;&amp;nbsp;i&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;+&lt;/span&gt;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;+&lt;/span&gt;){&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #ff3399;&quot;&gt;if&lt;/span&gt;(data.meetings[&lt;span style=&quot;color: #c10aff;&quot;&gt;0&lt;/span&gt;].id&amp;nbsp;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;*&lt;/span&gt;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;*&lt;/span&gt;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;*&lt;/span&gt;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;*&lt;/span&gt;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;*&lt;/span&gt;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;*&lt;/span&gt;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;*&lt;/span&gt;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;*&lt;/span&gt;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;*&lt;/span&gt;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;*&lt;/span&gt;){&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #ff3399;&quot;&gt;if&lt;/span&gt;(type&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;none&quot;&lt;/span&gt;)&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #4be6fa;&quot;&gt;console&lt;/span&gt;.log(data);&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #ff3399;&quot;&gt;else&lt;/span&gt;{&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #ff3399;&quot;&gt;for&lt;/span&gt;(&lt;span style=&quot;color: #ff3399;&quot;&gt;var&lt;/span&gt;&amp;nbsp;j&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #c10aff;&quot;&gt;0&lt;/span&gt;;&amp;nbsp;j&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;lt;&lt;/span&gt;data.meetings[i].recording_count;&amp;nbsp;j&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;+&lt;/span&gt;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;+&lt;/span&gt;){&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #ff3399;&quot;&gt;if&lt;/span&gt;(data.meetings[i].recording_files[j].file_type&amp;nbsp;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&amp;nbsp;type)&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #4be6fa;&quot;&gt;location&lt;/span&gt;.replace(data.meetings[i].recording_files[j].download_url&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;+&lt;/span&gt;&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;?access_token=*************************************************************************************************************************************************&quot;&lt;/span&gt;);&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;},&amp;nbsp;error:&lt;span style=&quot;color: #ff3399;&quot;&gt;function&lt;/span&gt;(error){&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #4be6fa;&quot;&gt;console&lt;/span&gt;.log(&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;ajax&amp;nbsp;false&quot;&lt;/span&gt;);&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #4be6fa;&quot;&gt;console&lt;/span&gt;.log(error);&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;});&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;function&lt;/span&gt;&amp;nbsp;getMeeting(){&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;ajaxZoom(&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;none&quot;&lt;/span&gt;);&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #ff3399;&quot;&gt;function&lt;/span&gt;&amp;nbsp;getRec(){&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;ajaxZoom(&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;MP4&quot;&lt;/span&gt;);&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #ff3399;&quot;&gt;function&lt;/span&gt;&amp;nbsp;getChatLog(){&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;ajaxZoom(&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;CHAT&quot;&lt;/span&gt;);&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;/&lt;/span&gt;script&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: right; margin-top: -13px; margin-right: 5px; font-size: 9px; font-style: italic;&quot;&gt;&lt;a style=&quot;color: #4f4f4ftext-decoration:none;&quot; href=&quot;http://colorscripter.com/info#e&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;Colored by Color Scripter&lt;/a&gt;&lt;/div&gt;
&lt;/td&gt;
&lt;td style=&quot;vertical-align: bottom; padding: 0 2px 4px 0;&quot;&gt;&lt;a style=&quot;text-decoration: none; color: white;&quot; href=&quot;http://colorscripter.com/info#e&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;&lt;span style=&quot;font-size: 9px; word-break: normal; background-color: #4f4f4f; color: white; border-radius: 10px; padding: 1px;&quot;&gt;cs&lt;/span&gt;&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;
&lt;p&gt;POST타입으로 전송되며 url은 기존에 지웠던 api 가져오는 jsp 파일이다.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;meetingId는 미팅번호, auth는 access_token 값, userId는 유저아이디다.&lt;/p&gt;
&lt;p&gt;json 타입으로 데이터를 전송받을 것이며 성공 시에는 ajax succeess log를 남긴다.&lt;/p&gt;
&lt;p&gt;만약 none이라는 타입이 아니라면(미팅의 정보를 가져오는 것이 아니면)&lt;/p&gt;
&lt;p&gt;location을 이용하여 data로 넘어온 url을 실행하여 다운로드를 받는다.(access_token이라는 파라미터를 넘겨줘야 로그인 없이 이 토큰값을 통해 다운로드가 진행된다)&lt;/p&gt;
&lt;p&gt;실패시는 ajax false 메시지와 함께 에러의 내용을 log로 남겨준다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;그러면 이제. 서버에서 이 ajax호출을 받아서 처리하는 zoom_api.jsp파일을 작성한다.&lt;/p&gt;
&lt;div class=&quot;colorscripter-code&quot; style=&quot;color: #f0f0f0; font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace !important; position: relative !important; overflow: auto;&quot;&gt;
&lt;table class=&quot;colorscripter-code-table&quot; style=&quot;margin: 0; padding: 0; border: none; background-color: #272727; border-radius: 4px;&quot; cellspacing=&quot;0&quot; cellpadding=&quot;0&quot;&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td style=&quot;padding: 6px; border-right: 2px solid #4f4f4f;&quot;&gt;
&lt;div style=&quot;margin: 0; padding: 0; word-break: normal; text-align: right; color: #aaa; font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace !important; line-height: 130%;&quot;&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;1&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;2&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;3&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;4&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;5&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;6&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;7&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;8&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;9&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;10&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;11&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;12&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;13&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;14&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;15&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;16&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;17&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;18&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;19&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;20&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;21&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;22&lt;/div&gt;
&lt;/div&gt;
&lt;/td&gt;
&lt;td style=&quot;padding: 6px 0; text-align: left;&quot;&gt;
&lt;div style=&quot;margin: 0; padding: 0; color: #f0f0f0; font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace !important; line-height: 130%;&quot;&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;lt;&lt;/span&gt;%@&amp;nbsp;page&amp;nbsp;contentType&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;text/html;&amp;nbsp;charset=utf-8&quot;&lt;/span&gt;%&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;lt;&lt;/span&gt;%@&amp;nbsp;page&amp;nbsp;&lt;span style=&quot;color: #ff3399;&quot;&gt;import&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;java.util.*&quot;&lt;/span&gt;%&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;lt;&lt;/span&gt;%@&amp;nbsp;page&amp;nbsp;&lt;span style=&quot;color: #ff3399;&quot;&gt;import&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;com.squareup.okhttp.*&quot;&lt;/span&gt;%&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;lt;&lt;/span&gt;%&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;color: #4be6fa;&quot;&gt;String&lt;/span&gt;&amp;nbsp;meetingId&amp;nbsp;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&amp;nbsp;request.getParameter(&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;meetingId&quot;&lt;/span&gt;);&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;color: #4be6fa;&quot;&gt;String&lt;/span&gt;&amp;nbsp;auth&amp;nbsp;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&amp;nbsp;request.getParameter(&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;auth&quot;&lt;/span&gt;);&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;color: #4be6fa;&quot;&gt;String&lt;/span&gt;&amp;nbsp;userId&amp;nbsp;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&amp;nbsp;request.getParameter(&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;userId&quot;&lt;/span&gt;);&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;color: #4be6fa;&quot;&gt;String&lt;/span&gt;&amp;nbsp;type&amp;nbsp;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&amp;nbsp;request.getParameter(&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;type&quot;&lt;/span&gt;);&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;OkHttpClient&amp;nbsp;client&amp;nbsp;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #ff3399;&quot;&gt;new&lt;/span&gt;&amp;nbsp;OkHttpClient();&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;Request&amp;nbsp;zoomRequest&amp;nbsp;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #ff3399;&quot;&gt;new&lt;/span&gt;&amp;nbsp;Request.Builder()&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;.url(&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;https://api.zoom.us/v2/users/&quot;&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;+&lt;/span&gt;&amp;nbsp;userId&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;+&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;/recordings?from=2020-10-24&amp;amp;to=2020-12-08&quot;&lt;/span&gt;)&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;.get()&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;.addHeader(&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;authorization&quot;&lt;/span&gt;,&amp;nbsp;&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;Bearer&amp;nbsp;&quot;&lt;/span&gt;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;+&lt;/span&gt;auth)&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;.build();&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;Response&amp;nbsp;zoomResponse&amp;nbsp;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&amp;nbsp;client.newCall(zoomRequest).execute();&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;color: #4be6fa;&quot;&gt;String&lt;/span&gt;&amp;nbsp;zoomText&amp;nbsp;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&amp;nbsp;zoomResponse.body().string();&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;%&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;lt;&lt;/span&gt;%&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;zoomText%&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: right; margin-top: -13px; margin-right: 5px; font-size: 9px; font-style: italic;&quot;&gt;&lt;a style=&quot;color: #4f4f4ftext-decoration:none;&quot; href=&quot;http://colorscripter.com/info#e&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;Colored by Color Scripter&lt;/a&gt;&lt;/div&gt;
&lt;/td&gt;
&lt;td style=&quot;vertical-align: bottom; padding: 0 2px 4px 0;&quot;&gt;&lt;a style=&quot;text-decoration: none; color: white;&quot; href=&quot;http://colorscripter.com/info#e&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;&lt;span style=&quot;font-size: 9px; word-break: normal; background-color: #4f4f4f; color: white; border-radius: 10px; padding: 1px;&quot;&gt;cs&lt;/span&gt;&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;
&lt;p&gt;헤더값으로 넘겨준 값들을 받아서 이전에 java에서 했던대로 response를 받아 json형식의 string을 보여주게 되어있다.&lt;/p&gt;
&lt;p&gt;이제 위에 &lt;span style=&quot;color: #333333;&quot;&gt;meeting_iframe.jsp에서 meetingId, userId, auth등등의 값등을 클라이언트에서 받아서 해당 ajax 함수를 호출하면 서버에서 api처리를 하여 값을 전달받을 수 있다.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>api/zoom</category>
      <category>ajax</category>
      <category>zoom ajax</category>
      <category>zoom api</category>
      <category>zoom OkHttp</category>
      <category>zoom OkHttpClient</category>
      <category>zoom sdk</category>
      <category>zoom 서버</category>
      <category>zoom 서버통신</category>
      <author>IT스타터</author>
      <guid isPermaLink="true">https://tobepro.tistory.com/38</guid>
      <comments>https://tobepro.tistory.com/38#entry38comment</comments>
      <pubDate>Tue, 8 Dec 2020 17:04:19 +0900</pubDate>
    </item>
    <item>
      <title>zoom api 이용하기 - 2</title>
      <link>https://tobepro.tistory.com/37</link>
      <description>&lt;p&gt;&lt;a href=&quot;https://tobepro.tistory.com/36&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;tobepro.tistory.com/36&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1606884743626&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-og-type=&quot;article&quot; data-og-title=&quot;zoom api 이용하기(1)&quot; data-og-description=&quot;tobepro.tistory.com/35 zoom iframe 으로 크기 조절하기 tobepro.tistory.com/32?category=441528 zoom sdk 이용하기(web) 코로나의 여파로 인해 zoom같은 비대면 화상 회의에 대한 수요가 급증하고 있다. 이번에..&quot; data-og-host=&quot;tobepro.tistory.com&quot; data-og-source-url=&quot;https://tobepro.tistory.com/36&quot; data-og-url=&quot;https://tobepro.tistory.com/36&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/czfsMx/hyIqfnh7hx/gff3RC67WN6KK35NeifVQk/img.png?width=800&amp;amp;height=433&amp;amp;face=0_0_800_433,https://scrap.kakaocdn.net/dn/8CY17/hyIrs6maOB/UzHGOJNNUajXPpkMTqP9V1/img.png?width=800&amp;amp;height=433&amp;amp;face=0_0_800_433,https://scrap.kakaocdn.net/dn/cJTDwt/hyIp8aBI4e/XV1GWTjbkHDzW2dhOz5h21/img.png?width=1920&amp;amp;height=1040&amp;amp;face=0_0_1920_1040&quot;&gt;&lt;a href=&quot;https://tobepro.tistory.com/36&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://tobepro.tistory.com/36&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/czfsMx/hyIqfnh7hx/gff3RC67WN6KK35NeifVQk/img.png?width=800&amp;amp;height=433&amp;amp;face=0_0_800_433,https://scrap.kakaocdn.net/dn/8CY17/hyIrs6maOB/UzHGOJNNUajXPpkMTqP9V1/img.png?width=800&amp;amp;height=433&amp;amp;face=0_0_800_433,https://scrap.kakaocdn.net/dn/cJTDwt/hyIp8aBI4e/XV1GWTjbkHDzW2dhOz5h21/img.png?width=1920&amp;amp;height=1040&amp;amp;face=0_0_1920_1040');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot;&gt;zoom api 이용하기(1)&lt;/p&gt;
&lt;p class=&quot;og-desc&quot;&gt;tobepro.tistory.com/35 zoom iframe 으로 크기 조절하기 tobepro.tistory.com/32?category=441528 zoom sdk 이용하기(web) 코로나의 여파로 인해 zoom같은 비대면 화상 회의에 대한 수요가 급증하고 있다. 이번에..&lt;/p&gt;
&lt;p class=&quot;og-host&quot;&gt;tobepro.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p&gt;우리는 위 포스팅을 통해 zoom api 이용을 시도해봤다.&lt;/p&gt;
&lt;p&gt;하지만 CORS 정책에 의해 막히고 말았는데, zoom developer forum사이트에서 찾은 방법을 한 번 적용해서 해결을 해보도록 하자.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-filename=&quot;10.png&quot; data-origin-width=&quot;2560&quot; data-origin-height=&quot;1540&quot; data-ke-mobilestyle=&quot;widthContent&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dKaEls/btqO0glL43G/ZjhDbPjhkngHACABwwrLK1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dKaEls/btqO0glL43G/ZjhDbPjhkngHACABwwrLK1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dKaEls/btqO0glL43G/ZjhDbPjhkngHACABwwrLK1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdKaEls%2FbtqO0glL43G%2FZjhDbPjhkngHACABwwrLK1%2Fimg.png&quot; data-filename=&quot;10.png&quot; data-origin-width=&quot;2560&quot; data-origin-height=&quot;1540&quot; data-ke-mobilestyle=&quot;widthContent&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;&lt;span&gt;tommy 스태프가 답변한 내용을 보면,&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;&lt;br /&gt;&quot;Yes, the Zoom API must be called from the server side / backend. If called from the client side / frontend, you will get CORs errors.&quot;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;zoom api는 반드시 서버사이드 즉 백엔드에서 불려져야 한다. 클라이언트단 즉 프론트엔드에서 호출을 하게 되면 너는 CORS에러를 갖게 될 것이다...&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;우리가 계속 CORS에러를 갖게 된 이유는 프론트엔드에서 계속 호출을 했기 때문에 이런 에러를 갖게 된 것이다.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;여기서 클라이언트단과 서버단에서 실행되는 것에 차이를 알아야 하는데, 쉽게 생각하면 &lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;유저가 보이는 화면에서 실행된다 - 프론트엔드&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;유저가 보이지 않는 화면에서 실행이 된다 - 백엔드&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;로 생각하면 될 것 같다.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;예를 들어 자바스크립트나 css, html 같은 경우, 화면에서 바로 보이는 부분들이 수정되는 것이기 때문에 프론트엔드라고 볼 수 있다.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;db나 자바 등은 화면에서 보이는 부분들이 수정되는 것이 아니기 때문에 백엔드라고 볼 수 있다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;자바스크립트 같은 경우는 앞서 말했듯이 프론트엔드인데&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;가장 먼저 해결책으로 나오는 것은 node.js를 통해 js파일을 서버단에서 실행하라는 답변이 가장 많이 나온다. 하지만 우린 이미 tomcat서버를 활용하기로 했으니 이는 통과. 다른 방법을 찾아야 한다.&lt;/span&gt;&lt;span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;내가 찾은 방법은 jsp파일을 활용하여 java로 처리를 하는 방법이다.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;jsp에서는 쉽게 생각하면 자바를 먼저 서버단으로 실행을 하고, 이후 자바스크립트를 클라이언트단으로 실행을 하기 때문에 자바에서 서버단으로 처리가 가능하다.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;다시 zoom api 관련 서류에 get Meeting Recordings부분으로 가서&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;https://marketplace.zoom.us/docs/api-reference/zoom-api/cloud-recording/recordingget&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;marketplace.zoom.us/docs/api-reference/zoom-api/cloud-recording/recordingget&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1607388169507&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-og-type=&quot;website&quot; data-og-title=&quot;Get Meeting Recordings - Cloud Recording - Zoom API - API Reference&quot; data-og-description=&quot;Get all the recordings from a meeting or a Webinar. The recording files can be downloaded via the download_url property listed in the response. To acce...&quot; data-og-host=&quot;marketplace.zoom.us&quot; data-og-source-url=&quot;https://marketplace.zoom.us/docs/api-reference/zoom-api/cloud-recording/recordingget&quot; data-og-url=&quot;https://marketplace.zoom.us/docs/api-reference/zoom-api/cloud-recording/recordingget&quot; data-og-image=&quot;&quot;&gt;&lt;a href=&quot;https://marketplace.zoom.us/docs/api-reference/zoom-api/cloud-recording/recordingget&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://marketplace.zoom.us/docs/api-reference/zoom-api/cloud-recording/recordingget&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url();&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot;&gt;Get Meeting Recordings - Cloud Recording - Zoom API - API Reference&lt;/p&gt;
&lt;p class=&quot;og-desc&quot;&gt;Get all the recordings from a meeting or a Webinar. The recording files can be downloaded via the download_url property listed in the response. To acce...&lt;/p&gt;
&lt;p class=&quot;og-host&quot;&gt;marketplace.zoom.us&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-filename=&quot;1.png&quot; data-origin-width=&quot;1134&quot; data-origin-height=&quot;566&quot; data-ke-mobilestyle=&quot;widthContent&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dScBJe/btqPxcp6NaW/JQgYUq6QkCJaS6oCnpCI3K/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dScBJe/btqPxcp6NaW/JQgYUq6QkCJaS6oCnpCI3K/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dScBJe/btqPxcp6NaW/JQgYUq6QkCJaS6oCnpCI3K/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdScBJe%2FbtqPxcp6NaW%2FJQgYUq6QkCJaS6oCnpCI3K%2Fimg.png&quot; data-filename=&quot;1.png&quot; data-origin-width=&quot;1134&quot; data-origin-height=&quot;566&quot; data-ke-mobilestyle=&quot;widthContent&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;Language를 java로 선택하여 코드를 확인하도록 한다. 나는 OkHttp 라이브러리를 사용하기 위해 OkHttp를 선택했다.&lt;/p&gt;
&lt;p&gt;이제 이 코드를 복사 후 meeting_iframe.html을 수정한다.&lt;/p&gt;
&lt;div class=&quot;colorscripter-code&quot; style=&quot;color: #f0f0f0; font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace !important; position: relative !important; overflow: auto;&quot;&gt;
&lt;table class=&quot;colorscripter-code-table&quot; style=&quot;margin: 0; padding: 0; border: none; background-color: #272727; border-radius: 4px;&quot; cellspacing=&quot;0&quot; cellpadding=&quot;0&quot;&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td style=&quot;padding: 6px; border-right: 2px solid #4f4f4f;&quot;&gt;
&lt;div style=&quot;margin: 0; padding: 0; word-break: normal; text-align: right; color: #aaa; font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace !important; line-height: 130%;&quot;&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;1&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;2&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;3&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;4&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;5&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;6&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;7&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;8&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;9&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;10&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;11&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;12&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;13&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;14&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;15&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;16&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;17&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;18&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;19&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;20&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;21&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;22&lt;/div&gt;
&lt;/div&gt;
&lt;/td&gt;
&lt;td style=&quot;padding: 6px 0; text-align: left;&quot;&gt;
&lt;div style=&quot;margin: 0; padding: 0; color: #f0f0f0; font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace !important; line-height: 130%;&quot;&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;lt;&lt;/span&gt;%@&amp;nbsp;page&amp;nbsp;contentType&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;text/html;&amp;nbsp;charset=utf-8&quot;&lt;/span&gt;%&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;lt;&lt;/span&gt;%@&amp;nbsp;page&amp;nbsp;&lt;span style=&quot;color: #ff3399;&quot;&gt;import&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;java.util.*&quot;&lt;/span&gt;%&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;lt;&lt;/span&gt;%@&amp;nbsp;page&amp;nbsp;&lt;span style=&quot;color: #ff3399;&quot;&gt;import&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;com.squareup.okhttp.*&quot;&lt;/span&gt;%&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;lt;&lt;/span&gt;%&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;OkHttpClient&amp;nbsp;client&amp;nbsp;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #ff3399;&quot;&gt;new&lt;/span&gt;&amp;nbsp;OkHttpClient();&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;color: #4be6fa;&quot;&gt;String&lt;/span&gt;&amp;nbsp;zoomUrl&amp;nbsp;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;https://api.zoom.us/v2/meetings/**********/recordings&quot;&lt;/span&gt;;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;color: #4be6fa;&quot;&gt;String&lt;/span&gt;&amp;nbsp;auth&amp;nbsp;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;*********************************************************************************************************************************&quot;&lt;/span&gt;;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;Request&amp;nbsp;zoomRequest&amp;nbsp;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #ff3399;&quot;&gt;new&lt;/span&gt;&amp;nbsp;Request.Builder()&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;.url(zoomUrl)&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;.get()&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;.addHeader(&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;authorization&quot;&lt;/span&gt;,&amp;nbsp;&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;Bearer&amp;nbsp;&quot;&lt;/span&gt;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;+&lt;/span&gt;auth)&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;.build();&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;Response&amp;nbsp;zoomResponse&amp;nbsp;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&amp;nbsp;client.newCall(zoomRequest).execute();&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;color: #4be6fa;&quot;&gt;String&lt;/span&gt;&amp;nbsp;zoomText&amp;nbsp;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&amp;nbsp;zoomResponse.body().string();&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;%&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;lt;&lt;/span&gt;scrit&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #ff3399;&quot;&gt;function&lt;/span&gt;&amp;nbsp;getMeeting(){&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #4be6fa;&quot;&gt;console&lt;/span&gt;.log(&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;&amp;lt;%=zoomText%&amp;gt;&quot;&lt;/span&gt;);&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;/&lt;/span&gt;scrit&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: right; margin-top: -13px; margin-right: 5px; font-size: 9px; font-style: italic;&quot;&gt;&lt;a style=&quot;color: #4f4f4ftext-decoration:none;&quot; href=&quot;http://colorscripter.com/info#e&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;Colored by Color Scripter&lt;/a&gt;&lt;/div&gt;
&lt;/td&gt;
&lt;td style=&quot;vertical-align: bottom; padding: 0 2px 4px 0;&quot;&gt;&lt;a style=&quot;text-decoration: none; color: white;&quot; href=&quot;http://colorscripter.com/info#e&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;&lt;span style=&quot;font-size: 9px; word-break: normal; background-color: #4f4f4f; color: white; border-radius: 10px; padding: 1px;&quot;&gt;cs&lt;/span&gt;&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;
&lt;p&gt;meeting_iframe.html은 이제 jsp로 바꿔서 사용을 할 것이므로, 확장자를 jsp로 바꾼 뒤 다시 확인을 한다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-filename=&quot;2.png&quot; data-origin-width=&quot;1746&quot; data-origin-height=&quot;875&quot; data-ke-mobilestyle=&quot;widthContent&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dsWA0o/btqPyslTtHy/yfbXwRdYzPzokIyUvY6zi1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dsWA0o/btqPyslTtHy/yfbXwRdYzPzokIyUvY6zi1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dsWA0o/btqPyslTtHy/yfbXwRdYzPzokIyUvY6zi1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdsWA0o%2FbtqPyslTtHy%2FyfbXwRdYzPzokIyUvY6zi1%2Fimg.png&quot; data-filename=&quot;2.png&quot; data-origin-width=&quot;1746&quot; data-origin-height=&quot;875&quot; data-ke-mobilestyle=&quot;widthContent&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;에러가 나서 확인을 해보면&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-filename=&quot;3.png&quot; data-origin-width=&quot;1307&quot; data-origin-height=&quot;752&quot; data-ke-mobilestyle=&quot;widthContent&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cCijVr/btqPqkWWTkF/kgGnDHmUOCs2zBGHhUiVvk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cCijVr/btqPqkWWTkF/kgGnDHmUOCs2zBGHhUiVvk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cCijVr/btqPqkWWTkF/kgGnDHmUOCs2zBGHhUiVvk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcCijVr%2FbtqPqkWWTkF%2FkgGnDHmUOCs2zBGHhUiVvk%2Fimg.png&quot; data-filename=&quot;3.png&quot; data-origin-width=&quot;1307&quot; data-origin-height=&quot;752&quot; data-ke-mobilestyle=&quot;widthContent&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;값은 제대로 받아오는 것을 알 수 있다.&lt;/p&gt;
&lt;p&gt;json object로 받아온 값을 적당한 파싱을 통해 string으로 변환해서 넣은 게 아니라 그냥 &quot;&quot;로 둘러싸여 넣은 형태이기 때문에 에러가 나온 것이다.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;제대로 변환을 해서 확인을 해보면&lt;/p&gt;
&lt;div class=&quot;colorscripter-code&quot; style=&quot;color: #f0f0f0; font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace !important; position: relative !important; overflow: auto;&quot;&gt;
&lt;table class=&quot;colorscripter-code-table&quot; style=&quot;margin: 0; padding: 0; border: none; background-color: #272727; border-radius: 4px;&quot; cellspacing=&quot;0&quot; cellpadding=&quot;0&quot;&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td style=&quot;padding: 6px; border-right: 2px solid #4f4f4f;&quot;&gt;
&lt;div style=&quot;margin: 0; padding: 0; word-break: normal; text-align: right; color: #aaa; font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace !important; line-height: 130%;&quot;&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;1&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;2&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;3&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;4&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;5&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;6&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;7&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;8&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;9&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;10&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;11&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;12&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;13&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;14&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;15&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;16&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;17&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;18&lt;/div&gt;
&lt;/div&gt;
&lt;/td&gt;
&lt;td style=&quot;padding: 6px 0; text-align: left;&quot;&gt;
&lt;div style=&quot;margin: 0; padding: 0; color: #f0f0f0; font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace !important; line-height: 130%;&quot;&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;lt;&lt;/span&gt;%@&amp;nbsp;page&amp;nbsp;&lt;span style=&quot;color: #ff3399;&quot;&gt;import&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;org.json.simple.JSONObject&quot;&lt;/span&gt;%&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;lt;&lt;/span&gt;%@&amp;nbsp;page&amp;nbsp;&lt;span style=&quot;color: #ff3399;&quot;&gt;import&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;org.json.simple.JSONArray&quot;&lt;/span&gt;%&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;lt;&lt;/span&gt;%@&amp;nbsp;page&amp;nbsp;&lt;span style=&quot;color: #ff3399;&quot;&gt;import&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;org.json.simple.parser.JSONParser&quot;&lt;/span&gt;%&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;lt;&lt;/span&gt;%@&amp;nbsp;page&amp;nbsp;&lt;span style=&quot;color: #ff3399;&quot;&gt;import&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;org.json.simple.parser.ParseException&quot;&lt;/span&gt;%&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;lt;&lt;/span&gt;%&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #4be6fa;&quot;&gt;String&lt;/span&gt;&amp;nbsp;zoomText&amp;nbsp;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&amp;nbsp;zoomResponse.body().string();&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;JSONParser&amp;nbsp;parser&amp;nbsp;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #ff3399;&quot;&gt;new&lt;/span&gt;&amp;nbsp;JSONParser();&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;JSONObject&amp;nbsp;jObj&amp;nbsp;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&amp;nbsp;(JSONObject)parser.parse(zoomText);&amp;nbsp;&amp;nbsp;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;%&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;lt;&lt;/span&gt;script&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #ff3399;&quot;&gt;function&lt;/span&gt;&amp;nbsp;getMeeting(){&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #ff3399;&quot;&gt;var&lt;/span&gt;&amp;nbsp;jsonObj&amp;nbsp;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;lt;&lt;/span&gt;%&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;jObj%&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;gt;&lt;/span&gt;;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #4be6fa;&quot;&gt;console&lt;/span&gt;.log(jsonObj);&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;/&lt;/span&gt;script&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: right; margin-top: -13px; margin-right: 5px; font-size: 9px; font-style: italic;&quot;&gt;&lt;a style=&quot;color: #4f4f4ftext-decoration:none;&quot; href=&quot;http://colorscripter.com/info#e&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;Colored by Color Scripter&lt;/a&gt;&lt;/div&gt;
&lt;/td&gt;
&lt;td style=&quot;vertical-align: bottom; padding: 0 2px 4px 0;&quot;&gt;&lt;a style=&quot;text-decoration: none; color: white;&quot; href=&quot;http://colorscripter.com/info#e&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;&lt;span style=&quot;font-size: 9px; word-break: normal; background-color: #4f4f4f; color: white; border-radius: 10px; padding: 1px;&quot;&gt;cs&lt;/span&gt;&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;span style=&quot;letter-spacing: 0px;&quot;&gt;&lt;/span&gt;&lt;/div&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-filename=&quot;4.png&quot; data-origin-width=&quot;1750&quot; data-origin-height=&quot;1049&quot; data-ke-mobilestyle=&quot;widthContent&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/tCWZo/btqPwlOnxOS/iMXSGylQ2YLWoHTX77HnDk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/tCWZo/btqPwlOnxOS/iMXSGylQ2YLWoHTX77HnDk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/tCWZo/btqPwlOnxOS/iMXSGylQ2YLWoHTX77HnDk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FtCWZo%2FbtqPwlOnxOS%2FiMXSGylQ2YLWoHTX77HnDk%2Fimg.png&quot; data-filename=&quot;4.png&quot; data-origin-width=&quot;1750&quot; data-origin-height=&quot;1049&quot; data-ke-mobilestyle=&quot;widthContent&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;이제 버튼을 누르면 json 형태의 값들을 확인해 볼 수 있다.&lt;/p&gt;
&lt;p&gt;우리가 써야 하는 녹화영상에 관한 데이터는 recording_files에 담겨 있다.&lt;/p&gt;
&lt;p&gt;이제 download버튼을 2개 만들어서, 이 클라우드에 저장되어 있는 영상과 채팅 로그를 다운로드 받아보도록 하자.&lt;/p&gt;
&lt;div class=&quot;colorscripter-code&quot; style=&quot;color: #f0f0f0; font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace !important; position: relative !important; overflow: auto;&quot;&gt;
&lt;table class=&quot;colorscripter-code-table&quot; style=&quot;margin: 0; padding: 0; border: none; background-color: #272727; border-radius: 4px;&quot; cellspacing=&quot;0&quot; cellpadding=&quot;0&quot;&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td style=&quot;padding: 6px; border-right: 2px solid #4f4f4f;&quot;&gt;
&lt;div style=&quot;margin: 0; padding: 0; word-break: normal; text-align: right; color: #aaa; font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace !important; line-height: 130%;&quot;&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;1&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;2&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;3&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;4&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;5&lt;/div&gt;
&lt;/div&gt;
&lt;/td&gt;
&lt;td style=&quot;padding: 6px 0; text-align: left;&quot;&gt;
&lt;div style=&quot;margin: 0; padding: 0; color: #f0f0f0; font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace !important; line-height: 130%;&quot;&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;lt;&lt;/span&gt;script&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;lt;&lt;/span&gt;button&amp;nbsp;&lt;span style=&quot;color: #4be6fa;&quot;&gt;onclick&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;getRec()&quot;&lt;/span&gt;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;gt;&lt;/span&gt;getRec&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;/&lt;/span&gt;button&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;gt;&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;lt;&lt;/span&gt;button&amp;nbsp;&lt;span style=&quot;color: #4be6fa;&quot;&gt;onclick&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;getChatLog()&quot;&lt;/span&gt;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;gt;&lt;/span&gt;getChatLog&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;/&lt;/span&gt;button&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;/&lt;/span&gt;script&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: right; margin-top: -13px; margin-right: 5px; font-size: 9px; font-style: italic;&quot;&gt;&lt;a style=&quot;color: #4f4f4ftext-decoration:none;&quot; href=&quot;http://colorscripter.com/info#e&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;Colored by Color Scripter&lt;/a&gt;&lt;/div&gt;
&lt;/td&gt;
&lt;td style=&quot;vertical-align: bottom; padding: 0 2px 4px 0;&quot;&gt;&lt;a style=&quot;text-decoration: none; color: white;&quot; href=&quot;http://colorscripter.com/info#e&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;&lt;span style=&quot;font-size: 9px; word-break: normal; background-color: #4f4f4f; color: white; border-radius: 10px; padding: 1px;&quot;&gt;cs&lt;/span&gt;&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;
&lt;p&gt;버튼을 만들고&lt;/p&gt;
&lt;div class=&quot;colorscripter-code&quot; style=&quot;color: #f0f0f0; font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace !important; position: relative !important; overflow: auto;&quot;&gt;
&lt;table class=&quot;colorscripter-code-table&quot; style=&quot;margin: 0; padding: 0; border: none; background-color: #272727; border-radius: 4px;&quot; cellspacing=&quot;0&quot; cellpadding=&quot;0&quot;&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td style=&quot;padding: 6px; border-right: 2px solid #4f4f4f;&quot;&gt;
&lt;div style=&quot;margin: 0; padding: 0; word-break: normal; text-align: right; color: #aaa; font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace !important; line-height: 130%;&quot;&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;1&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;2&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;3&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;4&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;5&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;6&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;7&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;8&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;9&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;10&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;11&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;12&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;13&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;14&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;15&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;16&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;17&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;18&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;19&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;20&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;21&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;22&lt;/div&gt;
&lt;/div&gt;
&lt;/td&gt;
&lt;td style=&quot;padding: 6px 0; text-align: left;&quot;&gt;
&lt;div style=&quot;margin: 0; padding: 0; color: #f0f0f0; font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace !important; line-height: 130%;&quot;&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;lt;&lt;/span&gt;%&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;JSONArray&amp;nbsp;jArray&amp;nbsp;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&amp;nbsp;(JSONArray)jObj.get(&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;recording_files&quot;&lt;/span&gt;);&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;color: #4be6fa;&quot;&gt;String&lt;/span&gt;&amp;nbsp;recUrl&amp;nbsp;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;&quot;&lt;/span&gt;;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;color: #4be6fa;&quot;&gt;String&lt;/span&gt;&amp;nbsp;chatUrl&amp;nbsp;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;&quot;&lt;/span&gt;;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;JSONObject&amp;nbsp;json&amp;nbsp;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #4be6fa;&quot;&gt;null&lt;/span&gt;;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;for&lt;/span&gt;(&lt;span style=&quot;color: #ff3399;&quot;&gt;int&lt;/span&gt;&amp;nbsp;i&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #c10aff;&quot;&gt;0&lt;/span&gt;;&amp;nbsp;i&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;lt;&lt;/span&gt;jArray.size();&amp;nbsp;i&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;+&lt;/span&gt;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;+&lt;/span&gt;){&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;json&amp;nbsp;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&amp;nbsp;(JSONObject)jArray.get(i);&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #ff3399;&quot;&gt;if&lt;/span&gt;(json.get(&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;file_type&quot;&lt;/span&gt;).equals(&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;MP4&quot;&lt;/span&gt;))&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;recUrl&amp;nbsp;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&amp;nbsp;(&lt;span style=&quot;color: #4be6fa;&quot;&gt;String&lt;/span&gt;)json.get(&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;download_url&quot;&lt;/span&gt;);&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #ff3399;&quot;&gt;else&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #ff3399;&quot;&gt;if&lt;/span&gt;(json.get(&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;file_type&quot;&lt;/span&gt;).equals(&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;CHAT&quot;&lt;/span&gt;))&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;chatUrl&amp;nbsp;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&amp;nbsp;(&lt;span style=&quot;color: #4be6fa;&quot;&gt;String&lt;/span&gt;)json.get(&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;download_url&quot;&lt;/span&gt;);&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;}&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;%&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;lt;&lt;/span&gt;script&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;function&lt;/span&gt;&amp;nbsp;getRec(){&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #4be6fa;&quot;&gt;location&lt;/span&gt;.replace(&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;&amp;lt;%=recUrl%&amp;gt;?access_token=&amp;lt;%=auth%&amp;gt;&quot;&lt;/span&gt;);&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #ff3399;&quot;&gt;function&lt;/span&gt;&amp;nbsp;getChatLog(){&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #4be6fa;&quot;&gt;location&lt;/span&gt;.replace(&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;&amp;lt;%=chatUrl%&amp;gt;?access_token=&amp;lt;%=auth%&amp;gt;&quot;&lt;/span&gt;);&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;/&lt;/span&gt;script&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: right; margin-top: -13px; margin-right: 5px; font-size: 9px; font-style: italic;&quot;&gt;&lt;a style=&quot;color: #4f4f4ftext-decoration:none;&quot; href=&quot;http://colorscripter.com/info#e&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;Colored by Color Scripter&lt;/a&gt;&lt;/div&gt;
&lt;/td&gt;
&lt;td style=&quot;vertical-align: bottom; padding: 0 2px 4px 0;&quot;&gt;&lt;a style=&quot;text-decoration: none; color: white;&quot; href=&quot;http://colorscripter.com/info#e&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;&lt;span style=&quot;font-size: 9px; word-break: normal; background-color: #4f4f4f; color: white; border-radius: 10px; padding: 1px;&quot;&gt;cs&lt;/span&gt;&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;
&lt;p&gt;버튼을 눌렀을 때 각각에 해당되는 download_url을 실행하여 다운로드를 진행하도록 하였다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-filename=&quot;5.png&quot; data-origin-width=&quot;2524&quot; data-origin-height=&quot;1358&quot; data-ke-mobilestyle=&quot;widthContent&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/76ENB/btqPsDaZPl1/rBuK4lWd4bkGEerrqRavF1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/76ENB/btqPsDaZPl1/rBuK4lWd4bkGEerrqRavF1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/76ENB/btqPsDaZPl1/rBuK4lWd4bkGEerrqRavF1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F76ENB%2FbtqPsDaZPl1%2FrBuK4lWd4bkGEerrqRavF1%2Fimg.png&quot; data-filename=&quot;5.png&quot; data-origin-width=&quot;2524&quot; data-origin-height=&quot;1358&quot; data-ke-mobilestyle=&quot;widthContent&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;여기까지 하면 기본적인 zoom api 이용하는 것에 대해 완성한 거 같다.&lt;/p&gt;
&lt;p&gt;이 밖에 다른 api 기능은 zoom api 문서 사이트를 통해 몇 가지를 수정해서 사용하면 될 것이다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;@@@@@@@@추가&lt;/p&gt;
&lt;p&gt;이상하게도 Get Meeting Recordings api를 사용하면 가장 마지막 녹화기록만 가져오는 경우가 발생한다. 그래서 List All Recordings를 가져다가 다시 사용했다.&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;https://marketplace.zoom.us/docs/api-reference/zoom-api/cloud-recording/recordingslist&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;marketplace.zoom.us/docs/api-reference/zoom-api/cloud-recording/recordingslist&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1607404692062&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-og-type=&quot;website&quot; data-og-title=&quot;List All Recordings - Cloud Recording - Zoom API - API Reference&quot; data-og-description=&quot;When a user records a meeting or a webinar by choosing the Record to the Cloud option, the video, audio, and chat text are recorded in the Zoom cloud. ...&quot; data-og-host=&quot;marketplace.zoom.us&quot; data-og-source-url=&quot;https://marketplace.zoom.us/docs/api-reference/zoom-api/cloud-recording/recordingslist&quot; data-og-url=&quot;https://marketplace.zoom.us/docs/api-reference/zoom-api/cloud-recording/recordingslist&quot; data-og-image=&quot;&quot;&gt;&lt;a href=&quot;https://marketplace.zoom.us/docs/api-reference/zoom-api/cloud-recording/recordingslist&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://marketplace.zoom.us/docs/api-reference/zoom-api/cloud-recording/recordingslist&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url();&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot;&gt;List All Recordings - Cloud Recording - Zoom API - API Reference&lt;/p&gt;
&lt;p class=&quot;og-desc&quot;&gt;When a user records a meeting or a webinar by choosing the Record to the Cloud option, the video, audio, and chat text are recorded in the Zoom cloud. ...&lt;/p&gt;
&lt;p class=&quot;og-host&quot;&gt;marketplace.zoom.us&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;전체 소스는&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;div class=&quot;colorscripter-code&quot; style=&quot;color: #f0f0f0; font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace !important; position: relative !important; overflow: auto;&quot;&gt;
&lt;table class=&quot;colorscripter-code-table&quot; style=&quot;margin: 0; padding: 0; border: none; background-color: #272727; border-radius: 4px;&quot; cellspacing=&quot;0&quot; cellpadding=&quot;0&quot;&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td style=&quot;padding: 6px; border-right: 2px solid #4f4f4f;&quot;&gt;
&lt;div style=&quot;margin: 0; padding: 0; word-break: normal; text-align: right; color: #aaa; font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace !important; line-height: 130%;&quot;&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;1&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;2&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;3&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;4&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;5&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;6&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;7&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;8&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;9&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;10&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;11&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;12&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;13&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;14&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;15&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;16&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;17&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;18&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;19&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;20&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;21&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;22&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;23&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;24&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;25&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;26&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;27&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;28&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;29&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;30&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;31&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;32&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;33&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;34&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;35&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;36&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;37&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;38&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;39&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;40&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;41&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;42&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;43&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;44&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;45&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;46&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;47&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;48&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;49&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;50&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;51&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;52&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;53&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;54&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;55&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;56&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;57&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;58&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;59&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;60&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;61&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;62&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;63&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;64&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;65&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;66&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;67&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;68&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;69&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;70&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;71&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;72&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;73&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;74&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;75&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;76&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;77&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;78&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;79&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;80&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;81&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;82&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;83&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;84&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;85&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;86&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;87&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;88&lt;/div&gt;
&lt;/div&gt;
&lt;/td&gt;
&lt;td style=&quot;padding: 6px 0; text-align: left;&quot;&gt;
&lt;div style=&quot;margin: 0; padding: 0; color: #f0f0f0; font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace !important; line-height: 130%;&quot;&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;lt;&lt;/span&gt;%@&amp;nbsp;page&amp;nbsp;contentType&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;text/html;&amp;nbsp;charset=utf-8&quot;&lt;/span&gt;%&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;lt;&lt;/span&gt;%@&amp;nbsp;page&amp;nbsp;&lt;span style=&quot;color: #ff3399;&quot;&gt;import&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;java.util.*&quot;&lt;/span&gt;%&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;lt;&lt;/span&gt;%@&amp;nbsp;page&amp;nbsp;&lt;span style=&quot;color: #ff3399;&quot;&gt;import&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;org.json.simple.JSONObject&quot;&lt;/span&gt;%&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;lt;&lt;/span&gt;%@&amp;nbsp;page&amp;nbsp;&lt;span style=&quot;color: #ff3399;&quot;&gt;import&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;org.json.simple.JSONArray&quot;&lt;/span&gt;%&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;lt;&lt;/span&gt;%@&amp;nbsp;page&amp;nbsp;&lt;span style=&quot;color: #ff3399;&quot;&gt;import&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;org.json.simple.parser.JSONParser&quot;&lt;/span&gt;%&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;lt;&lt;/span&gt;%@&amp;nbsp;page&amp;nbsp;&lt;span style=&quot;color: #ff3399;&quot;&gt;import&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;org.json.simple.parser.ParseException&quot;&lt;/span&gt;%&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;lt;&lt;/span&gt;%@&amp;nbsp;page&amp;nbsp;&lt;span style=&quot;color: #ff3399;&quot;&gt;import&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;com.squareup.okhttp.*&quot;&lt;/span&gt;%&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;!&lt;/span&gt;DOCTYPE&amp;nbsp;html&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;lt;&lt;/span&gt;head&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;lt;&lt;/span&gt;meta&amp;nbsp;charset&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;utf-8&quot;&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;/&lt;/span&gt;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;lt;&lt;/span&gt;style&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;gt;&lt;/span&gt;&amp;nbsp;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;.zoom_position{&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;margin&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;-&lt;/span&gt;left:450px;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;margin&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;-&lt;/span&gt;top:150px;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;/&lt;/span&gt;style&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;/&lt;/span&gt;head&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;lt;&lt;/span&gt;%&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;OkHttpClient&amp;nbsp;client&amp;nbsp;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #ff3399;&quot;&gt;new&lt;/span&gt;&amp;nbsp;OkHttpClient();&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;color: #999999;&quot;&gt;//String zoomUrl = &quot;https://api.zoom.us/v2/meetings/*******/recordings?from=2020-11-24&amp;amp;to=2020-11-24&quot;;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;color: #4be6fa;&quot;&gt;String&lt;/span&gt;&amp;nbsp;zoomUrl&amp;nbsp;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;https://api.zoom.us/v2/users/*********/recordings?from=2020-11-24&amp;amp;to=2020-11-24&quot;&lt;/span&gt;;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;color: #4be6fa;&quot;&gt;String&lt;/span&gt;&amp;nbsp;auth&amp;nbsp;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;*****************************************************************************************************************************&quot;&lt;/span&gt;;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;Request&amp;nbsp;zoomRequest&amp;nbsp;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #ff3399;&quot;&gt;new&lt;/span&gt;&amp;nbsp;Request.Builder()&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;.url(zoomUrl)&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;.get()&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;.addHeader(&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;authorization&quot;&lt;/span&gt;,&amp;nbsp;&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;Bearer&amp;nbsp;&quot;&lt;/span&gt;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;+&lt;/span&gt;auth)&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;.build();&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;Response&amp;nbsp;zoomResponse&amp;nbsp;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&amp;nbsp;client.newCall(zoomRequest).execute();&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;color: #4be6fa;&quot;&gt;String&lt;/span&gt;&amp;nbsp;zoomText&amp;nbsp;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&amp;nbsp;zoomResponse.body().string();&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;JSONParser&amp;nbsp;parser&amp;nbsp;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #ff3399;&quot;&gt;new&lt;/span&gt;&amp;nbsp;JSONParser();&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;JSONObject&amp;nbsp;jObj&amp;nbsp;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&amp;nbsp;(JSONObject)parser.parse(zoomText);&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;JSONArray&amp;nbsp;jArray&amp;nbsp;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&amp;nbsp;(JSONArray)jObj.get(&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;meetings&quot;&lt;/span&gt;);&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;JSONObject&amp;nbsp;json&amp;nbsp;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #4be6fa;&quot;&gt;null&lt;/span&gt;;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;for&lt;/span&gt;(&lt;span style=&quot;color: #ff3399;&quot;&gt;int&lt;/span&gt;&amp;nbsp;i&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #c10aff;&quot;&gt;0&lt;/span&gt;;&amp;nbsp;i&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;lt;&lt;/span&gt;jArray.size();&amp;nbsp;i&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;+&lt;/span&gt;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;+&lt;/span&gt;){&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;json&amp;nbsp;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&amp;nbsp;(JSONObject)jArray.get(i);&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #ff3399;&quot;&gt;if&lt;/span&gt;((Long)json.get(&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;id&quot;&lt;/span&gt;)&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;*********){&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;json&amp;nbsp;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&amp;nbsp;(JSONObject)jArray.get(i);&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;jArray&amp;nbsp;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;(JSONArray)json.get(&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;recording_files&quot;&lt;/span&gt;);&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #ff3399;&quot;&gt;break&lt;/span&gt;;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;}&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;color: #4be6fa;&quot;&gt;String&lt;/span&gt;&amp;nbsp;recUrl&amp;nbsp;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #4be6fa;&quot;&gt;null&lt;/span&gt;;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;color: #4be6fa;&quot;&gt;String&lt;/span&gt;&amp;nbsp;chatUrl&amp;nbsp;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #4be6fa;&quot;&gt;null&lt;/span&gt;;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;for&lt;/span&gt;(&lt;span style=&quot;color: #ff3399;&quot;&gt;int&lt;/span&gt;&amp;nbsp;i&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #c10aff;&quot;&gt;0&lt;/span&gt;;&amp;nbsp;i&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;lt;&lt;/span&gt;jArray.size();&amp;nbsp;i&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;+&lt;/span&gt;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;+&lt;/span&gt;){&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;json&amp;nbsp;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&amp;nbsp;(JSONObject)jArray.get(i);&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #ff3399;&quot;&gt;if&lt;/span&gt;(json.get(&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;file_type&quot;&lt;/span&gt;).equals(&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;MP4&quot;&lt;/span&gt;))&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;recUrl&amp;nbsp;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&amp;nbsp;(&lt;span style=&quot;color: #4be6fa;&quot;&gt;String&lt;/span&gt;)json.get(&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;download_url&quot;&lt;/span&gt;);&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #ff3399;&quot;&gt;else&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #ff3399;&quot;&gt;if&lt;/span&gt;(json.get(&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;file_type&quot;&lt;/span&gt;).equals(&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;CHAT&quot;&lt;/span&gt;))&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;chatUrl&amp;nbsp;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&amp;nbsp;(&lt;span style=&quot;color: #4be6fa;&quot;&gt;String&lt;/span&gt;)json.get(&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;download_url&quot;&lt;/span&gt;);&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;}&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;%&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;lt;&lt;/span&gt;script&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #ff3399;&quot;&gt;var&lt;/span&gt;&amp;nbsp;paramValue&amp;nbsp;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #4be6fa;&quot;&gt;window&lt;/span&gt;.&lt;span style=&quot;color: #4be6fa;&quot;&gt;location&lt;/span&gt;.href;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;paramValue&amp;nbsp;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&amp;nbsp;paramValue.&lt;span style=&quot;color: #4be6fa;&quot;&gt;substring&lt;/span&gt;(paramValue.&lt;span style=&quot;color: #4be6fa;&quot;&gt;indexOf&lt;/span&gt;(&lt;span style=&quot;color: #ffd500;&quot;&gt;'?'&lt;/span&gt;),paramValue.&lt;span style=&quot;color: #4be6fa;&quot;&gt;length&lt;/span&gt;);&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #ff3399;&quot;&gt;function&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #4be6fa;&quot;&gt;join&lt;/span&gt;(){&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #4be6fa;&quot;&gt;console&lt;/span&gt;.log(&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;clk&amp;nbsp;join&quot;&lt;/span&gt;);&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #4be6fa;&quot;&gt;document&lt;/span&gt;.&lt;span style=&quot;color: #4be6fa;&quot;&gt;getElementById&lt;/span&gt;(&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;ifrm&quot;&lt;/span&gt;).src&amp;nbsp;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;./meeting.html&quot;&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;+&lt;/span&gt;&amp;nbsp;paramValue;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #ff3399;&quot;&gt;function&lt;/span&gt;&amp;nbsp;getMeeting(){&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #ff3399;&quot;&gt;var&lt;/span&gt;&amp;nbsp;jsonObj&amp;nbsp;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;lt;&lt;/span&gt;%&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;jObj%&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;gt;&lt;/span&gt;;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #4be6fa;&quot;&gt;console&lt;/span&gt;.log(jsonObj);&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #ff3399;&quot;&gt;function&lt;/span&gt;&amp;nbsp;getRec(){&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #4be6fa;&quot;&gt;location&lt;/span&gt;.replace(&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;&amp;lt;%=recUrl%&amp;gt;?access_token=&amp;lt;%=auth%&amp;gt;&quot;&lt;/span&gt;);&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #ff3399;&quot;&gt;function&lt;/span&gt;&amp;nbsp;getChatLog(){&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #4be6fa;&quot;&gt;location&lt;/span&gt;.replace(&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;&amp;lt;%=chatUrl%&amp;gt;?access_token=&amp;lt;%=auth%&amp;gt;&quot;&lt;/span&gt;);&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;/&lt;/span&gt;script&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;lt;&lt;/span&gt;body&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;lt;&lt;/span&gt;script&amp;nbsp;src&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;https://source.zoom.us/1.8.3/lib/vendor/jquery.min.js&quot;&lt;/span&gt;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;/&lt;/span&gt;script&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;lt;&lt;/span&gt;button&amp;nbsp;&lt;span style=&quot;color: #4be6fa;&quot;&gt;onclick&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;join()&quot;&lt;/span&gt;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #4be6fa;&quot;&gt;join&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;/&lt;/span&gt;button&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;gt;&lt;/span&gt;&amp;nbsp;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;lt;&lt;/span&gt;button&amp;nbsp;&lt;span style=&quot;color: #4be6fa;&quot;&gt;onclick&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;getMeeting()&quot;&lt;/span&gt;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;gt;&lt;/span&gt;getMeeting&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;/&lt;/span&gt;button&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;gt;&lt;/span&gt;&amp;nbsp;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;lt;&lt;/span&gt;button&amp;nbsp;&lt;span style=&quot;color: #4be6fa;&quot;&gt;onclick&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;getRec()&quot;&lt;/span&gt;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;gt;&lt;/span&gt;getRec&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;/&lt;/span&gt;button&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;lt;&lt;/span&gt;button&amp;nbsp;&lt;span style=&quot;color: #4be6fa;&quot;&gt;onclick&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;getChatLog()&quot;&lt;/span&gt;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;gt;&lt;/span&gt;getChatLog&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;/&lt;/span&gt;button&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;lt;&lt;/span&gt;div&amp;nbsp;id&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;zoom_ifrm&quot;&lt;/span&gt;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;lt;&lt;/span&gt;iframe&amp;nbsp;id&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;ifrm&quot;&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #ff3399;&quot;&gt;class&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;zoom_position&quot;&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #4be6fa;&quot;&gt;name&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;ifrm&quot;&lt;/span&gt;&amp;nbsp;src&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;&quot;&lt;/span&gt;&amp;nbsp;&amp;nbsp;style&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;width:50%;&amp;nbsp;height:650px;&quot;&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;lt;&lt;/span&gt;iframe&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;/&lt;/span&gt;div&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;/&lt;/span&gt;body&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;/&lt;/span&gt;html&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: right; margin-top: -13px; margin-right: 5px; font-size: 9px; font-style: italic;&quot;&gt;&lt;a style=&quot;color: #4f4f4ftext-decoration:none;&quot; href=&quot;http://colorscripter.com/info#e&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;Colored by Color Scripter&lt;/a&gt;&lt;/div&gt;
&lt;/td&gt;
&lt;td style=&quot;vertical-align: bottom; padding: 0 2px 4px 0;&quot;&gt;&lt;a style=&quot;text-decoration: none; color: white;&quot; href=&quot;http://colorscripter.com/info#e&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;&lt;span style=&quot;font-size: 9px; word-break: normal; background-color: #4f4f4f; color: white; border-radius: 10px; padding: 1px;&quot;&gt;cs&lt;/span&gt;&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;https://tobepro.tistory.com/38&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;tobepro.tistory.com/38&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1607414711468&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-og-type=&quot;article&quot; data-og-title=&quot;zoom api 이용하기 - 3&quot; data-og-description=&quot;tobepro.tistory.com/37?category=441528 zoom api 이용하기 - 2 tobepro.tistory.com/36 zoom api 이용하기(1) tobepro.tistory.com/35 zoom iframe 으로 크기 조절하기 tobepro.tistory.com/32?category=441528..&quot; data-og-host=&quot;tobepro.tistory.com&quot; data-og-source-url=&quot;https://tobepro.tistory.com/38&quot; data-og-url=&quot;https://tobepro.tistory.com/38&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/FmrPq/hyIvad1I7C/DSH8pcEWELqMITyGweNqE1/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/bTvNEH/hyIvknqcdb/nXdQDQX2oHW7br0dbztnu1/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/eX2Mb/hyIvgL5Lzw/Kl7eEnB4L4PhR2SvjRTHI0/img.png?width=400&amp;amp;height=400&amp;amp;face=0_0_400_400&quot;&gt;&lt;a href=&quot;https://tobepro.tistory.com/38&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://tobepro.tistory.com/38&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/FmrPq/hyIvad1I7C/DSH8pcEWELqMITyGweNqE1/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/bTvNEH/hyIvknqcdb/nXdQDQX2oHW7br0dbztnu1/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/eX2Mb/hyIvgL5Lzw/Kl7eEnB4L4PhR2SvjRTHI0/img.png?width=400&amp;amp;height=400&amp;amp;face=0_0_400_400');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot;&gt;zoom api 이용하기 - 3&lt;/p&gt;
&lt;p class=&quot;og-desc&quot;&gt;tobepro.tistory.com/37?category=441528 zoom api 이용하기 - 2 tobepro.tistory.com/36 zoom api 이용하기(1) tobepro.tistory.com/35 zoom iframe 으로 크기 조절하기 tobepro.tistory.com/32?category=441528..&lt;/p&gt;
&lt;p class=&quot;og-host&quot;&gt;tobepro.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p&gt;에서 마무리...&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;참고&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;https://shlee0882.tistory.com/45&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;shlee0882.tistory.com/45&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1607406397599&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-og-type=&quot;article&quot; data-og-title=&quot;JSONObject, JSONArray, JSONParser 사용해 데이터 만들어 파싱하기&quot; data-og-description=&quot;1. 사전작업 JSON을 사용하기 위해선&amp;nbsp;json-simple-1.1.1.jar 라는 라이브러리 파일이 필요하다. maven이나 구글링을 통해 json사용에 필요한 jar 파일을 다운받고 프로젝트 속성 &amp;gt; java build path &amp;gt; Libraries &amp;gt;..&quot; data-og-host=&quot;shlee0882.tistory.com&quot; data-og-source-url=&quot;https://shlee0882.tistory.com/45&quot; data-og-url=&quot;https://shlee0882.tistory.com/45&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/si1pI/hyIvb4TfN5/KaoAOk31ZutGyUXBaQcSIk/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/iwZBU/hyIu6JiuSE/ABuI4c1f35UJylYWuCBZC1/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/bccMqj/hyIvbqiktw/J5YvmbNA8xlRVTCgD42O60/img.png?width=1837&amp;amp;height=915&amp;amp;face=0_0_1837_915&quot;&gt;&lt;a href=&quot;https://shlee0882.tistory.com/45&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://shlee0882.tistory.com/45&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/si1pI/hyIvb4TfN5/KaoAOk31ZutGyUXBaQcSIk/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/iwZBU/hyIu6JiuSE/ABuI4c1f35UJylYWuCBZC1/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/bccMqj/hyIvbqiktw/J5YvmbNA8xlRVTCgD42O60/img.png?width=1837&amp;amp;height=915&amp;amp;face=0_0_1837_915');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot;&gt;JSONObject, JSONArray, JSONParser 사용해 데이터 만들어 파싱하기&lt;/p&gt;
&lt;p class=&quot;og-desc&quot;&gt;1. 사전작업 JSON을 사용하기 위해선&amp;nbsp;json-simple-1.1.1.jar 라는 라이브러리 파일이 필요하다. maven이나 구글링을 통해 json사용에 필요한 jar 파일을 다운받고 프로젝트 속성 &amp;gt; java build path &amp;gt; Libraries &amp;gt;..&lt;/p&gt;
&lt;p class=&quot;og-host&quot;&gt;shlee0882.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>api/zoom</category>
      <category>zoom api</category>
      <category>zoom sdk</category>
      <category>zoom 녹화</category>
      <category>zoomapi</category>
      <category>줌 개발</category>
      <category>줌 녹화</category>
      <category>줌 채팅</category>
      <category>줌 채팅로그</category>
      <category>줌api</category>
      <category>줌sdk</category>
      <author>IT스타터</author>
      <guid isPermaLink="true">https://tobepro.tistory.com/37</guid>
      <comments>https://tobepro.tistory.com/37#entry37comment</comments>
      <pubDate>Tue, 8 Dec 2020 14:28:59 +0900</pubDate>
    </item>
    <item>
      <title>zoom api 이용하기 - 1</title>
      <link>https://tobepro.tistory.com/36</link>
      <description>&lt;p&gt;&lt;a href=&quot;https://tobepro.tistory.com/35&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;tobepro.tistory.com/35&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1606456216393&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-og-type=&quot;article&quot; data-og-title=&quot;zoom iframe 으로 크기 조절하기&quot; data-og-description=&quot;tobepro.tistory.com/32?category=441528 zoom sdk 이용하기(web) 코로나의 여파로 인해 zoom같은 비대면 화상 회의에 대한 수요가 급증하고 있다. 이번에는 zoom sdk를 이용하여 화상회의를 웹상에서 할 수 있는..&quot; data-og-host=&quot;tobepro.tistory.com&quot; data-og-source-url=&quot;https://tobepro.tistory.com/35&quot; data-og-url=&quot;https://tobepro.tistory.com/35&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/qvwJw/hyInlf7xjK/ZH2KhQgXoESiBse5s6wvXk/img.png?width=800&amp;amp;height=433&amp;amp;face=0_0_800_433,https://scrap.kakaocdn.net/dn/mNLtl/hyInhx3QsH/5KFeEc8TnG6u2ipFS6uTDk/img.png?width=800&amp;amp;height=433&amp;amp;face=0_0_800_433,https://scrap.kakaocdn.net/dn/cQQ0gS/hyInoRuliM/oNJjciC7kLWDHO1LdwUSvK/img.png?width=1920&amp;amp;height=1040&amp;amp;face=0_0_1920_1040&quot;&gt;&lt;a href=&quot;https://tobepro.tistory.com/35&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://tobepro.tistory.com/35&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/qvwJw/hyInlf7xjK/ZH2KhQgXoESiBse5s6wvXk/img.png?width=800&amp;amp;height=433&amp;amp;face=0_0_800_433,https://scrap.kakaocdn.net/dn/mNLtl/hyInhx3QsH/5KFeEc8TnG6u2ipFS6uTDk/img.png?width=800&amp;amp;height=433&amp;amp;face=0_0_800_433,https://scrap.kakaocdn.net/dn/cQQ0gS/hyInoRuliM/oNJjciC7kLWDHO1LdwUSvK/img.png?width=1920&amp;amp;height=1040&amp;amp;face=0_0_1920_1040');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot;&gt;zoom iframe 으로 크기 조절하기&lt;/p&gt;
&lt;p class=&quot;og-desc&quot;&gt;tobepro.tistory.com/32?category=441528 zoom sdk 이용하기(web) 코로나의 여파로 인해 zoom같은 비대면 화상 회의에 대한 수요가 급증하고 있다. 이번에는 zoom sdk를 이용하여 화상회의를 웹상에서 할 수 있는..&lt;/p&gt;
&lt;p class=&quot;og-host&quot;&gt;tobepro.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p&gt;위 포스팅을 통해 zoom을 iframe으로 이용하는 것 까지 마쳤다.&lt;/p&gt;
&lt;p&gt;이제부터는 zoom api를 통해 zoom의 녹화 영상, 채팅 기록, room 설정 등등 zoom에서 api로 등록한 서비스들을 활용해볼 시간이다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;먼저 zoom의 녹화영상 개수를 가져올 것인데, zoom에서 영상녹화 기능은 무료 계정에서는 제공되지 않는다.&lt;/p&gt;
&lt;p&gt;zoom api를 쓰는 궁극적인 목표중 하나는 zoom에서 회의한 내용들의 영상이나, 채팅 등을 보기 위함이기 때문이라고 생각하기에, api를 쓰고자 하는 사람들은 이미 pro계정을 지니고 있을 거라는 생각이 든다. zoom 개발자 포럼에 의하면 요청을 하면 test용으로 준다고 하는 것 같은데 나는 pro계정을 지니고 있어서 시도를 해보지는 않았다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;그럼 일단 zoom에 api이 어떠한 것들이 있는지, 관련 문서부터 살펴보자.&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;https://marketplace.zoom.us/docs/api-reference/zoom-api&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;marketplace.zoom.us/docs/api-reference/zoom-api&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1606456596731&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-og-type=&quot;website&quot; data-og-title=&quot;Zoom API - API Reference&quot; data-og-description=&quot;Zoom API Version: 2.0.0 Host: api.zoom.us/v2 Protocols: https Accepts: application/json, multipart/form-data Responds With: application/json, appli...&quot; data-og-host=&quot;marketplace.zoom.us&quot; data-og-source-url=&quot;https://marketplace.zoom.us/docs/api-reference/zoom-api&quot; data-og-url=&quot;https://marketplace.zoom.us/docs/api-reference/zoom-api&quot; data-og-image=&quot;&quot;&gt;&lt;a href=&quot;https://marketplace.zoom.us/docs/api-reference/zoom-api&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://marketplace.zoom.us/docs/api-reference/zoom-api&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url();&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot;&gt;Zoom API - API Reference&lt;/p&gt;
&lt;p class=&quot;og-desc&quot;&gt;Zoom API Version: 2.0.0 Host: api.zoom.us/v2 Protocols: https Accepts: application/json, multipart/form-data Responds With: application/json, appli...&lt;/p&gt;
&lt;p class=&quot;og-host&quot;&gt;marketplace.zoom.us&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p&gt;사이트에 가보면 zoom api에 관련하여 모든것이 나온다.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;영어 사이트이지만 크롬 번역등을 활용해서 참고하면 좋을 것 같다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;그 중에서 Cloud Recording 부분에 Get Meeting Recordings 부분을 살펴보자&lt;/p&gt;
&lt;p&gt;&quot;&lt;span&gt;The recording files can be downloaded via the&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;download_url&lt;span&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;property listed in the response.&quot;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;녹음 파일은 response에 나열된 download_url 속성을 통해 다운로드 할 수 있다고 첫 부분에 나와있다.&lt;/p&gt;
&lt;p&gt;그렇기에 이 api를 사용할려면 response을 받아야 한다는 것을 알 수 있다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;&quot;To access a password protected cloud recording, add an &amp;ldquo;access_token&amp;rdquo; parameter to the download URL and provide OAuth access token or&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;a href=&quot;https://marketplace.zoom.us/docs/guides/getting-started/app-types/create-jwt-app&quot;&gt;JWT&lt;/a&gt;&lt;span&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;as the value of the &amp;ldquo;access_token&amp;rdquo;.&quot;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;비밀번호로 보호된 클라우드 기록에 접근할려면 access_token 파라미터를 추가하고, Oauth 토큰이나 JWT 토큰의 값을 추가하라고 되어있다. 이전 단계에서 우린 JWT앱을 생성하여 API키와 API 비밀번호를 받았었다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-filename=&quot;api_key2.png&quot; data-origin-width=&quot;1920&quot; data-origin-height=&quot;1040&quot; data-ke-mobilestyle=&quot;widthContent&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/k7VOI/btqOSwP0rRp/WG2SaMGFkDupFNqFh0SBeK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/k7VOI/btqOSwP0rRp/WG2SaMGFkDupFNqFh0SBeK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/k7VOI/btqOSwP0rRp/WG2SaMGFkDupFNqFh0SBeK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fk7VOI%2FbtqOSwP0rRp%2FWG2SaMGFkDupFNqFh0SBeK%2Fimg.png&quot; data-filename=&quot;api_key2.png&quot; data-origin-width=&quot;1920&quot; data-origin-height=&quot;1040&quot; data-ke-mobilestyle=&quot;widthContent&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;이 화면인데 자세히 보면 &quot;View JWT Token&quot; 을 찾아볼 수 있다.&lt;/p&gt;
&lt;p&gt;이 옆에 화살표를 누르면 JWT토큰이 표시가 되며 해당 토큰의 만료기간을 정할 수 있다.&lt;/p&gt;
&lt;p&gt;이 토큰을 일단 복사해놓고, 다시 zoomApi 관련 문서페이지로 돌아가서 아래로 내리면 Authorization, Requset Parameters, Responses등을 확인할 수 있다.&lt;/p&gt;
&lt;p&gt;그리고 맨 밑에 Send A Test Requset창을 살펴보자.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-filename=&quot;1.png&quot; data-origin-width=&quot;780&quot; data-origin-height=&quot;466&quot; data-ke-mobilestyle=&quot;widthContent&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/IsmwQ/btqOMpK6fJz/bKoNvcZURx1CD0LL5EToK0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/IsmwQ/btqOMpK6fJz/bKoNvcZURx1CD0LL5EToK0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/IsmwQ/btqOMpK6fJz/bKoNvcZURx1CD0LL5EToK0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FIsmwQ%2FbtqOMpK6fJz%2FbKoNvcZURx1CD0LL5EToK0%2Fimg.png&quot; data-filename=&quot;1.png&quot; data-origin-width=&quot;780&quot; data-origin-height=&quot;466&quot; data-ke-mobilestyle=&quot;widthContent&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;내가 가진 meetingId와 토큰을 통해 api기능을 미리 테스트할 수 있는 기능을 제공을 해준다.&lt;/p&gt;
&lt;p&gt;복사해둔 JWT토큰번호를 oauth_access_token값에 넣고, zoom에 로그인하여 meetingId(회의번호)를 복사한뒤 입력을 한다.&lt;/p&gt;
&lt;p&gt;그 후 Send를 누르면&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-filename=&quot;2.png&quot; data-origin-width=&quot;746&quot; data-origin-height=&quot;737&quot; data-ke-mobilestyle=&quot;widthContent&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/wfTo8/btqOSytwtVw/H9Vtu3IxpekIrE5GC8R0eK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/wfTo8/btqOSytwtVw/H9Vtu3IxpekIrE5GC8R0eK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/wfTo8/btqOSytwtVw/H9Vtu3IxpekIrE5GC8R0eK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FwfTo8%2FbtqOSytwtVw%2FH9Vtu3IxpekIrE5GC8R0eK%2Fimg.png&quot; data-filename=&quot;2.png&quot; data-origin-width=&quot;746&quot; data-origin-height=&quot;737&quot; data-ke-mobilestyle=&quot;widthContent&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;위와 같이 뜨면 일단은 meetingId와 JWT 토큰은 정상적으로 동작을 한 것이다!&lt;/p&gt;
&lt;p&gt;현재 녹화를 실시한 적이 없기 때문에, 녹화 기록이 없다고 나오는 것뿐이다. 만약 녹화를 사전에 진행한 상태에서 Send를 눌렀다면&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-filename=&quot;3.png&quot; data-origin-width=&quot;741&quot; data-origin-height=&quot;819&quot; data-ke-mobilestyle=&quot;widthContent&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/ZzpY2/btqOKXBnkRG/54luh3i15xCVrzjClBxGTk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/ZzpY2/btqOKXBnkRG/54luh3i15xCVrzjClBxGTk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/ZzpY2/btqOKXBnkRG/54luh3i15xCVrzjClBxGTk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FZzpY2%2FbtqOKXBnkRG%2F54luh3i15xCVrzjClBxGTk%2Fimg.png&quot; data-filename=&quot;3.png&quot; data-origin-width=&quot;741&quot; data-origin-height=&quot;819&quot; data-ke-mobilestyle=&quot;widthContent&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;이와 같이 json형식으로 값을 얻을 수 있을 것이다. 위에서 봤던 download_url에는 실제 url주소가 들어가 있어서, 이 url주소를 들어가면 해당 mp4파일이 다운로드가 진행이 된다.&lt;/p&gt;
&lt;p&gt;테스트는 성공적으로 되었으니 이제는 실제 내 프로젝트에서 해당 api를 가져가다 사용을 해보도록 하겠다.&lt;/p&gt;
&lt;p&gt;그러면 일단 우리가 meetingId와 JWT토큰값을 입력했던 창에서의 3가지 탭(Seetings, Headers, Code Generation)중에서 Code Generation 탭을 눌러보자.&lt;/p&gt;
&lt;p&gt;Language를 통해 사용하는 언어를 고를 수 있고, Library를 선택하여 http통신을 통한 값을 받아오는 라이브러리를 선택할 수 있다.&lt;/p&gt;
&lt;p&gt;@@@@@@@@@여기서 만약 성공한 결과만 보고 싶다면 다음 zoom api이용하기(2)를 읽기를 권장한다@@@@@@@@@@@@@&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;우리는 일단 html을 사용하여 톰캣서버에서 진행하니 Language를 눌러 javascrit를 선택.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-filename=&quot;4.png&quot; data-origin-width=&quot;773&quot; data-origin-height=&quot;452&quot; data-ke-mobilestyle=&quot;widthContent&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/N5Wf6/btqOSxOWOrk/Cl2pspUjMm0dTUEZLrK4JK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/N5Wf6/btqOSxOWOrk/Cl2pspUjMm0dTUEZLrK4JK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/N5Wf6/btqOSxOWOrk/Cl2pspUjMm0dTUEZLrK4JK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FN5Wf6%2FbtqOSxOWOrk%2FCl2pspUjMm0dTUEZLrK4JK%2Fimg.png&quot; data-filename=&quot;4.png&quot; data-origin-width=&quot;773&quot; data-origin-height=&quot;452&quot; data-ke-mobilestyle=&quot;widthContent&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;XMLHttpRequest와 JQuery 두가지의 Library가 나오고, 본인이 사용중인 라이브러리를 선택하여 해당 코드를 복사를 한다.&lt;/p&gt;
&lt;p&gt;그 후 전에 저번에 작성한 meeting_iframe.html 파일을 열어서 해당 코드를 추가한다.&lt;/p&gt;
&lt;div class=&quot;colorscripter-code&quot; style=&quot;color: #f0f0f0; font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace !important; position: relative !important; overflow: auto;&quot;&gt;
&lt;table class=&quot;colorscripter-code-table&quot; style=&quot;margin: 0; padding: 0; border: none; background-color: #272727; border-radius: 4px;&quot; cellspacing=&quot;0&quot; cellpadding=&quot;0&quot;&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td style=&quot;padding: 6px; border-right: 2px solid #4f4f4f;&quot;&gt;
&lt;div style=&quot;margin: 0; padding: 0; word-break: normal; text-align: right; color: #aaa; font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace !important; line-height: 130%;&quot;&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;1&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;2&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;3&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;4&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;5&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;6&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;7&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;8&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;9&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;10&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;11&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;12&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;13&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;14&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;15&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;16&lt;/div&gt;
&lt;/div&gt;
&lt;/td&gt;
&lt;td style=&quot;padding: 6px 0; text-align: left;&quot;&gt;
&lt;div style=&quot;margin: 0; padding: 0; color: #f0f0f0; font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace !important; line-height: 130%;&quot;&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;lt;&lt;/span&gt;script&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;function&lt;/span&gt;&amp;nbsp;getMeeting(){&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #ff3399;&quot;&gt;var&lt;/span&gt;&amp;nbsp;settings&amp;nbsp;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&amp;nbsp;{&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;async&quot;&lt;/span&gt;:&amp;nbsp;&lt;span style=&quot;color: #ff3399;&quot;&gt;true&lt;/span&gt;,&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;crossDomain&quot;&lt;/span&gt;:&amp;nbsp;&lt;span style=&quot;color: #ff3399;&quot;&gt;true&lt;/span&gt;,&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;url&quot;&lt;/span&gt;:&amp;nbsp;&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;https://api.zoom.us/v2/meetings/********/recordings&quot;&lt;/span&gt;,&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;method&quot;&lt;/span&gt;:&amp;nbsp;&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;GET&quot;&lt;/span&gt;,&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;headers&quot;&lt;/span&gt;:&amp;nbsp;{&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;authorization&quot;&lt;/span&gt;:&amp;nbsp;&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;Bearer&amp;nbsp;***********************************************************************************************************************************&quot;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;$.ajax(settings).done(&lt;span style=&quot;color: #ff3399;&quot;&gt;function&lt;/span&gt;&amp;nbsp;(response)&amp;nbsp;{&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #4be6fa;&quot;&gt;console&lt;/span&gt;.log(response);&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;});&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;/&lt;/span&gt;script&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: right; margin-top: -13px; margin-right: 5px; font-size: 9px; font-style: italic;&quot;&gt;&lt;a style=&quot;color: #4f4f4ftext-decoration:none;&quot; href=&quot;http://colorscripter.com/info#e&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;Colored by Color Scripter&lt;/a&gt;&lt;/div&gt;
&lt;/td&gt;
&lt;td style=&quot;vertical-align: bottom; padding: 0 2px 4px 0;&quot;&gt;&lt;a style=&quot;text-decoration: none; color: white;&quot; href=&quot;http://colorscripter.com/info#e&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;&lt;span style=&quot;font-size: 9px; word-break: normal; background-color: #4f4f4f; color: white; border-radius: 10px; padding: 1px;&quot;&gt;cs&lt;/span&gt;&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;
&lt;p&gt;버튼 하나를 생성하여 버튼 클릭시 위에 함수가 호출되도록 하자.&lt;/p&gt;
&lt;div class=&quot;colorscripter-code&quot; style=&quot;color: #f0f0f0; font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace !important; position: relative !important; overflow: auto;&quot;&gt;
&lt;table class=&quot;colorscripter-code-table&quot; style=&quot;margin: 0; padding: 0; border: none; background-color: #272727; border-radius: 4px;&quot; cellspacing=&quot;0&quot; cellpadding=&quot;0&quot;&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td style=&quot;padding: 6px; border-right: 2px solid #4f4f4f;&quot;&gt;
&lt;div style=&quot;margin: 0; padding: 0; word-break: normal; text-align: right; color: #aaa; font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace !important; line-height: 130%;&quot;&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;1&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;2&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;3&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;4&lt;/div&gt;
&lt;/div&gt;
&lt;/td&gt;
&lt;td style=&quot;padding: 6px 0; text-align: left;&quot;&gt;
&lt;div style=&quot;margin: 0; padding: 0; color: #f0f0f0; font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace !important; line-height: 130%;&quot;&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;lt;&lt;/span&gt;body&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;lt;&lt;/span&gt;script&amp;nbsp;src&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;https://source.zoom.us/1.8.3/lib/vendor/jquery.min.js&quot;&lt;/span&gt;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;/&lt;/span&gt;script&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;lt;&lt;/span&gt;button&amp;nbsp;&lt;span style=&quot;color: #4be6fa;&quot;&gt;onclick&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;getMeeting()&quot;&lt;/span&gt;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;gt;&lt;/span&gt;getMeeting&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;/&lt;/span&gt;button&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;gt;&lt;/span&gt;&amp;nbsp;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;/&lt;/span&gt;body&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: right; margin-top: -13px; margin-right: 5px; font-size: 9px; font-style: italic;&quot;&gt;&lt;a style=&quot;color: #4f4f4ftext-decoration:none;&quot; href=&quot;http://colorscripter.com/info#e&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;Colored by Color Scripter&lt;/a&gt;&lt;/div&gt;
&lt;/td&gt;
&lt;td style=&quot;vertical-align: bottom; padding: 0 2px 4px 0;&quot;&gt;&lt;a style=&quot;text-decoration: none; color: white;&quot; href=&quot;http://colorscripter.com/info#e&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;&lt;span style=&quot;font-size: 9px; word-break: normal; background-color: #4f4f4f; color: white; border-radius: 10px; padding: 1px;&quot;&gt;cs&lt;/span&gt;&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;
&lt;p&gt;이제 브라우저를 통해 meeting_iframe.html파일을 열고, getMeeting 버튼을 눌러서 데이터를 가지고 오는지 확인을 해본다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-filename=&quot;7.png&quot; data-origin-width=&quot;2380&quot; data-origin-height=&quot;982&quot; data-ke-mobilestyle=&quot;widthContent&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/k915h/btqOUkCuQNL/Ll08ITJeSWP6Vo88RPwUuk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/k915h/btqOUkCuQNL/Ll08ITJeSWP6Vo88RPwUuk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/k915h/btqOUkCuQNL/Ll08ITJeSWP6Vo88RPwUuk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fk915h%2FbtqOUkCuQNL%2FLl08ITJeSWP6Vo88RPwUuk%2Fimg.png&quot; data-filename=&quot;7.png&quot; data-origin-width=&quot;2380&quot; data-origin-height=&quot;982&quot; data-ke-mobilestyle=&quot;widthContent&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;console.log로 아까 test했을 때 받은 json 데이터가 아닌 에러가 발생을 한다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Access to XMLHttpRequest at 'https://api.zoom.us/v2/meetings/**********/recordings' from origin 'http://localhost:8080' has been blocked by CORS policy: Response to preflight request doesn't pass access control check: No 'Access-Control-Allow-Origin' header is present on the requested resource.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;해당 에러는 CORS(Cross Origin Resource Sharing) 에러로 쉽게 말해서 도메인이 다른 출처의 리소스를 사용할 수 없다는 에러다. 즉 현재 내가 사용중인 도메인은 localhost인데 여기서 'https://api.zoom.us/.....' 로 시작하는 다른 도메인의 리소스(json 데이터)를 사용을 하려고 하면, 보안상의 문제로 브라우저 자체에서 차단하는 정책이다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;이를 해결하기 위해서는 요청을 받은 서버쪽에서 헤더에 Access-Control-Allow-Origin 속성에 해당 url이나 *를 줘서 '이 url에서는 이 정책을 무시하고 허용하라)라는 값을 설정을 해야한다고 한다.&lt;/p&gt;
&lt;p&gt;하지만 우리는 api를 통해 값을 가져오는 거라 이 api서버의 접속ip도, id , password 등등 하나도 모르는 상황에서 해당 속성을 바꿔줄 수있는 방법은 없다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;여기서 구글링을 통해 다른 방법이 없을까 찾아봤더니 크롬에서는 확장프로그램을 설치하면 사용할 수 있다고 되어있다. 그럼 확장프로그램을 설치 후 다시 시도해보도록 하겠다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-filename=&quot;8.png&quot; data-origin-width=&quot;1920&quot; data-origin-height=&quot;1040&quot; data-ke-mobilestyle=&quot;widthContent&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bpvO13/btqOSyutd4E/ICj5r4ehyKkk3xQCfGW5xk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bpvO13/btqOSyutd4E/ICj5r4ehyKkk3xQCfGW5xk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bpvO13/btqOSyutd4E/ICj5r4ehyKkk3xQCfGW5xk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbpvO13%2FbtqOSyutd4E%2FICj5r4ehyKkk3xQCfGW5xk%2Fimg.png&quot; data-filename=&quot;8.png&quot; data-origin-width=&quot;1920&quot; data-origin-height=&quot;1040&quot; data-ke-mobilestyle=&quot;widthContent&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;해당 확장프로그램을 설치 후 다시 시도를 해봤다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-filename=&quot;11.png&quot; data-origin-width=&quot;1280&quot; data-origin-height=&quot;536&quot; data-ke-mobilestyle=&quot;widthContent&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/kSO3M/btqPuSlYGQ8/kxGazHLauEvM0guEXK3uvk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/kSO3M/btqPuSlYGQ8/kxGazHLauEvM0guEXK3uvk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/kSO3M/btqPuSlYGQ8/kxGazHLauEvM0guEXK3uvk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FkSO3M%2FbtqPuSlYGQ8%2FkxGazHLauEvM0guEXK3uvk%2Fimg.png&quot; data-filename=&quot;11.png&quot; data-origin-width=&quot;1280&quot; data-origin-height=&quot;536&quot; data-ke-mobilestyle=&quot;widthContent&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;비슷하면서 다른 에러가 다시 발생했다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Access to XMLHttpRequest at 'https://api.zoom.us/v2/meetings/**********/recordings' from origin 'http://localhost:8080' has been blocked by CORS policy: Response to preflight request doesn't pass access control check: It does not have HTTP ok status.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;해당 확장프로그램에서 제공되는 테스트사이트를 이용해서 테스트를 해봐도,&amp;nbsp; 다른 사이트를 이용해서 확인을 해봐도&lt;/p&gt;
&lt;p&gt;확장프로그램은 정상작동하는데 또 CORS 정책 에러가 발생을 한다. 구글에 검색을 해봐도 헤더에 값을 세팅하는 것 외에는 다른 해결방안을 찾기가 힘들어서 이번엔 zoom developer forum을 통해 검색을 해봤다.&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;https://devforum.zoom.us/&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;devforum.zoom.us/&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1606884635696&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-og-type=&quot;website&quot; data-og-title=&quot;Zoom Developer Forum&quot; data-og-description=&quot;Post your questions on the Forum and get help from Zoom Developer Support.&quot; data-og-host=&quot;devforum.zoom.us&quot; data-og-source-url=&quot;https://devforum.zoom.us/&quot; data-og-url=&quot;https://devforum.zoom.us/&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/bC4MhB/hyIqfU5kIc/4Kes3fxCK49papXxPtAjrK/img.png?width=400&amp;amp;height=400&amp;amp;face=0_0_400_400,https://scrap.kakaocdn.net/dn/cTkO0E/hyIrsFh7Yq/FwRseKKE83pUxJslptAesk/img.png?width=400&amp;amp;height=400&amp;amp;face=0_0_400_400&quot;&gt;&lt;a href=&quot;https://devforum.zoom.us/&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://devforum.zoom.us/&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/bC4MhB/hyIqfU5kIc/4Kes3fxCK49papXxPtAjrK/img.png?width=400&amp;amp;height=400&amp;amp;face=0_0_400_400,https://scrap.kakaocdn.net/dn/cTkO0E/hyIrsFh7Yq/FwRseKKE83pUxJslptAesk/img.png?width=400&amp;amp;height=400&amp;amp;face=0_0_400_400');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot;&gt;Zoom Developer Forum&lt;/p&gt;
&lt;p class=&quot;og-desc&quot;&gt;Post your questions on the Forum and get help from Zoom Developer Support.&lt;/p&gt;
&lt;p class=&quot;og-host&quot;&gt;devforum.zoom.us&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p&gt;해당 사이트에서는 zoom 개발자들의 질문들을 확인할 수 있고, 궁금한 문의사항들도 질문해서 답변을 받을 수 있다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;https://tobepro.tistory.com/37&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;tobepro.tistory.com/37&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1607405481376&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-og-type=&quot;article&quot; data-og-title=&quot;zoom api 이용하기(2)&quot; data-og-description=&quot;tobepro.tistory.com/36 zoom api 이용하기(1) tobepro.tistory.com/35 zoom iframe 으로 크기 조절하기 tobepro.tistory.com/32?category=441528 zoom sdk 이용하기(web) 코로나의 여파로 인해 zoom같은 비대면..&quot; data-og-host=&quot;tobepro.tistory.com&quot; data-og-source-url=&quot;https://tobepro.tistory.com/37&quot; data-og-url=&quot;https://tobepro.tistory.com/37&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/w3rxJ/hyIvfMY37K/bI9fnRxv1U2W1HKfjMW3VK/img.png?width=800&amp;amp;height=481&amp;amp;face=0_0_800_481,https://scrap.kakaocdn.net/dn/cFc56M/hyIvfGdiZe/TDDmHfbkqC85Z0Djd6QCj1/img.png?width=800&amp;amp;height=481&amp;amp;face=0_0_800_481,https://scrap.kakaocdn.net/dn/5pd39/hyIvdVVvbl/TVj9okhkX31o1psMKKZfMK/img.png?width=2524&amp;amp;height=1358&amp;amp;face=0_0_2524_1358&quot;&gt;&lt;a href=&quot;https://tobepro.tistory.com/37&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://tobepro.tistory.com/37&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/w3rxJ/hyIvfMY37K/bI9fnRxv1U2W1HKfjMW3VK/img.png?width=800&amp;amp;height=481&amp;amp;face=0_0_800_481,https://scrap.kakaocdn.net/dn/cFc56M/hyIvfGdiZe/TDDmHfbkqC85Z0Djd6QCj1/img.png?width=800&amp;amp;height=481&amp;amp;face=0_0_800_481,https://scrap.kakaocdn.net/dn/5pd39/hyIvdVVvbl/TVj9okhkX31o1psMKKZfMK/img.png?width=2524&amp;amp;height=1358&amp;amp;face=0_0_2524_1358');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot;&gt;zoom api 이용하기(2)&lt;/p&gt;
&lt;p class=&quot;og-desc&quot;&gt;tobepro.tistory.com/36 zoom api 이용하기(1) tobepro.tistory.com/35 zoom iframe 으로 크기 조절하기 tobepro.tistory.com/32?category=441528 zoom sdk 이용하기(web) 코로나의 여파로 인해 zoom같은 비대면..&lt;/p&gt;
&lt;p class=&quot;og-host&quot;&gt;tobepro.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p&gt;에서 계속...&lt;/p&gt;</description>
      <category>api/zoom</category>
      <category>API</category>
      <category>zoom</category>
      <category>zoom api</category>
      <category>줌</category>
      <category>줌 녹화</category>
      <category>줌 녹화영상</category>
      <category>줌 채팅</category>
      <category>줌 채팅기록</category>
      <category>줌 클라우드</category>
      <author>IT스타터</author>
      <guid isPermaLink="true">https://tobepro.tistory.com/36</guid>
      <comments>https://tobepro.tistory.com/36#entry36comment</comments>
      <pubDate>Wed, 2 Dec 2020 13:51:52 +0900</pubDate>
    </item>
    <item>
      <title>zoom iframe 으로 크기 조절하기</title>
      <link>https://tobepro.tistory.com/35</link>
      <description>&lt;p data-ke-size=&quot;size16&quot; style=&quot;text-align: left;&quot;&gt;&lt;a href=&quot;https://tobepro.tistory.com/32?category=441528&quot; target=&quot;_blank&quot;&gt;tobepro.tistory.com/32?category=441528&lt;/a&gt;&lt;/p&gt;&lt;figure data-ke-type=&quot;opengraph&quot; data-og-title=&quot;zoom sdk 이용하기(web)&quot; data-og-description=&quot;코로나의 여파로 인해 zoom 같은 비대면 화상 회의에 대한 수요가 급증하고 있다. 이번에는 zoom sdk를 이용하여 화상회의를 웹상에서 할 수 있는 sample 개발을 진행해보도록 하자. 먼저 marketplace.zoom&quot; data-og-host=&quot;tobepro.tistory.com&quot; data-og-source-url=&quot;https://tobepro.tistory.com/32?category=441528&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/di0cey/hyIEKAjCnG/5zAghYLMgWN94YJEK3UoI0/img.png?width=800&amp;amp;height=433&amp;amp;face=0_0_800_433&quot; data-og-url=&quot;https://tobepro.tistory.com/32&quot;&gt;&lt;a href=&quot;https://tobepro.tistory.com/32&quot; target=&quot;_blank&quot; data-source-url=&quot;https://tobepro.tistory.com/32?category=441528&quot;&gt;&lt;div class=&quot;og-image&quot; style=&quot;background-image:url(https://scrap.kakaocdn.net/dn/di0cey/hyIEKAjCnG/5zAghYLMgWN94YJEK3UoI0/img.png?width=800&amp;amp;height=433&amp;amp;face=0_0_800_433)&quot;&gt;&lt;/div&gt;&lt;div class=&quot;og-text&quot;&gt;&lt;p class=&quot;og-title&quot;&gt;zoom sdk 이용하기(web)&lt;/p&gt;&lt;p class=&quot;og-desc&quot;&gt;코로나의 여파로 인해 zoom 같은 비대면 화상 회의에 대한 수요가 급증하고 있다. 이번에는 zoom sdk를 이용하여 화상회의를 웹상에서 할 수 있는 sample 개발을 진행해보도록 하자. 먼저 marketplace.zoom&lt;/p&gt;&lt;p class=&quot;og-host&quot;&gt;tobepro.tistory.com&lt;/p&gt;&lt;/div&gt;&lt;/a&gt;&lt;/figure&gt;&lt;p data-ke-size=&quot;size16&quot; style=&quot;text-align: left;&quot;&gt;윗글을 통해 web버전용 sdk를 설치하고,&amp;nbsp; local 또는 https환경 세팅까지 마무리했으면&lt;/p&gt;&lt;p data-ke-size=&quot;size16&quot; style=&quot;text-align: left;&quot;&gt;이제 zoom을 좀 더 커스텀을 해보도록 하자.&lt;/p&gt;&lt;p data-ke-size=&quot;size16&quot; style=&quot;text-align: left;&quot;&gt;일단 meeting.html을 보면&lt;/p&gt;&lt;div class=&quot;colorscripter-code&quot; style=&quot;color: #f0f0f0; font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace !important; position: relative !important; overflow: auto;&quot;&gt;&lt;table class=&quot;colorscripter-code-table&quot; style=&quot;margin: 0; padding: 0; border: none; background-color: #272727; border-radius: 4px;&quot; cellspacing=&quot;0&quot; cellpadding=&quot;0&quot;&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td style=&quot;padding: 6px; border-right: 2px solid #4f4f4f;&quot;&gt;&lt;div style=&quot;margin: 0; padding: 0; word-break: normal; text-align: right; color: #aaa; font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace !important; line-height: 130%;&quot;&gt;&lt;div style=&quot;line-height: 130%;&quot;&gt;1&lt;/div&gt;&lt;div style=&quot;line-height: 130%;&quot;&gt;2&lt;/div&gt;&lt;div style=&quot;line-height: 130%;&quot;&gt;3&lt;/div&gt;&lt;div style=&quot;line-height: 130%;&quot;&gt;4&lt;/div&gt;&lt;div style=&quot;line-height: 130%;&quot;&gt;5&lt;/div&gt;&lt;div style=&quot;line-height: 130%;&quot;&gt;6&lt;/div&gt;&lt;div style=&quot;line-height: 130%;&quot;&gt;7&lt;/div&gt;&lt;div style=&quot;line-height: 130%;&quot;&gt;8&lt;/div&gt;&lt;div style=&quot;line-height: 130%;&quot;&gt;9&lt;/div&gt;&lt;div style=&quot;line-height: 130%;&quot;&gt;10&lt;/div&gt;&lt;div style=&quot;line-height: 130%;&quot;&gt;11&lt;/div&gt;&lt;div style=&quot;line-height: 130%;&quot;&gt;12&lt;/div&gt;&lt;div style=&quot;line-height: 130%;&quot;&gt;13&lt;/div&gt;&lt;div style=&quot;line-height: 130%;&quot;&gt;14&lt;/div&gt;&lt;div style=&quot;line-height: 130%;&quot;&gt;15&lt;/div&gt;&lt;div style=&quot;line-height: 130%;&quot;&gt;16&lt;/div&gt;&lt;div style=&quot;line-height: 130%;&quot;&gt;17&lt;/div&gt;&lt;div style=&quot;line-height: 130%;&quot;&gt;18&lt;/div&gt;&lt;div style=&quot;line-height: 130%;&quot;&gt;19&lt;/div&gt;&lt;div style=&quot;line-height: 130%;&quot;&gt;20&lt;/div&gt;&lt;div style=&quot;line-height: 130%;&quot;&gt;21&lt;/div&gt;&lt;div style=&quot;line-height: 130%;&quot;&gt;22&lt;/div&gt;&lt;div style=&quot;line-height: 130%;&quot;&gt;23&lt;/div&gt;&lt;div style=&quot;line-height: 130%;&quot;&gt;24&lt;/div&gt;&lt;div style=&quot;line-height: 130%;&quot;&gt;25&lt;/div&gt;&lt;div style=&quot;line-height: 130%;&quot;&gt;26&lt;/div&gt;&lt;div style=&quot;line-height: 130%;&quot;&gt;27&lt;/div&gt;&lt;div style=&quot;line-height: 130%;&quot;&gt;28&lt;/div&gt;&lt;div style=&quot;line-height: 130%;&quot;&gt;29&lt;/div&gt;&lt;div style=&quot;line-height: 130%;&quot;&gt;30&lt;/div&gt;&lt;div style=&quot;line-height: 130%;&quot;&gt;31&lt;/div&gt;&lt;div style=&quot;line-height: 130%;&quot;&gt;32&lt;/div&gt;&lt;div style=&quot;line-height: 130%;&quot;&gt;33&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style=&quot;padding: 6px 0; text-align: left;&quot;&gt;&lt;div style=&quot;margin: 0; padding: 0; color: #f0f0f0; font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace !important; line-height: 130%;&quot;&gt;&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;!DOCTYPE&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #a8ff58;&quot;&gt;html&lt;/span&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&lt;/div&gt;&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;head&lt;/span&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;title&lt;/span&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;gt;&lt;/span&gt;Zoom&amp;nbsp;WebSDK&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;/&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;title&lt;/span&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;meta&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #a8ff58;&quot;&gt;charset&lt;/span&gt;=&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;utf-8&quot;&lt;/span&gt;&lt;span style=&quot;color: #a8ff58;&quot;&gt;&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #a8ff58;&quot;&gt;/&lt;/span&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;link&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #a8ff58;&quot;&gt;type&lt;/span&gt;=&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;text/css&quot;&lt;/span&gt;&lt;span style=&quot;color: #a8ff58;&quot;&gt;&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #a8ff58;&quot;&gt;rel&lt;/span&gt;=&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;stylesheet&quot;&lt;/span&gt;&lt;span style=&quot;color: #a8ff58;&quot;&gt;&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #a8ff58;&quot;&gt;href&lt;/span&gt;=&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;https://source.zoom.us/1.8.3/css/bootstrap.css&quot;&lt;/span&gt;&lt;span style=&quot;color: #a8ff58;&quot;&gt;&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #a8ff58;&quot;&gt;/&lt;/span&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;link&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #a8ff58;&quot;&gt;type&lt;/span&gt;=&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;text/css&quot;&lt;/span&gt;&lt;span style=&quot;color: #a8ff58;&quot;&gt;&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #a8ff58;&quot;&gt;rel&lt;/span&gt;=&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;stylesheet&quot;&lt;/span&gt;&lt;span style=&quot;color: #a8ff58;&quot;&gt;&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #a8ff58;&quot;&gt;href&lt;/span&gt;=&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;https://source.zoom.us/1.8.3/css/react-select.css&quot;&lt;/span&gt;&lt;span style=&quot;color: #a8ff58;&quot;&gt;&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #a8ff58;&quot;&gt;/&lt;/span&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;meta&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #a8ff58;&quot;&gt;name&lt;/span&gt;=&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;format-detection&quot;&lt;/span&gt;&lt;span style=&quot;color: #a8ff58;&quot;&gt;&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #a8ff58;&quot;&gt;content&lt;/span&gt;=&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;telephone=no&quot;&lt;/span&gt;&lt;span style=&quot;color: #a8ff58;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;meta&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #a8ff58;&quot;&gt;name&lt;/span&gt;=&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;viewport&quot;&lt;/span&gt;&lt;span style=&quot;color: #a8ff58;&quot;&gt;&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #a8ff58;&quot;&gt;content&lt;/span&gt;=&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;width=device-width,&amp;nbsp;initial-scale=1,&amp;nbsp;maximum-scale=1,&amp;nbsp;user-scalable=no&quot;&lt;/span&gt;&lt;span style=&quot;color: #a8ff58;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;meta&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #a8ff58;&quot;&gt;http-equiv&lt;/span&gt;=&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;origin-trial&quot;&lt;/span&gt;&lt;span style=&quot;color: #a8ff58;&quot;&gt;&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #a8ff58;&quot;&gt;content&lt;/span&gt;=&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;&quot;&lt;/span&gt;&lt;span style=&quot;color: #a8ff58;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;/&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;head&lt;/span&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&lt;/div&gt;&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;body&lt;/span&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;script&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #a8ff58;&quot;&gt;src&lt;/span&gt;=&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;https://source.zoom.us/1.8.3/lib/vendor/react.min.js&quot;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;/&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;script&lt;/span&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;script&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #a8ff58;&quot;&gt;src&lt;/span&gt;=&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;https://source.zoom.us/1.8.3/lib/vendor/react-dom.min.js&quot;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;/&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;script&lt;/span&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;script&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #a8ff58;&quot;&gt;src&lt;/span&gt;=&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;https://source.zoom.us/1.8.3/lib/vendor/redux.min.js&quot;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;/&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;script&lt;/span&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;script&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #a8ff58;&quot;&gt;src&lt;/span&gt;=&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;https://source.zoom.us/1.8.3/lib/vendor/redux-thunk.min.js&quot;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;/&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;script&lt;/span&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;script&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #a8ff58;&quot;&gt;src&lt;/span&gt;=&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;https://source.zoom.us/1.8.3/lib/vendor/jquery.min.js&quot;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;/&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;script&lt;/span&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;script&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #a8ff58;&quot;&gt;src&lt;/span&gt;=&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;https://source.zoom.us/1.8.3/lib/vendor/lodash.min.js&quot;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;/&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;script&lt;/span&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;script&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #a8ff58;&quot;&gt;src&lt;/span&gt;=&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;https://source.zoom.us/zoom-meeting-1.8.3.min.js&quot;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;/&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;script&lt;/span&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;script&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #a8ff58;&quot;&gt;src&lt;/span&gt;=&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;js/tool.js&quot;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;/&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;script&lt;/span&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;script&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #a8ff58;&quot;&gt;src&lt;/span&gt;=&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;js/vconsole.min.js&quot;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;/&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;script&lt;/span&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;script&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #a8ff58;&quot;&gt;src&lt;/span&gt;=&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;js/meeting.js&quot;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;/&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;script&lt;/span&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&lt;/div&gt;&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;script&lt;/span&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #ff3399;&quot;&gt;const&lt;/span&gt;&amp;nbsp;simd&amp;nbsp;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&amp;nbsp;async&amp;nbsp;()&amp;nbsp;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;gt;&lt;/span&gt;&amp;nbsp;WebAssembly.validate(&lt;span style=&quot;color: #ff3399;&quot;&gt;new&lt;/span&gt;&amp;nbsp;Uint8Array([&lt;span style=&quot;color: #c10aff;&quot;&gt;0&lt;/span&gt;,&amp;nbsp;&lt;span style=&quot;color: #c10aff;&quot;&gt;97&lt;/span&gt;,&amp;nbsp;&lt;span style=&quot;color: #c10aff;&quot;&gt;115&lt;/span&gt;,&amp;nbsp;&lt;span style=&quot;color: #c10aff;&quot;&gt;109&lt;/span&gt;,&amp;nbsp;&lt;span style=&quot;color: #c10aff;&quot;&gt;1&lt;/span&gt;,&amp;nbsp;&lt;span style=&quot;color: #c10aff;&quot;&gt;0&lt;/span&gt;,&amp;nbsp;&lt;span style=&quot;color: #c10aff;&quot;&gt;0&lt;/span&gt;,&amp;nbsp;&lt;span style=&quot;color: #c10aff;&quot;&gt;0&lt;/span&gt;,&amp;nbsp;&lt;span style=&quot;color: #c10aff;&quot;&gt;1&lt;/span&gt;,&amp;nbsp;&lt;span style=&quot;color: #c10aff;&quot;&gt;4&lt;/span&gt;,&amp;nbsp;&lt;span style=&quot;color: #c10aff;&quot;&gt;1&lt;/span&gt;,&amp;nbsp;&lt;span style=&quot;color: #c10aff;&quot;&gt;96&lt;/span&gt;,&amp;nbsp;&lt;span style=&quot;color: #c10aff;&quot;&gt;0&lt;/span&gt;,&amp;nbsp;&lt;span style=&quot;color: #c10aff;&quot;&gt;0&lt;/span&gt;,&amp;nbsp;&lt;span style=&quot;color: #c10aff;&quot;&gt;3&lt;/span&gt;,&amp;nbsp;&lt;span style=&quot;color: #c10aff;&quot;&gt;2&lt;/span&gt;,&amp;nbsp;&lt;span style=&quot;color: #c10aff;&quot;&gt;1&lt;/span&gt;,&amp;nbsp;&lt;span style=&quot;color: #c10aff;&quot;&gt;0&lt;/span&gt;,&amp;nbsp;&lt;span style=&quot;color: #c10aff;&quot;&gt;10&lt;/span&gt;,&amp;nbsp;&lt;span style=&quot;color: #c10aff;&quot;&gt;9&lt;/span&gt;,&amp;nbsp;&lt;span style=&quot;color: #c10aff;&quot;&gt;1&lt;/span&gt;,&amp;nbsp;&lt;span style=&quot;color: #c10aff;&quot;&gt;7&lt;/span&gt;,&amp;nbsp;&lt;span style=&quot;color: #c10aff;&quot;&gt;0&lt;/span&gt;,&amp;nbsp;&lt;span style=&quot;color: #c10aff;&quot;&gt;65&lt;/span&gt;,&amp;nbsp;&lt;span style=&quot;color: #c10aff;&quot;&gt;0&lt;/span&gt;,&amp;nbsp;&lt;span style=&quot;color: #c10aff;&quot;&gt;253&lt;/span&gt;,&amp;nbsp;&lt;span style=&quot;color: #c10aff;&quot;&gt;15&lt;/span&gt;,&amp;nbsp;&lt;span style=&quot;color: #c10aff;&quot;&gt;26&lt;/span&gt;,&amp;nbsp;&lt;span style=&quot;color: #c10aff;&quot;&gt;11&lt;/span&gt;]))&lt;/div&gt;&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;simd().then((res)&amp;nbsp;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;gt;&lt;/span&gt;&amp;nbsp;{&lt;/div&gt;&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #4be6fa;&quot;&gt;console&lt;/span&gt;.log(&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;simd&amp;nbsp;check&quot;&lt;/span&gt;,&amp;nbsp;res);&lt;/div&gt;&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;});&lt;/div&gt;&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;/&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;script&lt;/span&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;/&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;body&lt;/span&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&lt;/div&gt;&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;/&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;html&lt;/span&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style=&quot;text-align: right; margin-top: -13px; margin-right: 5px; font-size: 9px; font-style: italic;&quot;&gt;&lt;a style=&quot;color: #4f4f4ftext-decoration:none;&quot; href=&quot;http://colorscripter.com/info#e&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;Colored by Color Scripter&lt;/a&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style=&quot;vertical-align: bottom; padding: 0 2px 4px 0;&quot;&gt;&lt;a style=&quot;text-decoration: none; color: white;&quot; href=&quot;http://colorscripter.com/info#e&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;&lt;span style=&quot;font-size: 9px; word-break: normal; background-color: #4f4f4f; color: white; border-radius: 10px; padding: 1px;&quot;&gt;cs&lt;/span&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;p data-ke-size=&quot;size16&quot; style=&quot;text-align: left;&quot;&gt;매우 간단하게 되어있다!?&lt;/p&gt;&lt;p data-ke-size=&quot;size16&quot; style=&quot;text-align: left;&quot;&gt;버튼 크기라든가 화면 크기, 텍스트 크기 등 UI에 대해 수정을 하고 싶지만 css나 html, js파일을 다 네트워크를 통해 불러와서 직접적인 수정을 할 수가 없다.&lt;/p&gt;&lt;p data-ke-size=&quot;size16&quot; style=&quot;text-align: left;&quot;&gt;가장 기본적인 zoom 화면을 항상 화면에 꽉 차게 사용하게 된다는 점이다.&lt;/p&gt;&lt;p data-ke-size=&quot;size16&quot; style=&quot;text-align: left;&quot;&gt;&lt;a href=&quot;https://devforum.zoom.us/&quot; target=&quot;_blank&quot;&gt;devforum.zoom.us/&lt;/a&gt;&lt;/p&gt;&lt;figure data-ke-type=&quot;opengraph&quot; data-og-title=&quot;Zoom Developer Forum&quot; data-og-description=&quot;Post your questions on the Forum and get help from Zoom Developer Support.&quot; data-og-host=&quot;devforum.zoom.us&quot; data-og-source-url=&quot;https://devforum.zoom.us/&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/bwGl43/hyIGwHbQIl/qhoMYfsPX0FlTgkjTE8yN0/img.png?width=400&amp;amp;height=400&amp;amp;face=0_0_400_400&quot; data-og-url=&quot;https://devforum.zoom.us/&quot;&gt;&lt;a href=&quot;https://devforum.zoom.us/&quot; target=&quot;_blank&quot; data-source-url=&quot;https://devforum.zoom.us/&quot;&gt;&lt;div class=&quot;og-image&quot; style=&quot;background-image:url(https://scrap.kakaocdn.net/dn/bwGl43/hyIGwHbQIl/qhoMYfsPX0FlTgkjTE8yN0/img.png?width=400&amp;amp;height=400&amp;amp;face=0_0_400_400)&quot;&gt;&lt;/div&gt;&lt;div class=&quot;og-text&quot;&gt;&lt;p class=&quot;og-title&quot;&gt;Zoom Developer Forum&lt;/p&gt;&lt;p class=&quot;og-desc&quot;&gt;Post your questions on the Forum and get help from Zoom Developer Support.&lt;/p&gt;&lt;p class=&quot;og-host&quot;&gt;devforum.zoom.us&lt;/p&gt;&lt;/div&gt;&lt;/a&gt;&lt;/figure&gt;&lt;p data-ke-size=&quot;size16&quot; style=&quot;text-align: left;&quot;&gt;에 의하면 아직 UI를 컨트롤하는 부분에 대한 개발은 진행되지 않은 듯하다.&lt;/p&gt;&lt;p data-ke-size=&quot;size16&quot; style=&quot;text-align: left;&quot;&gt;css를 통해서 크기를 컨트롤할 수는 있다고 한다.&lt;/p&gt;&lt;p data-ke-size=&quot;size16&quot; style=&quot;text-align: left;&quot;&gt;하지만 우린 css가 아닌 iframe을 통해 iframe의 사이즈를 조절하는 방식으로 줌의 크기 조절을 할 생각이다.&lt;/p&gt;&lt;p data-ke-size=&quot;size16&quot; style=&quot;text-align: left;&quot;&gt;먼저 간단하게 zoom이 iframe으로 들어갈 html 파일 하나를 만들어 보자.&lt;/p&gt;&lt;p data-ke-size=&quot;size16&quot; style=&quot;text-align: left;&quot;&gt;파일명은 meeting_iframe.html로 하여 하나 만든다.&lt;/p&gt;&lt;div class=&quot;colorscripter-code&quot; style=&quot;color: #f0f0f0; font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace !important; position: relative !important; overflow: auto;&quot;&gt;&lt;table class=&quot;colorscripter-code-table&quot; style=&quot;margin: 0; padding: 0; border: none; background-color: #272727; border-radius: 4px;&quot; cellspacing=&quot;0&quot; cellpadding=&quot;0&quot;&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td style=&quot;padding: 6px; border-right: 2px solid #4f4f4f;&quot;&gt;&lt;div style=&quot;margin: 0; padding: 0; word-break: normal; text-align: right; color: #aaa; font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace !important; line-height: 130%;&quot;&gt;&lt;div style=&quot;line-height: 130%;&quot;&gt;1&lt;/div&gt;&lt;div style=&quot;line-height: 130%;&quot;&gt;2&lt;/div&gt;&lt;div style=&quot;line-height: 130%;&quot;&gt;3&lt;/div&gt;&lt;div style=&quot;line-height: 130%;&quot;&gt;4&lt;/div&gt;&lt;div style=&quot;line-height: 130%;&quot;&gt;5&lt;/div&gt;&lt;div style=&quot;line-height: 130%;&quot;&gt;6&lt;/div&gt;&lt;div style=&quot;line-height: 130%;&quot;&gt;7&lt;/div&gt;&lt;div style=&quot;line-height: 130%;&quot;&gt;8&lt;/div&gt;&lt;div style=&quot;line-height: 130%;&quot;&gt;9&lt;/div&gt;&lt;div style=&quot;line-height: 130%;&quot;&gt;10&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style=&quot;padding: 6px 0; text-align: left;&quot;&gt;&lt;div style=&quot;margin: 0; padding: 0; color: #f0f0f0; font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace !important; line-height: 130%;&quot;&gt;&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;!DOCTYPE&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #a8ff58;&quot;&gt;html&lt;/span&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;head&lt;/span&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;meta&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #a8ff58;&quot;&gt;charset&lt;/span&gt;=&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;utf-8&quot;&lt;/span&gt;&lt;span style=&quot;color: #a8ff58;&quot;&gt;&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #a8ff58;&quot;&gt;/&lt;/span&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;body&lt;/span&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;button&lt;/span&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;gt;&lt;/span&gt;join&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;/&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;button&lt;/span&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;gt;&lt;/span&gt;&amp;nbsp;&lt;/div&gt;&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;div&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #a8ff58;&quot;&gt;id&lt;/span&gt;=&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;zoom_ifrm&quot;&lt;/span&gt;&lt;span style=&quot;color: #a8ff58;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;iframe&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #a8ff58;&quot;&gt;id&lt;/span&gt;=&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;ifrm&quot;&lt;/span&gt;&lt;span style=&quot;color: #a8ff58;&quot;&gt;&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #a8ff58;&quot;&gt;name&lt;/span&gt;=&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;ifrm&quot;&lt;/span&gt;&lt;span style=&quot;color: #a8ff58;&quot;&gt;&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #a8ff58;&quot;&gt;src&lt;/span&gt;=&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;&quot;&lt;/span&gt;&lt;span style=&quot;color: #a8ff58;&quot;&gt;&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #a8ff58;&quot;&gt;&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #a8ff58;&quot;&gt;style&lt;/span&gt;=&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;width:50%;&amp;nbsp;height:600px;&quot;&lt;/span&gt;&lt;span style=&quot;color: #a8ff58;&quot;&gt;&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #a8ff58;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;iframe&lt;/span&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;/&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;div&lt;/span&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;/&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;body&lt;/span&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;/&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;html&lt;/span&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style=&quot;text-align: right; margin-top: -13px; margin-right: 5px; font-size: 9px; font-style: italic;&quot;&gt;&lt;a style=&quot;color: #4f4f4ftext-decoration:none;&quot; href=&quot;http://colorscripter.com/info#e&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;Colored by Color Scripter&lt;/a&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style=&quot;vertical-align: bottom; padding: 0 2px 4px 0;&quot;&gt;&lt;a style=&quot;text-decoration: none; color: white;&quot; href=&quot;http://colorscripter.com/info#e&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;&lt;span style=&quot;font-size: 9px; word-break: normal; background-color: #4f4f4f; color: white; border-radius: 10px; padding: 1px;&quot;&gt;cs&lt;/span&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;p data-ke-size=&quot;size16&quot; style=&quot;text-align: left;&quot;&gt;호스팅 또는 조인을 컨트롤 할 버튼과 zoom 화면이 채워질 iframe을 생성했다.&lt;/p&gt;&lt;p data-ke-size=&quot;size16&quot; style=&quot;text-align: left;&quot;&gt;&amp;nbsp;&lt;/p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-image-src=&quot;https://k.kakaocdn.net/dn/F7BL6/btqOhv6JGI4/E8rE4vPpMfbduHk0FoJHC1/img.png&quot; data-origin-width=&quot;1920.0&quot; data-origin-height=&quot;1040.0&quot; data-ke-mobilestyle=&quot;widthContent&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/F7BL6/btqOhv6JGI4/E8rE4vPpMfbduHk0FoJHC1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/F7BL6/btqOhv6JGI4/E8rE4vPpMfbduHk0FoJHC1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/F7BL6/btqOhv6JGI4/E8rE4vPpMfbduHk0FoJHC1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FF7BL6%2FbtqOhv6JGI4%2FE8rE4vPpMfbduHk0FoJHC1%2Fimg.png&quot; data-image-src=&quot;https://k.kakaocdn.net/dn/F7BL6/btqOhv6JGI4/E8rE4vPpMfbduHk0FoJHC1/img.png&quot; data-origin-width=&quot;1920.0&quot; data-origin-height=&quot;1040.0&quot; data-ke-mobilestyle=&quot;widthContent&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot; style=&quot;text-align: left;&quot;&gt;&amp;nbsp;&lt;/p&gt;&lt;p data-ke-size=&quot;size16&quot; style=&quot;text-align: left;&quot;&gt;이제 이 화면에서 iframe영역을 가운데로 옮기기 위해 style을 추가하고&lt;/p&gt;&lt;div class=&quot;colorscripter-code&quot; style=&quot;color: #f0f0f0; font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace !important; position: relative !important; overflow: auto;&quot;&gt;&lt;table class=&quot;colorscripter-code-table&quot; style=&quot;margin: 0; padding: 0; border: none; background-color: #272727; border-radius: 4px;&quot; cellspacing=&quot;0&quot; cellpadding=&quot;0&quot;&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td style=&quot;padding: 6px; border-right: 2px solid #4f4f4f;&quot;&gt;&lt;div style=&quot;margin: 0; padding: 0; word-break: normal; text-align: right; color: #aaa; font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace !important; line-height: 130%;&quot;&gt;&lt;div style=&quot;line-height: 130%;&quot;&gt;1&lt;/div&gt;&lt;div style=&quot;line-height: 130%;&quot;&gt;2&lt;/div&gt;&lt;div style=&quot;line-height: 130%;&quot;&gt;3&lt;/div&gt;&lt;div style=&quot;line-height: 130%;&quot;&gt;4&lt;/div&gt;&lt;div style=&quot;line-height: 130%;&quot;&gt;5&lt;/div&gt;&lt;div style=&quot;line-height: 130%;&quot;&gt;6&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style=&quot;padding: 6px 0; text-align: left;&quot;&gt;&lt;div style=&quot;margin: 0; padding: 0; color: #f0f0f0; font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace !important; line-height: 130%;&quot;&gt;&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;style&lt;/span&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;.zoom_position&lt;/span&gt;{&lt;span style=&quot;color: #4be6fa;&quot;&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;color: #4be6fa;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;margin-left&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;:&lt;/span&gt;&lt;span style=&quot;color: #e083ff;&quot;&gt;450px&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;;&lt;/span&gt;&lt;span style=&quot;color: #4be6fa;&quot;&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;color: #4be6fa;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;margin-top&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;:&lt;/span&gt;&lt;span style=&quot;color: #e083ff;&quot;&gt;150px&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;;&lt;/span&gt;&lt;span style=&quot;color: #e083ff;&quot;&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;color: #e083ff;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;}&lt;/div&gt;&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;/&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;style&lt;/span&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style=&quot;vertical-align: bottom; padding: 0 2px 4px 0;&quot;&gt;&lt;a style=&quot;text-decoration: none; color: white;&quot; href=&quot;http://colorscripter.com/info#e&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;&lt;span style=&quot;font-size: 9px; word-break: normal; background-color: #4f4f4f; color: white; border-radius: 10px; padding: 1px;&quot;&gt;cs&lt;/span&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;p data-ke-size=&quot;size16&quot; style=&quot;text-align: left;&quot;&gt;ifrm에 해당 style class를 추가해준다.&lt;/p&gt;&lt;div class=&quot;colorscripter-code&quot; style=&quot;color: #f0f0f0; font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace !important; position: relative !important; overflow: auto;&quot;&gt;&lt;table class=&quot;colorscripter-code-table&quot; style=&quot;margin: 0; padding: 0; border: none; background-color: #272727; border-radius: 4px;&quot; cellspacing=&quot;0&quot; cellpadding=&quot;0&quot;&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td style=&quot;padding: 6px; border-right: 2px solid #4f4f4f;&quot;&gt;&lt;div style=&quot;margin: 0; padding: 0; word-break: normal; text-align: right; color: #aaa; font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace !important; line-height: 130%;&quot;&gt;&lt;div style=&quot;line-height: 130%;&quot;&gt;1&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style=&quot;padding: 6px 0; text-align: left;&quot;&gt;&lt;div style=&quot;margin: 0; padding: 0; color: #f0f0f0; font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace !important; line-height: 130%;&quot;&gt;&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;iframe&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #a8ff58;&quot;&gt;id&lt;/span&gt;=&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;ifrm&quot;&lt;/span&gt;&lt;span style=&quot;color: #a8ff58;&quot;&gt;&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #a8ff58;&quot;&gt;class&lt;/span&gt;=&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;zoom_position&quot;&lt;/span&gt;&lt;span style=&quot;color: #a8ff58;&quot;&gt;&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #a8ff58;&quot;&gt;name&lt;/span&gt;=&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;ifrm&quot;&lt;/span&gt;&lt;span style=&quot;color: #a8ff58;&quot;&gt;&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #a8ff58;&quot;&gt;src&lt;/span&gt;=&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;&quot;&lt;/span&gt;&lt;span style=&quot;color: #a8ff58;&quot;&gt;&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #a8ff58;&quot;&gt;&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #a8ff58;&quot;&gt;style&lt;/span&gt;=&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;width:50%;&amp;nbsp;height:650px;&quot;&lt;/span&gt;&lt;span style=&quot;color: #a8ff58;&quot;&gt;&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #a8ff58;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;iframe&lt;/span&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style=&quot;vertical-align: bottom; padding: 0 2px 4px 0;&quot;&gt;&lt;a style=&quot;text-decoration: none; color: white;&quot; href=&quot;http://colorscripter.com/info#e&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;&lt;span style=&quot;font-size: 9px; word-break: normal; background-color: #4f4f4f; color: white; border-radius: 10px; padding: 1px;&quot;&gt;cs&lt;/span&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;p data-ke-size=&quot;size16&quot; style=&quot;text-align: left;&quot;&gt;굳이 이렇게 안 하고, style에 바로 #으로 id값을 주고 margin을 줘서 띄워도 된다.&lt;/p&gt;&lt;p data-ke-size=&quot;size16&quot; style=&quot;text-align: left;&quot;&gt;&amp;nbsp;&lt;/p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-image-src=&quot;https://k.kakaocdn.net/dn/blLRFB/btqOnxCcAWz/hXKUjzLgk8K3LPxBmhRGb0/img.png&quot; data-origin-width=&quot;1920.0&quot; data-origin-height=&quot;1040.0&quot; data-ke-mobilestyle=&quot;widthContent&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/blLRFB/btqOnxCcAWz/hXKUjzLgk8K3LPxBmhRGb0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/blLRFB/btqOnxCcAWz/hXKUjzLgk8K3LPxBmhRGb0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/blLRFB/btqOnxCcAWz/hXKUjzLgk8K3LPxBmhRGb0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FblLRFB%2FbtqOnxCcAWz%2FhXKUjzLgk8K3LPxBmhRGb0%2Fimg.png&quot; data-image-src=&quot;https://k.kakaocdn.net/dn/blLRFB/btqOnxCcAWz/hXKUjzLgk8K3LPxBmhRGb0/img.png&quot; data-origin-width=&quot;1920.0&quot; data-origin-height=&quot;1040.0&quot; data-ke-mobilestyle=&quot;widthContent&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot; style=&quot;text-align: left;&quot;&gt;&amp;nbsp;&lt;/p&gt;&lt;p data-ke-size=&quot;size16&quot; style=&quot;text-align: left;&quot;&gt;이제 index.html에서 join버튼을 눌렀을 때 이 화면으로 넘어오게 되는데, 이때 index.html에서 설정한 값들을 parameter 값으로 가져오게 된다. 이 값들을 추출해서 이 화면에서 join버튼을 눌렀을 때 이전에 있던 meeting.html 파일로 넘겨줘서 이 html 파일을 저 가운데 iframe 화면으로 뛰우게 될 것이다.&lt;/p&gt;&lt;p data-ke-size=&quot;size16&quot; style=&quot;text-align: left;&quot;&gt;그럼 먼저&amp;nbsp;&lt;/p&gt;&lt;div class=&quot;colorscripter-code&quot; style=&quot;color: #f0f0f0; font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace !important; position: relative !important; overflow: auto;&quot;&gt;&lt;table class=&quot;colorscripter-code-table&quot; style=&quot;margin: 0; padding: 0; border: none; background-color: #272727; border-radius: 4px;&quot; cellspacing=&quot;0&quot; cellpadding=&quot;0&quot;&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td style=&quot;padding: 6px; border-right: 2px solid #4f4f4f;&quot;&gt;&lt;div style=&quot;margin: 0; padding: 0; word-break: normal; text-align: right; color: #aaa; font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace !important; line-height: 130%;&quot;&gt;&lt;div style=&quot;line-height: 130%;&quot;&gt;1&lt;/div&gt;&lt;div style=&quot;line-height: 130%;&quot;&gt;2&lt;/div&gt;&lt;div style=&quot;line-height: 130%;&quot;&gt;3&lt;/div&gt;&lt;div style=&quot;line-height: 130%;&quot;&gt;4&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style=&quot;padding: 6px 0; text-align: left;&quot;&gt;&lt;div style=&quot;margin: 0; padding: 0; color: #f0f0f0; font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace !important; line-height: 130%;&quot;&gt;&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;script&lt;/span&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #ff3399;&quot;&gt;var&lt;/span&gt;&amp;nbsp;paramValue&amp;nbsp;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #4be6fa;&quot;&gt;window&lt;/span&gt;.&lt;span style=&quot;color: #4be6fa;&quot;&gt;location&lt;/span&gt;.href;&lt;/div&gt;&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;paramValue&amp;nbsp;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&amp;nbsp;paramValue.&lt;span style=&quot;color: #4be6fa;&quot;&gt;substring&lt;/span&gt;(paramValue.&lt;span style=&quot;color: #4be6fa;&quot;&gt;indexOf&lt;/span&gt;(&lt;span style=&quot;color: #ffd500;&quot;&gt;'?'&lt;/span&gt;),paramValue.&lt;span style=&quot;color: #4be6fa;&quot;&gt;length&lt;/span&gt;);&lt;/div&gt;&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;/&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;script&lt;/span&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style=&quot;text-align: right; margin-top: -13px; margin-right: 5px; font-size: 9px; font-style: italic;&quot;&gt;&lt;a style=&quot;color: #4f4f4ftext-decoration:none;&quot; href=&quot;http://colorscripter.com/info#e&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;Colored by Color Scripter&lt;/a&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style=&quot;vertical-align: bottom; padding: 0 2px 4px 0;&quot;&gt;&lt;a style=&quot;text-decoration: none; color: white;&quot; href=&quot;http://colorscripter.com/info#e&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;&lt;span style=&quot;font-size: 9px; word-break: normal; background-color: #4f4f4f; color: white; border-radius: 10px; padding: 1px;&quot;&gt;cs&lt;/span&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;p data-ke-size=&quot;size16&quot; style=&quot;text-align: left;&quot;&gt;해당 스크립트를 통해 paramValue 변수에 url로 넘어온 ?이후의 parameter값을 저장한다.&lt;/p&gt;&lt;div class=&quot;colorscripter-code&quot; style=&quot;color: #f0f0f0; font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace !important; position: relative !important; overflow: auto;&quot;&gt;&lt;table class=&quot;colorscripter-code-table&quot; style=&quot;margin: 0; padding: 0; border: none; background-color: #272727; border-radius: 4px;&quot; cellspacing=&quot;0&quot; cellpadding=&quot;0&quot;&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td style=&quot;padding: 6px; border-right: 2px solid #4f4f4f;&quot;&gt;&lt;div style=&quot;margin: 0; padding: 0; word-break: normal; text-align: right; color: #aaa; font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace !important; line-height: 130%;&quot;&gt;&lt;div style=&quot;line-height: 130%;&quot;&gt;1&lt;/div&gt;&lt;div style=&quot;line-height: 130%;&quot;&gt;2&lt;/div&gt;&lt;div style=&quot;line-height: 130%;&quot;&gt;3&lt;/div&gt;&lt;div style=&quot;line-height: 130%;&quot;&gt;4&lt;/div&gt;&lt;div style=&quot;line-height: 130%;&quot;&gt;5&lt;/div&gt;&lt;div style=&quot;line-height: 130%;&quot;&gt;6&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style=&quot;padding: 6px 0; text-align: left;&quot;&gt;&lt;div style=&quot;margin: 0; padding: 0; color: #f0f0f0; font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace !important; line-height: 130%;&quot;&gt;&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;script&lt;/span&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #ff3399;&quot;&gt;function&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #4be6fa;&quot;&gt;join&lt;/span&gt;(){&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/div&gt;&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #4be6fa;&quot;&gt;console&lt;/span&gt;.log(&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;clk&amp;nbsp;join&quot;&lt;/span&gt;);&lt;/div&gt;&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #4be6fa;&quot;&gt;document&lt;/span&gt;.&lt;span style=&quot;color: #4be6fa;&quot;&gt;getElementById&lt;/span&gt;(&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;ifrm&quot;&lt;/span&gt;).src&amp;nbsp;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;./meeting.html&quot;&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;+&lt;/span&gt;&amp;nbsp;paramValue;&lt;/div&gt;&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;/div&gt;&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;/&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;script&lt;/span&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style=&quot;text-align: right; margin-top: -13px; margin-right: 5px; font-size: 9px; font-style: italic;&quot;&gt;&lt;a style=&quot;color: #4f4f4ftext-decoration:none;&quot; href=&quot;http://colorscripter.com/info#e&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;Colored by Color Scripter&lt;/a&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style=&quot;vertical-align: bottom; padding: 0 2px 4px 0;&quot;&gt;&lt;a style=&quot;text-decoration: none; color: white;&quot; href=&quot;http://colorscripter.com/info#e&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;&lt;span style=&quot;font-size: 9px; word-break: normal; background-color: #4f4f4f; color: white; border-radius: 10px; padding: 1px;&quot;&gt;cs&lt;/span&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;p data-ke-size=&quot;size16&quot; style=&quot;text-align: left;&quot;&gt;그 후 함수 하나를 작성하여, 이 함수를 누르면 콘솔 로그로 clk join 메시지가 나오고,&lt;/p&gt;&lt;p data-ke-size=&quot;size16&quot; style=&quot;text-align: left;&quot;&gt;iframe에 비어있던 src 속성을 paramValue를 함께 넘겨줘서 html 파일을 실행한다.&lt;/p&gt;&lt;p data-ke-size=&quot;size16&quot; style=&quot;text-align: left;&quot;&gt;&amp;nbsp;&lt;/p&gt;&lt;p data-ke-size=&quot;size16&quot; style=&quot;text-align: left;&quot;&gt;&lt;span style=&quot;color: rgb(51, 51, 51);&quot;&gt;최종 소스는 아래와 같이 된다.&lt;/span&gt;&lt;/p&gt;&lt;div class=&quot;colorscripter-code&quot; style=&quot;color: #f0f0f0; font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace !important; position: relative !important; overflow: auto;&quot;&gt;&lt;table class=&quot;colorscripter-code-table&quot; style=&quot;margin: 0; padding: 0; border: none; background-color: #272727; border-radius: 4px;&quot; cellspacing=&quot;0&quot; cellpadding=&quot;0&quot;&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td style=&quot;padding: 6px; border-right: 2px solid #4f4f4f;&quot;&gt;&lt;div style=&quot;margin: 0; padding: 0; word-break: normal; text-align: right; color: #aaa; font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace !important; line-height: 130%;&quot;&gt;&lt;div style=&quot;line-height: 130%;&quot;&gt;1&lt;/div&gt;&lt;div style=&quot;line-height: 130%;&quot;&gt;2&lt;/div&gt;&lt;div style=&quot;line-height: 130%;&quot;&gt;3&lt;/div&gt;&lt;div style=&quot;line-height: 130%;&quot;&gt;4&lt;/div&gt;&lt;div style=&quot;line-height: 130%;&quot;&gt;5&lt;/div&gt;&lt;div style=&quot;line-height: 130%;&quot;&gt;6&lt;/div&gt;&lt;div style=&quot;line-height: 130%;&quot;&gt;7&lt;/div&gt;&lt;div style=&quot;line-height: 130%;&quot;&gt;8&lt;/div&gt;&lt;div style=&quot;line-height: 130%;&quot;&gt;9&lt;/div&gt;&lt;div style=&quot;line-height: 130%;&quot;&gt;10&lt;/div&gt;&lt;div style=&quot;line-height: 130%;&quot;&gt;11&lt;/div&gt;&lt;div style=&quot;line-height: 130%;&quot;&gt;12&lt;/div&gt;&lt;div style=&quot;line-height: 130%;&quot;&gt;13&lt;/div&gt;&lt;div style=&quot;line-height: 130%;&quot;&gt;14&lt;/div&gt;&lt;div style=&quot;line-height: 130%;&quot;&gt;15&lt;/div&gt;&lt;div style=&quot;line-height: 130%;&quot;&gt;16&lt;/div&gt;&lt;div style=&quot;line-height: 130%;&quot;&gt;17&lt;/div&gt;&lt;div style=&quot;line-height: 130%;&quot;&gt;18&lt;/div&gt;&lt;div style=&quot;line-height: 130%;&quot;&gt;19&lt;/div&gt;&lt;div style=&quot;line-height: 130%;&quot;&gt;20&lt;/div&gt;&lt;div style=&quot;line-height: 130%;&quot;&gt;21&lt;/div&gt;&lt;div style=&quot;line-height: 130%;&quot;&gt;22&lt;/div&gt;&lt;div style=&quot;line-height: 130%;&quot;&gt;23&lt;/div&gt;&lt;div style=&quot;line-height: 130%;&quot;&gt;24&lt;/div&gt;&lt;div style=&quot;line-height: 130%;&quot;&gt;25&lt;/div&gt;&lt;div style=&quot;line-height: 130%;&quot;&gt;26&lt;/div&gt;&lt;div style=&quot;line-height: 130%;&quot;&gt;27&lt;/div&gt;&lt;div style=&quot;line-height: 130%;&quot;&gt;28&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style=&quot;padding: 6px 0; text-align: left;&quot;&gt;&lt;div style=&quot;margin: 0; padding: 0; color: #f0f0f0; font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace !important; line-height: 130%;&quot;&gt;&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;!DOCTYPE&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #a8ff58;&quot;&gt;html&lt;/span&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&lt;/div&gt;&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;head&lt;/span&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;meta&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #a8ff58;&quot;&gt;charset&lt;/span&gt;=&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;utf-8&quot;&lt;/span&gt;&lt;span style=&quot;color: #a8ff58;&quot;&gt;&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #a8ff58;&quot;&gt;/&lt;/span&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;style&lt;/span&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;.zoom_position&lt;/span&gt;{&lt;span style=&quot;color: #4be6fa;&quot;&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;color: #4be6fa;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;margin-left&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;:&lt;/span&gt;&lt;span style=&quot;color: #e083ff;&quot;&gt;450px&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;;&lt;/span&gt;&lt;span style=&quot;color: #4be6fa;&quot;&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;color: #4be6fa;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;margin-top&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;:&lt;/span&gt;&lt;span style=&quot;color: #e083ff;&quot;&gt;150px&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;;&lt;/span&gt;&lt;span style=&quot;color: #e083ff;&quot;&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;color: #e083ff;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;}&lt;/div&gt;&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;/&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;style&lt;/span&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;/&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;head&lt;/span&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;script&lt;/span&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #ff3399;&quot;&gt;var&lt;/span&gt;&amp;nbsp;paramValue&amp;nbsp;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #4be6fa;&quot;&gt;window&lt;/span&gt;.&lt;span style=&quot;color: #4be6fa;&quot;&gt;location&lt;/span&gt;.href;&lt;/div&gt;&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;paramValue&amp;nbsp;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&amp;nbsp;paramValue.&lt;span style=&quot;color: #4be6fa;&quot;&gt;substring&lt;/span&gt;(paramValue.&lt;span style=&quot;color: #4be6fa;&quot;&gt;indexOf&lt;/span&gt;(&lt;span style=&quot;color: #ffd500;&quot;&gt;'?'&lt;/span&gt;),paramValue.&lt;span style=&quot;color: #4be6fa;&quot;&gt;length&lt;/span&gt;);&lt;/div&gt;&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&lt;/div&gt;&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #ff3399;&quot;&gt;function&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #4be6fa;&quot;&gt;join&lt;/span&gt;(){&lt;/div&gt;&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #4be6fa;&quot;&gt;console&lt;/span&gt;.log(&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;clk&amp;nbsp;join&quot;&lt;/span&gt;);&lt;/div&gt;&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #4be6fa;&quot;&gt;document&lt;/span&gt;.&lt;span style=&quot;color: #4be6fa;&quot;&gt;getElementById&lt;/span&gt;(&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;ifrm&quot;&lt;/span&gt;).src&amp;nbsp;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;./meeting.html&quot;&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;+&lt;/span&gt;&amp;nbsp;paramValue;&lt;/div&gt;&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;/div&gt;&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;/&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;script&lt;/span&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;body&lt;/span&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;td&lt;/span&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;button&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #a8ff58;&quot;&gt;onclick&lt;/span&gt;=&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;join()&quot;&lt;/span&gt;&lt;span style=&quot;color: #a8ff58;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;gt;&lt;/span&gt;join&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;/&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;button&lt;/span&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;gt;&lt;/span&gt;&amp;nbsp;&lt;/div&gt;&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;div&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #a8ff58;&quot;&gt;id&lt;/span&gt;=&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;zoom_ifrm&quot;&lt;/span&gt;&lt;span style=&quot;color: #a8ff58;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;iframe&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #a8ff58;&quot;&gt;id&lt;/span&gt;=&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;ifrm&quot;&lt;/span&gt;&lt;span style=&quot;color: #a8ff58;&quot;&gt;&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #a8ff58;&quot;&gt;class&lt;/span&gt;=&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;zoom_position&quot;&lt;/span&gt;&lt;span style=&quot;color: #a8ff58;&quot;&gt;&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #a8ff58;&quot;&gt;name&lt;/span&gt;=&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;ifrm&quot;&lt;/span&gt;&lt;span style=&quot;color: #a8ff58;&quot;&gt;&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #a8ff58;&quot;&gt;src&lt;/span&gt;=&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;&quot;&lt;/span&gt;&lt;span style=&quot;color: #a8ff58;&quot;&gt;&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #a8ff58;&quot;&gt;&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #a8ff58;&quot;&gt;style&lt;/span&gt;=&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;width:50%;&amp;nbsp;height:650px;&quot;&lt;/span&gt;&lt;span style=&quot;color: #a8ff58;&quot;&gt;&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #a8ff58;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;iframe&lt;/span&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;/&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;div&lt;/span&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;/&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;body&lt;/span&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&lt;/div&gt;&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;/&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;html&lt;/span&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style=&quot;text-align: right; margin-top: -13px; margin-right: 5px; font-size: 9px; font-style: italic;&quot;&gt;&lt;a style=&quot;color: #4f4f4ftext-decoration:none;&quot; href=&quot;http://colorscripter.com/info#e&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;Colored by Color Scripter&lt;/a&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style=&quot;vertical-align: bottom; padding: 0 2px 4px 0;&quot;&gt;&lt;a style=&quot;text-decoration: none; color: white;&quot; href=&quot;http://colorscripter.com/info#e&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;&lt;span style=&quot;font-size: 9px; word-break: normal; background-color: #4f4f4f; color: white; border-radius: 10px; padding: 1px;&quot;&gt;cs&lt;/span&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;p data-ke-size=&quot;size16&quot; style=&quot;text-align: left;&quot;&gt;이제 여기서 바로 index.html을 바로 실행하여 join을 누르면 이전에 meeting.html이 실행될 것이다.&lt;/p&gt;&lt;p data-ke-size=&quot;size16&quot; style=&quot;text-align: left;&quot;&gt;index.js파일을 실행하여 join버튼을 눌렀을 때 실행되는 html파일 url을 수정하도록 하자.&lt;/p&gt;&lt;div class=&quot;colorscripter-code&quot; style=&quot;color: #f0f0f0; font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace !important; position: relative !important; overflow: auto;&quot;&gt;&lt;table class=&quot;colorscripter-code-table&quot; style=&quot;margin: 0; padding: 0; border: none; background-color: #272727; border-radius: 4px;&quot; cellspacing=&quot;0&quot; cellpadding=&quot;0&quot;&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td style=&quot;padding: 6px; border-right: 2px solid #4f4f4f;&quot;&gt;&lt;div style=&quot;margin: 0; padding: 0; word-break: normal; text-align: right; color: #aaa; font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace !important; line-height: 130%;&quot;&gt;&lt;div style=&quot;line-height: 130%;&quot;&gt;1&lt;/div&gt;&lt;div style=&quot;line-height: 130%;&quot;&gt;2&lt;/div&gt;&lt;div style=&quot;line-height: 130%;&quot;&gt;3&lt;/div&gt;&lt;div style=&quot;line-height: 130%;&quot;&gt;4&lt;/div&gt;&lt;div style=&quot;line-height: 130%;&quot;&gt;5&lt;/div&gt;&lt;div style=&quot;line-height: 130%;&quot;&gt;6&lt;/div&gt;&lt;div style=&quot;line-height: 130%;&quot;&gt;7&lt;/div&gt;&lt;div style=&quot;line-height: 130%;&quot;&gt;8&lt;/div&gt;&lt;div style=&quot;line-height: 130%;&quot;&gt;9&lt;/div&gt;&lt;div style=&quot;line-height: 130%;&quot;&gt;10&lt;/div&gt;&lt;div style=&quot;line-height: 130%;&quot;&gt;11&lt;/div&gt;&lt;div style=&quot;line-height: 130%;&quot;&gt;12&lt;/div&gt;&lt;div style=&quot;line-height: 130%;&quot;&gt;13&lt;/div&gt;&lt;div style=&quot;line-height: 130%;&quot;&gt;14&lt;/div&gt;&lt;div style=&quot;line-height: 130%;&quot;&gt;15&lt;/div&gt;&lt;div style=&quot;line-height: 130%;&quot;&gt;16&lt;/div&gt;&lt;div style=&quot;line-height: 130%;&quot;&gt;17&lt;/div&gt;&lt;div style=&quot;line-height: 130%;&quot;&gt;18&lt;/div&gt;&lt;div style=&quot;line-height: 130%;&quot;&gt;19&lt;/div&gt;&lt;div style=&quot;line-height: 130%;&quot;&gt;20&lt;/div&gt;&lt;div style=&quot;line-height: 130%;&quot;&gt;21&lt;/div&gt;&lt;div style=&quot;line-height: 130%;&quot;&gt;22&lt;/div&gt;&lt;div style=&quot;line-height: 130%;&quot;&gt;23&lt;/div&gt;&lt;div style=&quot;line-height: 130%;&quot;&gt;24&lt;/div&gt;&lt;div style=&quot;line-height: 130%;&quot;&gt;25&lt;/div&gt;&lt;div style=&quot;line-height: 130%;&quot;&gt;26&lt;/div&gt;&lt;div style=&quot;line-height: 130%;&quot;&gt;27&lt;/div&gt;&lt;div style=&quot;line-height: 130%;&quot;&gt;28&lt;/div&gt;&lt;div style=&quot;line-height: 130%;&quot;&gt;29&lt;/div&gt;&lt;div style=&quot;line-height: 130%;&quot;&gt;30&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style=&quot;padding: 6px 0; text-align: left;&quot;&gt;&lt;div style=&quot;margin: 0; padding: 0; color: #f0f0f0; font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace !important; line-height: 130%;&quot;&gt;&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;color: #999999;&quot;&gt;//&amp;nbsp;click&amp;nbsp;join&amp;nbsp;meeting&amp;nbsp;button&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #4be6fa;&quot;&gt;document&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;.&lt;span style=&quot;color: #4be6fa;&quot;&gt;getElementById&lt;/span&gt;(&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;join_meeting&quot;&lt;/span&gt;)&lt;/div&gt;&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;.&lt;span style=&quot;color: #4be6fa;&quot;&gt;addEventListener&lt;/span&gt;(&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;click&quot;&lt;/span&gt;,&amp;nbsp;&lt;span style=&quot;color: #ff3399;&quot;&gt;function&lt;/span&gt;&amp;nbsp;(e)&amp;nbsp;{&lt;/div&gt;&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;e.preventDefault();&lt;/div&gt;&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #ff3399;&quot;&gt;var&lt;/span&gt;&amp;nbsp;meetingConfig&amp;nbsp;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&amp;nbsp;testTool.getMeetingConfig();&lt;/div&gt;&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #ff3399;&quot;&gt;if&lt;/span&gt;&amp;nbsp;(&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;!&lt;/span&gt;meetingConfig.mn&amp;nbsp;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;|&lt;/span&gt;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;|&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;!&lt;/span&gt;meetingConfig.&lt;span style=&quot;color: #4be6fa;&quot;&gt;name&lt;/span&gt;)&amp;nbsp;{&lt;/div&gt;&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #4be6fa;&quot;&gt;alert&lt;/span&gt;(&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;Meeting&amp;nbsp;number&amp;nbsp;or&amp;nbsp;username&amp;nbsp;is&amp;nbsp;empty&quot;&lt;/span&gt;);&lt;/div&gt;&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #ff3399;&quot;&gt;return&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #c10aff;&quot;&gt;false&lt;/span&gt;;&lt;/div&gt;&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;/div&gt;&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&lt;/div&gt;&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/div&gt;&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;testTool.setCookie(&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;meeting_number&quot;&lt;/span&gt;,&amp;nbsp;meetingConfig.mn);&lt;/div&gt;&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;testTool.setCookie(&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;meeting_pwd&quot;&lt;/span&gt;,&amp;nbsp;meetingConfig.pwd);&lt;/div&gt;&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&lt;/div&gt;&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #ff3399;&quot;&gt;var&lt;/span&gt;&amp;nbsp;signature&amp;nbsp;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&amp;nbsp;ZoomMtg.generateSignature({&lt;/div&gt;&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;meetingNumber:&amp;nbsp;meetingConfig.mn,&lt;/div&gt;&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;apiKey:&amp;nbsp;API_KEY,&lt;/div&gt;&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;apiSecret:&amp;nbsp;API_SECRET,&lt;/div&gt;&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;role:&amp;nbsp;meetingConfig.role,&lt;/div&gt;&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;success:&amp;nbsp;&lt;span style=&quot;color: #ff3399;&quot;&gt;function&lt;/span&gt;&amp;nbsp;(res)&amp;nbsp;{&lt;/div&gt;&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #4be6fa;&quot;&gt;console&lt;/span&gt;.log(res.result);&lt;/div&gt;&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;meetingConfig.signature&amp;nbsp;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&amp;nbsp;res.result;&lt;/div&gt;&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;meetingConfig.apiKey&amp;nbsp;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&amp;nbsp;API_KEY;&lt;/div&gt;&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #ff3399;&quot;&gt;var&lt;/span&gt;&amp;nbsp;joinUrl&amp;nbsp;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;./meeting_iframe.html?&quot;&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;+&lt;/span&gt;&amp;nbsp;testTool.serialize(meetingConfig);&lt;/div&gt;&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #4be6fa;&quot;&gt;console&lt;/span&gt;.log(joinUrl);&lt;/div&gt;&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #4be6fa;&quot;&gt;window&lt;/span&gt;.open(joinUrl,&amp;nbsp;&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;_blank&quot;&lt;/span&gt;);&lt;/div&gt;&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;},&lt;/div&gt;&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;});&lt;/div&gt;&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;});&lt;/div&gt;&lt;/div&gt;&lt;div style=&quot;text-align: right; margin-top: -13px; margin-right: 5px; font-size: 9px; font-style: italic;&quot;&gt;&lt;a style=&quot;color: #4f4f4ftext-decoration:none;&quot; href=&quot;http://colorscripter.com/info#e&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;Colored by Color Scripter&lt;/a&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style=&quot;vertical-align: bottom; padding: 0 2px 4px 0;&quot;&gt;&lt;a style=&quot;text-decoration: none; color: white;&quot; href=&quot;http://colorscripter.com/info#e&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;&lt;span style=&quot;font-size: 9px; word-break: normal; background-color: #4f4f4f; color: white; border-radius: 10px; padding: 1px;&quot;&gt;cs&lt;/span&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;</description>
      <category>api/zoom</category>
      <author>IT스타터</author>
      <guid isPermaLink="true">https://tobepro.tistory.com/35</guid>
      <comments>https://tobepro.tistory.com/35#entry35comment</comments>
      <pubDate>Thu, 26 Nov 2020 17:50:12 +0900</pubDate>
    </item>
    <item>
      <title>mysql 계정 생성 및 권한 부여</title>
      <link>https://tobepro.tistory.com/34</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;use&amp;nbsp;mysql; &lt;br /&gt;select&amp;nbsp;user,&amp;nbsp;host&amp;nbsp;from&amp;nbsp;user;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;//유저&amp;nbsp;정보&amp;nbsp;확인 &lt;br /&gt;&lt;br /&gt;create&amp;nbsp;user&amp;nbsp;'id'@'localhost'&amp;nbsp;identified&amp;nbsp;by&amp;nbsp;'password';&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;//로컬&amp;nbsp;접속&amp;nbsp;유저 &lt;br /&gt;create&amp;nbsp;user&amp;nbsp;'id'@'%'&amp;nbsp;identified&amp;nbsp;by&amp;nbsp;'password';&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;//모든ip&amp;nbsp;허용&amp;nbsp;유저 &lt;br /&gt;create&amp;nbsp;user&amp;nbsp;'id'@'ip주소'&amp;nbsp;identified&amp;nbsp;by&amp;nbsp;'password';&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;//특정ip&amp;nbsp;허용&amp;nbsp;유저 &lt;br /&gt;&lt;br /&gt;drop user 'id'@'%';&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;//유저 삭제 &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;grant all privileges on *.* to 'id'@'%';&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;//유저에게 모든db 권한 부여 &lt;br /&gt;grant all privileges on db명.* to 'id'@'%';&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;//유저에게 특정db 권한 부여 &lt;br /&gt;flush&amp;nbsp;privileges;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;//권한&amp;nbsp;적용&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;권한 부여 에러가 날 시 &lt;br /&gt;GRANT ALL PRIVILEGES ON db명.* TO 'id'@'%' WITH GRANT OPTION; 로 확인&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;show grants for 'id'@'%';&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;//해당 유저의 권한 확인 &lt;br /&gt;revoke all privileges on db명.* from 'id'@'%';&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;//유저의 특정db 권한 삭제&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;grant select on db명.* to 'id'@'%';&amp;nbsp; &amp;nbsp; // 유저에게 해당 DB select 권한 부여&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #e3e6e8; color: #232629;&quot;&gt;ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'password'; //8.0 에러날 시&lt;/span&gt;&lt;/p&gt;</description>
      <category>DB/mysql</category>
      <category>DB계정</category>
      <category>db권한</category>
      <category>grant</category>
      <category>mysql</category>
      <category>Mysql 접속</category>
      <category>mysql계정</category>
      <category>mysql권한</category>
      <category>mysql외부접근</category>
      <category>privileges</category>
      <author>IT스타터</author>
      <guid isPermaLink="true">https://tobepro.tistory.com/34</guid>
      <comments>https://tobepro.tistory.com/34#entry34comment</comments>
      <pubDate>Thu, 26 Nov 2020 16:14:49 +0900</pubDate>
    </item>
    <item>
      <title>Let's Encrypt window톰캣 인증서 받기(https)</title>
      <link>https://tobepro.tistory.com/33</link>
      <description>&lt;p&gt;http로 서버를 운영하면 보안 관련해서 문제가 많이 생긴다. 큰 예시로는 카메라나 오디오 기능을 사용할 수가 없다. 따라서 https 프로토콜로 바꿔서 운영을 하려면 프로토콜 인증서를 받고, 톰캣에 적용해야 한다. 그렇기 위해서는&amp;nbsp;먼저 인증서를 발급받아야 한다.&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;https://letsencrypt.org/docs/client-options/&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;letsencrypt.org/docs/client-options/&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1606365987867&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-og-type=&quot;website&quot; data-og-title=&quot;ACME Client Implementations -  Let's Encrypt - Free SSL/TLS Certificates&quot; data-og-description=&quot;Auf Deutsch ansehen Ver en espa&amp;ntilde;ol Voir en Fran&amp;ccedil;ais לעבור לעברית 日本語で表示する 한국어로 보기 Ver em Portugu&amp;ecirc;s (do brasil) Просмотреть на русском Visa p&amp;aring; svenska 使用简体中文阅读本网页。 使用&quot; data-og-host=&quot;letsencrypt.org&quot; data-og-source-url=&quot;https://letsencrypt.org/docs/client-options/&quot; data-og-url=&quot;https://letsencrypt.org/docs/client-options/&quot; data-og-image=&quot;&quot;&gt;&lt;a href=&quot;https://letsencrypt.org/docs/client-options/&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://letsencrypt.org/docs/client-options/&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url();&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot;&gt;ACME Client Implementations - Let's Encrypt - Free SSL/TLS Certificates&lt;/p&gt;
&lt;p class=&quot;og-desc&quot;&gt;Auf Deutsch ansehen Ver en espa&amp;ntilde;ol Voir en Fran&amp;ccedil;ais לעבור לעברית 日本語で表示する 한국어로 보기 Ver em Portugu&amp;ecirc;s (do brasil) Просмотреть на русском Visa p&amp;aring; svenska 使用简体中文阅读本网页。 使用&lt;/p&gt;
&lt;p class=&quot;og-host&quot;&gt;letsencrypt.org&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p&gt;사이트에 들어가서&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-origin-width=&quot;1920&quot; data-origin-height=&quot;1040&quot; data-filename=&quot;down1.png&quot; data-ke-mobilestyle=&quot;widthContent&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cQ1MDa/btqOjmHu1xU/t6QlTNsSxJy0Z0mIKBYnck/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cQ1MDa/btqOjmHu1xU/t6QlTNsSxJy0Z0mIKBYnck/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cQ1MDa/btqOjmHu1xU/t6QlTNsSxJy0Z0mIKBYnck/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcQ1MDa%2FbtqOjmHu1xU%2Ft6QlTNsSxJy0Z0mIKBYnck%2Fimg.png&quot; data-origin-width=&quot;1920&quot; data-origin-height=&quot;1040&quot; data-filename=&quot;down1.png&quot; data-ke-mobilestyle=&quot;widthContent&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;window 톰캣의 프로토콜을 바꿀 것이므로&lt;/p&gt;
&lt;p&gt;windows 의 win-acme를 눌러서 나오는 사이트에서 해당 프로그램을 다운로드한다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-filename=&quot;wacs 실행-1.png&quot; data-origin-width=&quot;1468&quot; data-origin-height=&quot;766&quot; data-ke-mobilestyle=&quot;widthContent&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bKtxp9/btqOhOqYWp3/X4GqiN2b27Lav4EodkhlK0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bKtxp9/btqOhOqYWp3/X4GqiN2b27Lav4EodkhlK0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bKtxp9/btqOhOqYWp3/X4GqiN2b27Lav4EodkhlK0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbKtxp9%2FbtqOhOqYWp3%2FX4GqiN2b27Lav4EodkhlK0%2Fimg.png&quot; data-filename=&quot;wacs 실행-1.png&quot; data-origin-width=&quot;1468&quot; data-origin-height=&quot;766&quot; data-ke-mobilestyle=&quot;widthContent&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;color: #333333;&quot;&gt;zip 파일의 압축을 해제한 뒤 cmd를 활용하여 wacs.exe 파일을 실행한다.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-filename=&quot;증명서 생성1-1.png&quot; data-origin-width=&quot;979&quot; data-origin-height=&quot;512&quot; data-ke-mobilestyle=&quot;widthContent&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/usq4U/btqOnx9EIA4/vGerUw5b5B6hL3Inpoxg1k/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/usq4U/btqOnx9EIA4/vGerUw5b5B6hL3Inpoxg1k/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/usq4U/btqOnx9EIA4/vGerUw5b5B6hL3Inpoxg1k/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fusq4U%2FbtqOnx9EIA4%2FvGerUw5b5B6hL3Inpoxg1k%2Fimg.png&quot; data-filename=&quot;증명서 생성1-1.png&quot; data-origin-width=&quot;979&quot; data-origin-height=&quot;512&quot; data-ke-mobilestyle=&quot;widthContent&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;color: #333333;&quot;&gt;m을 입력하여 증명서 생성 옵션을 선택한다.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-filename=&quot;증명서 생성2.png&quot; data-origin-width=&quot;979&quot; data-origin-height=&quot;512&quot; data-ke-mobilestyle=&quot;widthContent&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cG2M6a/btqOn1bAblF/9PlwKoaaLXrAAk9BdbfUEK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cG2M6a/btqOn1bAblF/9PlwKoaaLXrAAk9BdbfUEK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cG2M6a/btqOn1bAblF/9PlwKoaaLXrAAk9BdbfUEK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcG2M6a%2FbtqOn1bAblF%2F9PlwKoaaLXrAAk9BdbfUEK%2Fimg.png&quot; data-filename=&quot;증명서 생성2.png&quot; data-origin-width=&quot;979&quot; data-origin-height=&quot;512&quot; data-ke-mobilestyle=&quot;widthContent&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;color: #333333;&quot;&gt;Manual input 옵션인 2번을 선택한다.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-filename=&quot;증명서 생성 3-1.png&quot; data-origin-width=&quot;979&quot; data-origin-height=&quot;512&quot; data-ke-mobilestyle=&quot;widthContent&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/clPGHA/btqOn0wYIlP/4YQqShgeRGMQeOPBAZbkFK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/clPGHA/btqOn0wYIlP/4YQqShgeRGMQeOPBAZbkFK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/clPGHA/btqOn0wYIlP/4YQqShgeRGMQeOPBAZbkFK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FclPGHA%2FbtqOn0wYIlP%2F4YQqShgeRGMQeOPBAZbkFK%2Fimg.png&quot; data-filename=&quot;증명서 생성 3-1.png&quot; data-origin-width=&quot;979&quot; data-origin-height=&quot;512&quot; data-ke-mobilestyle=&quot;widthContent&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;color: #333333;&quot;&gt;가지고 있는 서버의 도메인을 입력한다. 포트번호를 입력하면 X 해당 프로그램은 자동으로 80 포트만 가지고 도메인의 소유권을 파악하게 되어있다.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-filename=&quot;증명서 생성 4-1.png&quot; data-origin-width=&quot;979&quot; data-origin-height=&quot;515&quot; data-ke-mobilestyle=&quot;widthContent&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bDvyeL/btqOeCZdTWH/00xqX6lySgmp7P9p0wkueK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bDvyeL/btqOeCZdTWH/00xqX6lySgmp7P9p0wkueK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bDvyeL/btqOeCZdTWH/00xqX6lySgmp7P9p0wkueK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbDvyeL%2FbtqOeCZdTWH%2F00xqX6lySgmp7P9p0wkueK%2Fimg.png&quot; data-filename=&quot;증명서 생성 4-1.png&quot; data-origin-width=&quot;979&quot; data-origin-height=&quot;515&quot; data-ke-mobilestyle=&quot;widthContent&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;도메인 확인 후 enter를 입력한다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-filename=&quot;증명서 생성 5-1.png&quot; data-origin-width=&quot;979&quot; data-origin-height=&quot;512&quot; data-ke-mobilestyle=&quot;widthContent&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bMUqmF/btqOgtOt3Xi/WMWykGGOblCdKT32jJ5kTK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bMUqmF/btqOgtOt3Xi/WMWykGGOblCdKT32jJ5kTK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bMUqmF/btqOgtOt3Xi/WMWykGGOblCdKT32jJ5kTK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbMUqmF%2FbtqOgtOt3Xi%2FWMWykGGOblCdKT32jJ5kTK%2Fimg.png&quot; data-filename=&quot;증명서 생성 5-1.png&quot; data-origin-width=&quot;979&quot; data-origin-height=&quot;512&quot; data-ke-mobilestyle=&quot;widthContent&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;도메인의 소유권을 증명하는 방식을 고르는 옵션이다.&lt;/p&gt;
&lt;p&gt;network의 pasth를 통해 증명할 것이므로 1번을 선택한다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-filename=&quot;증명서 생성 6-1.png&quot; data-origin-width=&quot;979&quot; data-origin-height=&quot;512&quot; data-ke-mobilestyle=&quot;widthContent&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/ehkouy/btqOhOq2uOF/bWbox6rq1ooRE2XsI1K871/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/ehkouy/btqOhOq2uOF/bWbox6rq1ooRE2XsI1K871/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/ehkouy/btqOhOq2uOF/bWbox6rq1ooRE2XsI1K871/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fehkouy%2FbtqOhOq2uOF%2FbWbox6rq1ooRE2XsI1K871%2Fimg.png&quot; data-filename=&quot;증명서 생성 6-1.png&quot; data-origin-width=&quot;979&quot; data-origin-height=&quot;512&quot; data-ke-mobilestyle=&quot;widthContent&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;가지고 있는 서버의 root path를 입력한다. index페이지가 나오는 그 path를 입력하면 된다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-filename=&quot;증명서 생성 7-1.png&quot; data-origin-width=&quot;962&quot; data-origin-height=&quot;502&quot; data-ke-mobilestyle=&quot;widthContent&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cf1UNL/btqOeCyaJ8B/fDqX9WO0TbILvQKlxl0DP1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cf1UNL/btqOeCyaJ8B/fDqX9WO0TbILvQKlxl0DP1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cf1UNL/btqOeCyaJ8B/fDqX9WO0TbILvQKlxl0DP1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fcf1UNL%2FbtqOeCyaJ8B%2FfDqX9WO0TbILvQKlxl0DP1%2Fimg.png&quot; data-filename=&quot;증명서 생성 7-1.png&quot; data-origin-width=&quot;962&quot; data-origin-height=&quot;502&quot; data-ke-mobilestyle=&quot;widthContent&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;변경 전 web.config를 먼저 복사해둘 것이냐고 묻는 것 같은데 default 값이 n이기도 하고 해서 n을 입력했다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-filename=&quot;증명서 생성 8-1.png&quot; data-origin-width=&quot;961&quot; data-origin-height=&quot;501&quot; data-ke-mobilestyle=&quot;widthContent&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/Q9k0d/btqOgs23YVH/GDGS11AJLUx4fpJnfcfVbk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/Q9k0d/btqOgs23YVH/GDGS11AJLUx4fpJnfcfVbk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/Q9k0d/btqOgs23YVH/GDGS11AJLUx4fpJnfcfVbk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FQ9k0d%2FbtqOgs23YVH%2FGDGS11AJLUx4fpJnfcfVbk%2Fimg.png&quot; data-filename=&quot;증명서 생성 8-1.png&quot; data-origin-width=&quot;961&quot; data-origin-height=&quot;501&quot; data-ke-mobilestyle=&quot;widthContent&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;RSA key 타입으로 받을 것이므로 2번을 선택&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-filename=&quot;증명서 생성 9-1.png&quot; data-origin-width=&quot;951&quot; data-origin-height=&quot;512&quot; data-ke-mobilestyle=&quot;widthContent&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/biNIdm/btqOiBruMuS/IBv7kKhioQT872skpqbXNk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/biNIdm/btqOiBruMuS/IBv7kKhioQT872skpqbXNk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/biNIdm/btqOiBruMuS/IBv7kKhioQT872skpqbXNk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbiNIdm%2FbtqOiBruMuS%2FIBv7kKhioQT872skpqbXNk%2Fimg.png&quot; data-filename=&quot;증명서 생성 9-1.png&quot; data-origin-width=&quot;951&quot; data-origin-height=&quot;512&quot; data-ke-mobilestyle=&quot;widthContent&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;일단 apache, nginx 등의 서버용인 PEM파일로 받기 위해 2번을 선택한다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-filename=&quot;증명서 생성 10-1.png&quot; data-origin-width=&quot;959&quot; data-origin-height=&quot;516&quot; data-ke-mobilestyle=&quot;widthContent&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bq1Q3Y/btqOdNs6RNI/iYJ9HekxbMZTRjeXf1eJmk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bq1Q3Y/btqOdNs6RNI/iYJ9HekxbMZTRjeXf1eJmk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bq1Q3Y/btqOdNs6RNI/iYJ9HekxbMZTRjeXf1eJmk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fbq1Q3Y%2FbtqOdNs6RNI%2FiYJ9HekxbMZTRjeXf1eJmk%2Fimg.png&quot; data-filename=&quot;증명서 생성 10-1.png&quot; data-origin-width=&quot;959&quot; data-origin-height=&quot;516&quot; data-ke-mobilestyle=&quot;widthContent&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;해당 파일이 저장될 경로를 지정한다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-filename=&quot;증명서 생성 11-1.png&quot; data-origin-width=&quot;974&quot; data-origin-height=&quot;508&quot; data-ke-mobilestyle=&quot;widthContent&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/4f5N5/btqOhNZYO1J/7TPW2P7fVHVEW4WEGPSVK0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/4f5N5/btqOhNZYO1J/7TPW2P7fVHVEW4WEGPSVK0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/4f5N5/btqOhNZYO1J/7TPW2P7fVHVEW4WEGPSVK0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F4f5N5%2FbtqOhNZYO1J%2F7TPW2P7fVHVEW4WEGPSVK0%2Fimg.png&quot; data-filename=&quot;증명서 생성 11-1.png&quot; data-origin-width=&quot;974&quot; data-origin-height=&quot;508&quot; data-ke-mobilestyle=&quot;widthContent&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;다른 방식으로 또 저장을 할 건지 묻는다. 필요 없으니 5번을 누른다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-filename=&quot;증명서 생성 12-1.png&quot; data-origin-width=&quot;969&quot; data-origin-height=&quot;506&quot; data-ke-mobilestyle=&quot;widthContent&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/eenpnn/btqOnzGqvBT/GLOWoGailxsnc7LDarSkpK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/eenpnn/btqOnzGqvBT/GLOWoGailxsnc7LDarSkpK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/eenpnn/btqOnzGqvBT/GLOWoGailxsnc7LDarSkpK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Feenpnn%2FbtqOnzGqvBT%2FGLOWoGailxsnc7LDarSkpK%2Fimg.png&quot; data-filename=&quot;증명서 생성 12-1.png&quot; data-origin-width=&quot;969&quot; data-origin-height=&quot;506&quot; data-ke-mobilestyle=&quot;widthContent&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;먼저 install 할 단계가 있는지 묻는 거 같다. 필요 없으니 4번을 누른다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-filename=&quot;증명서 생성 완료-1.png&quot; data-origin-width=&quot;780&quot; data-origin-height=&quot;104&quot; data-ke-mobilestyle=&quot;widthContent&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/b8b46f/btqOnytYX3t/aaFxQMYp8wJtbLIMLEM3RK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/b8b46f/btqOnytYX3t/aaFxQMYp8wJtbLIMLEM3RK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/b8b46f/btqOnytYX3t/aaFxQMYp8wJtbLIMLEM3RK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fb8b46f%2FbtqOnytYX3t%2FaaFxQMYp8wJtbLIMLEM3RK%2Fimg.png&quot; data-filename=&quot;증명서 생성 완료-1.png&quot; data-origin-width=&quot;780&quot; data-origin-height=&quot;104&quot; data-ke-mobilestyle=&quot;widthContent&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;일정 시간이 지나면 4개의 pem 파일이 생성된다.&lt;/p&gt;
&lt;p&gt;이제 생성된 key파일과 chain파일을 이용해 이제 톰캣용 인증서 파일인 .p12 파일로 변환을 시켜야 한다.&lt;/p&gt;
&lt;p&gt;openssl을 다운로드하고 bin폴더에 해당 4개의 파일을 이동시킨다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-filename=&quot;openssl1-1.png&quot; data-origin-width=&quot;1610&quot; data-origin-height=&quot;1240&quot; data-ke-mobilestyle=&quot;widthContent&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/14CT3/btqOjmATjAD/BzyR6cw2tEbyFdq1vxqaoK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/14CT3/btqOjmATjAD/BzyR6cw2tEbyFdq1vxqaoK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/14CT3/btqOjmATjAD/BzyR6cw2tEbyFdq1vxqaoK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F14CT3%2FbtqOjmATjAD%2FBzyR6cw2tEbyFdq1vxqaoK%2Fimg.png&quot; data-filename=&quot;openssl1-1.png&quot; data-origin-width=&quot;1610&quot; data-origin-height=&quot;1240&quot; data-ke-mobilestyle=&quot;widthContent&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;관리자 권한으로 openssl을 실행시킨 뒤&amp;nbsp;&lt;/p&gt;
&lt;p&gt;pkcs12 -export -in 파일명-crt.pem -inkey 파일명-key.pem -out keystore.p12 -name tomcat -CAfile 파일명-crt.pem -caname root를 입력한다.(보통 파일명이 도메인명으로 되어있다.)&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-filename=&quot;1111.png&quot; data-origin-width=&quot;1468&quot; data-origin-height=&quot;766&quot; data-ke-mobilestyle=&quot;widthContent&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/yocMs/btqOjlWnP7i/0KGB6QMMHNLzv9bqkSOFhk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/yocMs/btqOjlWnP7i/0KGB6QMMHNLzv9bqkSOFhk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/yocMs/btqOjlWnP7i/0KGB6QMMHNLzv9bqkSOFhk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FyocMs%2FbtqOjlWnP7i%2F0KGB6QMMHNLzv9bqkSOFhk%2Fimg.png&quot; data-filename=&quot;1111.png&quot; data-origin-width=&quot;1468&quot; data-origin-height=&quot;766&quot; data-ke-mobilestyle=&quot;widthContent&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;그 후 인증서 파일의 비밀번호를 입력하면 인증서가 톰캣용 인증서인 .p12 파일로 변환이 된다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-filename=&quot;keystore.png&quot; data-origin-width=&quot;1156&quot; data-origin-height=&quot;647&quot; data-ke-mobilestyle=&quot;widthContent&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/BLnJt/btqOiBrwksD/xOEtqYqvy0V2Keyauuv0L0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/BLnJt/btqOiBrwksD/xOEtqYqvy0V2Keyauuv0L0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/BLnJt/btqOiBrwksD/xOEtqYqvy0V2Keyauuv0L0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FBLnJt%2FbtqOiBrwksD%2FxOEtqYqvy0V2Keyauuv0L0%2Fimg.png&quot; data-filename=&quot;keystore.png&quot; data-origin-width=&quot;1156&quot; data-origin-height=&quot;647&quot; data-ke-mobilestyle=&quot;widthContent&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;해당 keystore파일이 생성되는지 확인한다.&lt;/p&gt;
&lt;div class=&quot;colorscripter-code&quot; style=&quot;color: #f0f0f0; font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace !important; position: relative !important; overflow: auto;&quot;&gt;
&lt;table class=&quot;colorscripter-code-table&quot; style=&quot;margin: 0; padding: 0; border: none; background-color: #272727; border-radius: 4px;&quot; cellspacing=&quot;0&quot; cellpadding=&quot;0&quot;&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td style=&quot;padding: 6px; border-right: 2px solid #4f4f4f;&quot;&gt;
&lt;div style=&quot;margin: 0; padding: 0; word-break: normal; text-align: right; color: #aaa; font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace !important; line-height: 130%;&quot;&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;1&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;2&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;3&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;4&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;5&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;6&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;7&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;8&lt;/div&gt;
&lt;/div&gt;
&lt;/td&gt;
&lt;td style=&quot;padding: 6px 0; text-align: left;&quot;&gt;
&lt;div style=&quot;margin: 0; padding: 0; color: #f0f0f0; font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace !important; line-height: 130%;&quot;&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;Connector&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #a8ff58;&quot;&gt;port&lt;/span&gt;=&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;8443&quot;&lt;/span&gt;&lt;span style=&quot;color: #a8ff58;&quot;&gt;&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #a8ff58;&quot;&gt;protocol&lt;/span&gt;=&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;org.apache.coyote.http11.Http11NioProtocol&quot;&lt;/span&gt;&lt;span style=&quot;color: #a8ff58;&quot;&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;color: #a8ff58;&quot;&gt;&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #a8ff58;&quot;&gt;&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #a8ff58;&quot;&gt;maxThreads&lt;/span&gt;=&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;150&quot;&lt;/span&gt;&lt;span style=&quot;color: #a8ff58;&quot;&gt;&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #a8ff58;&quot;&gt;SSLEnabled&lt;/span&gt;=&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;true&quot;&lt;/span&gt;&lt;span style=&quot;color: #a8ff58;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;SSLHostConfig&lt;/span&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;Certificate&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #a8ff58;&quot;&gt;certificateKeystoreFile&lt;/span&gt;=&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;file Path&quot;&lt;/span&gt;&lt;span style=&quot;color: #a8ff58;&quot;&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;color: #a8ff58;&quot;&gt;&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #a8ff58;&quot;&gt;&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #a8ff58;&quot;&gt;&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #a8ff58;&quot;&gt;&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #a8ff58;&quot;&gt;&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #a8ff58;&quot;&gt;&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #a8ff58;&quot;&gt;&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #a8ff58;&quot;&gt;&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #a8ff58;&quot;&gt;&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #a8ff58;&quot;&gt;&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #a8ff58;&quot;&gt;&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #a8ff58;&quot;&gt;&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #a8ff58;&quot;&gt;&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #a8ff58;&quot;&gt;&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #a8ff58;&quot;&gt;&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #a8ff58;&quot;&gt;&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #a8ff58;&quot;&gt;&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #a8ff58;&quot;&gt;&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #a8ff58;&quot;&gt;&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #a8ff58;&quot;&gt;certificateKeystorePassword&lt;/span&gt;=&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;password&quot;&lt;/span&gt;&lt;span style=&quot;color: #a8ff58;&quot;&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;color: #a8ff58;&quot;&gt;&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #a8ff58;&quot;&gt;&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #a8ff58;&quot;&gt;&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #a8ff58;&quot;&gt;&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #a8ff58;&quot;&gt;&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #a8ff58;&quot;&gt;&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #a8ff58;&quot;&gt;&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #a8ff58;&quot;&gt;&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #a8ff58;&quot;&gt;&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #a8ff58;&quot;&gt;&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #a8ff58;&quot;&gt;&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #a8ff58;&quot;&gt;&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #a8ff58;&quot;&gt;&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #a8ff58;&quot;&gt;&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #a8ff58;&quot;&gt;&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #a8ff58;&quot;&gt;&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #a8ff58;&quot;&gt;&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #a8ff58;&quot;&gt;&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #a8ff58;&quot;&gt;&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #a8ff58;&quot;&gt;certificateKeystoreType&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #a8ff58;&quot;&gt;&lt;/span&gt;=&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;pkcs12&quot;&lt;/span&gt;&lt;span style=&quot;color: #a8ff58;&quot;&gt;&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #a8ff58;&quot;&gt;type&lt;/span&gt;=&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;RSA&quot;&lt;/span&gt;&lt;span style=&quot;color: #a8ff58;&quot;&gt;&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #a8ff58;&quot;&gt;/&lt;/span&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;/&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;SSLHostConfig&lt;/span&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;/&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;Connector&lt;/span&gt;&lt;span style=&quot;color: #f0f0f0;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: right; margin-top: -13px; margin-right: 5px; font-size: 9px; font-style: italic;&quot;&gt;&lt;a style=&quot;color: #4f4f4ftext-decoration:none;&quot; href=&quot;http://colorscripter.com/info#e&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;Colored by Color Scripter&lt;/a&gt;&lt;/div&gt;
&lt;/td&gt;
&lt;td style=&quot;vertical-align: bottom; padding: 0 2px 4px 0;&quot;&gt;&lt;a style=&quot;text-decoration: none; color: white;&quot; href=&quot;http://colorscripter.com/info#e&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;&lt;span style=&quot;font-size: 9px; word-break: normal; background-color: #4f4f4f; color: white; border-radius: 10px; padding: 1px;&quot;&gt;cs&lt;/span&gt;&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;
&lt;p&gt;&lt;span style=&quot;color: #333333;&quot;&gt;톰캣의 conf 폴더에 server.xml를 열고 해당 keystore파일의 패스와 비밀번호를 입력한다.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;color: #333333;&quot;&gt;이후 톰캣을 재시작 후 8443 포트를 활용하여 https 프로토콜로 접속을 하면 접속이 된다.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;color: #333333;&quot;&gt;만약 파일 path에 관련된 에러가 나온다면 앞에 file:///를 입력하여 file경로임을 명시해준다.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;color: #333333;&quot;&gt;ex..) certificateKeystoreFile=&quot;file:///C:/Tomcat9/keystore/keystore.p12&quot;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;color: #333333;&quot;&gt;참고&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;color: #333333;&quot;&gt;&lt;a href=&quot;https://jimnong.tistory.com/845&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;jimnong.tistory.com/845&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1606368618783&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-og-type=&quot;article&quot; data-og-title=&quot;[윈도우10 64bit] APM : Let's Encrypt SSL 인증서 수동 발급과 아파치(Apache)에 적용하기&quot; data-og-description=&quot;2~3년 전, https 설정을 위한&amp;nbsp;Let's Encrypt 무료 SSL 인증서 발급/관리 프로그램이 (윈도우&amp;nbsp;기준)&amp;nbsp;아파치 용으로는 깔끔치 못해서&amp;nbsp;부득이하게 홈서버 OS를 우분투로 교체했었습니다. 그런데 시간이 &quot; data-og-host=&quot;jimnong.tistory.com&quot; data-og-source-url=&quot;https://jimnong.tistory.com/845&quot; data-og-url=&quot;https://jimnong.tistory.com/845&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/bCKZrt/hyIlYy3Etj/Scq59VdtNyYRJyDEm9k691/img.png?width=615&amp;amp;height=672&amp;amp;face=0_0_615_672,https://scrap.kakaocdn.net/dn/be1Qfh/hyIlSr4Bwx/h2gIUZknTS557lgYXoBAW1/img.png?width=615&amp;amp;height=672&amp;amp;face=0_0_615_672,https://scrap.kakaocdn.net/dn/STJqQ/hyIl0XVaYG/kSL0P506nKoC2n1Ig3u2H0/img.png?width=783&amp;amp;height=618&amp;amp;face=0_0_783_618&quot;&gt;&lt;a href=&quot;https://jimnong.tistory.com/845&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://jimnong.tistory.com/845&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/bCKZrt/hyIlYy3Etj/Scq59VdtNyYRJyDEm9k691/img.png?width=615&amp;amp;height=672&amp;amp;face=0_0_615_672,https://scrap.kakaocdn.net/dn/be1Qfh/hyIlSr4Bwx/h2gIUZknTS557lgYXoBAW1/img.png?width=615&amp;amp;height=672&amp;amp;face=0_0_615_672,https://scrap.kakaocdn.net/dn/STJqQ/hyIl0XVaYG/kSL0P506nKoC2n1Ig3u2H0/img.png?width=783&amp;amp;height=618&amp;amp;face=0_0_783_618');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot;&gt;[윈도우10 64bit] APM : Let's Encrypt SSL 인증서 수동 발급과 아파치(Apache)에 적용하기&lt;/p&gt;
&lt;p class=&quot;og-desc&quot;&gt;2~3년 전, https 설정을 위한&amp;nbsp;Let's Encrypt 무료 SSL 인증서 발급/관리 프로그램이 (윈도우&amp;nbsp;기준)&amp;nbsp;아파치 용으로는 깔끔치 못해서&amp;nbsp;부득이하게 홈서버 OS를 우분투로 교체했었습니다. 그런데 시간이&lt;/p&gt;
&lt;p class=&quot;og-host&quot;&gt;jimnong.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p&gt;&lt;a href=&quot;https://namjackson.tistory.com/24&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;namjackson.tistory.com/24&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1606368712686&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-og-type=&quot;article&quot; data-og-title=&quot;[SSL]HTTPS통신을 위한 SSL인증서 발급하기(OpenSSL)&quot; data-og-description=&quot;먼저 HTTPS통신을 구현 하기 하기전, SSL 이란? Secure Socket Layer의 약자로 SSL 프로토콜은 간단하게 웹서버와 브라우저 사이의 보안을 위해 만들어졌다. 간단하게 요약하자면 대칭키를 이용하여 암호&quot; data-og-host=&quot;namjackson.tistory.com&quot; data-og-source-url=&quot;https://namjackson.tistory.com/24&quot; data-og-url=&quot;https://namjackson.tistory.com/24&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/bmxVoT/hyInd2qFoF/G0xuEeFJdBIBq3vDEKtmJK/img.png?width=471&amp;amp;height=479&amp;amp;face=0_0_471_479,https://scrap.kakaocdn.net/dn/G1XXe/hyInmSBBTE/2JcDaumKvU2NU7ndoYfXC0/img.png?width=471&amp;amp;height=479&amp;amp;face=0_0_471_479,https://scrap.kakaocdn.net/dn/bglIOK/hyInjn2wOa/sdR5Da1cPBqo7cuE2I5i70/img.jpg?width=640&amp;amp;height=640&amp;amp;face=269_104_351_193&quot;&gt;&lt;a href=&quot;https://namjackson.tistory.com/24&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://namjackson.tistory.com/24&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/bmxVoT/hyInd2qFoF/G0xuEeFJdBIBq3vDEKtmJK/img.png?width=471&amp;amp;height=479&amp;amp;face=0_0_471_479,https://scrap.kakaocdn.net/dn/G1XXe/hyInmSBBTE/2JcDaumKvU2NU7ndoYfXC0/img.png?width=471&amp;amp;height=479&amp;amp;face=0_0_471_479,https://scrap.kakaocdn.net/dn/bglIOK/hyInjn2wOa/sdR5Da1cPBqo7cuE2I5i70/img.jpg?width=640&amp;amp;height=640&amp;amp;face=269_104_351_193');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot;&gt;[SSL]HTTPS통신을 위한 SSL인증서 발급하기(OpenSSL)&lt;/p&gt;
&lt;p class=&quot;og-desc&quot;&gt;먼저 HTTPS통신을 구현 하기 하기전, SSL 이란? Secure Socket Layer의 약자로 SSL 프로토콜은 간단하게 웹서버와 브라우저 사이의 보안을 위해 만들어졌다. 간단하게 요약하자면 대칭키를 이용하여 암호&lt;/p&gt;
&lt;p class=&quot;og-host&quot;&gt;namjackson.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p&gt;&lt;a href=&quot;https://bigboss.io/2019/05/install-letsencrypt-ssl-certificate-for-windows-tomcat/&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;bigboss.io/2019/05/install-letsencrypt-ssl-certificate-for-windows-tomcat/&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1606368758014&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-og-type=&quot;article&quot; data-og-title=&quot;영혼 없이 Windows용 Tomcat에 Let's Encrypt SSL 인증서 설치하기 - bigboss.io&quot; data-og-description=&quot;Let&amp;rsquo;s Encrypt 인증서를 설치하려고 검색을 해보니 리눅스 환경에서 certbot을 활용하는 방법이 주로 나왔습니다. 윈도 환경에서는 IIS에 적용하는 방법은 종종 찾을 수 있었지만 Tomcat에 적용하는 방&quot; data-og-host=&quot;bigboss.io&quot; data-og-source-url=&quot;https://bigboss.io/2019/05/install-letsencrypt-ssl-certificate-for-windows-tomcat/&quot; data-og-url=&quot;https://bigboss.io/2019/05/install-letsencrypt-ssl-certificate-for-windows-tomcat/&quot; data-og-image=&quot;&quot;&gt;&lt;a href=&quot;https://bigboss.io/2019/05/install-letsencrypt-ssl-certificate-for-windows-tomcat/&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://bigboss.io/2019/05/install-letsencrypt-ssl-certificate-for-windows-tomcat/&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url();&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot;&gt;영혼 없이 Windows용 Tomcat에 Let's Encrypt SSL 인증서 설치하기 - bigboss.io&lt;/p&gt;
&lt;p class=&quot;og-desc&quot;&gt;Let&amp;rsquo;s Encrypt 인증서를 설치하려고 검색을 해보니 리눅스 환경에서 certbot을 활용하는 방법이 주로 나왔습니다. 윈도 환경에서는 IIS에 적용하는 방법은 종종 찾을 수 있었지만 Tomcat에 적용하는 방&lt;/p&gt;
&lt;p class=&quot;og-host&quot;&gt;bigboss.io&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>기타</category>
      <category>encrypt</category>
      <category>https</category>
      <category>Let's Encrypt</category>
      <category>보안인증</category>
      <category>윈도우https</category>
      <category>윈도우서버</category>
      <category>인증서</category>
      <category>톰캣 https</category>
      <category>톰캣 인증</category>
      <category>프로토콜</category>
      <author>IT스타터</author>
      <guid isPermaLink="true">https://tobepro.tistory.com/33</guid>
      <comments>https://tobepro.tistory.com/33#entry33comment</comments>
      <pubDate>Thu, 26 Nov 2020 14:28:53 +0900</pubDate>
    </item>
    <item>
      <title>zoom sdk 이용하기(web)</title>
      <link>https://tobepro.tistory.com/32</link>
      <description>&lt;p&gt;코로나의 여파로 인해 zoom 같은 비대면 화상 회의에 대한 수요가 급증하고 있다.&lt;/p&gt;
&lt;p&gt;이번에는 zoom sdk를 이용하여 화상회의를 웹상에서 할 수 있는 sample 개발을 진행해보도록 하자.&lt;/p&gt;
&lt;p&gt;먼저&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;https://marketplace.zoom.us/docs/sdk/native-sdks/web&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;marketplace.zoom.us/docs/sdk/native-sdks/web&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1606354315595&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-og-type=&quot;website&quot; data-og-title=&quot;Web - Client SDKs - Zoom Software Development Kit (Zoom SDK)&quot; data-og-description=&quot;Zoom Web SDK The Web SDK enables the development of video applications powered by Zoom's core framework inside an HTML5 web client through a highly opt...&quot; data-og-host=&quot;marketplace.zoom.us&quot; data-og-source-url=&quot;https://marketplace.zoom.us/docs/sdk/native-sdks/web&quot; data-og-url=&quot;https://marketplace.zoom.us/docs/sdk/native-sdks/web&quot; data-og-image=&quot;&quot;&gt;&lt;a href=&quot;https://marketplace.zoom.us/docs/sdk/native-sdks/web&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://marketplace.zoom.us/docs/sdk/native-sdks/web&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url();&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot;&gt;Web - Client SDKs - Zoom Software Development Kit (Zoom SDK)&lt;/p&gt;
&lt;p class=&quot;og-desc&quot;&gt;Zoom Web SDK The Web SDK enables the development of video applications powered by Zoom's core framework inside an HTML5 web client through a highly opt...&lt;/p&gt;
&lt;p class=&quot;og-host&quot;&gt;marketplace.zoom.us&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p&gt;링크를 통해 zoom marketplace에 등록된 web sdk 영역으로 이동을 한다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-filename=&quot;sdk 다운1.png&quot; data-origin-width=&quot;1920&quot; data-origin-height=&quot;1040&quot; data-ke-mobilestyle=&quot;widthContent&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bPs6B4/btqOdOkYpO2/UX0vI2U3dArq89m3rXVwnk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bPs6B4/btqOdOkYpO2/UX0vI2U3dArq89m3rXVwnk/img.png&quot; data-alt=&quot;sdk&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bPs6B4/btqOdOkYpO2/UX0vI2U3dArq89m3rXVwnk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbPs6B4%2FbtqOdOkYpO2%2FUX0vI2U3dArq89m3rXVwnk%2Fimg.png&quot; data-filename=&quot;sdk 다운1.png&quot; data-origin-width=&quot;1920&quot; data-origin-height=&quot;1040&quot; data-ke-mobilestyle=&quot;widthContent&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;sdk&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;sample app을 누르면 github 사이트로 이동이 된다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-filename=&quot;sdk 다운2.png&quot; data-origin-width=&quot;1920&quot; data-origin-height=&quot;1040&quot; data-ke-mobilestyle=&quot;widthContent&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/6ukvP/btqOhPiRDeN/LDGR7nzlIoPau5rh8IkTA1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/6ukvP/btqOhPiRDeN/LDGR7nzlIoPau5rh8IkTA1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/6ukvP/btqOhPiRDeN/LDGR7nzlIoPau5rh8IkTA1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F6ukvP%2FbtqOhPiRDeN%2FLDGR7nzlIoPau5rh8IkTA1%2Fimg.png&quot; data-filename=&quot;sdk 다운2.png&quot; data-origin-width=&quot;1920&quot; data-origin-height=&quot;1040&quot; data-ke-mobilestyle=&quot;widthContent&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;해당 사이트에서 소스코드를 다운 받고, 본인의 서버로 이동하여 압축을 해제해준다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;현재 tomcat을 이용 중이므로, tomcat기준으로 설명을 진행.&lt;/p&gt;
&lt;p&gt;압축을 풀면 위에 화면처럼 크게 CDN 폴더와 Local 폴더가 보인다.&lt;/p&gt;
&lt;p&gt;CDN은 Content Delivery Network의 약자로 &lt;span&gt;서버의 분산 네트워크로서 &lt;span&gt;서버에 캐시 된 콘텐츠를 저장하여 대기 시간을 최소화하는 네트워크라고 한다. 자세한 건 인터넷에 검색해보시길..&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;&lt;span&gt;local은 말 그대로 local 환경에서의 sdk를 설치 및 실행을 하는 것이다.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;&lt;span&gt;단 여기서 local로 진행하게 된다면 module를 따로 설치를 해야 원활한 진행이 되고 CDN은 module설치가 필요 없이 네트워크를 통해 필요한 js파일 등을 받기 때문에 CDN을 통해 진행을 하겠다.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;&lt;span&gt;CDN폴더를 가서 sample용 html과 js 파일들을 확인해보자.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;&lt;span&gt;먼저 index.html은 말 그대로 초기화면을 보여주는 html 파일이고, meeting.html은 zoom을 통한 화상회의를 진행이 되는 html 파일로 보인다.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;&lt;span&gt;그럼 일단 서버(톰캣)를 통해 index.html 파일을 실행해보자.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-filename=&quot;sdk index.png&quot; data-origin-width=&quot;2560&quot; data-origin-height=&quot;1540&quot; data-ke-mobilestyle=&quot;widthContent&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/djGCpZ/btqOiBLpdge/KB2Qhh5bX1UqRhl1g6vMF0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/djGCpZ/btqOiBLpdge/KB2Qhh5bX1UqRhl1g6vMF0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/djGCpZ/btqOiBLpdge/KB2Qhh5bX1UqRhl1g6vMF0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdjGCpZ%2FbtqOiBLpdge%2FKB2Qhh5bX1UqRhl1g6vMF0%2Fimg.png&quot; data-filename=&quot;sdk index.png&quot; data-origin-width=&quot;2560&quot; data-origin-height=&quot;1540&quot; data-ke-mobilestyle=&quot;widthContent&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;빨간색으로 지워진 부분에는 PC명을 자동으로 검색해서 입력해주고, 나머지 부분은 직접 채워야 한다.&lt;/p&gt;
&lt;p&gt;Meeting Number는 zoom에서 받은 개인 회의 ID를 입력하고, Meeting Password는 회의 비밀번호, Email option에는 eail 주소 Attendee에서는 먼저 host로 회의를 개설할 거니 host로 설정, English 대신 한국어로 설정을 바꾼 뒤 join을 눌러준다.&lt;/p&gt;
&lt;p&gt;만약 meeting Number가 없다면 먼저 zoom에 회원가입을 하여 회의 id, password 등을 받도록 하자.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-filename=&quot;22.png&quot; data-origin-width=&quot;1280&quot; data-origin-height=&quot;770&quot; data-ke-mobilestyle=&quot;widthContent&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/vp69Q/btqPuSGerKd/kqTB1hz3cgnpNvXk3EFLdK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/vp69Q/btqPuSGerKd/kqTB1hz3cgnpNvXk3EFLdK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/vp69Q/btqPuSGerKd/kqTB1hz3cgnpNvXk3EFLdK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fvp69Q%2FbtqPuSGerKd%2FkqTB1hz3cgnpNvXk3EFLdK%2Fimg.png&quot; data-filename=&quot;22.png&quot; data-origin-width=&quot;1280&quot; data-origin-height=&quot;770&quot; data-ke-mobilestyle=&quot;widthContent&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;버튼을 누르면 404 에러가 발생을 한다. url을 자세히 보면 도메인 뒤에 바로 meeting.html 파일을 찾는 것이 보인다.&lt;/p&gt;
&lt;p&gt;하지만 내가 가지고 있는 meeting.html은 현재 서버 루트 폴더 아래 /sample-app-web-master/CDN/에 존재하기 때문에 404 에러가 발생하는 것이다. 그러면 저 버튼의 액션이 이뤄졌을 때, 발생하는 함수가 찾는 url을 살짝 수정하면 정상 동작할 거 같으니 index.html에서 버튼 관련된 함수를 찾아보자.&lt;/p&gt;
&lt;p&gt;아마도 보이지 않을 것이다. 하지만 밑에 보면&amp;nbsp; 등록된 js파일들이 보일 텐데, 이 버튼과 관련된 함수가 있는 js는 index.js파일이다. 해당 파일을 실행하자.&lt;/p&gt;
&lt;div class=&quot;colorscripter-code&quot; style=&quot;color: #f0f0f0; font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace !important; position: relative !important; overflow: auto;&quot;&gt;
&lt;table class=&quot;colorscripter-code-table&quot; style=&quot;margin: 0; padding: 0; border: none; background-color: #272727; border-radius: 4px;&quot; cellspacing=&quot;0&quot; cellpadding=&quot;0&quot;&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td style=&quot;padding: 6px; border-right: 2px solid #4f4f4f;&quot;&gt;
&lt;div style=&quot;margin: 0; padding: 0; word-break: normal; text-align: right; color: #aaa; font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace !important; line-height: 130%;&quot;&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;1&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;2&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;3&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;4&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;5&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;6&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;7&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;8&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;9&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;10&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;11&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;12&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;13&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;14&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;15&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;16&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;17&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;18&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;19&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;20&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;21&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;22&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;23&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;24&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;25&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;26&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;27&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;28&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;29&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;30&lt;/div&gt;
&lt;/div&gt;
&lt;/td&gt;
&lt;td style=&quot;padding: 6px 0; text-align: left;&quot;&gt;
&lt;div style=&quot;margin: 0; padding: 0; color: #f0f0f0; font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace !important; line-height: 130%;&quot;&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;color: #999999;&quot;&gt;//&amp;nbsp;click&amp;nbsp;join&amp;nbsp;meeting&amp;nbsp;button&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #4be6fa;&quot;&gt;document&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;.&lt;span style=&quot;color: #4be6fa;&quot;&gt;getElementById&lt;/span&gt;(&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;join_meeting&quot;&lt;/span&gt;)&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;.&lt;span style=&quot;color: #4be6fa;&quot;&gt;addEventListener&lt;/span&gt;(&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;click&quot;&lt;/span&gt;,&amp;nbsp;&lt;span style=&quot;color: #ff3399;&quot;&gt;function&lt;/span&gt;&amp;nbsp;(e)&amp;nbsp;{&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;e.preventDefault();&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #ff3399;&quot;&gt;var&lt;/span&gt;&amp;nbsp;meetingConfig&amp;nbsp;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&amp;nbsp;testTool.getMeetingConfig();&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #ff3399;&quot;&gt;if&lt;/span&gt;&amp;nbsp;(&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;!&lt;/span&gt;meetingConfig.mn&amp;nbsp;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;|&lt;/span&gt;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;|&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;!&lt;/span&gt;meetingConfig.&lt;span style=&quot;color: #4be6fa;&quot;&gt;name&lt;/span&gt;)&amp;nbsp;{&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #4be6fa;&quot;&gt;alert&lt;/span&gt;(&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;Meeting&amp;nbsp;number&amp;nbsp;or&amp;nbsp;username&amp;nbsp;is&amp;nbsp;empty&quot;&lt;/span&gt;);&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #ff3399;&quot;&gt;return&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #c10aff;&quot;&gt;false&lt;/span&gt;;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;testTool.setCookie(&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;meeting_number&quot;&lt;/span&gt;,&amp;nbsp;meetingConfig.mn);&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;testTool.setCookie(&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;meeting_pwd&quot;&lt;/span&gt;,&amp;nbsp;meetingConfig.pwd);&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #ff3399;&quot;&gt;var&lt;/span&gt;&amp;nbsp;signature&amp;nbsp;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&amp;nbsp;ZoomMtg.generateSignature({&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;meetingNumber:&amp;nbsp;meetingConfig.mn,&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;apiKey:&amp;nbsp;API_KEY,&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;apiSecret:&amp;nbsp;API_SECRET,&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;role:&amp;nbsp;meetingConfig.role,&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;success:&amp;nbsp;&lt;span style=&quot;color: #ff3399;&quot;&gt;function&lt;/span&gt;&amp;nbsp;(res)&amp;nbsp;{&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #4be6fa;&quot;&gt;console&lt;/span&gt;.log(res.result);&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;meetingConfig.signature&amp;nbsp;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&amp;nbsp;res.result;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;meetingConfig.apiKey&amp;nbsp;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&amp;nbsp;API_KEY;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #ff3399;&quot;&gt;var&lt;/span&gt;&amp;nbsp;joinUrl&amp;nbsp;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;/meeting.html?&quot;&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #aaffaa;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;+&lt;/span&gt;&amp;nbsp;testTool.serialize(meetingConfig);&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #4be6fa;&quot;&gt;console&lt;/span&gt;.log(joinUrl);&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #4be6fa;&quot;&gt;window&lt;/span&gt;.open(joinUrl,&amp;nbsp;&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;_blank&quot;&lt;/span&gt;);&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;},&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;});&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;});&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: right; margin-top: -13px; margin-right: 5px; font-size: 9px; font-style: italic;&quot;&gt;&lt;a style=&quot;color: #4f4f4ftext-decoration:none;&quot; href=&quot;http://colorscripter.com/info#e&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;Colored by Color Scripter&lt;/a&gt;&lt;/div&gt;
&lt;/td&gt;
&lt;td style=&quot;vertical-align: bottom; padding: 0 2px 4px 0;&quot;&gt;&lt;a style=&quot;text-decoration: none; color: white;&quot; href=&quot;http://colorscripter.com/info#e&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;&lt;span style=&quot;font-size: 9px; word-break: normal; background-color: #4f4f4f; color: white; border-radius: 10px; padding: 1px;&quot;&gt;cs&lt;/span&gt;&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;
&lt;p&gt;자세히 보면 joinUrl에 &quot;/meeting.html?&quot;으로 시작하는 것이 보인다.&lt;/p&gt;
&lt;p&gt;앞부분에 해당 웹 루트 이후 url을 작성하거나. meeting.html을 index.html과 같은 폴더에 놓고(이미 놓여져있음) .하나를 붙여 상대 경로로 지정을 해준 뒤 실행을 다시 한다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-filename=&quot;33.png&quot; data-origin-width=&quot;1280&quot; data-origin-height=&quot;770&quot; data-ke-mobilestyle=&quot;widthContent&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cz32gy/btqPsCwXgew/SGAYkJOxXkEvEbVi6Cevy1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cz32gy/btqPsCwXgew/SGAYkJOxXkEvEbVi6Cevy1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cz32gy/btqPsCwXgew/SGAYkJOxXkEvEbVi6Cevy1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fcz32gy%2FbtqPsCwXgew%2FSGAYkJOxXkEvEbVi6Cevy1%2Fimg.png&quot; data-filename=&quot;33.png&quot; data-origin-width=&quot;1280&quot; data-origin-height=&quot;770&quot; data-ke-mobilestyle=&quot;widthContent&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;잘못된 매개변수라고 나온다. 주소창을 자세히 보니 apiKey부분에 YOUR_API_KEY라고 되어있는 것을 볼 수 있다.&lt;/p&gt;
&lt;p&gt;눈이 좋은 사람들은 index.js를 편집했을 때 윗부분에서 해당 부분과 같은 변수를 이전에 봤을 것이다.&lt;/p&gt;
&lt;div class=&quot;colorscripter-code&quot; style=&quot;color: #f0f0f0; font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace !important; position: relative !important; overflow: auto;&quot;&gt;
&lt;table class=&quot;colorscripter-code-table&quot; style=&quot;margin: 0; padding: 0; border: none; background-color: #272727; border-radius: 4px;&quot; cellspacing=&quot;0&quot; cellpadding=&quot;0&quot;&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td style=&quot;padding: 6px; border-right: 2px solid #4f4f4f;&quot;&gt;
&lt;div style=&quot;margin: 0; padding: 0; word-break: normal; text-align: right; color: #aaa; font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace !important; line-height: 130%;&quot;&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;1&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;2&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;3&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;4&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;5&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;6&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;7&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;8&lt;/div&gt;
&lt;/div&gt;
&lt;/td&gt;
&lt;td style=&quot;padding: 6px 0; text-align: left;&quot;&gt;
&lt;div style=&quot;margin: 0; padding: 0; color: #f0f0f0; font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace !important; line-height: 130%;&quot;&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;var&amp;nbsp;API_KEY&amp;nbsp;&lt;span style=&quot;color: #0086b3;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;YOUR_API_KEY&quot;&lt;/span&gt;;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #0086b3;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;/&lt;/span&gt;&lt;span style=&quot;color: #0086b3;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;*&lt;/span&gt;&lt;span style=&quot;color: #0086b3;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;*&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #0086b3;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;*&lt;/span&gt;&amp;nbsp;NEVER&amp;nbsp;PUT&amp;nbsp;YOUR&amp;nbsp;ACTUAL&amp;nbsp;API&amp;nbsp;SECRET&amp;nbsp;IN&amp;nbsp;CLIENT&amp;nbsp;SIDE&amp;nbsp;CODE,&amp;nbsp;THIS&amp;nbsp;IS&amp;nbsp;JUST&amp;nbsp;FOR&amp;nbsp;QUICK&amp;nbsp;PROTOTYPING&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #0086b3;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;*&lt;/span&gt;&amp;nbsp;The&amp;nbsp;below&amp;nbsp;generateSignature&amp;nbsp;should&amp;nbsp;be&amp;nbsp;&lt;span style=&quot;color: #ff3399;&quot;&gt;done&lt;/span&gt;&amp;nbsp;server&amp;nbsp;side&amp;nbsp;as&amp;nbsp;not&amp;nbsp;to&amp;nbsp;expose&amp;nbsp;your&amp;nbsp;api&amp;nbsp;secret&amp;nbsp;in&amp;nbsp;public&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #0086b3;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;*&lt;/span&gt;&amp;nbsp;You&amp;nbsp;can&amp;nbsp;find&amp;nbsp;an&amp;nbsp;eaxmple&amp;nbsp;in&amp;nbsp;here:&amp;nbsp;https:&lt;span style=&quot;color: #0086b3;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;/&lt;/span&gt;&lt;span style=&quot;color: #0086b3;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;/&lt;/span&gt;marketplace.zoom.us&lt;span style=&quot;color: #0086b3;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;/&lt;/span&gt;docs&lt;span style=&quot;color: #0086b3;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;/&lt;/span&gt;sdk&lt;span style=&quot;color: #0086b3;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;/&lt;/span&gt;native&lt;span style=&quot;color: #0086b3;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;-&lt;/span&gt;sdks&lt;span style=&quot;color: #0086b3;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;/&lt;/span&gt;web&lt;span style=&quot;color: #0086b3;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;/&lt;/span&gt;essential&lt;span style=&quot;color: #0086b3;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;/&lt;/span&gt;signature&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #0086b3;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;*&lt;/span&gt;&lt;span style=&quot;color: #0086b3;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;/&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;var&amp;nbsp;API_SECRET&amp;nbsp;&lt;span style=&quot;color: #0086b3;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;YOUR_API_SECRET&quot;&lt;/span&gt;;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: right; margin-top: -13px; margin-right: 5px; font-size: 9px; font-style: italic;&quot;&gt;&lt;a style=&quot;color: #4f4f4ftext-decoration:none;&quot; href=&quot;http://colorscripter.com/info#e&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;Colored by Color Scripter&lt;/a&gt;&lt;/div&gt;
&lt;/td&gt;
&lt;td style=&quot;vertical-align: bottom; padding: 0 2px 4px 0;&quot;&gt;&lt;a style=&quot;text-decoration: none; color: white;&quot; href=&quot;http://colorscripter.com/info#e&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;&lt;span style=&quot;font-size: 9px; word-break: normal; background-color: #4f4f4f; color: white; border-radius: 10px; padding: 1px;&quot;&gt;cs&lt;/span&gt;&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;
&lt;p&gt;이 부분에 api 키를 입력해줘야 한다.&lt;/p&gt;
&lt;p&gt;zoom으로 api 키를 발급받았으면, 키와 비밀번호를 입력하면 되지만 아직 받지 않았다면 zoom 사이트를 들어가서 로그인을 하자.&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;https://marketplace.zoom.us/&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;marketplace.zoom.us/&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;로그인하여 우측 상단에 build app을 통해 앱을 생성한다.&lt;/p&gt;
&lt;p&gt;sdk에서 요구하는 건 api key와 api secret인데, sdk앱은 sdk key, 와 sdk secret을 제공하여 sdk앱을 만들어 봤자 앞으로 진행이 안된다....&lt;/p&gt;
&lt;p&gt;차후 어차피 api서비스를 이용할 것이므로 JWT앱을 생성하자.&lt;/p&gt;
&lt;p&gt;나는 이미 만들어서 과정을 찍지 못했다..&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-filename=&quot;api_key2.png&quot; data-origin-width=&quot;1920&quot; data-origin-height=&quot;1040&quot; data-ke-mobilestyle=&quot;widthContent&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/crVuTV/btqOdM8AzuJ/xhLknX6Pm0fYkBUjEpUkQ0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/crVuTV/btqOdM8AzuJ/xhLknX6Pm0fYkBUjEpUkQ0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/crVuTV/btqOdM8AzuJ/xhLknX6Pm0fYkBUjEpUkQ0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcrVuTV%2FbtqOdM8AzuJ%2FxhLknX6Pm0fYkBUjEpUkQ0%2Fimg.png&quot; data-filename=&quot;api_key2.png&quot; data-origin-width=&quot;1920&quot; data-origin-height=&quot;1040&quot; data-ke-mobilestyle=&quot;widthContent&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;생성이 되면 해당 부분에 api key와 secret을 복사하여 index.js에 key와 secret부분에 입력해준다.&lt;/p&gt;
&lt;p&gt;그 후 다시 index.html을 통해 join을 시도해보자.&lt;/p&gt;
&lt;p&gt;회의 참가 중 메시지 이후&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-filename=&quot;blob&quot; data-origin-width=&quot;2560&quot; data-origin-height=&quot;1540&quot; data-ke-mobilestyle=&quot;widthContent&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dYYXzz/btqPAuK6AbT/D3SelkMkT17eMkEvExwzM1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dYYXzz/btqPAuK6AbT/D3SelkMkT17eMkEvExwzM1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dYYXzz/btqPAuK6AbT/D3SelkMkT17eMkEvExwzM1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdYYXzz%2FbtqPAuK6AbT%2FD3SelkMkT17eMkEvExwzM1%2Fimg.png&quot; data-filename=&quot;blob&quot; data-origin-width=&quot;2560&quot; data-origin-height=&quot;1540&quot; data-ke-mobilestyle=&quot;widthContent&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;해당 창이 뜬다면 정상적으로 host가 되었다.&lt;/p&gt;
&lt;p&gt;같은 방식으로 하여 Attendee를 host가 아닌 Assistant로 하여 join버튼을 누르면 호스트가 아닌 참가자로서 미팅에 참석할 수 있다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;이후 오디오 참가나 비디오 시작을 누르면 왼쪽 상단으로 요청이 올 것이다.(크롬기준)&lt;/p&gt;
&lt;p&gt;해당 요청을 수락하면, 오디오나 비디오를 시작할 수 있다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;보안 쪽 문제 때문에 카메라 등이 http에서는 지원하지 않아서 직접 web 서버를 운영하고 있다면&lt;/p&gt;
&lt;p&gt;브라우저가 카메라 등의 기능을 지원하지 않으니 최신 버전으로 업데이트하라는 문구가 뜰 것이다.&lt;/p&gt;
&lt;p&gt;local 같은 경우엔 http이긴 해도 카메라 등의 기능을 사용할 수 있지만 그 외 http만 있는 서버인 경우에는 https 프로토콜로 설정을 해줘야지만 카메라 공유가 가능하다.&lt;/p&gt;</description>
      <category>api/zoom</category>
      <category>zoom</category>
      <category>zoom developer</category>
      <category>zoom sdk</category>
      <category>zoom web</category>
      <category>zoom 개발</category>
      <category>웹 화상회의 개발</category>
      <category>줌 sdk</category>
      <category>줌 개발</category>
      <category>줌 웹</category>
      <category>줌 웹 개발</category>
      <author>IT스타터</author>
      <guid isPermaLink="true">https://tobepro.tistory.com/32</guid>
      <comments>https://tobepro.tistory.com/32#entry32comment</comments>
      <pubDate>Thu, 26 Nov 2020 11:27:16 +0900</pubDate>
    </item>
    <item>
      <title>아파치 오픈미팅(openmeetings) 무료 웹 화상 회의 - 2</title>
      <link>https://tobepro.tistory.com/31</link>
      <description>&lt;p&gt;&lt;a href=&quot;https://tobepro.tistory.com/30&quot;&gt;https://tobepro.tistory.com/30&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1595223990563&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-og-type=&quot;article&quot; data-og-title=&quot;아파치 오픈미팅(openmeetings) 무료 웹 화상 회의 - 1&quot; data-og-description=&quot;코로나로 직접 대면이 껄끄러운 지금 화상 회의에 대해 알아보도록 하자.(사실 회사에서 시켜서 하는거ㅎㅎ) 많은 화상 회의 프로그램이 있지만 그 중에서도 아파치에서 만든 웹 기반에 오픈미�&quot; data-og-host=&quot;tobepro.tistory.com&quot; data-og-source-url=&quot;https://tobepro.tistory.com/30&quot; data-og-url=&quot;https://tobepro.tistory.com/30&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/qL9Wf/hyGO2vRHmN/lZv3z14k6nRBoSEjmzuSTk/img.png?width=800&amp;amp;height=430&amp;amp;face=0_0_800_430,https://scrap.kakaocdn.net/dn/b6Hvy9/hyGO2o4Jy3/oovnXRhBsjjv8L9GZ3zLD1/img.png?width=800&amp;amp;height=430&amp;amp;face=0_0_800_430,https://scrap.kakaocdn.net/dn/lx14Q/hyGQHwQuG4/nuZ6EubbGN6qcTpDFkTgf0/img.png?width=1600&amp;amp;height=860&amp;amp;face=0_0_1600_860&quot;&gt;&lt;a href=&quot;https://tobepro.tistory.com/30&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://tobepro.tistory.com/30&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/qL9Wf/hyGO2vRHmN/lZv3z14k6nRBoSEjmzuSTk/img.png?width=800&amp;amp;height=430&amp;amp;face=0_0_800_430,https://scrap.kakaocdn.net/dn/b6Hvy9/hyGO2o4Jy3/oovnXRhBsjjv8L9GZ3zLD1/img.png?width=800&amp;amp;height=430&amp;amp;face=0_0_800_430,https://scrap.kakaocdn.net/dn/lx14Q/hyGQHwQuG4/nuZ6EubbGN6qcTpDFkTgf0/img.png?width=1600&amp;amp;height=860&amp;amp;face=0_0_1600_860');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot;&gt;아파치 오픈미팅(openmeetings) 무료 웹 화상 회의 - 1&lt;/p&gt;
&lt;p class=&quot;og-desc&quot;&gt;코로나로 직접 대면이 껄끄러운 지금 화상 회의에 대해 알아보도록 하자.(사실 회사에서 시켜서 하는거ㅎㅎ) 많은 화상 회의 프로그램이 있지만 그 중에서도 아파치에서 만든 웹 기반에 오픈미�&lt;/p&gt;
&lt;p class=&quot;og-host&quot;&gt;tobepro.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p&gt;1부는 위 링크로(오픈미팅 설치 전 기타 프로그램 설치)&lt;/p&gt;
&lt;p&gt;MariaDB까지 설치가 완료되었으면&amp;nbsp; 이제 openmeetings을 다운로드 받는다.&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://archive.apache.org/dist/openmeetings/4.0.10/bin/apache-openmeetings-4.0.10.zip&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;archive.apache.org/dist/openmeetings/4.0.10/bin/apache-openmeetings-4.0.10.zip&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-filename=&quot;openmeeting.png&quot; data-origin-width=&quot;1594&quot; data-origin-height=&quot;760&quot; data-ke-mobilestyle=&quot;widthContent&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/b7e02H/btqFPsQxlKt/eonjd3kvbpxzllCkY9k8a0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/b7e02H/btqFPsQxlKt/eonjd3kvbpxzllCkY9k8a0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/b7e02H/btqFPsQxlKt/eonjd3kvbpxzllCkY9k8a0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fb7e02H%2FbtqFPsQxlKt%2Feonjd3kvbpxzllCkY9k8a0%2Fimg.png&quot; data-filename=&quot;openmeeting.png&quot; data-origin-width=&quot;1594&quot; data-origin-height=&quot;760&quot; data-ke-mobilestyle=&quot;widthContent&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;&lt;span&gt;Openmeetings&lt;/span&gt;&lt;span&gt;을 다운받아 &lt;/span&gt;&lt;span&gt;C&lt;/span&gt;&lt;span&gt;밑에 압축 해제한다.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;폴더명을 &lt;/span&gt;&lt;span&gt;red54010&lt;/span&gt;&lt;span&gt;으로 변경하고, &lt;/span&gt;&lt;span&gt;mysql connector.jar&lt;/span&gt;&lt;span&gt;파일을 다운로드 하여 &lt;/span&gt;&lt;span&gt;C:\red54010\webapps\openmeetings\WEB-INF\lib&lt;/span&gt;&lt;span&gt;폴더에 저장한다.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;cmd&lt;/span&gt;&lt;span&gt;를 열고 &lt;/span&gt;&lt;span&gt;C:\WINDOWS\system32/services.msc &lt;/span&gt;&lt;span&gt;명령어를 입력하여 서비스 관리 실행&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;mysql&lt;/span&gt;&lt;span&gt;을 찾아서 재시작을 한다.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;이후 &lt;/span&gt;&lt;span&gt;C:\red54010\red5.bat&lt;/span&gt;&lt;span&gt;을 실행한다.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-filename=&quot;open실행.png&quot; data-origin-width=&quot;979&quot; data-origin-height=&quot;512&quot; data-ke-mobilestyle=&quot;widthContent&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dxbNW4/btqFONOln0W/5DAsZ2bRVZOg3kt9zHNZKK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dxbNW4/btqFONOln0W/5DAsZ2bRVZOg3kt9zHNZKK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dxbNW4/btqFONOln0W/5DAsZ2bRVZOg3kt9zHNZKK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdxbNW4%2FbtqFONOln0W%2F5DAsZ2bRVZOg3kt9zHNZKK%2Fimg.png&quot; data-filename=&quot;open실행.png&quot; data-origin-width=&quot;979&quot; data-origin-height=&quot;512&quot; data-ke-mobilestyle=&quot;widthContent&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;그 후 브라우저를 실행하고 &lt;span&gt;http://localhost:5080/openmeetings/install을 입력한다.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-filename=&quot;open1.png&quot; data-origin-width=&quot;1920&quot; data-origin-height=&quot;1040&quot; data-ke-mobilestyle=&quot;widthContent&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/oxFxN/btqFPGHI3y9/CJcNaLHLwV2hFAioiGO3Nk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/oxFxN/btqFPGHI3y9/CJcNaLHLwV2hFAioiGO3Nk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/oxFxN/btqFPGHI3y9/CJcNaLHLwV2hFAioiGO3Nk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FoxFxN%2FbtqFPGHI3y9%2FCJcNaLHLwV2hFAioiGO3Nk%2Fimg.png&quot; data-filename=&quot;open1.png&quot; data-origin-width=&quot;1920&quot; data-origin-height=&quot;1040&quot; data-ke-mobilestyle=&quot;widthContent&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;위와 같은 화면이 뜨면 일단 설치는 완료된 것이다. 이제 openmeeting 셋팅을 시작하도록 하자. 먼저 &amp;gt;버튼을 누른다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-filename=&quot;open2.png&quot; data-origin-width=&quot;1920&quot; data-origin-height=&quot;1040&quot; data-ke-mobilestyle=&quot;widthContent&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/c7wH4L/btqFQxKkH0q/n4BmmdnuO5CVGoey3y3Oc0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/c7wH4L/btqFQxKkH0q/n4BmmdnuO5CVGoey3y3Oc0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/c7wH4L/btqFQxKkH0q/n4BmmdnuO5CVGoey3y3Oc0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fc7wH4L%2FbtqFQxKkH0q%2Fn4BmmdnuO5CVGoey3y3Oc0%2Fimg.png&quot; data-filename=&quot;open2.png&quot; data-origin-width=&quot;1920&quot; data-origin-height=&quot;1040&quot; data-ke-mobilestyle=&quot;widthContent&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;data서버를 위해 설치한 DB의 값대로 설정을 한다. 우리는 1부에서 Tutorial 메뉴얼대로 MariaDB(mysql)를 설치했으므로 mysql를 선택한다.&lt;/p&gt;
&lt;p&gt;서버를 가지고 운영을 한다면 해당 서버의 host가 들어가겠지만, 일단은 우린 local로 설치하고, 실행하는 tutorial단계임으로 localhost를 입력한다.&lt;/p&gt;
&lt;p&gt;mysql의 기본 포트인 3306를 입력하고 생성한 Database 명(open4010), DB User(hola), password을 차례로 입력한뒤 Check를 하고, 이상이 없으면 &amp;gt;버튼을 누른다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-filename=&quot;open3.png&quot; data-origin-width=&quot;1920&quot; data-origin-height=&quot;1040&quot; data-ke-mobilestyle=&quot;widthContent&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/q6i0d/btqFPr44oHt/KEmrZoEDgBIphxTM7cAKpK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/q6i0d/btqFPr44oHt/KEmrZoEDgBIphxTM7cAKpK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/q6i0d/btqFPr44oHt/KEmrZoEDgBIphxTM7cAKpK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fq6i0d%2FbtqFPr44oHt%2FKEmrZoEDgBIphxTM7cAKpK%2Fimg.png&quot; data-filename=&quot;open3.png&quot; data-origin-width=&quot;1920&quot; data-origin-height=&quot;1040&quot; data-ke-mobilestyle=&quot;widthContent&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;username, password email timezone등을 설정하고 &amp;gt;버튼을 누른다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-filename=&quot;open5_1.png&quot; data-origin-width=&quot;1920&quot; data-origin-height=&quot;1040&quot; data-ke-mobilestyle=&quot;widthContent&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bnQIOt/btqFPrxlfyb/zKSU8Wd4HZeK5DWvN9m9nK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bnQIOt/btqFPrxlfyb/zKSU8Wd4HZeK5DWvN9m9nK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bnQIOt/btqFPrxlfyb/zKSU8Wd4HZeK5DWvN9m9nK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbnQIOt%2FbtqFPrxlfyb%2FzKSU8Wd4HZeK5DWvN9m9nK%2Fimg.png&quot; data-filename=&quot;open5_1.png&quot; data-origin-width=&quot;1920&quot; data-origin-height=&quot;1040&quot; data-ke-mobilestyle=&quot;widthContent&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;username (최소 8자이상) - ******** &lt;br /&gt;userpass (대문자 1개 이상, 특수문자포함) - ********* &lt;br /&gt;Email - *******@*****.com&lt;/p&gt;
&lt;p&gt;User Time Zone - Asia-Seoul(선택하기) &lt;br /&gt;Group Name - ************** &lt;br /&gt;최소&amp;nbsp;입력값에&amp;nbsp;못미치면&amp;nbsp;빨간색&amp;nbsp;에러가&amp;nbsp;발생한다.&lt;/p&gt;
&lt;p&gt;설정 후 &amp;gt;버튼을 누른다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-filename=&quot;open7_1.png&quot; data-origin-width=&quot;1920&quot; data-origin-height=&quot;1040&quot; data-ke-mobilestyle=&quot;widthContent&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/miLxr/btqFPsJNiYm/yIkpr2SeqA5wbFAL4HKqm0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/miLxr/btqFPsJNiYm/yIkpr2SeqA5wbFAL4HKqm0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/miLxr/btqFPsJNiYm/yIkpr2SeqA5wbFAL4HKqm0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FmiLxr%2FbtqFPsJNiYm%2FyIkpr2SeqA5wbFAL4HKqm0%2Fimg.png&quot; data-filename=&quot;open7_1.png&quot; data-origin-width=&quot;1920&quot; data-origin-height=&quot;1040&quot; data-ke-mobilestyle=&quot;widthContent&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;Mail-Referer - ********@naver.com&lt;/p&gt;
&lt;p&gt;SMTP-Server&amp;nbsp;-&amp;nbsp;localhost &lt;br /&gt;SMTP-Server&amp;nbsp;Port&amp;nbsp;-&amp;nbsp;25 &lt;br /&gt;SMTP - Username - ********@naver.com&lt;/p&gt;
&lt;p&gt;SMTP&amp;nbsp;-Userpass&amp;nbsp;-&amp;nbsp;********* &lt;br /&gt;Language&amp;nbsp;-&amp;nbsp;&amp;nbsp;한국어&lt;/p&gt;
&lt;p&gt;설정 후 &amp;gt;버튼을 누른다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-origin-width=&quot;1920&quot; data-origin-height=&quot;1040&quot; data-filename=&quot;open8.png&quot; data-ke-mobilestyle=&quot;widthContent&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/NONO9/btqFOh3ecBD/k7Qvc3piNkPUenuAjrbbK0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/NONO9/btqFOh3ecBD/k7Qvc3piNkPUenuAjrbbK0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/NONO9/btqFOh3ecBD/k7Qvc3piNkPUenuAjrbbK0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FNONO9%2FbtqFOh3ecBD%2Fk7Qvc3piNkPUenuAjrbbK0%2Fimg.png&quot; data-origin-width=&quot;1920&quot; data-origin-height=&quot;1040&quot; data-filename=&quot;open8.png&quot; data-ke-mobilestyle=&quot;widthContent&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;&lt;span&gt;설치한 프로그램들의 경로 지정한다.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;ImageMagick Path = C:\ImageMagick-7.0.7-17-portable-Q16-x64&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;FFMPEG Path = C:\ffmpeg&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;SoX Path = C:\Program Files (x86)\sox-14-4-2&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;LibreOffice = C:\Program Files\LibreOffice&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;Check&lt;/span&gt;&lt;span&gt;를 눌렀을 때 에러가 발생하지 않으면 제대로 설정된 것이다.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;&amp;gt;버튼을 누른다.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-filename=&quot;open9.png&quot; data-origin-width=&quot;1920&quot; data-origin-height=&quot;1040&quot; data-ke-mobilestyle=&quot;widthContent&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/b2IDbV/btqFOMva9JF/TPKy6Bgk3QxiZ2cymN89a1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/b2IDbV/btqFOMva9JF/TPKy6Bgk3QxiZ2cymN89a1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/b2IDbV/btqFOMva9JF/TPKy6Bgk3QxiZ2cymN89a1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fb2IDbV%2FbtqFOMva9JF%2FTPKy6Bgk3QxiZ2cymN89a1%2Fimg.png&quot; data-filename=&quot;open9.png&quot; data-origin-width=&quot;1920&quot; data-origin-height=&quot;1040&quot; data-ke-mobilestyle=&quot;widthContent&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;&lt;span&gt;Finish&lt;/span&gt;&lt;span&gt;를 누르면 설정이 완료된다.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-filename=&quot;open10.png&quot; data-origin-width=&quot;1920&quot; data-origin-height=&quot;1040&quot; data-ke-mobilestyle=&quot;widthContent&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/tueav/btqFN17lBZP/Z1cf6O3XSOxhgzWk2UJ1eK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/tueav/btqFN17lBZP/Z1cf6O3XSOxhgzWk2UJ1eK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/tueav/btqFN17lBZP/Z1cf6O3XSOxhgzWk2UJ1eK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Ftueav%2FbtqFN17lBZP%2FZ1cf6O3XSOxhgzWk2UJ1eK%2Fimg.png&quot; data-filename=&quot;open10.png&quot; data-origin-width=&quot;1920&quot; data-origin-height=&quot;1040&quot; data-ke-mobilestyle=&quot;widthContent&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;&lt;span&gt;Finish&lt;/span&gt;&lt;span&gt;가 끝나면 해당 창으로 넘어간다.&lt;/span&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;span&gt;아무것도 누르지 말고 &lt;/span&gt;&lt;span&gt;openmeetings &lt;/span&gt;&lt;span&gt;서버를 재시작을 한다.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-filename=&quot;open종료.png&quot; data-origin-width=&quot;979&quot; data-origin-height=&quot;512&quot; data-ke-mobilestyle=&quot;widthContent&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bMynji/btqFOiulo4a/xB36tX2i4bhuKY4RqNWOi0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bMynji/btqFOiulo4a/xB36tX2i4bhuKY4RqNWOi0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bMynji/btqFOiulo4a/xB36tX2i4bhuKY4RqNWOi0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbMynji%2FbtqFOiulo4a%2FxB36tX2i4bhuKY4RqNWOi0%2Fimg.png&quot; data-filename=&quot;open종료.png&quot; data-origin-width=&quot;979&quot; data-origin-height=&quot;512&quot; data-ke-mobilestyle=&quot;widthContent&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;&lt;span&gt;아까 실행한 &lt;/span&gt;&lt;span&gt;red5.bat &lt;/span&gt;&lt;span&gt;프로그램을 열고 &lt;/span&gt;&lt;span&gt;Ctrl + C &lt;/span&gt;&lt;span&gt;입력 후 &lt;/span&gt;&lt;span&gt;&amp;lsquo;&lt;/span&gt;&lt;span&gt;일괄 작업을 끝내시겠습니까 &lt;/span&gt;&lt;span&gt;(Y/N)? &lt;/span&gt;&lt;span&gt;이 문구가 뜨면 &lt;/span&gt;&lt;span&gt;y &lt;/span&gt;&lt;span&gt;입력 후 &lt;/span&gt;&lt;span&gt;enter를 누른다. &lt;/span&gt;&lt;span&gt;그 후 다시 &lt;/span&gt;&lt;span&gt;red5.bat을&amp;nbsp;&lt;/span&gt;&lt;span&gt;실행한다.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;그리고 &lt;/span&gt;&lt;span&gt;enter the application&lt;/span&gt;&lt;span&gt;을 누르거나&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;주소창에 &lt;/span&gt;&lt;span&gt;http://localhost:5080/openmeetings&lt;/span&gt;&lt;span&gt;을 입력한다.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-filename=&quot;open11.png&quot; data-origin-width=&quot;1920&quot; data-origin-height=&quot;1040&quot; data-ke-mobilestyle=&quot;widthContent&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/QGOmD/btqFOiA3Pcg/VQgefbyljZbsiBIbUXKOWK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/QGOmD/btqFOiA3Pcg/VQgefbyljZbsiBIbUXKOWK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/QGOmD/btqFOiA3Pcg/VQgefbyljZbsiBIbUXKOWK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FQGOmD%2FbtqFOiA3Pcg%2FVQgefbyljZbsiBIbUXKOWK%2Fimg.png&quot; data-filename=&quot;open11.png&quot; data-origin-width=&quot;1920&quot; data-origin-height=&quot;1040&quot; data-ke-mobilestyle=&quot;widthContent&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;유저(설정한 username 또는 이메일주소)&lt;/p&gt;
&lt;p&gt;패스(password)를 입력하고 로긴을 눌러 login을 한다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-filename=&quot;open12.png&quot; data-origin-width=&quot;1920&quot; data-origin-height=&quot;1040&quot; data-ke-mobilestyle=&quot;widthContent&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cvJaeS/btqFOXccvCG/PikyBUVKyRxv4JBphs5D9K/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cvJaeS/btqFOXccvCG/PikyBUVKyRxv4JBphs5D9K/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cvJaeS/btqFOXccvCG/PikyBUVKyRxv4JBphs5D9K/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcvJaeS%2FbtqFOXccvCG%2FPikyBUVKyRxv4JBphs5D9K%2Fimg.png&quot; data-filename=&quot;open12.png&quot; data-origin-width=&quot;1920&quot; data-origin-height=&quot;1040&quot; data-ke-mobilestyle=&quot;widthContent&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;해당 화면으로 login 되면 openmeeting 환경설정 셋팅까지 완료가 되었다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;이제 화상회의를 할 room을 생성해보자&lt;/p&gt;
&lt;p&gt;1. calendar&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-filename=&quot;calender3.png&quot; data-origin-width=&quot;1920&quot; data-origin-height=&quot;1040&quot; data-ke-mobilestyle=&quot;widthContent&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bxmRg2/btqFQLIqdsM/KEQYx6qkYTuPHZOhHsC0x0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bxmRg2/btqFQLIqdsM/KEQYx6qkYTuPHZOhHsC0x0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bxmRg2/btqFQLIqdsM/KEQYx6qkYTuPHZOhHsC0x0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbxmRg2%2FbtqFQLIqdsM%2FKEQYx6qkYTuPHZOhHsC0x0%2Fimg.png&quot; data-filename=&quot;calender3.png&quot; data-origin-width=&quot;1920&quot; data-origin-height=&quot;1040&quot; data-ke-mobilestyle=&quot;widthContent&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;메뉴에 home - calendar를 누르면 해당 화면이 나온다.(new Event가 없어야 합니다! 이건 미리 생성해서 만들어져 있어요)&lt;/p&gt;
&lt;p&gt;회의를 열고자 하는 날짜를 클릭을 하면 아래와 같은 화면이 나온다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-filename=&quot;calender.png&quot; data-origin-width=&quot;1920&quot; data-origin-height=&quot;1040&quot; data-ke-mobilestyle=&quot;widthContent&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/b56BlI/btqFPs34fNz/gt8vCTJOly96ksVuUO487K/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/b56BlI/btqFPs34fNz/gt8vCTJOly96ksVuUO487K/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/b56BlI/btqFPs34fNz/gt8vCTJOly96ksVuUO487K/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fb56BlI%2FbtqFPs34fNz%2Fgt8vCTJOly96ksVuUO487K%2Fimg.png&quot; data-filename=&quot;calender.png&quot; data-origin-width=&quot;1920&quot; data-origin-height=&quot;1040&quot; data-ke-mobilestyle=&quot;widthContent&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;General 탭에서 시작일, 종료일 등등을 설정하고 Room 탭으로 이동한다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-filename=&quot;calender2.png&quot; data-origin-width=&quot;1920&quot; data-origin-height=&quot;1040&quot; data-ke-mobilestyle=&quot;widthContent&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/b1ba1J/btqFOWYHaQM/qD6h7I22OirNVqDfjYus11/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/b1ba1J/btqFOWYHaQM/qD6h7I22OirNVqDfjYus11/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/b1ba1J/btqFOWYHaQM/qD6h7I22OirNVqDfjYus11/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fb1ba1J%2FbtqFOWYHaQM%2FqD6h7I22OirNVqDfjYus11%2Fimg.png&quot; data-filename=&quot;calender2.png&quot; data-origin-width=&quot;1920&quot; data-origin-height=&quot;1040&quot; data-ke-mobilestyle=&quot;widthContent&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;Room type등을 설정하고 Advanced설정을 해도 되지만 일단은 Save를 눌러 방을 생성한다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-filename=&quot;calender3.png&quot; data-origin-width=&quot;1920&quot; data-origin-height=&quot;1040&quot; data-ke-mobilestyle=&quot;widthContent&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dAzMn4/btqFQLVXo3C/zV7LeuPTgy5kRnysuVe6Y0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dAzMn4/btqFQLVXo3C/zV7LeuPTgy5kRnysuVe6Y0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dAzMn4/btqFQLVXo3C/zV7LeuPTgy5kRnysuVe6Y0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdAzMn4%2FbtqFQLVXo3C%2FzV7LeuPTgy5kRnysuVe6Y0%2Fimg.png&quot; data-filename=&quot;calender3.png&quot; data-origin-width=&quot;1920&quot; data-origin-height=&quot;1040&quot; data-ke-mobilestyle=&quot;widthContent&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;해당 화면에 생성된 New event(general 탭에서 설정한 title)로 room이 생성 되었는지 확인이 가능하다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-filename=&quot;calender4.png&quot; data-origin-width=&quot;1920&quot; data-origin-height=&quot;1040&quot; data-ke-mobilestyle=&quot;widthContent&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/Aol61/btqFOYhP1Rk/k1QYnpw3YTPLIyhlSdnkjk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/Aol61/btqFOYhP1Rk/k1QYnpw3YTPLIyhlSdnkjk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/Aol61/btqFOYhP1Rk/k1QYnpw3YTPLIyhlSdnkjk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FAol61%2FbtqFOYhP1Rk%2Fk1QYnpw3YTPLIyhlSdnkjk%2Fimg.png&quot; data-filename=&quot;calender4.png&quot; data-origin-width=&quot;1920&quot; data-origin-height=&quot;1040&quot; data-ke-mobilestyle=&quot;widthContent&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;생성된 event를 누르면 해당 event의 상세정보를 확인할 수 있고, enter room을 통해 room에 입장할 수 있다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;2. &lt;span&gt;Conference rooms&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;Administration - Conference rooms 을 누른다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-filename=&quot;create room.png&quot; data-origin-width=&quot;1920&quot; data-origin-height=&quot;1040&quot; data-ke-mobilestyle=&quot;widthContent&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cgt7M3/btqFQyP5JWt/1Xaru32Y9d5Qi1uBmVYAW1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cgt7M3/btqFQyP5JWt/1Xaru32Y9d5Qi1uBmVYAW1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cgt7M3/btqFQyP5JWt/1Xaru32Y9d5Qi1uBmVYAW1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fcgt7M3%2FbtqFQyP5JWt%2F1Xaru32Y9d5Qi1uBmVYAW1%2Fimg.png&quot; data-filename=&quot;create room.png&quot; data-origin-width=&quot;1920&quot; data-origin-height=&quot;1040&quot; data-ke-mobilestyle=&quot;widthContent&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;우측에 생성할 room의 name, type등등을 설정한 뒤 save버튼을 누르면 room이 생성이 된다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;이후 Rooms - public room 을 누르면 public으로 설정한 room의 list가 보이고, 해당 룸을 선택하여 enter를 누르면 room에 입장 할 수 있다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-filename=&quot;roomlist.png&quot; data-origin-width=&quot;1920&quot; data-origin-height=&quot;1040&quot; data-ke-mobilestyle=&quot;widthContent&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/QAZ7t/btqFONt87YN/OjaEGgs2wKRQ9kgopCQ8X0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/QAZ7t/btqFONt87YN/OjaEGgs2wKRQ9kgopCQ8X0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/QAZ7t/btqFONt87YN/OjaEGgs2wKRQ9kgopCQ8X0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FQAZ7t%2FbtqFONt87YN%2FOjaEGgs2wKRQ9kgopCQ8X0%2Fimg.png&quot; data-filename=&quot;roomlist.png&quot; data-origin-width=&quot;1920&quot; data-origin-height=&quot;1040&quot; data-ke-mobilestyle=&quot;widthContent&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-filename=&quot;room1.png&quot; data-origin-width=&quot;1920&quot; data-origin-height=&quot;1040&quot; data-ke-mobilestyle=&quot;widthContent&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/Jo7uj/btqFQaIHUuz/K5lsi0C4y85GtbKTaCpGAk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/Jo7uj/btqFQaIHUuz/K5lsi0C4y85GtbKTaCpGAk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/Jo7uj/btqFQaIHUuz/K5lsi0C4y85GtbKTaCpGAk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FJo7uj%2FbtqFQaIHUuz%2FK5lsi0C4y85GtbKTaCpGAk%2Fimg.png&quot; data-filename=&quot;room1.png&quot; data-origin-width=&quot;1920&quot; data-origin-height=&quot;1040&quot; data-ke-mobilestyle=&quot;widthContent&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;room에 입장하면 파일과 화면등을 공유할 수 있고, cam의 옵션으로 마이크를 끄거나, 화면을 끄는등 화상회의에 기본 화상회의에 필요한 요소들이 동작을 한다.&lt;/p&gt;</description>
      <category>기타</category>
      <category>apache openmeetings</category>
      <category>openmeetings</category>
      <category>무료 화상회의</category>
      <category>아파치</category>
      <category>아파치 openmeetings</category>
      <category>아파치 오픈미팅</category>
      <category>웹화상회의</category>
      <category>화상회의</category>
      <author>IT스타터</author>
      <guid isPermaLink="true">https://tobepro.tistory.com/31</guid>
      <comments>https://tobepro.tistory.com/31#entry31comment</comments>
      <pubDate>Mon, 20 Jul 2020 15:53:05 +0900</pubDate>
    </item>
    <item>
      <title>아파치 오픈미팅(openmeetings) 무료 웹 화상 회의 - 1</title>
      <link>https://tobepro.tistory.com/30</link>
      <description>&lt;p&gt;코로나로 직접 대면이 껄끄러운 지금 화상 회의에 대해 알아보도록 하자.&lt;/p&gt;
&lt;p&gt;많은 화상 회의 프로그램이 있지만 그 중에서도 아파치에서 만든 웹 기반에 오픈미팅(oepnmeetings)을 설치해 보도록 하겠다.&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;https://openmeetings.apache.org/&quot;&gt;https://openmeetings.apache.org/&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1595214941475&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-og-type=&quot;website&quot; data-og-title=&quot;Apache OpenMeetings Project &amp;ndash; Home&quot; data-og-description=&quot;Openmeetings provides video conferencing, instant messaging, white board, collaborative document editing and other groupware tools. It uses API functions of Media Server for Remoting and Streaming (Red5 or Kurento). OpenMeetings is a project of the Apache,&quot; data-og-host=&quot;openmeetings.apache.org&quot; data-og-source-url=&quot;https://openmeetings.apache.org/&quot; data-og-url=&quot;https://openmeetings.apache.org/&quot; data-og-image=&quot;&quot;&gt;&lt;a href=&quot;https://openmeetings.apache.org/&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://openmeetings.apache.org/&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url();&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot;&gt;Apache OpenMeetings Project &amp;ndash; Home&lt;/p&gt;
&lt;p class=&quot;og-desc&quot;&gt;Openmeetings provides video conferencing, instant messaging, white board, collaborative document editing and other groupware tools. It uses API functions of Media Server for Remoting and Streaming (Red5 or Kurento). OpenMeetings is a project of the Apache,&lt;/p&gt;
&lt;p class=&quot;og-host&quot;&gt;openmeetings.apache.org&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p&gt;해당 홈페이지에서 다운로드 받을 수 있으며, installation - Tutorials 에서 설치방법을 볼 수 있는데 이를 토대로 설치를 진행하였다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;https://cwiki.apache.org/confluence/display/OPENMEETINGS/Tutorials+for+installing+OpenMeetings+and+Tools&quot;&gt;https://cwiki.apache.org/confluence/display/OPENMEETINGS/Tutorials+for+installing+OpenMeetings+and+Tools&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1595228026015&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-og-type=&quot;website&quot; data-og-title=&quot;Tutorials for installing OpenMeetings and Tools - Apache OpenMeetings - Apache Software Foundation&quot; data-og-description=&quot;페이지 Index 배너의 맨 끝으로 배너의 맨 처음으로 메타 데이터의 끝으로 건너뛰기 작성자 : Alvaro Bustos, 최근 변경 : Alvaro Bustos - 7월 09, 2020 메타 데이터의 시작으로 이동 Tutoriales en espa&amp;ntilde;ol relacionad&quot; data-og-host=&quot;cwiki.apache.org&quot; data-og-source-url=&quot;https://cwiki.apache.org/confluence/display/OPENMEETINGS/Tutorials+for+installing+OpenMeetings+and+Tools&quot; data-og-url=&quot;https://cwiki.apache.org/confluence/display/OPENMEETINGS/Tutorials+for+installing+OpenMeetings+and+Tools&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/br8H82/hyGQKmQx2S/tJ7YNGbelTuQwe28Q86DP1/img.png?width=640&amp;amp;height=480&amp;amp;face=0_0_640_480,https://scrap.kakaocdn.net/dn/bcPbsL/hyGO4HgpAz/0AtVyNiUezzmtRzPkFAm10/img.png?width=272&amp;amp;height=300&amp;amp;face=0_0_272_300&quot;&gt;&lt;a href=&quot;https://cwiki.apache.org/confluence/display/OPENMEETINGS/Tutorials+for+installing+OpenMeetings+and+Tools&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://cwiki.apache.org/confluence/display/OPENMEETINGS/Tutorials+for+installing+OpenMeetings+and+Tools&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/br8H82/hyGQKmQx2S/tJ7YNGbelTuQwe28Q86DP1/img.png?width=640&amp;amp;height=480&amp;amp;face=0_0_640_480,https://scrap.kakaocdn.net/dn/bcPbsL/hyGO4HgpAz/0AtVyNiUezzmtRzPkFAm10/img.png?width=272&amp;amp;height=300&amp;amp;face=0_0_272_300');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot;&gt;Tutorials for installing OpenMeetings and Tools - Apache OpenMeetings - Apache Software Foundation&lt;/p&gt;
&lt;p class=&quot;og-desc&quot;&gt;페이지 Index 배너의 맨 끝으로 배너의 맨 처음으로 메타 데이터의 끝으로 건너뛰기 작성자 : Alvaro Bustos, 최근 변경 : Alvaro Bustos - 7월 09, 2020 메타 데이터의 시작으로 이동 Tutoriales en espa&amp;ntilde;ol relacionad&lt;/p&gt;
&lt;p class=&quot;og-host&quot;&gt;cwiki.apache.org&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p&gt;해당 사이트에서 본인의 os를 선택하여 메뉴얼을 보고 진행하기를 권장한다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;오픈미팅 프로그램에서 서로의 화면을 보고, 파일 등을 공유하기 위해서 몇가지 프로그램이 먼저 설치가 되어 있어야 한다.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;1.Ghostscript, 7-zip&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-filename=&quot;Ghostscript1.png&quot; data-origin-width=&quot;1600&quot; data-origin-height=&quot;860&quot; data-ke-mobilestyle=&quot;widthContent&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/mhfGR/btqFOLQb9aN/RWNbyDTHKSDqGAolPIP881/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/mhfGR/btqFOLQb9aN/RWNbyDTHKSDqGAolPIP881/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/mhfGR/btqFOLQb9aN/RWNbyDTHKSDqGAolPIP881/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FmhfGR%2FbtqFOLQb9aN%2FRWNbyDTHKSDqGAolPIP881%2Fimg.png&quot; data-filename=&quot;Ghostscript1.png&quot; data-origin-width=&quot;1600&quot; data-origin-height=&quot;860&quot; data-ke-mobilestyle=&quot;widthContent&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;고스트스크립트(Ghostscript)는 어도비(Adobe Systems)의 포스트스크립트(PostScript) 및 PDF ( Portable Document Format ) 페이지 기술 언어에 대한 인터프리터를 기반으로 한 소프트웨어이다. 주요 목적은 포스트스크립트(PostScript)와 PDF 파일에서 변환 및 완전한 호환을 가능하게 하는 페이지 기술 언어, 파일의 래스터화 또는 렌더링, 문서 페이지의 표시 또는 인쇄이다 - 위키백과&lt;/p&gt;
&lt;p&gt;7-zip은 알집과 같은 파일 압축 프로그램이다.&lt;/p&gt;
&lt;p&gt;각각의 링크를 클릭하면 다운로드가 진행이 된다.&lt;/p&gt;
&lt;p&gt;Ghostscript같은 경우 해당 링크로 접속하면 에러가 발생해서 구글링을 통해 다운로드 받았다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;2. JDK&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-filename=&quot;jdk1.png&quot; data-origin-width=&quot;1600&quot; data-origin-height=&quot;860&quot; data-ke-mobilestyle=&quot;widthContent&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/n7CuZ/btqFN3KweCy/rXQyvZWOnVIytLlgNqh5Wk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/n7CuZ/btqFN3KweCy/rXQyvZWOnVIytLlgNqh5Wk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/n7CuZ/btqFN3KweCy/rXQyvZWOnVIytLlgNqh5Wk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fn7CuZ%2FbtqFN3KweCy%2FrXQyvZWOnVIytLlgNqh5Wk%2Fimg.png&quot; data-filename=&quot;jdk1.png&quot; data-origin-width=&quot;1600&quot; data-origin-height=&quot;860&quot; data-ke-mobilestyle=&quot;widthContent&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;JDK는 이미 PC에 다운로드 되어 있어서 따로 다운로드 받지 않았다.&lt;/p&gt;
&lt;p&gt;아 그리고 계속 진행하면서 사진을 보면 알겠지만, Please, install it by default으로 기본 설정을 바꾸지 말고 다운로드 해달라는 문구가 자주 나온다. 이 문구대로 특정한 상황이 아닌이상 기본 설정으로 다운로드 받기로 하자.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;3.LibreOffice&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-filename=&quot;LibreOffice.png&quot; data-origin-width=&quot;1600&quot; data-origin-height=&quot;860&quot; data-ke-mobilestyle=&quot;widthContent&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/eg7OVP/btqFNQdDH9d/yCnmK9YCtLH1FvIQf9RZs1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/eg7OVP/btqFNQdDH9d/yCnmK9YCtLH1FvIQf9RZs1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/eg7OVP/btqFNQdDH9d/yCnmK9YCtLH1FvIQf9RZs1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Feg7OVP%2FbtqFNQdDH9d%2FyCnmK9YCtLH1FvIQf9RZs1%2Fimg.png&quot; data-filename=&quot;LibreOffice.png&quot; data-origin-width=&quot;1600&quot; data-origin-height=&quot;860&quot; data-ke-mobilestyle=&quot;widthContent&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;LibreOffice는 Micro Office 프로그램(엑셀, ppt 등)과 호환되는 오피스 프로그램이다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;4.imageMagick, sox&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-filename=&quot;imageMagick and sox.png&quot; data-origin-width=&quot;1600&quot; data-origin-height=&quot;860&quot; data-ke-mobilestyle=&quot;widthContent&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/buTtgs/btqFPsbGyIw/j18jhVco4eKfgYJIsDLfGk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/buTtgs/btqFPsbGyIw/j18jhVco4eKfgYJIsDLfGk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/buTtgs/btqFPsbGyIw/j18jhVco4eKfgYJIsDLfGk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbuTtgs%2FbtqFPsbGyIw%2Fj18jhVco4eKfgYJIsDLfGk%2Fimg.png&quot; data-filename=&quot;imageMagick and sox.png&quot; data-origin-width=&quot;1600&quot; data-origin-height=&quot;860&quot; data-ke-mobilestyle=&quot;widthContent&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;color: #333333;&quot;&gt;imageMagick는&lt;/span&gt; png, jpg, gif 등의 이미지 파일을 활용하기 위한 프로그램이다.&lt;/p&gt;
&lt;p&gt;해당 링크로 다운로드 후 압축을 풀고 C:\ImageMagick-7.0.7-17-portable-Q16-x64로 이동한다.&lt;/p&gt;
&lt;p&gt;sox는 영상 소리 관련한 프로그램이다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;5. Adobe Flash&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-origin-width=&quot;1600&quot; data-origin-height=&quot;860&quot; data-filename=&quot;adobe flash.png&quot; data-ke-mobilestyle=&quot;widthContent&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/KcPFu/btqFNO74BjH/Or28nDRm7tkSdjzTH7BsC1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/KcPFu/btqFNO74BjH/Or28nDRm7tkSdjzTH7BsC1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/KcPFu/btqFNO74BjH/Or28nDRm7tkSdjzTH7BsC1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FKcPFu%2FbtqFNO74BjH%2FOr28nDRm7tkSdjzTH7BsC1%2Fimg.png&quot; data-origin-width=&quot;1600&quot; data-origin-height=&quot;860&quot; data-filename=&quot;adobe flash.png&quot; data-ke-mobilestyle=&quot;widthContent&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;cam 재생을 위한 Adobe Flash프로그램이다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;6.FFmpeg&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-filename=&quot;ffmpeg.png&quot; data-origin-width=&quot;1600&quot; data-origin-height=&quot;860&quot; data-ke-mobilestyle=&quot;widthContent&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dXiY0t/btqFPrw6Ozz/lVL3YEBWy5UcFislIwWo21/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dXiY0t/btqFPrw6Ozz/lVL3YEBWy5UcFislIwWo21/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dXiY0t/btqFPrw6Ozz/lVL3YEBWy5UcFislIwWo21/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdXiY0t%2FbtqFPrw6Ozz%2FlVL3YEBWy5UcFislIwWo21%2Fimg.png&quot; data-filename=&quot;ffmpeg.png&quot; data-origin-width=&quot;1600&quot; data-origin-height=&quot;860&quot; data-ke-mobilestyle=&quot;widthContent&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;&lt;span&gt;영상&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;녹화&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;재생&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;변환&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;스트림 등&lt;/span&gt;&lt;span&gt;) &lt;/span&gt;&lt;span&gt;관련한 프로그램이다.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;먼저 C&lt;/span&gt;&lt;span&gt;밑에 &lt;/span&gt;&lt;span&gt;ffb &lt;/span&gt;&lt;span&gt;폴더 생성(&lt;span style=&quot;color: #333333;&quot;&gt;C:\ffb)을 한다. &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;다운받고 압축 해제 후 &lt;/span&gt;&lt;span&gt;MSYS &lt;/span&gt;&lt;span&gt;폴더를 &lt;/span&gt;&lt;span&gt;ffb &lt;/span&gt;&lt;span&gt;밑으로 이동 후 &lt;/span&gt;&lt;span&gt;msys.bat &lt;/span&gt;&lt;span&gt;실행한다.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-filename=&quot;ffmpeg2.png&quot; data-origin-width=&quot;1600&quot; data-origin-height=&quot;860&quot; data-ke-mobilestyle=&quot;widthContent&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/b5b7xx/btqFPrqlE2v/DZAXp8kxW7o1Vn6wFrSRNk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/b5b7xx/btqFPrqlE2v/DZAXp8kxW7o1Vn6wFrSRNk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/b5b7xx/btqFPrqlE2v/DZAXp8kxW7o1Vn6wFrSRNk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fb5b7xx%2FbtqFPrqlE2v%2FDZAXp8kxW7o1Vn6wFrSRNk%2Fimg.png&quot; data-filename=&quot;ffmpeg2.png&quot; data-origin-width=&quot;1600&quot; data-origin-height=&quot;860&quot; data-ke-mobilestyle=&quot;widthContent&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;msys.bat을 실행하면 cmd같은 창이 하나 뜬다.&lt;/p&gt;
&lt;p&gt;그 후 &lt;span&gt;4&lt;/span&gt;&lt;span&gt;개의 파일을 링크를 통해 다운로드하고 C&lt;/span&gt;&lt;span&gt;:\ffb\MSYS\home\PCuser&lt;/span&gt;&lt;span&gt;명&lt;/span&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;span&gt;아래에 이동&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;없으면 폴더 생성&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;msys.bat 프로그램&lt;/span&gt;&lt;span&gt;에 아래 명령어 입력&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;==================================Lame===============================&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;tar xvfz lame-3.100.tar.gz&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;cd ~/lame-3.100&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;./configure --prefix=/usr/local/x86_64-w64-mingw32 --host=x86_64-w64-mingw32 --enable-static --disable-shared --disable-decoder --enable-nasm&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;make clean &amp;amp;&amp;amp; make&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;make install&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;cd ~&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-filename=&quot;bat1_1.png&quot; data-origin-width=&quot;979&quot; data-origin-height=&quot;512&quot; data-ke-mobilestyle=&quot;widthContent&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/ZnOJU/btqFQKijNCm/ZHJKvmkgQbSzUKOTemYPA0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/ZnOJU/btqFQKijNCm/ZHJKvmkgQbSzUKOTemYPA0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/ZnOJU/btqFQKijNCm/ZHJKvmkgQbSzUKOTemYPA0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FZnOJU%2FbtqFQKijNCm%2FZHJKvmkgQbSzUKOTemYPA0%2Fimg.png&quot; data-filename=&quot;bat1_1.png&quot; data-origin-width=&quot;979&quot; data-origin-height=&quot;512&quot; data-ke-mobilestyle=&quot;widthContent&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;color: #333333;&quot;&gt;tar xvfz lame-3.100.tar.gz&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-filename=&quot;bat2_1.png&quot; data-origin-width=&quot;979&quot; data-origin-height=&quot;512&quot; data-ke-mobilestyle=&quot;widthContent&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/nJB9a/btqFN3KNfB2/my7dnHzm60WFFgUgAdP7Sk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/nJB9a/btqFN3KNfB2/my7dnHzm60WFFgUgAdP7Sk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/nJB9a/btqFN3KNfB2/my7dnHzm60WFFgUgAdP7Sk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FnJB9a%2FbtqFN3KNfB2%2Fmy7dnHzm60WFFgUgAdP7Sk%2Fimg.png&quot; data-filename=&quot;bat2_1.png&quot; data-origin-width=&quot;979&quot; data-origin-height=&quot;512&quot; data-ke-mobilestyle=&quot;widthContent&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-filename=&quot;bat3_1.png&quot; data-origin-width=&quot;979&quot; data-origin-height=&quot;512&quot; data-ke-mobilestyle=&quot;widthContent&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/Sh749/btqFQyvE1Ef/4MegRNERGk1Em9Lh0jwY3k/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/Sh749/btqFQyvE1Ef/4MegRNERGk1Em9Lh0jwY3k/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/Sh749/btqFQyvE1Ef/4MegRNERGk1Em9Lh0jwY3k/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FSh749%2FbtqFQyvE1Ef%2F4MegRNERGk1Em9Lh0jwY3k%2Fimg.png&quot; data-filename=&quot;bat3_1.png&quot; data-origin-width=&quot;979&quot; data-origin-height=&quot;512&quot; data-ke-mobilestyle=&quot;widthContent&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;color: #333333;&quot;&gt;cd ~/lame-3.100&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;color: #333333;&quot;&gt;&lt;span style=&quot;color: #333333;&quot;&gt;./configure --prefix=/usr/local/x86_64-w64-mingw32 --host=x86_64-w64-mingw32 --enable-static --disable-shared --disable-decoder --enable-nasm&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-filename=&quot;bat4_1.png&quot; data-origin-width=&quot;979&quot; data-origin-height=&quot;512&quot; data-ke-mobilestyle=&quot;widthContent&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/Wd2QX/btqFOi8QEOM/XrxD8N5KUSvH6K6vTpG9mk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/Wd2QX/btqFOi8QEOM/XrxD8N5KUSvH6K6vTpG9mk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/Wd2QX/btqFOi8QEOM/XrxD8N5KUSvH6K6vTpG9mk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FWd2QX%2FbtqFOi8QEOM%2FXrxD8N5KUSvH6K6vTpG9mk%2Fimg.png&quot; data-filename=&quot;bat4_1.png&quot; data-origin-width=&quot;979&quot; data-origin-height=&quot;512&quot; data-ke-mobilestyle=&quot;widthContent&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-filename=&quot;bat5_1.png&quot; data-origin-width=&quot;979&quot; data-origin-height=&quot;512&quot; data-ke-mobilestyle=&quot;widthContent&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/kGAjN/btqFQyh681H/pVVYiWCesxhDzYV7wp0lyK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/kGAjN/btqFQyh681H/pVVYiWCesxhDzYV7wp0lyK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/kGAjN/btqFQyh681H/pVVYiWCesxhDzYV7wp0lyK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FkGAjN%2FbtqFQyh681H%2FpVVYiWCesxhDzYV7wp0lyK%2Fimg.png&quot; data-filename=&quot;bat5_1.png&quot; data-origin-width=&quot;979&quot; data-origin-height=&quot;512&quot; data-ke-mobilestyle=&quot;widthContent&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;color: #333333;&quot;&gt;make clean &amp;amp;&amp;amp; make&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-filename=&quot;bat6_1.png&quot; data-origin-width=&quot;979&quot; data-origin-height=&quot;512&quot; data-ke-mobilestyle=&quot;widthContent&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/TaOB6/btqFPH7GG0a/p5CFnQFuZZyJYQOd8LRus1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/TaOB6/btqFPH7GG0a/p5CFnQFuZZyJYQOd8LRus1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/TaOB6/btqFPH7GG0a/p5CFnQFuZZyJYQOd8LRus1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FTaOB6%2FbtqFPH7GG0a%2Fp5CFnQFuZZyJYQOd8LRus1%2Fimg.png&quot; data-filename=&quot;bat6_1.png&quot; data-origin-width=&quot;979&quot; data-origin-height=&quot;512&quot; data-ke-mobilestyle=&quot;widthContent&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-filename=&quot;bat7_1.png&quot; data-origin-width=&quot;979&quot; data-origin-height=&quot;512&quot; data-ke-mobilestyle=&quot;widthContent&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bkQgPF/btqFQaV5vGM/hjXkOgUwIkkNFUplLUcxF1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bkQgPF/btqFQaV5vGM/hjXkOgUwIkkNFUplLUcxF1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bkQgPF/btqFQaV5vGM/hjXkOgUwIkkNFUplLUcxF1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbkQgPF%2FbtqFQaV5vGM%2FhjXkOgUwIkkNFUplLUcxF1%2Fimg.png&quot; data-filename=&quot;bat7_1.png&quot; data-origin-width=&quot;979&quot; data-origin-height=&quot;512&quot; data-ke-mobilestyle=&quot;widthContent&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;&lt;span&gt;make install&lt;/span&gt;&lt;span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-filename=&quot;bat8_1.png&quot; data-origin-width=&quot;979&quot; data-origin-height=&quot;512&quot; data-ke-mobilestyle=&quot;widthContent&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bETTOa/btqFOigFZfo/JyYst3CoO1kvy9k3dVStRk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bETTOa/btqFOigFZfo/JyYst3CoO1kvy9k3dVStRk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bETTOa/btqFOigFZfo/JyYst3CoO1kvy9k3dVStRk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbETTOa%2FbtqFOigFZfo%2FJyYst3CoO1kvy9k3dVStRk%2Fimg.png&quot; data-filename=&quot;bat8_1.png&quot; data-origin-width=&quot;979&quot; data-origin-height=&quot;512&quot; data-ke-mobilestyle=&quot;widthContent&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-filename=&quot;bat9_1.png&quot; data-origin-width=&quot;979&quot; data-origin-height=&quot;512&quot; data-ke-mobilestyle=&quot;widthContent&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/5NAhq/btqFQaV5yMb/pq5386PciOBwTmUPNfJz41/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/5NAhq/btqFQaV5yMb/pq5386PciOBwTmUPNfJz41/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/5NAhq/btqFQaV5yMb/pq5386PciOBwTmUPNfJz41/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F5NAhq%2FbtqFQaV5yMb%2Fpq5386PciOBwTmUPNfJz41%2Fimg.png&quot; data-filename=&quot;bat9_1.png&quot; data-origin-width=&quot;979&quot; data-origin-height=&quot;512&quot; data-ke-mobilestyle=&quot;widthContent&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;&lt;span&gt;cd ~&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;아까 다운받은 총 4개의 파일에 대해 여기까지의 명령어 수행을 반복하여 해준다.&lt;/span&gt;&lt;span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;==================================Fdk-aac===============================&lt;/p&gt;
&lt;p&gt;&lt;span&gt;tar xvfz fdk-aac-0.1.6.tar.gz&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;cd ~/fdk-aac-0.1.6&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;./configure&amp;nbsp;--prefix=/usr/local/x86_64-w64-mingw32&amp;nbsp;--host=x86_64-w64-mingw32&amp;nbsp;--enable-shared=no &lt;br /&gt;make&amp;nbsp;clean&amp;nbsp;&amp;amp;&amp;amp;&amp;nbsp;make&lt;span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;make install&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;cd ~&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;==================================X-264===============================&lt;/p&gt;
&lt;p&gt;tar&amp;nbsp;xvjf x264-snapshot-20180613-2245.tar.bz2&lt;/p&gt;
&lt;p&gt;cd&amp;nbsp;~/x264-snapshot-20180613-2245 &lt;br /&gt;./configure&amp;nbsp;--prefix=/usr/local/x86_64-w64-mingw32&amp;nbsp;--cross-prefix=x86_64-w64-mingw32-&amp;nbsp;--host=x86_64-w64-mingw32&amp;nbsp;--enable-static&amp;nbsp;--bit-depth=8&amp;nbsp;--enable-win32thread &lt;br /&gt;make&amp;nbsp;clean&amp;nbsp;&amp;amp;&amp;amp;&amp;nbsp;make &lt;br /&gt;make&amp;nbsp;install &lt;br /&gt;cd&amp;nbsp;~&lt;/p&gt;
&lt;p&gt;==================================FFmpeg===============================&lt;/p&gt;
&lt;p&gt;tar xvjf ffmpeg-4.0.tar.bz2&lt;/p&gt;
&lt;p&gt;cd&amp;nbsp;~/ffmpeg-4.0 &lt;br /&gt;CPPFLAGS=&quot;$CPPFLAGS&amp;nbsp;-I/usr/local/x86_64-w64-mingw32/include&quot;&amp;nbsp;./configure&amp;nbsp;--extra-ldflags='-L/usr/local/x86_64-w64-mingw32/lib'&amp;nbsp;--prefix=/usr/local/x86_64-w64-mingw32&amp;nbsp;--cross-prefix=x86_64-w64-mingw32-&amp;nbsp;--target-os=mingw32&amp;nbsp;--enable-w32threads&amp;nbsp;--arch=x86_64&amp;nbsp;--enable-runtime-cpudetect&amp;nbsp;--disable-debug&amp;nbsp;--enable-static&amp;nbsp;--disable-shared&amp;nbsp;--disable-ffplay&amp;nbsp;--enable-gpl&amp;nbsp;--enable-version3&amp;nbsp;--enable-nonfree&amp;nbsp;--enable-libmp3lame&amp;nbsp;--enable-libfdk-aac&amp;nbsp;--enable-libx264 &lt;br /&gt;※※※※※※ffmpeg같은 경우 위 명령어 입력 하여 Enter를 누르면 멈춘 것처럼 보이지만 컴파일 중이므로 다른 키 입력하지 말고 기다리기※※※※※※※※※※※※※※※ &lt;br /&gt;make&amp;nbsp;clean&amp;nbsp;&amp;amp;&amp;amp;&amp;nbsp;make &lt;br /&gt;make&amp;nbsp;install &lt;br /&gt;cd&amp;nbsp;~&lt;/p&gt;
&lt;p&gt;컴파일이&amp;nbsp;끝나면&amp;nbsp;C:\ffb\MSYS\local\x86_64-w64-mingw32\bin&amp;nbsp;폴더에&lt;/p&gt;
&lt;p&gt;ffmpeg.exe, ffprobe.exe, lame.exe, x264.exe&lt;/p&gt;
&lt;p&gt;이렇게 총 4개의 파일이 생성된다. C:\ffmpeg 폴더를 생성 후 이 폴더로 이동시킨다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;7. MariaDB(mysql)&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-filename=&quot;mariadb.png&quot; data-origin-width=&quot;1600&quot; data-origin-height=&quot;860&quot; data-ke-mobilestyle=&quot;widthContent&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/Jj4hM/btqFOi8SbKi/vV7Q1LhwQm5NcFrGVK5FXK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/Jj4hM/btqFOi8SbKi/vV7Q1LhwQm5NcFrGVK5FXK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/Jj4hM/btqFOi8SbKi/vV7Q1LhwQm5NcFrGVK5FXK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FJj4hM%2FbtqFOi8SbKi%2FvV7Q1LhwQm5NcFrGVK5FXK%2Fimg.png&quot; data-filename=&quot;mariadb.png&quot; data-origin-width=&quot;1600&quot; data-origin-height=&quot;860&quot; data-ke-mobilestyle=&quot;widthContent&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;data 서버를 위한 MariaDB를 다운로드 한다.&lt;/p&gt;
&lt;p&gt;이 후 openmeeting 을 셋팅할 때 MariaDB의 root password등을 설정해야하니 까먹지 말고 기억할 것!&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-filename=&quot;maradb2.png&quot; data-origin-width=&quot;1600&quot; data-origin-height=&quot;860&quot; data-ke-mobilestyle=&quot;widthContent&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/eevBm6/btqFNQdW1OP/HEl20oLT9ezcqHG1KQkdWk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/eevBm6/btqFNQdW1OP/HEl20oLT9ezcqHG1KQkdWk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/eevBm6/btqFNQdW1OP/HEl20oLT9ezcqHG1KQkdWk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FeevBm6%2FbtqFNQdW1OP%2FHEl20oLT9ezcqHG1KQkdWk%2Fimg.png&quot; data-filename=&quot;maradb2.png&quot; data-origin-width=&quot;1600&quot; data-origin-height=&quot;860&quot; data-ke-mobilestyle=&quot;widthContent&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;설치 후 시작메뉴 - MaraDB 10.2 (x64)폴더 - Command Prompt(MariaDB 10.2)를 실행하여 터미널을 열고&lt;/p&gt;
&lt;p&gt;mysql -u root -p&lt;/p&gt;
&lt;p&gt;명령어를 입력하여 MariaDB 실행&lt;/p&gt;
&lt;p&gt;MariaDB&amp;nbsp;설치&amp;nbsp;시&amp;nbsp;입력했던&amp;nbsp;root계정의&amp;nbsp;password를&amp;nbsp;입력하면&amp;nbsp;root계정으로&amp;nbsp;로그인 &lt;br /&gt;이 후 명령어를 입력하여 사용할 Database 생성&lt;/p&gt;
&lt;p&gt;CREATE&amp;nbsp;DATABASE&amp;nbsp;open4010&amp;nbsp;DEFAULT&amp;nbsp;CHARACTER&amp;nbsp;SET&amp;nbsp;'utf8);&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-filename=&quot;maradb3.png&quot; data-origin-width=&quot;1600&quot; data-origin-height=&quot;860&quot; data-ke-mobilestyle=&quot;widthContent&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dXuvGN/btqFQyWMoYh/ECyDRK42W8KlRSUSRIFIs1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dXuvGN/btqFQyWMoYh/ECyDRK42W8KlRSUSRIFIs1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dXuvGN/btqFQyWMoYh/ECyDRK42W8KlRSUSRIFIs1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdXuvGN%2FbtqFQyWMoYh%2FECyDRK42W8KlRSUSRIFIs1%2Fimg.png&quot; data-filename=&quot;maradb3.png&quot; data-origin-width=&quot;1600&quot; data-origin-height=&quot;860&quot; data-ke-mobilestyle=&quot;widthContent&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;&lt;span&gt;생성한 &lt;/span&gt;&lt;span&gt;database&lt;/span&gt;&lt;span&gt;에 웹으로 접근 가능하도록 권한 부여&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;GRANT ALL PRIVILEGES open4010.* TO 'hola'@'localhost' IDENTIFIED BY '1234' WITH GRANT OPTION;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;그리고 &lt;span&gt;JDK &lt;/span&gt;&lt;span&gt;와 &lt;/span&gt;&lt;span&gt;MariaDB &lt;/span&gt;&lt;span&gt;환경변수가 제대로 설정되었는지 확인한다.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;&lt;span&gt;&lt;a href=&quot;https://tobepro.tistory.com/31?category=410332&quot;&gt;https://tobepro.tistory.com/31?category=410332&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1595228132615&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-og-type=&quot;article&quot; data-og-title=&quot;아파치 오픈미팅(openmeetings) 무료 웹 화상 회의 - 2&quot; data-og-description=&quot;https://tobepro.tistory.com/30 아파치 오픈미팅(openmeetings) 무료 웹 화상 회의 - 1 코로나로 직접 대면이 껄끄러운 지금 화상 회의에 대해 알아보도록 하자.(사실 회사에서 시켜서 하는거ㅎㅎ) 많은 화상 &quot; data-og-host=&quot;tobepro.tistory.com&quot; data-og-source-url=&quot;https://tobepro.tistory.com/31?category=410332&quot; data-og-url=&quot;https://tobepro.tistory.com/31&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/ezySL/hyGQRzwdnn/qcjVQSaXWhks42LCZb0Psk/img.png?width=800&amp;amp;height=381&amp;amp;face=0_0_800_381,https://scrap.kakaocdn.net/dn/GDjnv/hyGO6d0N2H/BjAYJtX91DTwuUIk2GOcLk/img.png?width=800&amp;amp;height=381&amp;amp;face=0_0_800_381,https://scrap.kakaocdn.net/dn/bj5E27/hyGO2insy1/jG5WpZ1fUFy5gJu95nOa81/img.png?width=1920&amp;amp;height=1040&amp;amp;face=0_0_1920_1040&quot;&gt;&lt;a href=&quot;https://tobepro.tistory.com/31?category=410332&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://tobepro.tistory.com/31?category=410332&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/ezySL/hyGQRzwdnn/qcjVQSaXWhks42LCZb0Psk/img.png?width=800&amp;amp;height=381&amp;amp;face=0_0_800_381,https://scrap.kakaocdn.net/dn/GDjnv/hyGO6d0N2H/BjAYJtX91DTwuUIk2GOcLk/img.png?width=800&amp;amp;height=381&amp;amp;face=0_0_800_381,https://scrap.kakaocdn.net/dn/bj5E27/hyGO2insy1/jG5WpZ1fUFy5gJu95nOa81/img.png?width=1920&amp;amp;height=1040&amp;amp;face=0_0_1920_1040');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot;&gt;아파치 오픈미팅(openmeetings) 무료 웹 화상 회의 - 2&lt;/p&gt;
&lt;p class=&quot;og-desc&quot;&gt;https://tobepro.tistory.com/30 아파치 오픈미팅(openmeetings) 무료 웹 화상 회의 - 1 코로나로 직접 대면이 껄끄러운 지금 화상 회의에 대해 알아보도록 하자.(사실 회사에서 시켜서 하는거ㅎㅎ) 많은 화상&lt;/p&gt;
&lt;p class=&quot;og-host&quot;&gt;tobepro.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p&gt;에 이어서 계속...&lt;/p&gt;</description>
      <category>기타</category>
      <category>apache openmeetings</category>
      <category>openmeetings</category>
      <category>무료화상회의</category>
      <category>아파치 openmeetings</category>
      <category>아파치 오픈미팅</category>
      <category>오픈미팅</category>
      <category>웹화상회의</category>
      <category>화상회의</category>
      <author>IT스타터</author>
      <guid isPermaLink="true">https://tobepro.tistory.com/30</guid>
      <comments>https://tobepro.tistory.com/30#entry30comment</comments>
      <pubDate>Mon, 20 Jul 2020 14:44:07 +0900</pubDate>
    </item>
    <item>
      <title>톰캣 로그 확인하기</title>
      <link>https://tobepro.tistory.com/29</link>
      <description>&lt;p&gt;리눅스 서버에서 tail -f /usr/local/tomcat/logs/catalina.out 를 입력하면 실시간으로 톰캣 로그 확인 가능&lt;/p&gt;</description>
      <category>WAS/tomcat</category>
      <author>IT스타터</author>
      <guid isPermaLink="true">https://tobepro.tistory.com/29</guid>
      <comments>https://tobepro.tistory.com/29#entry29comment</comments>
      <pubDate>Tue, 30 Jun 2020 17:21:35 +0900</pubDate>
    </item>
  </channel>
</rss>