当前位置: 首页>>代码示例>>C#>>正文


C# IBot.GetModuleByName方法代码示例

本文整理汇总了C#中IBot.GetModuleByName方法的典型用法代码示例。如果您正苦于以下问题:C# IBot.GetModuleByName方法的具体用法?C# IBot.GetModuleByName怎么用?C# IBot.GetModuleByName使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在IBot的用法示例。


在下文中一共展示了IBot.GetModuleByName方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。

示例1: Status

    public IProcessingResult Status(IBot bot, IProcessingResult pr)
    {
        pr.Solved = true;
        pr.Respond = true;
        pr.ResponseOrigin = Helper.GetExecutingMethodName(this);
        //pr.ResponseContent = "status message";
        //ResponseText = "Uptime: " + Helper.GetUptime(Bot.initTime) + ". Firefox memory use: " 
        var uptime = DateTime.UtcNow - bot.StartTimeUTC;
        var memusage = Helper.GetBotAppMemoryUsage();



        var logDir = bot.LogDirectoryPath;

        var logDirInfo = new DirectoryInfo(logDir);

        var logFileInfos = logDirInfo.GetFiles("*.log", SearchOption.AllDirectories);
        var logZipInfo = logDirInfo.GetFiles("*.zip", SearchOption.AllDirectories);

        long logFileSize = 0;
        foreach (var info in logFileInfos)
            logFileSize += info.Length;

        long logZipSize = 0;
        foreach (var info in logZipInfo)
            logZipSize += info.Length;

        var logText = logFileInfos.Length + " log files, size: " + logFileSize + "; " +
                              logZipInfo.Length + " archives, size: " + logZipSize + ".";


        var potatoDir = bot.GetModuleByName("Potato").ModuleDir;
        var potDirInfo = new DirectoryInfo(potatoDir);

        var potFileInfos = potDirInfo.GetFiles("*.txt", SearchOption.AllDirectories);
        var potZipInfo = potDirInfo.GetFiles("*.zip", SearchOption.AllDirectories);

        long potSize = 0;
        long potZipSize = 0;

        foreach (var info in potFileInfos)
            potSize += info.Length;

        foreach (var info in potZipInfo)
            potZipSize += info.Length;

        var potText = potFileInfos.Length + " list files, size: " + potSize + "; " +
                              potZipInfo.Length + " archives, size: " + potZipSize + ".";


        pr.ResponseText = "Bot app memory use: " + memusage + " bytes." +
            " Uptime: " + uptime + "." +
            " " + logText +
            " " + potText;

        return pr;
    }
开发者ID:iansaviour,项目名称:SE-chat-bot-app-3,代码行数:57,代码来源:CoreCommands.cs

示例2: LastPostedImageID

    public IProcessingResult LastPostedImageID(IBot bot, IProcessingResult pr, IChatMessage msg, string arg)
    {
        pr.Solved = true;
        pr.Respond = true;
        pr.ResponseOrigin = Helper.GetExecutingMethodName(this);

        var v = bot.GetModuleByName("Potato");

        if (v != null)
        {
            var last = (string)v.GetParameter("last posted image url");

            string gris = @"https://www.google.com/searchbyimage?image_url=";
            string snao = @"http://saucenao.com/search.php?url=";
            string iqdb = @"http://iqdb.org/?url=";
            string tin = @"http://tineye.com/search?url=";
            string imagelink = last;
            string grislink = gris + imagelink;
            string snaolink = snao + imagelink;
            string iqdblink = iqdb + imagelink;
            string tinlink = tin + imagelink;

            string niceresponse = "[Google Reverse Image Search](" + grislink + "), [TinEye](" + tinlink + "), [SauceNAO](" + snaolink + "), [iqdb](" + iqdblink + ").";
            string shortresponse = grislink + " | " + tinlink + " | " + snaolink + " | " + iqdblink;

            pr.ResponseText = niceresponse.Length < 500 ? niceresponse : shortresponse;
        }

        return pr;
    }
开发者ID:iansaviour,项目名称:SE-chat-bot-app-3,代码行数:30,代码来源:CoreCommands.cs

示例3: InvokeImplicitCommand

        private IProcessingResult InvokeImplicitCommand(IBot bot, IProcessingResult pr, IChatMessage msg, string cmd, string arg)
        {
            var txt = Helper.RemoveBotNamesAndTriggerSymbol(bot.Name, msg.Text, bot.TriggerSymbol);
            var low = txt.ToLowerInvariant();

            // get uploader name and image tag
            {
                if (low == "uploader" ||
                    low == "info" ||
                    low == "tag")
                {
                    var v = bot.GetModuleByName("Potato");
                    if (v != null)
                    {
                        var resp = (string)v.GetParameter("last posted image short info");
                        pr.ResponseText = resp;
                        pr.Solved = true;
                        pr.Respond = true;

                        return pr;
                    }
                }
            }

            // who − last image identification
            {
                var words = low.Split(new char[] { ' ' }, StringSplitOptions.RemoveEmptyEntries).ToList();
                if (words.Contains("who") ||
                    words.Contains("who's") ||
                    words.Contains("what") ||
                    words.Contains("wut") ||
                    words.Contains("wat") ||
                    words.Contains("where") && words.Contains("from"))
                {
                    var v = bot.GetModuleByName("CoreCommands");

                    if (v != null)
                    {
                        pr = v.Command(bot, pr, msg, "last", arg, cmd, arg);

                        pr.Solved = true;
                        pr.Respond = true;

                        return pr;
                    }
                }
            }

            // loli − lolis are the best…
            {
                if (low.Contains("loli"))
                {
                    var v = bot.GetModuleByName("CoreCommands");

                    if (v != null)
                    {
                        pr = v.Command(bot, pr, msg, "say", "Lolis are the best!", cmd, arg);

                        pr.Solved = true;
                        pr.Respond = true;

                        return pr;
                    }
                }
            }

            return pr;
        }
开发者ID:iansaviour,项目名称:SE-chat-bot-app-3,代码行数:68,代码来源:Bot.cs


注:本文中的IBot.GetModuleByName方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。