示例#1
0
    //private IEnumerator GetChannelList()
    //{
    //    returnChannelList = false;
    //    //public 채널 리스트 받아오기
    //    if (!chatStatus)
    //        yield break;

    //    channelList.Clear();
    //    BackendAsyncClass.BackendAsync(Backend.Chat.GetChannelList, callback =>
    //    {
    //        if (!callback.IsSuccess() || callback.IsServerError())
    //        {
    //            Debug.Log("Fail To Get Chat Channel - " + callback);
    //            ShowMessage(CHAT_INACTIVE);

    //            returnChannelList = false;
    //        }
    //        else
    //        {
    //            JsonData rows = callback.GetReturnValuetoJSON()["rows"];
    //            Debug.Log(rows.ToString());
    //            ChannelNodeObject node;

    //            foreach (JsonData data in rows)
    //            {
    //                node = new ChannelNodeObject(channelType, data["uuid"].ToString(), (int)data["joinedUserCount"], (int)data["maxUserCount"],
    //                                             data["serverHostName"].ToString(), data["serverPort"].ToString(), data["alias"].ToString());
    //                channelList.Add(node);
    //            }
    //            returnChannelList = true;
    //        }
    //        reply_channel = true;
    //    });
    //    yield return new WaitUntil(() => reply_channel);
    //    if (returnChannelList == false)
    //        ShowMessage("GetChannelList : " + CHAT_INACTIVE);
    //}

    private bool GetChannelList()
    {
        // Public 채널 리스트 받아오기
        if (!chatStatus)
        {
            return(false);
        }

        channelList.Clear();
        BackendReturnObject chatChannelStatusBRO = Backend.Chat.GetChannelList();

        if (!chatChannelStatusBRO.IsSuccess() || chatChannelStatusBRO.IsServerError())
        {
            ShowMessage(CHAT_INACTIVE);
            chatStatus = false;
            Debug.Log("Fail To Get Chat Channel - " + chatChannelStatusBRO);
            return(false);
        }

        JsonData          rows = chatChannelStatusBRO.GetReturnValuetoJSON()["rows"];
        ChannelNodeObject node;

        foreach (JsonData data in rows)
        {
            node = new ChannelNodeObject(channelType, data["uuid"].ToString(), (int)data["joinedUserCount"], (int)data["maxUserCount"],
                                         data["serverHostName"].ToString(), data["serverPort"].ToString(), data["alias"].ToString());
            channelList.Add(node);
        }
        chatStatus = true;
        return(true);
    }
示例#2
0
    // 활성화된 채널에 참여
    private void JoinChannel(ChannelNodeObject node)
    {
        ErrorInfo info;

        Backend.Chat.JoinChannel(node.type, node.host, node.port, node.channel_uuid, out info);

        // 채널 입장 메시지
        chatItem = new ChatItem(SessionInfo.None, infoText, string.Format(CHAT_ENTER, node.alias), false);
        BackEndUIManager.instance.AddChat(chatItem);
    }
示例#3
0
    // 활성화된 채널에 참여
    public void JoinChannel(ChannelNodeObject node)
    {
        ErrorInfo info;

        Backend.Chat.JoinChannel(node.type, node.host, node.port, node.channel_uuid, out info);

        // 채널 입장 메시지
        chatItem = new ChatItem(SessionInfo.None, infoText, string.Format(CHAT_ENTER, node.alias), false);
        //chatItem = new ChatItem(SessionInfo.None, infoText, string.Format(CHAT_ENTER, string.Format("'치키의 모험 #{0}'", index + 1)), false);
        channelUserCount          = node.joinedUserCount + 1;
        channelUserCountText.text = string.Format("채팅 참여 인원 : {0}/100", channelUserCount);
        MessageMenu.instance.AddChat(chatItem);
        MessageMenu.instance.OnClickChannelBtn(0);
    }