Instantly share code, notes, and snippets.
-
Save Adrianl3d/70d8f7c2ff80d2f310cc to your computer and use it in GitHub Desktop.
Auto chat responder (obsolete)
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// | |
// afkMenu.js | |
// Version 0.2 | |
// Created by Adrian 31 September 2014 | |
// Copyright Adrian McCarlie | |
// This script creates a menu called Greetings | |
// this opens a window which allows you to set an auto response message | |
// to respond to any chat message directed at you that contains @yourUserName. | |
// Default is responder disabled, start and stop any time from the menu. | |
// Change lines 154,155,156 if you want to set your own default messages. | |
// The menu item Gestures enables the gesture to be sent to chat with a click. | |
// Distributed under the Apache License, Version 2.0. | |
// See the accompanying file LICENSE or http://www.apache.org/licenses/LICENSE-2.0.html | |
var time = "10 Mins"; | |
var greeting = ""; | |
var isRunning = false; | |
var gesture1 = "~\u266b~*~Happy Holidays~\u266a~*~\u2665~"; | |
var gesture2 = "\u266b \u266a \u266a \u266a \u266b";// music notes | |
var gesture3 = "\u2764 \u2764 \u2764";// 3 hearts | |
var gesture4 = "~~waves~~"; | |
var gesture5 = "\u263a"; //smiley face | |
var gesture6 = "\u277f \u277e \u277d \u277c \u277b \u277a \u2779 \u2778 \u2777 \u2776 "; //countdown | |
//var gesture6 = "\u263c \u2640 \u2642; //symbols male fem sun | |
var gesture7 = " Party at my place, click \u27aa @" + GlobalServices.myUsername + " \u266b"; // | |
function setupMenus(){ | |
if (!Menu.menuExists("Greetings")) { | |
Menu.addMenu("Greetings"); | |
Menu.addMenuItem({ | |
menuName: "Greetings", | |
menuItemName: "Start", | |
isCheckable: false | |
}); | |
Menu.addMenuItem({ | |
menuName: "Greetings", | |
menuItemName: "Change Greeting", | |
isCheckable: false | |
}); | |
Menu.addMenu("Greetings > Gestures"); | |
Menu.addMenuItem("Greetings > Gestures", "Click to send to chat"); | |
Menu.addMenuItem({ | |
menuName: "Greetings > Gestures", | |
menuItemName: gesture1, | |
}); | |
Menu.addMenuItem({ | |
menuName: "Greetings > Gestures", | |
menuItemName: gesture2, | |
}); | |
Menu.addMenuItem({ | |
menuName: "Greetings > Gestures", | |
menuItemName: gesture3, | |
}); | |
Menu.addMenuItem({ | |
menuName: "Greetings > Gestures", | |
menuItemName: gesture4, | |
}); | |
Menu.addMenuItem({ | |
menuName: "Greetings > Gestures", | |
menuItemName: gesture5, | |
}); | |
Menu.addMenuItem({ | |
menuName: "Greetings > Gestures", | |
menuItemName: gesture6, | |
}); | |
Menu.addMenuItem({ | |
menuName: "Greetings > Gestures", | |
menuItemName: gesture7, | |
}); | |
Menu.addMenuItem({ | |
menuName: "Greetings", | |
menuItemName: "Remove Menu", | |
isCheckable: false | |
}); | |
} | |
} | |
function menuItemEvent(menuItem){ | |
if (menuItem == "Stop"){ | |
Menu.removeMenuItem("Greetings","Stop"); | |
Menu.addMenuItem({ | |
menuName: "Greetings", | |
menuItemName: "Start", | |
isCheckable: false | |
}); | |
isRunning = false; | |
} | |
if (menuItem == "Start"){ | |
Menu.removeMenuItem("Greetings","Start") | |
Menu.addMenuItem({ | |
menuName: "Greetings", | |
menuItemName: "Stop", | |
isCheckable: false | |
}); | |
setGreetingForm(); | |
isRunning = true; | |
} | |
if (menuItem == "Change Greeting"){ | |
setGreetingForm(); | |
} | |
if (menuItem == gesture1){ | |
blameJudas(menuItem); | |
} | |
if (menuItem == gesture2){ | |
blameJudas(menuItem); | |
} | |
if (menuItem == gesture3){ | |
blameJudas(menuItem); | |
} | |
if (menuItem == gesture4){ | |
blameJudas(menuItem); | |
} | |
if (menuItem == gesture5){ | |
blameJudas(menuItem); | |
} | |
if (menuItem == gesture6){ | |
blameJudas(menuItem); | |
} | |
if (menuItem == gesture7){ | |
blameJudas(menuItem); | |
} | |
if (menuItem == "Remove Menu"){ | |
removeMenu(); | |
} | |
} | |
setupMenus(); | |
Menu.menuItemEvent.connect(menuItemEvent); | |
function blameJudas(gesture){ | |
GlobalServices.chat(gesture); | |
} | |
var me = GlobalServices.myUsername; | |
function onIncommingMessage(user, message) { | |
var myMessage = message; | |
var alertMe = "@" + me; | |
if (isRunning == true){ | |
if (myMessage.indexOf(alertMe) > -1) { | |
GlobalServices.chat(greeting); | |
} | |
} | |
} | |
function setGreetingForm() { | |
var greeting1 = " Sorry but " + me + " is currently AFK! please try again in "; | |
var greeting2 = " Sorry but ~*" + me + "*~ is currently busy! please try again in "; | |
var greeting3 = " Sorry but I missed your message, feel free to drop in"; | |
var form = | |
[ | |
{ label: "Greeting:", options: [greeting1, greeting2, greeting3, "CUSTOM MESSAGE"] }, | |
{ label: "Time:", value: time}, | |
{ label: "Custom Greeting:", value: "Select CUSTOM MESSAGE then enter custom message here" } | |
]; | |
if (Window.form("Set Chat Auto-Response Message", form)) { | |
if (form[0].value == "CUSTOM MESSAGE"){ | |
greeting = form[2].value; | |
}else { | |
time = form[1].value; | |
greeting = form[0].value + time; | |
} | |
} | |
} | |
GlobalServices.incomingMessage.connect(onIncommingMessage); | |
function removeMenu(){ | |
Menu.removeMenu("Greetings"); | |
Script.stop(removeMenu); | |
} | |
function scriptEnding(){ | |
} | |
Script.scriptEnding.connect(removeMenu); |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
This Script no longer works with High Fidelity since they removed the global chat system