tvpl.api

<back to all web services

GetNotificationFilter

Lấy danh sách các Notification mới nhất của người dùng hiện tại

Requires Authentication
The following routes are available for this service:
GET/notificationsLấy danh sách các Notification mới nhất
using System;
using System.Collections;
using System.Collections.Generic;
using System.Runtime.Serialization;
using ServiceStack;
using ServiceStack.DataAnnotations;
using tvpl.api.ServiceModel;
using tvpl.data.Constant;
using tvpl.data.Models;

namespace tvpl.api.ServiceModel
{
    ///<summary>
    ///Lấy danh sách các Notification mới nhất của người dùng hiện tại
    ///</summary>
    public partial class GetNotificationFilter
        : PagingRequest, IGet
    {
        public virtual NotificationFilter Filter { get; set; }
    }

    public partial class NotificationResponse
        : IResponseRequest
    {
        public NotificationResponse()
        {
            Notifications = new List<Notification>{};
        }

        public virtual int Code { get; set; }
        public virtual string Message { get; set; }
        public virtual List<Notification> Notifications { get; set; }
        public virtual int UnreadCount { get; set; }
        public virtual int TotalCount { get; set; }
    }

    public partial class PagingRequest
    {
        public virtual int Page { get; set; }
        public virtual int Limit { get; set; }
    }

}

namespace tvpl.data.Constant
{
    public enum NotificationFilter
    {
        Unread,
        All,
    }

}

namespace tvpl.data.Models
{
    public partial class Notification
        : IMongoModel
    {
        public virtual string Id { get; set; }
        public virtual int AccountId { get; set; }
        [Required]
        [StringLength(200)]
        public virtual string Title { get; set; }

        public virtual string Message { get; set; }
        public virtual string Payload { get; set; }
        public virtual DateTime CreatedOn { get; set; }
        public virtual DateTime? ReadOn { get; set; }
        public virtual DateTime? PushOn { get; set; }
        public virtual DateTime? DeletedOn { get; set; }
    }

}

C# GetNotificationFilter DTOs

To override the Content-type in your clients, use the HTTP Accept Header, append the .xml suffix or ?format=xml

HTTP + XML

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

GET /notifications HTTP/1.1 
Host: etc-api.vsmlab.vn 
Accept: application/xml
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length

<NotificationResponse xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/tvpl.api.ServiceModel">
  <Code>0</Code>
  <Message>String</Message>
  <Notifications xmlns:d2p1="http://schemas.datacontract.org/2004/07/tvpl.data.Models">
    <d2p1:Notification>
      <d2p1:AccountId>0</d2p1:AccountId>
      <d2p1:CreatedOn>0001-01-01T00:00:00</d2p1:CreatedOn>
      <d2p1:DeletedOn>0001-01-01T00:00:00</d2p1:DeletedOn>
      <d2p1:Id>String</d2p1:Id>
      <d2p1:Message>String</d2p1:Message>
      <d2p1:Payload>String</d2p1:Payload>
      <d2p1:PushOn>0001-01-01T00:00:00</d2p1:PushOn>
      <d2p1:ReadOn>0001-01-01T00:00:00</d2p1:ReadOn>
      <d2p1:Title>String</d2p1:Title>
    </d2p1:Notification>
  </Notifications>
  <TotalCount>0</TotalCount>
  <UnreadCount>0</UnreadCount>
</NotificationResponse>