저는 Microsoft BotFramework로 Skype 용 봇에서 일하고 있는데, 권한있는 사람들에게만 공유하는 방법을 찾고 있습니다. 예를 들어 개인 페이지에 봇을 추가하는 링크를 표시 할 수 있지만 누구나이 링크를 공유하고 봇을 Skype 계정에 추가 할 수 있다고 생각합니다.Skype 봇 설치 제한
누구나 이미 해 보았습니까? 어떤 생각?
고맙습니다.
저는 Microsoft BotFramework로 Skype 용 봇에서 일하고 있는데, 권한있는 사람들에게만 공유하는 방법을 찾고 있습니다. 예를 들어 개인 페이지에 봇을 추가하는 링크를 표시 할 수 있지만 누구나이 링크를 공유하고 봇을 Skype 계정에 추가 할 수 있다고 생각합니다.Skype 봇 설치 제한
누구나 이미 해 보았습니까? 어떤 생각?
고맙습니다.
허용 된 사람들의 데이터베이스를 만들고이 사람들에게만 응답을 제한 할 수 있습니다. session.agent
변수를 사용하여 허용 된 사용자 목록에 사용자가 있는지 여부를 결정하려면 사용자 이름을 확인해야합니다. 봇은 누구에게나 표시되지만 원하는 사람과 만 대화 할 수 있습니다.
나는 session.agent var -> undefined를 얻으려고했다. 여기 내 세션의 덤프입니다 :
{ domain:
{ domain: null,
_events: { error: [Function: onError] },
_maxListeners: undefined,
members: [ [Object], [Object] ] },
_events: { error: [Function] },
_maxListeners: undefined,
options:
{ localizer: undefined,
autoBatchDelay: 250,
library: { name: '*', dialogs: [Object], libraries: [Object] },
actions: { actions: {} },
middleware: [],
dialogId: '/',
dialogArgs: undefined,
dialogErrorMessage: undefined,
onSave: [Function],
onSend: [Function] },
msgSent: true,
_isReset: false,
lastSendTime: 1474355048875,
batch:
[ { type: 'message',
agent: 'botbuilder',
source: 'skype',
address: [Object],
text: ' help lastMsg lastUser' } ],
batchStarted: true,
sendingBatch: false,
inMiddleware: false,
library:
{ name: '*',
dialogs: { '/': [Object] },
libraries: { BotBuilder: [Object] } },
userData: {},
conversationData: {},
privateConversationData: {},
sessionState:
{ callstack: [ [Object] ],
lastAccess: 1474355048876,
version: 0 },
dialogData:
{ 'BotBuilder.Data.Intent': '/^help/i',
'BotBuilder.Data.WaterfallStep': 0 },
message:
{ type: 'message',
timestamp: '2016-09-20T07:04:03.723Z',
text: 'help',
entities: [],
attachments: [],
address:
{ id: '2jdYO5OjjEja1zH6',
channelId: 'skype',
user: [Object],
conversation: [Object],
bot: [Object],
serviceUrl: 'https://skype.botframework.com',
useAuth: true },
source: 'skype',
agent: 'botbuilder',
user:
{ id: '29:1MPrjjbaPcCccdu9BMdA154jiuHUIH4nR7EK9_0p64iEUg',
name: 'Séverin' } },
batchTimer:
{ _idleTimeout: 250,
_idlePrev:
{ '0': [Function: listOnTimeout],
_idleNext: [Circular],
_idlePrev: [Circular],
msecs: 250 },
_idleNext:
{ '0': [Function: listOnTimeout],
_idleNext: [Circular],
_idlePrev: [Circular],
msecs: 250 },
_idleStart: 364730333,
_onTimeout: [Function],
_repeat: false,
domain:
{ domain: null,
_events: [Object],
_maxListeners: undefined,
members: [Object] } } }
가 어떻게 내 databas에서 사용자와 일치하기 위해 스카이프의 고유 식별자를 얻을 수는? 이상적으로 내 사용자 테이블에 "skypeId"필드를 추가하고 싶습니다.
감사합니다.
동의합니다. 인증 된 서비스가있는 경우 인증 패턴 (사용자에게 파란색 링크를 전달하고 클릭하고 로그인 한 다음 해당 액세스 토큰을 해당 채널 계정에 매핑)을 따를 수도 있습니다. –
그게 내가하고 싶었던,하지만 내 사용자 테이블에 저장하기 위해 스카이프 사용자에 대한 고유 한 ID를 얻는 방법을 몰랐어요. 나는 "session.agent"로 시도 할 것이다. 고마워 –