about summary refs log tree commit diff stats
diff options
context:
space:
mode:
authorKelly Rauchenberger <fefferburbia@gmail.com>2016-12-14 02:30:14 -0500
committerKelly Rauchenberger <fefferburbia@gmail.com>2016-12-14 02:30:14 -0500
commit0f2802b3c8f3d1096df7ac483eba390ae952e13f (patch)
treedd58bd16064808391e7c42fe9886bef5faddfbe8
parent23bb1395c76f226dc6539f8f9ce89391fcfc8c67 (diff)
downloadyandere-0f2802b3c8f3d1096df7ac483eba390ae952e13f.tar.gz
yandere-0f2802b3c8f3d1096df7ac483eba390ae952e13f.tar.bz2
yandere-0f2802b3c8f3d1096df7ac483eba390ae952e13f.zip
Bot now takes path to config file as argument
That config file now also has to contain the path to the forms file.
-rw-r--r--README.md3
-rw-r--r--yandere.cpp13
2 files changed, 12 insertions, 4 deletions
diff --git a/README.md b/README.md index 08fc3b5..2e271a3 100644 --- a/README.md +++ b/README.md
@@ -81,11 +81,12 @@ There is one "special" group name: `{\n}` is always replaced by a newline.
81 81
82## Configuration 82## Configuration
83 83
84`yandere` looks for a file named `data.txt` in its working directory, and uses it as its datafile. As explained above, this datafile should at least have a group named `MAIN`. The bot also looks for a file named `config.yml`, from which it reads the details for authenticating with Twitter. This configuration file should have the following format, with the appropriate tokens inserted between the appropriate pairs of double quotes: 84When you run `yandere`, you pass it the path of a configuration file that tells the bot where to look for its datafile, which it calls "forms". As explained above, this datafile should at least have a group named `MAIN`. The bot also reads the details for authenticating with Twitter from this configuration file. This file should have the following format, with the appropriate tokens inserted between the appropriate pairs of double quotes:
85```yaml 85```yaml
86--- 86---
87 consumer_key: "" 87 consumer_key: ""
88 consumer_secret: "" 88 consumer_secret: ""
89 access_key: "" 89 access_key: ""
90 access_secret: "" 90 access_secret: ""
91 forms: "data.txt"
91``` 92```
diff --git a/yandere.cpp b/yandere.cpp index ec7322d..b9d42ec 100644 --- a/yandere.cpp +++ b/yandere.cpp
@@ -51,7 +51,14 @@ Container split(std::string input, std::string delimiter)
51 51
52int main(int argc, char** argv) 52int main(int argc, char** argv)
53{ 53{
54 YAML::Node config = YAML::LoadFile("config.yml"); 54 if (argc != 2)
55 {
56 std::cout << "usage: yandere [configfile]" << std::endl;
57 return -1;
58 }
59
60 std::string configfile(argv[1]);
61 YAML::Node config = YAML::LoadFile(configfile);
55 62
56 twitter::auth auth; 63 twitter::auth auth;
57 auth.setConsumerKey(config["consumer_key"].as<std::string>()); 64 auth.setConsumerKey(config["consumer_key"].as<std::string>());
@@ -62,10 +69,10 @@ int main(int argc, char** argv)
62 twitter::client client(auth); 69 twitter::client client(auth);
63 70
64 std::map<std::string, std::vector<std::string>> groups; 71 std::map<std::string, std::vector<std::string>> groups;
65 std::ifstream datafile("data.txt"); 72 std::ifstream datafile(config["forms"].as<std::string>());
66 if (!datafile.is_open()) 73 if (!datafile.is_open())
67 { 74 {
68 std::cout << "Could not find data.txt" << std::endl; 75 std::cout << "Could not find forms file." << std::endl;
69 return 1; 76 return 1;
70 } 77 }
71 78