Exemplo n.º 1
0
        /// <summary>
        /// GMT系统广播
        /// </summary>
        /// <param name="obj"></param>
        /// <returns></returns>
        private Task <string> OnHandleServerAnnouncement(JObject obj)
        {
            var channel_arr = obj["channel"].ToObject <List <short> >();

            if (channel_arr.Count > 0)
            {
                bool               result          = false;
                var                primary_channel = channel_arr.Contains(ClientChatRequest.CHANNEL_SYSTEM) ? ClientChatRequest.CHANNEL_SYSTEM : ClientChatRequest.CHANNEL_TYPE_WORLD;
                List <string>      groups          = obj["group"].ToObject <List <string> >();
                TLClientChatNotify notify          = new TLClientChatNotify();
                notify.channel_type = primary_channel;
                channel_arr.Remove(primary_channel);
                if (channel_arr.Count > 0)
                {
                    notify.show_channel = channel_arr.ToArray();
                }
                notify.func_type = obj["style"].ToObject <short>();
                notify.content   = obj["text"].ToString();
                result           = TLGMUtil.PushPublicMessage(this, (CHANNEL_TYPE)primary_channel, notify, groups);
                return(Task.FromResult(ResponseResult(result)));
            }

            return(Task.FromResult(ResponseResult(false)));
        }