示例#1
0
        public GetContactsResponse GetContacts(GetContactsRequest request)
        {
            GetContactsResponse response = new GetContactsResponse();

            response.Success = true;
            response.Errors  = new List <string>();
            if (!_authKeyRepository.Validate(request.AccountId, request.AuthKey))
            {
                response.Success = false;
                response.Errors.Add("You don't have access");
                return(response);
            }

            var result = _contactLinkageRepository.GetContactLikagesForUser(request.AccountId);
            List <ContactBasicInformationDTO> dtos = new List <ContactBasicInformationDTO>();

            foreach (var contact in result)
            {
                ContactBasicInformationDTO dto = new ContactBasicInformationDTO()
                {
                    AccountId = request.AccountId == contact.Account1Id ? contact.Account2Id : contact.Account1Id,
                    Username  = request.AccountId == contact.Account1Id ? _accountRepository.GetAccountById(contact.Account2Id).Email : _accountRepository.GetAccountById(contact.Account1Id).Email
                };
                dtos.Add(dto);
            }
            response.Contacts = dtos;
            response.Success  = true;
            return(response);
        }
示例#2
0
        public void GetAll()
        {
            var expectedJson = GetJsonPayload("/contacts/contactsApi/getAllContacts.json");
            var restRequest  = MockRestResponse(expectedJson);
            var getRequest   = new GetContactsRequest
            {
                Query        = QueryProperty.FirstName,
                Source       = SourceType.Manual,
                OptOut       = true,
                Group        = "My Friends",
                SortBy       = SortProperty.CreatedAt,
                SortType     = SortType.Desc,
                ItemsPerPage = 10,
                Page         = 7
            };
            var response = Client.ContactsApi.Get(getRequest);
            EzTextingResponse <Contact> ezResponse = new EzTextingResponse <Contact>("Success", 200, response);

            Assert.That(Serializer.Serialize(ezResponse), Is.EqualTo(expectedJson));

            Assert.AreEqual(Method.GET, restRequest.Value.Method);

            Assert.That(restRequest.Value.Resource, Is.StringContaining("User=login"));
            Assert.That(restRequest.Value.Resource, Is.StringContaining("Password=password"));

            Assert.That(restRequest.Value.Resource, Is.StringContaining("query=FirstName"));
            Assert.That(restRequest.Value.Resource, Is.StringContaining("source=" + "Manually Added".UrlEncode()));
            Assert.That(restRequest.Value.Resource, Is.StringContaining("group=" + "My Friends".UrlEncode()));
            Assert.That(restRequest.Value.Resource, Is.StringContaining("optout=true"));
            Assert.That(restRequest.Value.Resource, Is.StringContaining("sortBy=CreatedAt"));
            Assert.That(restRequest.Value.Resource, Is.StringContaining("sortDir=desc"));
            Assert.That(restRequest.Value.Resource, Is.StringContaining("itemsPerPage=10"));
            Assert.That(restRequest.Value.Resource, Is.StringContaining("page=7"));
        }
示例#3
0
        public async Task <List <Contact> > GetContacts()
        {
            GetContactsRequest  request  = new GetContactsRequest(AuthToken);
            GetContactsResponse response = await communicationService.SendAsync(request) as GetContactsResponse;

            return(response.Contacts);
        }
示例#4
0
        public async Task <GetContactsResponse> GetContacts(GetContactsRequest getContactsRequest)
        {
            this.logger.LogInfoMessage(this.GetType(), "Begin GetContacts");

            GetContactsResponse getContactsResponse = new GetContactsResponse();

            try
            {
                BaseResponse response = await this.contact.GetContacts();

                getContactsResponse.ContactDataList = (List <ContactData>)response.ReturnValueCustomObject;
                getContactsResponse.Build(response.ReturnValueInt,
                                          response.ReturnValueString,
                                          response.ReturnValueCustomString);
            }
            catch (Exception ex)
            {
                getContactsResponse.RunTimeException(ex, "Exception while Getting contacts.");
                this.logger.LogErrorMessage(this.GetType(), "Exception in GetContacts", ex);
            }

            this.logger.LogInfoMessage(this.GetType(),
                                       String.Format("End GetContacts:{0}", getContactsResponse.ReturnValueInt));

            return(getContactsResponse);
        }
示例#5
0
        public async Task <ActionResult <MainResponse> > GetContacts(GetContactsRequest request)
        {
            User user = HttpContext.GetUser();

            if (user == null)
            {
                return(Unauthorized());
            }

            Contact[] contacts = await _context.Contacts.Where(p => p.User1.Id == user.Id || p.User2.Id == user.Id).Skip(_serverConfig.Contacts.PartsSize.ContactsPerPart * (request.Part - 1)).Take(_serverConfig.Contacts.PartsSize.ContactsPerPart).ToArrayAsync().ConfigureAwait(false);

            List <ExtUser> extUsers = new List <ExtUser>();

            for (int i = 0; i < contacts.Length; i++)
            {
                extUsers.Add(contacts[i].User1.Id == user.Id ? (ExtUser)contacts[i].User2 : (ExtUser)contacts[i].User1);
                extUsers[i].Img?.SetPath(_serverConfig.General.ServerPath + _serverConfig.FileRoutes.UserImages.Route);
            }

            GetContactsResponse getContactsResponse = new GetContactsResponse()
            {
                Contacts = extUsers
            };

            return(MainResponse.GetSuccess(getContactsResponse));
        }
示例#6
0
        public async Task <IHttpActionResult> Get()
        {
            var request = new GetContactsRequest();

            request.TenantId = (await _userManager.GetUserAsync(User)).TenantId;
            return(Ok(await _mediator.Send(request)));
        }
示例#7
0
        public async Task <ActionResult <GetContactsResponse> > Get([FromQuery] GetContactsRequest request)
        {
            var contacts = await _contactsService.GetContactsAsync(new LimitationParameters(request.PageSize, request.PageIndex), request.PhoneNumber, request.Name);

            var mapping = _mapper.Map <GetContactsResponse>(contacts);

            return(new JsonResult(mapping));
        }
示例#8
0
        // TODO
        // contacts.getStatuses#c4a353ee = Vector<ContactStatus>;

        // contacts.getContacts#22c6aa08 hash:string = contacts.Contacts;
        public async Task <ContactsContacts> GetContacts(IEnumerable <int> alreadyLoadedContactsIds = null)
        {
            var request = new GetContactsRequest(alreadyLoadedContactsIds);

            await SendRpcRequest(request);

            return(request.contacts);
        }
示例#9
0
        public ActionResult Contacts()
        {
            var request  = new GetContactsRequest(SynergySecurity.GetCurrentUser());
            var RecordId = SynergySecurity.ToLog <GetContactsRequest>(request);
            var contacts = contactApi.GetContacts(request);

            SynergySecurity.ToUpdateLog <GetContactsResponse>(contacts, RecordId);
            var model = ToUpdateContactRequestList(contacts);

            return(View("ContactList", model));
        }
示例#10
0
        public async Task <IActionResult> GetContacts(int skip = 0, int limit = 100)
        {
            var request = new GetContactsRequest
            {
                Limit = limit,
                Skip  = skip
            };

            var result = await _mediator.Send(request);

            return(Ok(result));
        }
        public void CrudOperations()
        {
            var contact = new Contact
            {
                FirstName   = "Piglet",
                LastName    = "Notail",
                PhoneNumber = "2123456788",
                Email       = "*****@*****.**",
                Note        = "It is hard to be brave, when you are only a Very Small Animal.",
                Groups      = new List <string>()
                {
                    "Friends", "Neighbors"
                }
            };

            var created = Client.ContactsApi.Create(contact);

            Assert.Null(created.OptOut);
            Console.WriteLine("created contact: " + created);

            created.FirstName += "_upd";
            // opted out contacts cannot be updated or deleted
            // created.OptOut = true;
            var updated = Client.ContactsApi.Update(created);

            Assert.AreEqual(created.FirstName, updated.FirstName);
            Console.WriteLine("updated contact: " + created);

            updated = Client.ContactsApi.Get(updated.Id);
            Console.WriteLine("get updated contact: " + updated);

            var request = new GetContactsRequest
            {
//                Query = QueryProperty.FirstName,
//                Source = SourceType.Manual,
//                OptOut = false,
                Group        = "Friends",
                SortBy       = SortProperty.CreatedAt,
                SortType     = SortType.Asc,
                ItemsPerPage = 2,
                Page         = 0
            };
            var contacts = Client.ContactsApi.Get(request);

            Console.WriteLine("get all contacts: " + string.Join(",", contacts));

            Client.ContactsApi.Delete(created.Id);
            var ex = Assert.Throws <EzTextingApiException>(() => Client.ContactsApi.Get(created.Id));

            Assert.That(ex.Message, Is.EqualTo("Sorry, nothing was found"));
        }
示例#12
0
        public Task <GetContactsResponse> GetContacts(GetContactsRequest getContactsRequest)
        {
            return(Task.Run(() =>
            {
                GetContactsResponse response = new GetContactsResponse();

                response.ContactDataList = contactDataList.FindAll(c => c.Status == 1);
                response.HTTPReturnCode = (Int16)HttpStatusCode.OK;
                response.APIVersion = "1.0.0.0";
                response.ReturnValueInt = 0;
                response.ReturnValueString = "";
                response.ReturnValueCustomString = "Contact Get Successfully.";
                response.ReturnValueCustomObject = null;

                return response;
            }));
        }
示例#13
0
        public async Task GetContacts_Success()
        {
            // Arrange
            ICore              core       = new MockCore();
            ILogger            logger     = new Logger();
            ContactsController controller = new ContactsController(core, logger);
            GetContactsRequest request    = new GetContactsRequest();

            // Act
            GetContactsResponse response = await(controller.GetContacts(request));

            // Assert
            Assert.IsNotNull(response);
            Assert.AreEqual(4, response.ContactDataList.Count);
            Assert.AreEqual(response.ReturnValueInt, BaseResponse.RESPONSE_SUCCESS);
            Assert.AreEqual(response.ReturnValueCustomString, "Contact Get Successful.");
        }
        public async Task <GetContactsResponse> GetContacts(GetContactsRequest getContactsRequest)
        {
            this.logger.LogInfoMessage(this.GetType(), "Begin GetContacts");
            GetContactsResponse getContactsResponse = new GetContactsResponse();

            this.CheckInVariants(getContactsResponse);
            getContactsRequest = new GetContactsRequest();
            // Validate Request
            if (getContactsResponse.ReturnValueInt == 0)
            {
                getContactsRequest.Validate(getContactsResponse, this.logger);
            }

            if (getContactsResponse.ReturnValueInt == 0)
            {
                try
                {
                    Task <GetContactsResponse> task = this.core.GetContacts(getContactsRequest);
                    await task;

                    getContactsResponse.ContactDataList         = task.Result.ContactDataList;
                    getContactsResponse.ReturnValueInt          = task.Result.ReturnValueInt;
                    getContactsResponse.ReturnValueString       = task.Result.ReturnValueString;
                    getContactsResponse.ReturnValueCustomString = task.Result.ReturnValueCustomString;
                }
                catch (Exception e)
                {
                    getContactsResponse.RunTimeException(e, "Exception while Getting contacts.");
                }
            }

            if (getContactsResponse.ReturnValueInt == 0)
            {
                getContactsResponse.Success("Contact Get Successful.");
            }

            this.logger.LogInfoMessage(this.GetType(),
                                       String.Format("End GetContacts:{0}", getContactsResponse.ReturnValueInt));

            return(getContactsResponse);
        }
示例#15
0
        public async void TestGet()
        {
            String        accessToken = this.RandomString();
            String        contactId   = this.RandomString();
            List <String> contactIds  = new List <String> {
                contactId
            };
            GetContactsRequest req = new GetContactsRequest();

            req.ContactIds = contactIds;
            MockAPI <Contacts> mock = this.MockFor <Contacts>(
                HttpMethod.Post,
                "/api/v1/contacts.get",
                m => m.WithContent(req.ToString())
                .Respond("application/json", "{ \"contacts\": [{\"contactId\":\"" + contactId + "\"}]}")
                );
            APIResponse <ContactsResponseBody> res = await mock.Instance.Get(accessToken, contactIds, null);

            mock.Handler.VerifyNoOutstandingExpectation();
            Assert.Equal(res.Body.Contacts.Count, 1);
        }
示例#16
0
        public GetContactsResponse GetContacts(string userName, bool doCrossCheck)
        {
            var user    = this.Users.First(u => u.Name == userName);
            var request = new GetContactsRequest
            {
                RequestAddress   = user.RequestAddress,
                PublicKeyAddress = user.PublicKeyAddress,
                DoCrossCheck     = doCrossCheck,
                KeyPair          = user.NtruKeyPair
            };

            this.LastRequest = request;
            var response = InstanceBag.GetContactsInteractor.ExecuteAsync(request).Result;

            if (response.Code != ResponseCode.Success)
            {
                Assert.Fail($"Can not get contacts. {response.Code}");
            }

            this.LastResponse = response;
            return(response);
        }
 /// <summary>
 /// Get a list of contacts stored in your Ez Texting account.
 /// </summary>
 /// <param name="request">contacts that were found</param>
 /// <returns>contacts that were found</returns>
 /// <exception cref="EzTextingApiException">in case error has occurred on server side, check provided error description.</exception>
 /// <exception cref="EzTextingClientException">in case error has occurred in client.</exception>
 public IList <Contact> Get(GetContactsRequest request)
 {
     return(_client.Get <Contact>(ContactsPath, request).Entries);
 }
示例#18
0
 public GetContactsResponse GetContacts(GetContactsRequest request)
 {
     return(GetContacts(AgileCRMConstant.Contacts));
 }
示例#19
0
 public async Task <GetContactsResponse> BrowseContacts(GetContactsRequest request = null)
 {
     request = request ?? new GetContactsRequest();
     return(await Client.Execute <GetContactsRequest, GetContactsResponse>(request));
 }
示例#20
0
 public JsonResult Get(GetContactsRequest request)
 {
     return(Json(_contactLinkageService.GetContacts(request)));
 }