Notice.NoticeList

public BackendReturnObject NoticeList();
public BackendReturnObject NoticeList(int limit);
public BackendReturnObject NoticeList(int limit, string offset);

파라미터

valueTypedescriptiondefault
limitint불러올 공지사항의 수10
offsetstring불러올 공지사항의 시작점
BackendReturnObject.LastEvaluatedKeyString() 함수를 통해 얻을 수 있습니다.
-

설명

뒤끝 콘솔에 등록한 공지사항을 받아오는 기능을 제공합니다.

유저의 국가코드가 존재하고, 콘솔에 해당 국가 공지가 등록되어 있는 경우 → 해당 국가의 공지 제목과 내용을 리턴합니다.

유저의 국가코드가 존재하지 않거나, 콘솔에 해당 국가 공지가 등록되어 있지 않은 경우 → 기본 설정의 제목과 내용을 리턴합니다.

등록한 이미지는 http://upload-console.thebackend.io에 리턴되는 imageKey path를 추가하여 받을 수 있습니다.

Example

동기

BackendReturnObject bro = Backend.Notice.NoticeList(2);
if(bro.IsSuccess())
{
    string offset = bro.LastEvaluatedKeyString();
    if(!string.IsNullOrEmpty(offset))
    {
        // 2. 불러온 공지사항 2개 이후의 3개 불러오기
        Backend.Notice.NoticeList(3, offset);
    }
}

비동기

Backend.Notice.NoticeList(2,callback=>
{
  if(callback.IsSuccess())
  {
   string offset = callback.LastEvaluatedKeyString();
      if(!string.IsNullOrEmpty(offset))
      {
          // 2. 불러온 공지사항 2개 이후의 3개 불러오기
          Backend.Notice.NoticeList(3, offset,callback2=>
          {
          // 이후 내용
          });
      }
  }
});

SendQueue

SendQueue(Backend.Notice.NoticeList,2,callback=>
{
  if(callback.IsSuccess())
  {
   string offset = callback.LastEvaluatedKeyString();
      if(!string.IsNullOrEmpty(offset))
      {
          // 2. 불러온 공지사항 2개 이후의 3개 불러오기
          SendQueue(Backend.Notice.NoticeList, 3, offset,callback2=>
          {
          // 이후 내용
          });
      }
  }
});

ReturnCase

Success cases

불러오기에 성공한 경우
statusCode : 200
message : Success
returnValue : GetReturnValueToJSON 참조

공지사항이 0개일 경우
statusCode : 200
message : Success
returnValue : { "rows":[] }

GetReturnValueToJSON


성공 시, 등록된 공지사항들의 정보를 나타냅니다.

{
    rows:
    [ 
        { 
            content: // 공지 내용
                { S : "2019년 1월 31일 게임 업데이트 예정입니다. 업데이트 내용은 다음과 같습니다. " },
            postingDate: // 공지 게시 일자
                { S : "2018-12-19T09:30:00.000Z" },
            imageKey: // 첨부한 이미지 url 
                { S : "/upload/2147483648/notice/2018-12-27T02:55:36.845Z511886972.jpg" },
            inDate: // 공지 indate
                { S : "2018-12-19T09:26:53.382Z" },
            uuid: // 공지 uuid
                { S : "38b07660-0370-11e9-8d1d-7571a0570adf" },
            linkUrl: // 외부 링크 버튼 url
                { S : "http://thebackend.io" },
            isPublic: // 공개/비공개 여부
                { S : "y" },
            linkButtonName: // 외부 링크 버튼 이름
                { S : "buttonN" },
            author: // 작성자
                { S : "jake" },
            title: // 공지 제목
                { S : "게임 업데이트 공지" }
        },
        { 
            content: [Object],
            postingDate: [Object],
            imageKey: [Object],
            inDate: [Object],
            uuid: [Object],
            linkUrl: [Object],
            isPublic: [Object],
            linkButtonName: [Object],
            author: [Object],
            title: [Object] 
        } 
    ],
    // 불러온 데이터 이후의 데이터가 존재하는 경우 리턴됨
    // 불러온 데이터 이후의 데이터가 존재하지 않는 경우 리턴되지 않음
    LastEvaluatedKey:{
        gamer_id: { S: "notice" },
        inDate:{ S: "2019-08-19T06:45:07.816Z" },
        partition:{ S: "notice" }
    }
}

NoticeOne

public BackendReturnObject NoticeOne(string inDate);

파라미터

ValueTypeDescription
inDatestring불러올 공지사항의 inDate
NoticeList의 BRO Return Value > JsonArray > (JsonObject) inDate > value

설명

뒤끝 콘솔에 등록한 공지사항 항목중 특정 공지사항의 정보를 반환합니다.

리스트의 특정 공지사항을 가져오기 위해서는 inDate값이 필요합니다.

Example

동기

BackendReturnObject bro = Backend.Notice.NoticeList(2);
string inDate = bro.Rows()[0]["inDate"]["S"].ToString();
BackendReturnObject bro2 = Backend.Botice.NoticeOne(inDate);
string Content = bro2.GetReturnValuetoJSON()["row"]["content"]["S"].ToString();

비동기

Backend.Notice.NoticeList(2, callback =>
{
   string inDate = callback.Rows()[0]["inDate"]["S"].ToString();
   Backend.Botice.NoticeOne(inDate,callback2 =>
   {
      string Content = callback2.GetReturnValuetoJSON()["row"]["content"]["S"].ToString();
   );
});

SendQueue

SendQueue.Enqueue(Backend.Notice.NoticeList, 2, callback =>
{
   string inDate = callback.Rows()[0]["inDate"]["S"].ToString();
   SendQueue.Enqueue(Backend.Botice.NoticeOne, inDate,callback2 =>
   {
      string Content = callback2.GetReturnValuetoJSON()["row"]["content"]["S"].ToString();
   );
});

ReturnCase

Success cases

불러오기에 성공한 경우
statusCode : 200
message : Success
returnValue: GetReturnValueToJSON 참조

Error cases

해당 공지사항이 없는 경우
statusCode : 404
errorCode : NotFoundException
returnValue: notice not found, notice을(를) 찾을 수 없습니다

GetReturnValueToJSON


성공 시, 등록된 공지사항들의 정보를 나타냅니다.

{ 
    row:
    { 
        content: // 공지 내용
            { S : "2019년 1월 31일 게임 업데이트 예정입니다. 업데이트 내용은 다음과 같습니다. " },
        postingDate: // 공지 게시 일자
            { S : "2018-12-19T09:30:00.000Z" },
        imageKey: // 첨부한 이미지 url 
            { S : "/upload/2147483648/notice/2018-12-27T02:55:36.845Z511886972.jpg" },
        inDate: // 공지 indate
            { S : "2018-12-19T09:26:53.382Z" },
        uuid: // 공지 uuid
            { S : "38b07660-0370-11e9-8d1d-7571a0570adf" },
        linkUrl: // 외부 링크 버튼 url
            { S : "http://thebackend.io" },
        isPublic: // 공개/비공개 여부
            { S : "y" },
        linkButtonName: // 외부 링크 버튼 이름
            { S : "buttonN" },
        author: // 작성자
            { S : "jake" },
        title: // 공지 제목
            { S : "게임 업데이트 공지" }
    }
}