コード例 #1
0
        public static async Task EsiStatus(Command cmd)
        {
            var who = cmd.XmppMessage.From;

            EsiScopes esi = EsiScopes.Get();


            if (cmd.XmppMessage.Type == MessageType.GroupChat)
            {
                // Lets get their jid
                Jid directJid = JabberClient.Instance.GetJidForResource(who?.Resource);

                if (directJid == null)
                {
                    Console.WriteLine("[Error] Can't reverse Resource to Jid. Resource: \"{0}\"", who?.Resource);
                    return;
                }

                await JabberClient.Instance.SendMessage(directJid, esi.Status());
            }
            else
            {
                await JabberClient.Instance.SendMessage(who.Bare, esi.Status());
            }
        }
コード例 #2
0
        public static async Task SetEsiScopes(Command cmd)
        {
            var jid    = cmd.XmppMessage.From;
            var author = jid.User;

            if (cmd.XmppMessage.IsGroupMessage())
            {
                author = jid.Resource;
            }

            EsiScopes esi     = EsiScopes.Get();
            string    message = PermissionDenied;

            if (Users.Get().CheckUser(author, true))
            {
                // Get an array of scopes.
                // Scope format esi-fleets,esi-ui
                string[] parts        = cmd.Args.Trim().Split(" ")[0].Split(",");
                string   scopesString = "";

                foreach (string s in parts)
                {
                    scopesString += s + ",";
                }
                esi.SetScopes(scopesString.Substring(0, scopesString.Length - 1));
                esi.Set();

                message = "Squad ESI Scopes set.";
            }

            if (cmd.XmppMessage.IsGroupMessage())
            {
                await JabberClient.Instance.SendGroupMessage(jid.Bare, message);
            }
            else
            {
                await JabberClient.Instance.SendMessage(jid.Bare, message);
            }
        }