mirror of
https://github.com/narkoz/hacker-scripts
synced 2025-08-22 10:27:11 +00:00
45 lines
1.1 KiB
Scala
45 lines
1.1 KiB
Scala
/*******************************************
|
|
*
|
|
* Get Ammonite (http://lihaoyi.github.io/Ammonite/#Ammonite-Shell):
|
|
* $ mkdir ~/.ammonite; curl -L -o ~/.ammonite/predef.scala http://git.io/vR04f
|
|
* $ curl -L -o amm http://git.io/vR08A; chmod +x amm
|
|
*
|
|
* Run script
|
|
* $ ./amm fucking-coffee.scala
|
|
*
|
|
*******************************************/
|
|
|
|
import java.net._
|
|
import java.io._
|
|
import ammonite.ops._
|
|
import ammonite.ops.ImplicitWd._
|
|
|
|
val coffeeMachineIP = "10.10.42.42"
|
|
val password = "1234"
|
|
val passwordPrompt = "Password: "
|
|
val delayBeforeBrew = 17
|
|
val delay = 24
|
|
|
|
if ((%%who "-q").out.string.contains(sys.props("user.name"))) {
|
|
|
|
val telnet = new Socket(coffeeMachineIP, 23)
|
|
val out = new PrintWriter(telnet.getOutputStream, true)
|
|
val in = new BufferedReader(new InputStreamReader(telnet.getInputStream))
|
|
|
|
println(s"Wait for $delayBeforeBrew seconds")
|
|
Thread.sleep(delayBeforeBrew * 1000);
|
|
|
|
if(in.readLine == passwordPrompt){
|
|
out.println(password)
|
|
|
|
out.println("sys brew")
|
|
Thread.sleep(delay * 1000)
|
|
out.println("sys pour")
|
|
|
|
}
|
|
|
|
out.close()
|
|
in.close()
|
|
telnet.close()
|
|
|
|
} |