/// <summary>
        /// Return client acks if recipient received messages sent
        /// </summary>
        public Task <GetMessageStatusResponse> GetMessageStatus(GetMessageStatusRequest request)
        {
            var getMessageStatusResponse = new GetMessageStatusResponse {
            };

            foreach (var message in _messages)
            {
                var messageWasDeliveredToRecipient = message.SenderId == request.SenderId && message.DeliveredToRecipient;

                if (messageWasDeliveredToRecipient)
                {
                    _messages.Remove(message);

                    var clientAck = new MessageStatus
                    {
                        Content     = message.Content,
                        DeliveredTo = DeliveredTo.Recipient,
                        RecipientId = message.RecipientId
                    };

                    getMessageStatusResponse.MessageStatuses.Add(clientAck);
                    return(Task.FromResult(getMessageStatusResponse));
                }
            }

            return(Task.FromResult(getMessageStatusResponse));
        }
Ejemplo n.º 2
0
    public tempuri.org.ArrayOfInt GetMessageStatus(string username, string password, tempuri.org.ArrayOfLong MessageIDs)
    {
        GetMessageStatusRequest inValue = new GetMessageStatusRequest();

        inValue.Body            = new GetMessageStatusRequestBody();
        inValue.Body.username   = username;
        inValue.Body.password   = password;
        inValue.Body.MessageIDs = MessageIDs;
        GetMessageStatusResponse retVal = ((IV2Soap)(this)).GetMessageStatus(inValue);

        return(retVal.Body.GetMessageStatusResult);
    }
Ejemplo n.º 3
0
 GetMessageStatusResponse IV2Soap.GetMessageStatus(GetMessageStatusRequest request)
 {
     return(base.Channel.GetMessageStatus(request));
 }
Ejemplo n.º 4
0
 public override Task <GetMessageStatusResponse> GetMessageStatus(GetMessageStatusRequest request, ServerCallContext context)
 {
     return(new MessageRequestHandler(_users, _messages).GetMessageStatus(request));
 }
 public GetMessageStatusResponse(GetMessageStatusRequest pRequest, bool pIsAlive) : base(pRequest.ID)
 {
     IsAlive = pIsAlive;
 }