Exemple #1
0
        public DatafeedApiTest()
        {
            var sessionManagerMock = new Mock <IAuthTokens>();

            sessionManagerMock.Setup(obj => obj.SessionToken).Returns("sessionToken");
            sessionManagerMock.Setup(obj => obj.KeyManagerToken).Returns("keyManagerToken");
            _apiExecutorMock = new Mock <IApiExecutor>();
            _datafeedApi     = new DatafeedApi(sessionManagerMock.Object, "", new HttpClient(), _apiExecutorMock.Object);
        }
        public DatafeedApiTest()
        {
            var sessionManagerMock = new Mock <IAuthTokens>();

            sessionManagerMock.Setup(obj => obj.SessionToken).Returns("sessionToken");
            sessionManagerMock.Setup(obj => obj.KeyManagerToken).Returns("keyManagerToken");
            _configuration   = new Configuration();
            _apiExecutorMock = new Mock <IApiExecutor>();
            _datafeedApi     = new DatafeedApi(sessionManagerMock.Object, _configuration, _apiExecutorMock.Object);
        }
        private void StartupSymphonyBot()
        {
            // Symphony start up boilerplate start

            SymphonyOSS.RestApiClient.Generated.OpenApi.PodApi.Client.Configuration.Default =
                new SymphonyOSS.RestApiClient.Generated.OpenApi.PodApi.Client.Configuration(timeout: config_.TimeoutInMillis);
            SymphonyOSS.RestApiClient.Generated.OpenApi.AuthenticatorApi.Client.Configuration.Default =
                new SymphonyOSS.RestApiClient.Generated.OpenApi.AuthenticatorApi.Client.Configuration(timeout: config_.TimeoutInMillis);
            SymphonyOSS.RestApiClient.Generated.OpenApi.AgentApi.Client.Configuration.Default =
                new SymphonyOSS.RestApiClient.Generated.OpenApi.AgentApi.Client.Configuration(timeout: config_.TimeoutInMillis);

            var certificate = new X509Certificate2(
                config_.BotCertificateFilePath,
                config_.BotCertificatePassword);
            var sessionManager = new UserSessionManager(
                string.Format("{0}/sessionauth/", config_.BaseApiUrl),
                string.Format("{0}/keyauth/", config_.BaseApiUrl),
                certificate);
            var agentApiFactory = new AgentApiFactory(
                string.Format("{0}/agent", config_.BaseApiUrl));
            var podApiBaseUrl = string.Format("{0}/pod", config_.BasePodUrl);
            var podApiFactory = new PodApiFactory(podApiBaseUrl);

            // Symphony start up boilerplate end

            // create a data feed API to listen for chat messages
            datafeedApi_            = agentApiFactory.CreateDatafeedApi(sessionManager);
            datafeedApi_.OnMessage += OnMessageReceived;

            // create streams API to initiate chats
            streamsApi_ = podApiFactory.CreateStreamsApi(sessionManager);

            // create messages API to send messages
            messagesApi_ = agentApiFactory.CreateMessagesApi(sessionManager);

            // create users API to resolve users by e-mail or id
            usersApi_ = podApiFactory.CreateUsersApi(sessionManager);

            // start listening for messages from out bot
            // NB: Listen() is blocking, so run on a dedicated thread
            Task.Factory.StartNew(datafeedApi_.Listen, TaskCreationOptions.LongRunning);
        }