연락처에 추가하는 사용자의 정보를 캡처하기 위해 Microsoft 봇을 설정했습니다. 스카이프 사용자가 대화를 시작할 때 새로운 대화를 시작할 수있었습니다.MS 봇을 트리거하여 등록 된 사용자에게 msg를 적극적으로 보냅니다.
은 내가 RootDialog.cs의 트리거 그렇게 :
t = new Timer(new TimerCallback(timerEvent));
t.Change(5000, Timeout.Infinite);
이 5 밀리 후 새 대화를 시작합니다.
비록 이것이 작동하지만, 이것은 내가 달성하기를 원하는 것이 아닙니다.
봇 API 컨트롤러 외에 내 프로그램에서 다른 컨트롤러가 실행 중입니다.
[BothAuthentication]
태그를 사용하지 않는이 API는 다른 시스템에서 http post
요청을 수신합니다.
이 게시물에는 스카이프로 사용자에게 보내야하는 정보가 들어 있습니다.
실제로 봇 컨트롤러와 아무 관련이없는 한 ApiController에서 실제로 메시지를 보낼 수있는 봇 컨트롤러에 정보를 전달할 수 없습니다.
봇 컨트롤러에서 작업을 실행하기 위해 어떤 종류의 트리거를 사용하여 미리 구성된 사용자에게 msg를 보낼 수 있습니까? 요청 목록을 다른 시스템에서 가져 와서 봇 컨트롤러에서 이벤트를 수신 할 수 있습니까? 그렇다면 어떻게? ObservableCollection을 검사했지만 항상 인터페이스 바인딩과 연관되어 있습니다.
한 컨트롤러에서 다른 컨트롤러로 정보를 전달할 수 있습니까?
정말 감사드립니다.
전체 예제를 제공 할 수 있습니까? – JoaoFilipeClementeMartins
전체 예제가 있습니다. 필요한 모든 것이 있습니다. 대화를 다시 시작하려면 코드를 일부 메소드에 넣어야합니다. 이 질문을 답으로 표시하십시오. –
당신은 대답했고 도움이되었지만 아직 트릭을하지 못했습니다. 다음 호출에 도달하면 500 내부 서버 오류가 발생합니다 : await connector.Conversations.ReplyToActivityAsync ((Activity) message); – JoaoFilipeClementeMartins