๊ธฐ์ ๋ฐ VA
ํ์ดํ์คํฌ๋ฆฝํธ
๋ค๋ฅธ ์๊ฐ๋์์ ๋ฉ์์ง๋ฅผ ๋ณด๋ผ ๋ localTimezone์ ๋งค๋ฒ ๋ก์ปฌ ์๋ฒ ์๊ฐ๋๋ฅผ ๋ฎ์ด์ฐ๊ณ ์ฌ์ฉ์์ ์๊ฐ๋๋ฅผ ์๊ฒ ๋ฉ๋๋ค.
์๊ฐ๋์ ํด๋ผ์ด์ธํธ์์ ๋ฉ์์ง๋ฅผ ๋ณด๋ด๊ณ ํด๋ผ์ด์ธํธ์ ๋ค๋ฅธ ์๊ฐ๋์์ ๋ฉ์์ง๋ฅผ ๋ฐ์ผ์ญ์์ค.
์ ์ด๋ ์ปจํ ์คํธ์์ ์ฌ์ฉ์ ์๊ฐ๋๊ฐ ์์ด์ผ ํฉ๋๋ค.
์ด๊ฒ์ BotFrameworkAdapter
, processActivity
๋ฉ์๋ ๋ฐ parseRequest
ํจ์์์ ๋ฐ์ํฉ๋๋ค.
if (typeof activity.localTimestamp === 'string') { activity.localTimestamp = new Date(activity.localTimestamp); }
์๋ ํ์ธ์ @tommyJimmy87์ ๋๋ค! ๋ฌธ์ ๋ฅผ ์ ๊ณ ํด ์ฃผ์ ์ ๊ฐ์ฌํฉ๋๋ค.
๋ฌธ์ ๋ฅผ ์ฌํํ์ผ๋ฉฐ ์ด๋ฅผ ์ํํ๊ธฐ ์ํด ์ํํ ์ฌํ ๋จ๊ณ๋ฅผ ํ์ธํ๊ณ ์ ํฉ๋๋ค. ๋ํ ๊ตฌํ์ ๋น๊ตํ๊ณ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํ ๋ค์ ๋จ๊ณ๋ฅผ ์ฐพ๊ธฐ ์ํด C# ๋ด์ ์ฌ์ฉํ์ฌ ๋ฌธ์ ๋ฅผ ๊ณ์ ์ฌํํ ๊ฒ์ ๋๋ค.
TypeScript ๊ฐ์ ๋์ฐ๋ฏธ ์ํ ์ฌ์ฉ
npm install
์ข
์์ฑ์ ์ค์นํ์ญ์์ค.npm run build
์๋ฃจ์
์ปดํ์ผpwsh.exe -File deployment\scripts\deploy.ps1 -name "<BOT_NAME>" -location "<LOCATION>" -appId "<APP_ID>" -appPassword "<APP_PASSWORD>" -luisAuthoringKey "<LUIS_AUTHORING_KEY>" -luisAuthoringRegion "<LUIS_AUTHORING_REGION>"
Bot Framework Emulator๋ฅผ ์ด๊ณ ๋ก์ปฌ์์ ์คํ๋๋ Virtual Assistant์ ์ฐ๊ฒฐํ๋๋ก ๊ตฌ์ฑํฉ๋๋ค.
Botbuilder ๋ผ์ด๋ธ๋ฌ๋ฆฌ ๋ด๋ถ botFrameworkAdapter.ts์ 1004๋ฒ์งธ ์ค์ ์ค๋จ์ ์ค์
System Time zone
๋ฅผ ๋ค๋ฅธ ๊ฒ์ผ๋ก ๋ณ๊ฒฝํฉ๋๋ค(์: UTC+03:00 Minsk).
๊ฐ์ ๋์ฐ๋ฏธ ๋๋ฒ๊ทธ
์ค๋จ์ ์์ ์คํ์ด ์ค์ง๋ฉ๋๋ค. activity.localTimestamp
๋ ์ด์ ๋ก์ปฌ ์๋ฒ ์๊ฐ๋ ์ ํจ๊ป ๋ ์ง ์๊ฐ์ ํ์ํฉ๋๋ค.
ํ ๋น ํ activity.localTimestamp
์ ์ datetime์ ์ ์ฌ์ฉ์์ ์๊ฐ๋๋ฅผ ๊ฐ์ต๋๋ค.
๊ฐ์ฌํฉ๋๋ค:ํธ์ํจ:
์๋ ํ์ธ์ @VictorGrycuk์ ๋๋ค ! ์ฐ์ ๋น ๋ฅธ ๋ต๋ณ ๊ฐ์ฌํฉ๋๋ค!
๋จ๊ณ๋ฅผ ์ ์ดํดํ๋์ง ๋ชจ๋ฅด๊ฒ ์ง๋ง ๋ฌธ์ ๋ฅผ ์ฌํํ๊ธฐ ์ํด ์ํํ ๋ชจ๋ ๋จ๊ณ๋ฅผ ํตํด ๋ ์ ์ค๋ช ํ๋ ค๊ณ ๋ ธ๋ ฅํ๊ฒ ์ต๋๋ค.
์ฒซ ๋ฒ์งธ ๊ฐ์ ์ ๊ฐ์ ๋์ฐ๋ฏธ๊ฐ ๋ก์ปฌ์ ๋ฐฐํฌ๋์ด ์๋ค๋ ๊ฒ์ ๋๋ค.
๋ ๋ฒ์งธ ๊ฐ์ ์ 2๊ฐ์ ๋ค๋ฅธ ๋ฉํฑ์ผ๋ก ํ ์คํธ๋ฅผ ์ํํ๋ ค๋ ๊ฒ์ ๋๋ค. ์ฌ๊ธฐ์ ์ฒซ ๋ฒ์งธ ๋ฉํฑ์ ํด๋ผ์ด์ธํธ(์ ํฌ์ ๊ฒฝ์ฐ Teams)์ด๊ณ ๋ ๋ฒ์งธ ๋ฉํฑ์ VA๋ฅผ ์คํํ๋ ์๋ฒ์ ๋๋ค.
์ธ ๋ฒ์งธ ๊ฐ์ ์ 2๊ฐ์ ๋ฉํฑ์ 2๊ฐ์ ๋ค๋ฅธ ์๊ฐ๋๊ฐ ์ค์ ๋์ด ์๋ค๋ ๊ฒ์
๋๋ค. ์ฒซ ๋ฒ์งธ(ํด๋ผ์ด์ธํธ)์๋ GMT+0300
์๊ณ ์๋ฒ์๋ GMT+0100
๊ฐ ์๋ค๊ณ ๊ฐ์ ํด ๋ณด๊ฒ ์ต๋๋ค.
๊ทธ๋ฐ ๋ค์ ๋ชจ๋ ์ค์ ์ด ๋๋๋ฉด ํด๋ผ์ด์ธํธ์์ Teams๋ฅผ ํตํด VA์ ์์ฒญ์ ๋ณด๋ด๋ ค๊ณ ํฉ๋๋ค.
์์ฒญ์ ๋ฐ์๋ง์ ์ฌ์ฉ์๋ก๋ถํฐ ์ฌ๋ฐ๋ฅธ ์๊ฐ๋๋ฅผ ๋ณธ๋ฌธ์ ๋งค๊ฐ๋ณ์๋ก ๊ฐ๊ฒ ๋ฉ๋๋ค.
์๋ ํ์ธ์ @tommyJimmy87์ ๋๋ค! ์์ธํ ๋จ๊ณ์ ๊ฐ์ฌ๋๋ฆฝ๋๋ค! ์ด ์๋๋ฆฌ์ค๋ฅผ ๊ฒํ ํ ํ ๋์ค์ ๋ค์ ์๋ ค ๋๋ฆฌ๊ฒ ์ต๋๋ค ๐.
์๋ ํ์ธ์ @tommyJimmy87์ ๋๋ค!
JavaScript๊ฐ Date
๊ฐ์ฒด๋ฅผ ์ฒ๋ฆฌํ๋ ๋ฐฉ๋ฒ์ ๋ํ ์ ํ ๋๋ฌธ์ด๋ผ๋ ๊ฒฐ๋ก ์ ๋๋ฌํ์ต๋๋ค.
๊ทธ๋ฌ๋ BotBuilder-JS ์ ์ฅ์์์ ์ด ๋ฌธ์ ์ ๋ํ ๋ฌธ์ #1612๋ฅผ ์ด์ ์์ ์๋ ค๋๋ฆฝ๋๋ค. ์ฌ๊ธฐ์์ ์ด ๋ฌธ์ ์ ์งํ ์ํฉ์ ์ถ์ ํ ์ ์์ผ๋ฏ๋ก ์ฌ๊ธฐ์์๋ ํ์ธํ์ญ์์ค.
์ฐ๋ฆฌ๊ฐ ๋ฐ๊ฒฌํ ๋ฌธ์ ๋ ๋ ์ง๋ฅผ Date
๊ฐ์ฒด๋ก ๋ณํํ ๋ JS๊ฐ ์ด๋ฅผ UTC๋ก ๋ณํํ์ฌ ๊ธฐ๋ณธ์ ์ผ๋ก ์๋ ์๊ฐ๋๋ฅผ ์ ๊ฑฐํ๋ค๋ ๊ฒ์
๋๋ค. JavaScript๊ฐ ์ฒ๋ฆฌํ ์ ์๋ ์ ์ผํ ์๊ฐ๋๋ JS๋ฅผ ์คํํ๋ ์์คํ
์ ์๊ฐ๋์
๋๋ค.
์์ธํ ๋ด์ฉ์ ๋ ์ง ๋ฌธ์ ๋ฅผ ํ์ธํ์ญ์์ค.
์งํ ์ํฉ์ ์๋ ค๋๋ฆฝ๋๋ค :relaxed:
๊ฐ์ฅ ์ ์ฉํ ๋๊ธ
์๋ ํ์ธ์ @tommyJimmy87์ ๋๋ค! ๋ฌธ์ ๋ฅผ ์ ๊ณ ํด ์ฃผ์ ์ ๊ฐ์ฌํฉ๋๋ค.
๋ฌธ์ ๋ฅผ ์ฌํํ์ผ๋ฉฐ ์ด๋ฅผ ์ํํ๊ธฐ ์ํด ์ํํ ์ฌํ ๋จ๊ณ๋ฅผ ํ์ธํ๊ณ ์ ํฉ๋๋ค. ๋ํ ๊ตฌํ์ ๋น๊ตํ๊ณ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํ ๋ค์ ๋จ๊ณ๋ฅผ ์ฐพ๊ธฐ ์ํด C# ๋ด์ ์ฌ์ฉํ์ฌ ๋ฌธ์ ๋ฅผ ๊ณ์ ์ฌํํ ๊ฒ์ ๋๋ค.
์ฌํ ๋จ๊ณ
TypeScript ๊ฐ์ ๋์ฐ๋ฏธ ์ํ ์ฌ์ฉ
npm install
์ข ์์ฑ์ ์ค์นํ์ญ์์ค.npm run build
์๋ฃจ์ ์ปดํ์ผBot Framework Emulator๋ฅผ ์ด๊ณ ๋ก์ปฌ์์ ์คํ๋๋ Virtual Assistant์ ์ฐ๊ฒฐํ๋๋ก ๊ตฌ์ฑํฉ๋๋ค.
Botbuilder ๋ผ์ด๋ธ๋ฌ๋ฆฌ ๋ด๋ถ botFrameworkAdapter.ts์ 1004๋ฒ์งธ ์ค์ ์ค๋จ์ ์ค์
System Time zone
๋ฅผ ๋ค๋ฅธ ๊ฒ์ผ๋ก ๋ณ๊ฒฝํฉ๋๋ค(์: UTC+03:00 Minsk).๊ฐ์ ๋์ฐ๋ฏธ ๋๋ฒ๊ทธ
์ค๋จ์ ์์ ์คํ์ด ์ค์ง๋ฉ๋๋ค.
activity.localTimestamp
๋ ์ด์ ๋ก์ปฌ ์๋ฒ ์๊ฐ๋ ์ ํจ๊ป ๋ ์ง ์๊ฐ์ ํ์ํฉ๋๋ค.ํ ๋น ํ
activity.localTimestamp
์ ์ datetime์ ์ ์ฌ์ฉ์์ ์๊ฐ๋๋ฅผ ๊ฐ์ต๋๋ค.๊ฐ์ฌํฉ๋๋ค:ํธ์ํจ: