Ein WeChat-Roboter mit einfachen Funktionen und einfacher Bedienung
Unterstützte Funktionen:
Optionale Funktionen:
Verwenden Sie Voraussetzungen
git clone https://github.com/leantli/wc_robot.git
ausgo mod tidy
ausconfig.yaml
-> robot_name
und on_contact_nicknames
zu änderngo run main.go
env GOOS=linux GOARCH=amd64 go build -o wc_robot main.go
im Projektstammverzeichnis auswc_robot
und die Konfigurationsdatei config.yaml
auf den Server hoch. Es hängt von Ihnen ab, welches Verzeichnis Sie auf den Server hochladen.chmod +x ./wc_robot
erteilt der Datei die Ausführungsberechtigungnohup ./wc_robot > robot.log &
führen Sie das Programm im Hintergrund aus und geben Sie das Protokoll in die Datei robot.log
austail -50f ./robot.log
Beachten Sie das Protokoll. Der WeChat-Login-QR-Code befindet sich auch im Protokoll.2022.11.9 TODO(leantli):
weather_msg_handle.city_code
, Übereinstimmung mit dem entsprechenden Stadtgebiet gemäß den Nachrichten anderer WeChat-Benutzer für die Wetterübertragung (☑️)11.11.2022 TODO(leantli):
28.11.2022 TODO(leantli):
2022.12.9 TODO(leantli):
23.02.2023: Ich sollte dieses Projekt nicht weiter aktualisieren, um andere Möglichkeiten von WeChat-Robotern auszuprobieren. Schauen wir uns das später an, wenn ich Zeit habe.
Die folgenden Konfigurationsänderungen basieren auf
config.yaml
weather_msg_handle.switch_on
Gibt an, ob die automatische Antwort für dieses Schlüsselwort aktiviert werden soll. Der Standardwert ist true
covid_msg_handle.switch_on
Gibt an, ob die automatische Antwort für dieses Schlüsselwort aktiviert werden soll. Der Standardwert ist true
weather_schedules.switch_on
Gibt an, ob diese geplante Aufgabe aktiviert werden soll. Der Standardwert ist false
und enable ist auf true
gesetztweather_schedules.to_nicknames
An wen soll die Wettervorhersage gesendet werden? Der ausgefüllte Inhalt ist der Spitzname des WeChat-Benutzers. Wenn mehrere Personen ausgefüllt werden müssen, trennen Sie diese durch Kommas.weather_schedules.to_remarknames
An wen soll die Wettervorhersage gesendet werden? Die ausgefüllten Kommentare des WeChat-Benutzers werden während der normalen WeChat-Kommunikation nicht zurückgegeben ausgefüllt werden, durch englische Kommas „,“ trennenweather_schedules.times
ist die spezifische Zeit für das regelmäßige Senden von Wettervorhersagen jeden Tag. Das Format ist „00:00:00“. Mehrere Zeiten werden durch englische Kommas „,“ getrennt.weather_schedules.city_code
Das Gebiet, in dem diese Wettervorhersage ausgestrahlt wird, ist standardmäßig das Nanshan-Gebiet von Shenzhen. Wenn Sie es ändern müssen, siehe https://wis.qq.com/city/like?source=pc&city=Nanshan, ändern Suchen Sie selbst nach dem letzten „Nanshan“ und suchen Sie nach dem entsprechenden city_code clock_in_schedules.switch_on
Gibt an, ob diese geplante Aufgabe aktiviert werden soll. Der Standardwert ist false
und enable ist auf true
gesetztclock_in_schedules.to_nicknames
An wen soll diese Nachricht gesendet werden? Geben Sie den Spitznamen des WeChat-Benutzers ein. Wenn mehrere Personen eingegeben werden müssen, trennen Sie diese durch Kommas.clock_in_schedules.to_remarknames
An wen soll diese Nachricht gesendet werden? Die ausgefüllten Kommentare des WeChat-Benutzers werden während der normalen Kommunikation auf WeChat nicht zurückgegeben und können nicht erkannt werden ausgefüllt werden, trennen Sie sie durch englische Kommas ','clock_in_schedules.times
ist die spezifische Uhrzeit zum regelmäßigen Versenden von Nachrichten an jedem Tag. Das Format ist „00:00:00“. Mehrere Zeiten werden durch englische Kommas „,“ getrennt.clock_in_schedules.text
, z. B. „Ich vermisse meine Frau so sehr❤️“, „Kommst du noch nicht von der Arbeit?“ days_matters.switch_on
Gibt an, ob diese geplante Aufgabe aktiviert werden soll. Der Standardwert ist false
und enable ist auf true
gesetztdays_matters.to_nicknames
An wen soll die Erinnerung gesendet werden? Der ausgefüllte Inhalt sollte der Spitzname des WeChat-Benutzers sein. Wenn mehrere Personen ausgefüllt werden müssen, trennen Sie diese durch Kommas.days_matters.to_remarknames
An wen soll die Erinnerung gesendet werden? Die ausgefüllten Kommentare des WeChat-Benutzers werden während der normalen WeChat-Kommunikation nicht zurückgegeben und können nicht erkannt werden ausgefüllt, trennen Sie sie durch englische Kommas ','days_matters.times
ist die spezifische Zeit, zu der jeden Tag Erinnerungen gesendet werden. Das Format ist „00:00:00“. Mehrere Zeiten werden durch englische Kommas „,“ getrennt.days_matters.date
Die spezifischen Daten wichtiger Tage im Format „JJJJ-MM-TT“, z. B. „2021-4-3“.days_matters.content
sind die wichtigen Tage, wie zum Beispiel „Mit meiner Frau zusammen sein“, „Gehalt zahlen“Nehmen wir als Beispiel „mit meiner Frau“.
Wenn das Datum auf die vergangene Zeit eingestellt ist, wird die Nachricht als „%s (mit meiner Frau) ist seit %d Tagen vergangen“ gesendet.
Wenn das Datum auf die Tageszeit eingestellt ist, wird die Nachricht als „Heute ist %s (mit meiner Frau)“ gesendet.
Wenn das Datum auf eine zukünftige Zeit eingestellt ist, wird die Nachricht wie folgt gesendet: „Es sind noch %d Tage bis %s (mit meiner Frau)“
alapi.switch_on
Gibt an, ob die automatische Antwort für dieses Schlüsselwort aktiviert werden soll. Der Standardwert ist false
. Wenn aktiviert, konfigurieren Sie es auf true
und achten Sie auf die Konfiguration token
alapi.token
, Sie müssen sich auf der ALAPI-Website registrieren, um es kostenlos zu erhalten. Benutzer der API unterstützen 1qps-Aufrufe, was für den persönlichen Gebrauch mehr als ausreichend ist. openai.api_key
: Authentifizierungstoken von open_ai. Sie müssen sich auf der offiziellen Website von openai registrieren und es von https://beta.openai.com/account/api-keys erhaltenopenai.gpt_text_switch_on
Gibt an, ob die GPT-Textantwortfunktion aktiviert werden soll. Der Standardwert ist false
.openai.gpt_text_is_default_reply
Gibt an, ob die GPT-Textantwort als Standardantwort festgelegt werden soll (d. h. GPT wird automatisch aufgerufen, wenn keine anderen Schlüsselwörter ausgelöst werden), false. Im geschlossenen Zustand muss die GPT-Antwort über das standardmäßig aktivierte Format „gpt xxx“ ausgelöst werden