Skip to content

Commit

Permalink
fixed issue
Browse files Browse the repository at this point in the history
  • Loading branch information
johan-t committed Jan 7, 2024
1 parent 9374b50 commit 64404fb
Show file tree
Hide file tree
Showing 4 changed files with 59 additions and 39 deletions.
6 changes: 5 additions & 1 deletion commands/test-command.ts
Expand Up @@ -244,7 +244,11 @@ async function initiateConversation(interaction: any, userResponses: number[]):
await textChannel.send(`Bei beispielsweise diesen drei Fragen seid ihr nicht einer Meinung:`);

// This function will send starter questions where they disagreed
conversationStarter(textChannel, interaction, bestMatch, userResponses);
// fetch the encrypted userVector from the database for the bestMatch and decrypt it
const bestMatchUserContext = await db.db('contrabot').collection("users").findOne({ userId: bestMatchId });
const bestMatchUserResponses = bestMatchUserContext?.userVector ? JSON.parse(decrypt(bestMatchUserContext.userVector)) : [];

conversationStarter(textChannel, interaction, bestMatchUserResponses, bestMatchId, userResponses);

interaction.user.send(`Du wurdest erfolgreich mit **@${bestMatch.user.username}** gematcht. Schau auf den Discord-Server um mit dem Chatten zu beginnen! 😊`);
client.users.fetch(bestMatchId).then(user => {
Expand Down
14 changes: 14 additions & 0 deletions example.json
@@ -0,0 +1,14 @@
{
"_id": {
"$oid": "759ab26b3fd442f53a3b88ec"
},
"userId": "371292275613106180",
"currentFeedbackQuestionIndex": 0,
"currentQuestionIndex": 0,
"feedbackRequestSent": false,
"invited": null,
"joined": null,
"userVector": "67a556146ca69b1b15173c187b18d7cf:6c54dec958fb39a6fae7ae56f6afd116",
"username": "KoTenshi",
"completionTime": "2024-01-07T14:17:32.628Z"
}
14 changes: 8 additions & 6 deletions functions/conversationStarter.ts
Expand Up @@ -3,13 +3,15 @@ import { questions } from '../questions';
import { CronJob } from "cron";
import { client, db } from "../common";

export async function conversationStarter(channelOfDestination: any, interaction: any, bestMatch: any, user: number[]) {
export async function conversationStarter(channelOfDestination: any, interaction: any, bestMatchUserResponses: any, bestMatchId: any, user: number[]) {
console.log(user);
console.log(bestMatchUserResponses);
// get all contrasting and similar answers
let addedToDisagree = false; // Track if any numbers were added to disagree
const disagree: number[] = [];

user.forEach((value, i) => {
const total = value + bestMatch.userVector[ i ];
const total = value + bestMatchUserResponses[ i ];
if (value !== 0 && total === 0) {
disagree.push(i);
addedToDisagree = true;
Expand All @@ -18,7 +20,7 @@ export async function conversationStarter(channelOfDestination: any, interaction
// Only add to disagree if the flag is still false
if (!addedToDisagree || disagree.length < 6) {
user.forEach((value, i) => {
const total = value + bestMatch.userVector[ i ];
const total = value + bestMatchUserResponses[ i ];
if (Math.abs(total) === 1) {
disagree.push(i);
}
Expand All @@ -33,7 +35,7 @@ export async function conversationStarter(channelOfDestination: any, interaction

client.on('messageCreate', (message: any) => {
if (message.channel.id === channelOfDestination.id) {
if (message.author.id === bestMatch.userId) {
if (message.author.id === bestMatchId) {
bestMatchSentMessage = true;
return;
}
Expand Down Expand Up @@ -76,14 +78,14 @@ export async function conversationStarter(channelOfDestination: any, interaction
if (!bestMatchSentMessage && conv.eightHourNotificationSent) {
//Send messages to both users
interaction.user.send(`Dein Gesprächspartner hat das Gespräch verlassen. Wir finden einen neuen Gesprächspartner für dich.`);
client.users.fetch(String(bestMatch.userId)).then((user: User) => {
client.users.fetch(String(bestMatchUserResponses)).then((user: User) => {
user.send(`Aufgrund von Inaktivität wurde das Gespräch beendet. Bitte starte einen neuen Test, um einen neuen Gesprächspartner zu finden.`);
});

// Delete the channel, conversation and BestMatch from the database
channelOfDestination.delete();
db.db('contrabot').collection("conversations").deleteOne({ _id: conv._id });
await db.db('contrabot').collection("users").deleteOne({ userId: bestMatch.userId });
await db.db('contrabot').collection("users").deleteOne({ userId: bestMatchId });
}
});
});
Expand Down
64 changes: 32 additions & 32 deletions questions.ts
@@ -1,36 +1,36 @@
export const questions = [
{ "question": "Auf allen Autobahnen soll ein generelles Tempolimit gelten.", "tag": ["Verkehrssicherheit", " Klimawandel"] },
{ "question": "Deutschland soll seine Verteidigungsausgaben erhöhen.", "tag": "Verteidigungspolitik" },
{ "question": "Bei Bundestagswahlen sollen auch Jugendliche ab 16 Jahren wählen dürfen.", "tag": ["Wahlalter", "Demokratie"] },
{ "question": "Die Förderung von Windenenergie soll beendet werden?", "tag": ["Energiepolitik", "Klimawandel"] },
{ "question": "Die Möglichkeiten der Vermieterinnen und Vermieter, Wohnungsmieten zu erhöhen, sollen gesetzlich stärker begrenzt werden.", "tag": ["Mietpreisbremse", "Wohnraumkosten"] },
{ "question": "Die Ukraine soll Mitglied der Europäischen Union werden dürfen.", "tag": ["EU-Erweiterung", "Ukraine Krieg"] },
{ "question": "Der geplante Ausstieg aus der Kohleverstromung soll vorgezogen werden.", "tag": ["Energiepolitik", "Umweltschutz"] },
{ "question": "Alle Erwerbstätigen sollen in der gesetzlichen Rentenversicherung versichert sein müssen.", "tag": "Sozialpolitik" },
{ "question": "Das Recht anerkannter Flüchtlinge auf Familiennachzug soll abgeschafft werden.", "tag": "Migrationspolitik" },
{ "question": "Auf den Umsatz, der in Deutschland mit digitalen Dienstleistungen erzielt wird, soll eine nationale Steuer erhoben werden.", "tag": "Steuerpolitik" },
{ "question": "Die traditionelle Familie aus Vater, Mutter und Kindern soll stärker als andere Lebensgemeinschaften gefördert werden.", "tag": "Familienpolitik" },
{ "question": "Spenden von Unternehmen an Parteien sollen weiterhin erlaubt sein.", "tag": "Parteienfinanzierung" },
{ "question": "Migration in die Europäische Union sollte erleichtert werden.", "tag": "Migrationspolitik" },
{ "question": "Studentinnen und Studenten sollen BAföG unabhängig vom Einkommen ihrer Eltern erhalten.", "tag": "Bildungspolitik" },
{ "question": "In Deutschland soll es generell möglich sein, neben der deutschen eine zweite Staatsbürgerschaft zu haben.", "tag": ["Staatsbürgerschaft", "Migrationspolitik"] },
{ "question": "Bundesbehörden sollen in ihren Veröffentlichungen unterschiedliche Geschlechtsidentitäten sprachlich berücksichtigen müssen.", "tag": ["Genderpolitik", "Minderheitenpolitik"] },
{ "question": "Der Solidaritätszuschlag soll vollständig abgeschafft werden.", "tag": ["Steuerpolitik", "Solidaritätszuschlag"] },
{ "question": "Das Tragen eines Kopftuchs soll Beamtinnen im Dienst generell erlaubt sein.", "tag": ["Religionsfreiheit", "Minderheitenpolitik"] },
{ "question": "Die Zulassung von neuen Autos mit Verbrennungsmotor soll auch langfristig möglich sein.", "tag": "Klimawandel" },
{ "question": "Der Bund soll mehr Zuständigkeiten in der Schulpolitik erhalten.", "tag": "Bildungspolitik" },
{ "question": "Der Bund soll Projekte zur Bekämpfung des Antisemitismus stärker finanziell unterstützen.", "tag": ["Antisemitismus", "Minderheitenpolitik"] },
{ "question": "Chinesische Firmen sollen keine Aufträge für den Ausbau der Kommunikationsinfrastruktur in Deutschland erhalten dürfen.", "tag": "Wirtschaftspolitik" },
{ "question": "Der Staat soll weiterhin für Religionsgemeinschaften die Kirchensteuer einziehen.", "tag": "Kirchensteuer" },
{ "question": "Der kontrollierte Verkauf von Cannabis soll generell erlaubt sein.", "tag": "Drogenpolitik" },
{ "question": "Deutschland soll aus der Europäischen Union austreten.", "tag": "EU-Politik" },
{ "question": "Die Landeslisten der Parteien für die Wahlen zum Deutschen Bundestag sollen abwechselnd mit Frauen und Männern besetzt werden müssen.", "tag": ["Geschlechtergerechtigkeit", "Minderheitenpolitik"] },
{ "question": "Stationäre Behandlungen im Krankenhaus sollen weiterhin über eine Fallpauschale abgerechnet werden.", "tag": "Gesundheitspolitik" },
{ "question": "Auf hohe Vermögen soll wieder eine Steuer erhoben werden.", "tag": ["Steuerpolitik", "Vermögenssteuer"] },
{ "question": "Bei der Videoüberwachung öffentlicher Plätze soll Gesichtserkennungssoftware eingesetzt werden dürfen.", "tag": ["Datenschutz", "Videoüberwachung"] },
{ "question": "Auch Ehepaare ohne Kinder sollen weiterhin steuerlich begünstigt werden.", "tag": "Familienpolitik" },
{ "question": "Ökologische Landwirtschaft soll stärker gefördert werden als konventionelle Landwirtschaft.", "tag": "Klimawandel" },
{ "question": "Islamische Verbände sollen als Religionsgemeinschaften staatlich anerkannt werden können.", "tag": ["Religionspolitik", "Minderheitenpolitik"] },
//{ "question": "Auf allen Autobahnen soll ein generelles Tempolimit gelten.", "tag": ["Verkehrssicherheit", " Klimawandel"] },
//{ "question": "Deutschland soll seine Verteidigungsausgaben erhöhen.", "tag": "Verteidigungspolitik" },
//{ "question": "Bei Bundestagswahlen sollen auch Jugendliche ab 16 Jahren wählen dürfen.", "tag": ["Wahlalter", "Demokratie"] },
//{ "question": "Die Förderung von Windenenergie soll beendet werden?", "tag": ["Energiepolitik", "Klimawandel"] },
//{ "question": "Die Möglichkeiten der Vermieterinnen und Vermieter, Wohnungsmieten zu erhöhen, sollen gesetzlich stärker begrenzt werden.", "tag": ["Mietpreisbremse", "Wohnraumkosten"] },
//{ "question": "Die Ukraine soll Mitglied der Europäischen Union werden dürfen.", "tag": ["EU-Erweiterung", "Ukraine Krieg"] },
//{ "question": "Der geplante Ausstieg aus der Kohleverstromung soll vorgezogen werden.", "tag": ["Energiepolitik", "Umweltschutz"] },
//{ "question": "Alle Erwerbstätigen sollen in der gesetzlichen Rentenversicherung versichert sein müssen.", "tag": "Sozialpolitik" },
//{ "question": "Das Recht anerkannter Flüchtlinge auf Familiennachzug soll abgeschafft werden.", "tag": "Migrationspolitik" },
//{ "question": "Auf den Umsatz, der in Deutschland mit digitalen Dienstleistungen erzielt wird, soll eine nationale Steuer erhoben werden.", "tag": "Steuerpolitik" },
//{ "question": "Die traditionelle Familie aus Vater, Mutter und Kindern soll stärker als andere Lebensgemeinschaften gefördert werden.", "tag": "Familienpolitik" },
//{ "question": "Spenden von Unternehmen an Parteien sollen weiterhin erlaubt sein.", "tag": "Parteienfinanzierung" },
//{ "question": "Migration in die Europäische Union sollte erleichtert werden.", "tag": "Migrationspolitik" },
//{ "question": "Studentinnen und Studenten sollen BAföG unabhängig vom Einkommen ihrer Eltern erhalten.", "tag": "Bildungspolitik" },
//{ "question": "In Deutschland soll es generell möglich sein, neben der deutschen eine zweite Staatsbürgerschaft zu haben.", "tag": ["Staatsbürgerschaft", "Migrationspolitik"] },
//{ "question": "Bundesbehörden sollen in ihren Veröffentlichungen unterschiedliche Geschlechtsidentitäten sprachlich berücksichtigen müssen.", "tag": ["Genderpolitik", "Minderheitenpolitik"] },
//{ "question": "Der Solidaritätszuschlag soll vollständig abgeschafft werden.", "tag": ["Steuerpolitik", "Solidaritätszuschlag"] },
//{ "question": "Das Tragen eines Kopftuchs soll Beamtinnen im Dienst generell erlaubt sein.", "tag": ["Religionsfreiheit", "Minderheitenpolitik"] },
//{ "question": "Die Zulassung von neuen Autos mit Verbrennungsmotor soll auch langfristig möglich sein.", "tag": "Klimawandel" },
//{ "question": "Der Bund soll mehr Zuständigkeiten in der Schulpolitik erhalten.", "tag": "Bildungspolitik" },
//{ "question": "Der Bund soll Projekte zur Bekämpfung des Antisemitismus stärker finanziell unterstützen.", "tag": ["Antisemitismus", "Minderheitenpolitik"] },
//{ "question": "Chinesische Firmen sollen keine Aufträge für den Ausbau der Kommunikationsinfrastruktur in Deutschland erhalten dürfen.", "tag": "Wirtschaftspolitik" },
//{ "question": "Der Staat soll weiterhin für Religionsgemeinschaften die Kirchensteuer einziehen.", "tag": "Kirchensteuer" },
//{ "question": "Der kontrollierte Verkauf von Cannabis soll generell erlaubt sein.", "tag": "Drogenpolitik" },
//{ "question": "Deutschland soll aus der Europäischen Union austreten.", "tag": "EU-Politik" },
//{ "question": "Die Landeslisten der Parteien für die Wahlen zum Deutschen Bundestag sollen abwechselnd mit Frauen und Männern besetzt werden müssen.", "tag": ["Geschlechtergerechtigkeit", "Minderheitenpolitik"] },
//{ "question": "Stationäre Behandlungen im Krankenhaus sollen weiterhin über eine Fallpauschale abgerechnet werden.", "tag": "Gesundheitspolitik" },
//{ "question": "Auf hohe Vermögen soll wieder eine Steuer erhoben werden.", "tag": ["Steuerpolitik", "Vermögenssteuer"] },
//{ "question": "Bei der Videoüberwachung öffentlicher Plätze soll Gesichtserkennungssoftware eingesetzt werden dürfen.", "tag": ["Datenschutz", "Videoüberwachung"] },
//{ "question": "Auch Ehepaare ohne Kinder sollen weiterhin steuerlich begünstigt werden.", "tag": "Familienpolitik" },
//{ "question": "Ökologische Landwirtschaft soll stärker gefördert werden als konventionelle Landwirtschaft.", "tag": "Klimawandel" },
//{ "question": "Islamische Verbände sollen als Religionsgemeinschaften staatlich anerkannt werden können.", "tag": ["Religionspolitik", "Minderheitenpolitik"] },
{ "question": "Der staatlich festgelegte Preis für den Ausstoß von CO2 beim Heizen und Autofahren soll stärker steigen als geplant.", "tag": ["Klimaschutz", "Klimawandel"] },
{ "question": "Die Schuldenbremse im Grundgesetz soll beibehalten werden.", "tag": "Wirtschaftspolitik" },
{ "question": "Asyl soll weiterhin nur politisch Verfolgten gewährt werden.", "tag": "Migrationspolitik" },
Expand Down

0 comments on commit 64404fb

Please sign in to comment.