public async Task <ChatConfig> Get() { var secret = Configuration.GetSection("ClientDirectLineSecret")?.Value; var endpoint = Configuration.GetSection("ClientDirectLineEndpoint")?.Value; var userId = "dl_" + Guid.NewGuid().ToString(); HttpClient client = new HttpClient(); HttpRequestMessage request = new HttpRequestMessage(HttpMethod.Post, $"{endpoint}/tokens/generate"); request.Headers.Authorization = new System.Net.Http.Headers.AuthenticationHeaderValue("Bearer", secret); request.Content = new StringContent(JsonConvert.SerializeObject(new { User = new { Id = userId }, TrustedOrigins = new string[] { "http://localhost:2978", "https://catering.azurewebsites.net/", } }), Encoding.UTF8, "application/json"); var response = await client.SendAsync(request); string token = String.Empty; if (response.IsSuccessStatusCode) { var body = await response.Content.ReadAsStringAsync(); token = JsonConvert.DeserializeObject <DirectLineToken>(body).token; } var config = new ChatConfig() { Token = token, Domain = endpoint, UserId = userId }; return(config); }
public async Task <IActionResult> RunAsyncToken([HttpTrigger(AuthorizationLevel.Anonymous, "get", "post", Route = "directlinetoken")] HttpRequest req, ILogger log) { log.LogInformation("Enttering RunAsyncToken"); var pp = new PostPayload() { user = new User() { id = "dl_" + Guid.NewGuid().ToString(), name = "You" } }; HttpRequestMessage request = new HttpRequestMessage( HttpMethod.Post, Environment.GetEnvironmentVariable("DirectLineConversationEndpoint")); request.Headers.Authorization = new AuthenticationHeaderValue("Bearer", Environment.GetEnvironmentVariable("DirectLineSecret")); // request.Content = new StringContent(JsonConvert.SerializeObject(pp), Encoding.UTF8, "application/json"); var response = await htc.SendAsync(request); var cnt = await response.Content.ReadAsStringAsync(); if (response.IsSuccessStatusCode) { string token = JsonConvert.DeserializeObject <DirectLineToken>(cnt).token; var config = new ChatConfig() { Token = token, UserId = pp.user.id }; return((IActionResult) new OkObjectResult(config)); } else { throw new Exception(""); } }
public static CommandProcessor SetUpCommandProcessor( ILoggerFactory loggerFactory, ArgsParser argsParser, Databases databases, StopToken stopToken, ChatConfig chatConfig, IMessageSender messageSender, IChatModeChanger chatModeChanger, IImmutableSet <Common.PkmnSpecies> knownSpecies) { var commandProcessor = new CommandProcessor( loggerFactory.CreateLogger <CommandProcessor>(), databases.CommandLogger, argsParser); IEnumerable <Command> commands = new[] { new EasterEggCommands().Commands, new StaticResponseCommands().Commands, new UserCommands( databases.UserRepo, pokeyenBank: databases.PokeyenBank, tokenBank: databases.TokensBank, messageSender ).Commands, new BadgeCommands(databases.BadgeRepo, databases.UserRepo, messageSender, knownSpecies).Commands, new OperatorCommands( stopToken, chatConfig.OperatorNames, databases.PokeyenBank, databases.TokensBank, messageSender: messageSender, databases.BadgeRepo ).Commands, new ModeratorCommands(chatConfig.ModeratorNames, chatConfig.OperatorNames, chatModeChanger).Commands, new MiscCommands().Commands, }.SelectMany(cmds => cmds).Concat(new[] { new HelpCommand(commandProcessor).Command }); foreach (Command command in commands) { commandProcessor.InstallCommand(command); } return(commandProcessor); }
public async Task <ChatConfig> Index() { var secret = GetSecret(); HttpClient client = new HttpClient(); HttpRequestMessage request = new HttpRequestMessage( HttpMethod.Post, $"https://directline.botframework.com/v3/directline/tokens/generate"); request.Headers.Authorization = new AuthenticationHeaderValue("Bearer", secret); var userId = $"dl_{Guid.NewGuid()}"; request.Content = new StringContent( JsonConvert.SerializeObject( new { User = new { Id = userId } }), Encoding.UTF8, "application/json"); var response = await client.SendAsync(request); string token = String.Empty; if (response.IsSuccessStatusCode) { var body = await response.Content.ReadAsStringAsync(); token = JsonConvert.DeserializeObject <DirectLineToken>(body).token; } var config = new ChatConfig() { Token = token, UserId = userId }; return(config); }
public async Task <ActionResult> Index() { var secret = "HHSO6aN78Sk.cwA.C-w.dzpNU1mb5U0GlZqqwe65OxYb9y2GHf4q2ypnlsF4D-8"; // DirectLinet(); //var secret = "FVtv5gqJRwY.cwA.tUw.n1yC9moSsCzFMUhp1mpIYXnFbVl1VPM3LWXHeOTsHAw"; // WebChat HttpClient client = new HttpClient(); HttpRequestMessage request = new HttpRequestMessage(HttpMethod.Post, $"https://directline.botframework.com/v3/directline/tokens/generate"); request.Headers.Authorization = new AuthenticationHeaderValue("Bearer", secret); var userId = $"dl_{Guid.NewGuid()}"; request.Content = new StringContent(JsonConvert.SerializeObject(new { User = new { Id = userId } }), Encoding.UTF8, "application/json"); var response = await client.SendAsync(request); string token = String.Empty; if (response.IsSuccessStatusCode) { var body = await response.Content.ReadAsStringAsync(); token = JsonConvert.DeserializeObject <DirectLineToken>(body).token; } var config = new ChatConfig() { Token = token, UserId = userId }; return(View(config)); }
public void Setup() { Config1 = new ChatConfig { FirstString = "Расписание на {OddEvenDayVinPod}:", SecondString = "Группа {Target}:", LessonString = "{NumberInTimetable}) {Time} {Subject} ({Type}) {Teacher} {Place}", NoLessons = "Нет пар", PeerId = 0, Targets = new List <string>(new[] { "КИ18-17/1б" }) }; Compiler1 = new Compiler(Config1); Config2 = new ChatConfig { FirstString = "Расписание на {OddEvenDayVinPod}:", SecondString = "Группа {Target}:", LessonString = "{NumberInTimetable}) {Time} {Subject} ({Type}) {Teacher} {Place}", NoLessons = "Нет пар", PeerId = 0, Targets = new List <string>(new[] { "КИ18-17/1б", "КИ18-17/2б" }) }; Compiler2 = new Compiler(Config2); }
private void ChatConfigChanged(ChatConfig config) { _configChanged = true; }
public new void LoadConfig() { if (!configFile.Exists()) { configFile.WriteObject(config = new ChatConfig() { CapsBlock = true, PrivateSoundMessage = true, PrivateSoundMessagePath = "assets/bundled/prefabs/fx/notice/stack.world.fx.prefab", prefixes = new List <ChatPrivilege>() { new ChatPrivilege() { Perm = "chatmanager.default", Arg = "default", Format = "", }, new ChatPrivilege() { Perm = "chatmanager.admin", Arg = "admin", Format = "<color=#a5e664>[Админ]</color>", }, new ChatPrivilege() { Perm = "chatmanager.premium", Arg = "premium", Format = "<color=#a5e664>[Премиум]</color>", } }, names = new List <ChatPrivilege>() { new ChatPrivilege() { Perm = "chatmanager.default", Arg = "default", Format = "<color=#ffffff>{0}</color>", }, new ChatPrivilege() { Perm = "chatmanager.purple", Arg = "purple", Format = "<color=#a5e664>{0}</color>", }, new ChatPrivilege() { Perm = "chatmanager.orange", Arg = "orange", Format = "<color=#e6a564>{0}</color>", } }, messages = new List <ChatPrivilege>() { new ChatPrivilege() { Perm = "chatmanager.default", Arg = "default", Format = "<color=#ffffff>{0}</color>>", }, new ChatPrivilege() { Perm = "chatmanager.blue", Arg = "blue", Format = "<color=#64a5e6>{0}</color>>", }, new ChatPrivilege() { Perm = "chatmanager.black", Arg = "black", Format = "<color=#000000>{0}</color>>", } }, badWords = new Dictionary <string, List <string> >() { { "ебля", new List <string>() }, { "сука", new List <string>() }, { "пидор", new List <string>() }, } }); } else { config = configFile.ReadObject <ChatConfig>(); } config.RegisterPerms(); }
public ChatCommands(ChatConfig config) { _config = config; }
public ChatConfig Update(ChatConfig config) { return(Update(CurrentAccount, config)); }
public ChatConfig Update(int accountId, ChatConfig config) { var rval = TDClient.Update <ChatConfig>(ITEM, new { accountId }, config); return(rval); }
public async void Awake() { await HttpReqUtil.Req(NetConfig.getInstance().getWebUrl() + "files/chat.json", ChatConfig.getInstance().init); ReferenceCollector rc = this.GetParent <UI>().GameObject.GetComponent <ReferenceCollector>(); ExpressionBtn = rc.Get <GameObject>("ExpressionBtn").GetComponent <Button>(); ShortBtn = rc.Get <GameObject>("ShortBtn").GetComponent <Button>(); Mask = rc.Get <GameObject>("Mask").GetComponent <Button>(); ExceptionTxt = rc.Get <GameObject>("ExceptionTxt").GetComponent <Text>(); ExpressionGrid = ExpressionBtn.transform.Find("Select_Btn/Scroll/ExpressionGrid").gameObject; ShortGrid = ShortBtn.transform.Find("Select_Btn/Scroll/ShortGrid").gameObject; ExpressionBtn.onClick.Add(() => { CreatExpressions(); }); CommonUtil.SetTextFont(this.GetParent <UI>().GameObject); Mask.onClick.Add(() => { CloseOrOpenChatUI(false); }); ShortBtn.onClick.Add(() => { CreateChatItems(); }); ExpressionItem = CommonUtil.getGameObjByBundle(UIType.UIExpression); ChatItem = CommonUtil.getGameObjByBundle(UIType.UIChatItem); isOpen = false; //选中表情包界面 CreatExpressions(); }
/// <summary> /// Инициализирует новый экземпляр класса <see cref="Compiler"/> используя заданную конфигурацию чата. /// </summary> /// <param name="config">Конфигурация чата.</param> public Compiler(ChatConfig config) { Config = config; }
/// <summary> /// Главная функция программы. /// </summary> /// <param name="args">Аргументы командной строки.</param> public static void Main(string[] args) { LogManager.Configuration.Variables["starttime"] = DateTime.Now.ToString("yyyy-MM-dd HH-mm-ss-ffff"); OutputEncoding = Encoding.UTF8; CancelKeyPress += Program_CancelKeyPress; Log.Trace("1234"); Log.Info("1234"); Log.Debug("1234"); Log.Warn("1234"); Log.Error("1234"); Log.Fatal("1234"); if (String.Join("; ", Directory.GetFiles(".")).Contains("config.json")) { Log.Info("Загружается конфирурация"); Config = JsonConvert.DeserializeObject <Config>(new StreamReader("config.json").ReadToEnd()); Log.Info("Загружена конфигурация"); } else { Log.Info("Создаётся конфигурция"); var token = "access_token"; var groupid = 1234ul; var target = "КИ18-17/1б"; bool Dialog() { WriteLine("Ввести AccessToken, GroupId и Target? [Y/n]"); var ans1 = ReadLine(); if (!string.IsNullOrEmpty(ans1) && ans1[0].ToString().ToLower() != "y") { return(false); } Write("AccessToken: "); token = ReadLine(); Write("GroupId: "); groupid = UInt64.Parse(ReadLine()); Write("Target: "); target = ReadLine(); return(true); } Log.Info("Открывается диалог введения параметров"); var ret = Dialog(); var config1 = new ChatConfig { FirstString = "Расписание на {OddEvenDayVinPod}:", SecondString = "Группа {TargetsList}:", LessonString = "{NumberInTimetable}) {Time} {Subject} ({Type}) {Teacher} {Place}", NoLessons = "Нет пар", PeerId = 0, Targets = new List <string>(new[] { target }) }; Config = new Config { AccessToken = token, GroupId = groupid, ChatConfigs = new List <ChatConfig>(new[] { config1 }) }; Log.Info("Сохраняется конфигурация"); var json = JsonConvert.SerializeObject(Config, Formatting.Indented); using (var w = new StreamWriter("config.json")) { w.WriteLine(json); } if (!ret) { Log.Fatal("Завершение программы потому что не были введены параметры"); return; } } Log.Debug("Авторизация"); var auth = new Authorizer(Config.AccessToken); Log.Debug("Создание и старт LongPollServer"); var lp = new LongPoller(auth.Api, Config.GroupId); lp.Start(); lp.Run(); Log.Debug("Создание и старт Answerer"); var t1 = new Answerer(auth.Api, lp, Config); while (true) { Log.Debug("Приложение работает"); Thread.Sleep(300000); } }
public ChatConfig Update(int accountId, ChatConfig config) { return(Api.Put($"/account/{accountId}/chatconfig/", config)); }