using System.Collections; using System.Collections.Generic; using System.Linq; using BITKit.HttpNet; using UnityEngine; namespace BITKit { public class WeChatMessagePusher : MonoBehaviour { private const string url = "https://wxpusher.zjiecode.com/api/send/message"; [SerializeField, SerializeReference, SubclassSelector] private Reference appName; [SerializeField, SerializeReference, SubclassSelector] private Reference appToken; [SerializeField, SerializeReference, SubclassSelector] private Reference[] uids; [SerializeField, SerializeReference, SubclassSelector] private IWebProvider webProvider; public async void PostMessage(object message) { var content = message is string ? message.ToString() : JsonHelper.Get(message); WeChatMessage wxMessage = new() { appToken = appToken, summary = appName, content = content }; if (uids.Length > 0) { wxMessage.uids = uids.Select(x => x.Get()).ToArray(); } await webProvider.PostAsync(url, wxMessage); } } }