示例#1
0
        private static void ProcessMessage(jsonFormats.Result result)
        {
            int id = result.message.from.id;

            if (result.message.message_id > Settings.LastUMid)
            {
                switch (result.message.text.ToLower())
                {
                case "cтарт":
                case "/start":
                    if (Settings.GetUsers.Contains(id))
                    {
                        SendMessage("Для вас уже включена рассылка", id);
                    }
                    else
                    {
                        Settings.GetUsers.Add(id);
                        SendMessage("Теперь вы будете получать рассылку", id);
                        Debug.Log(result.message.from.first_name
                                  + " добавлен в список пользователей");
                    }
                    break;

                case "cтоп":
                case "/stop":
                    if (Settings.GetUsers.Contains(id))
                    {
                        Settings.GetUsers.Remove(id);
                        SendMessage("Теперь вы не будете получать рассылку", id);
                        Debug.Log(result.message.from.first_name
                                  + " удалён из списка пользователей");
                    }
                    else
                    {
                        SendMessage("Вы и так не получали рассылку...", id);
                    }
                    break;

                default:
                    SendMessage("Извините, но я вас не понимаю...", id);
                    Debug.LogWarning(result.message.from.first_name
                                     + " пишет: " + result.message.text);
                    break;
                }
            }
        }
示例#2
0
        static void MsgUpd()
        {
            JavaScriptSerializer serializer = new JavaScriptSerializer();

            while (TasksMgr.doOtherThreads)
            {
                try
                {
                    string offset = Params.LastUMid == -1 ? "" : "offset=" + (Params.LastUMid + 1);
                    string ret    = Utilites.Post("https://api.telegram.org/bot"
                                                  + Params.TelegToken + "/getUpdates", offset);

                    var obj = serializer.Deserialize <jsonFormats.GetUpdResRoot>(ret);

                    if (obj != null && obj.ok && obj.result.Length > 0)
                    {
                        for (int i = 0; i < obj.result.Length; i++)
                        {
                            jsonFormats.Result result = obj.result[i];
                            int id = result.message.from.id;

                            if (result.message.message_id > Params.LastUMid)
                            {
                                switch (result.message.text)
                                {
                                case "Старт":
                                case "cтарт":
                                case "/start":
                                    if (Params.Users.Contains(id))
                                    {
                                        SendMessage("Для вас уже включена рассылка", id);
                                    }
                                    else
                                    {
                                        Params.Users.Add(id);
                                        SendMessage("Теперь вы будете получать рассылку", id);
                                        Debug.Log(result.message.from.first_name + " добавлен в список пользователей");
                                    }
                                    break;

                                case "Стоп":
                                case "cтоп":
                                case "/stop":
                                    if (Params.Users.Contains(id))
                                    {
                                        Params.Users.Remove(id);
                                        SendMessage("Теперь вы не будете получать рассылку", id);
                                        Debug.Log(result.message.from.first_name + " удалён из списка пользователей");
                                    }
                                    else
                                    {
                                        SendMessage("Вы и так не получали рассылку...", id);
                                    }
                                    break;

                                default:
                                    SendMessage("Извините, но я вас не понимаю...", id);
                                    Debug.LogWarning(result.message.from.first_name + " пишет: " + result.message.text);
                                    break;
                                }
                            }
                        }
                        Params.LastUMid = obj.result[obj.result.Length - 1].message.message_id;
                    }
                    Thread.Sleep(1500);
                }
                catch (Exception e)
                {
                    Debug.LogException(e);
                }
            }
        }