Med @Fermate og min forestående plugin for Smarter Coffee og iKettle, kan man bruke Alexa til å sette i gang kaffekokingen. @Fermate har allerede laget et glimrende oppsett med direkte integrasjon mot devicene til plugin'en, men jeg ville se litt nærmere på hvordan jeg kunne bruke scripts sammen med Alexa. Det gir enda flere muligheter med tanke på spørsmål og svar.
Dette brukes sammen med Jon00s Alexa Helper.
Husk å oppdatere "cupsDeviceRef", "strengthDevRef" og "brewDevRef".
Alexa_CoffeeHelper.vb
'Moskus 2017
Function SetCups(ByVal speech As String) As String
hs.WriteLog("CoffeeHelper SetCups", "Input received: '" & speech & "'")
Dim cupsDeviceRef As Integer = 1475
Dim number As Integer = 0
Dim success As Boolean = Integer.TryParse(speech, number)
Dim answer As String = ""
If success Then
hs.CAPIControlHandler(hs.CAPIGetSingleControl(cupsDeviceRef, True, number & " cups", False, False))
answer = number & " cups selected. "
Else
hs.CAPIControlHandler(hs.CAPIGetSingleControl(cupsDeviceRef, True, 6 & " cups", False, False))
answer = "I didnt' understand " & speech & " so I selected 6. "
End If
Return answer & "Do you want weak, normal, or strong coffee?"
End Function
Function SetStrength(ByVal speech As String) As String
hs.WriteLog("CoffeeHelper SetStrength", "Input received: '" & speech & "'")
Dim strengthDevRef As Integer = 1476
If speech.ToLower = "weak" OrElse speech.ToLower = "normal" OrElse speech.ToLower = "strong" Then
hs.CAPIControlHandler(hs.CAPIGetSingleControl(strengthDevRef, True, speech, False, False))
Return speech & " coffee comming up. I'm ready. Are you?"
Else
hs.CAPIControlHandler(hs.CAPIGetSingleControl(strengthDevRef, True, "normal", False, False))
Return "I didn't get that, so strength is set to normal. Do you still want to brew coffee?"
End If
End Function
Function BrewCoffee(ByVal speech As String) As String
hs.WriteLog("CoffeeHelper SetStrength", "Input received: '" & speech & "'")
Dim brewDevRef As Integer = 1474
If speech.ToLower = "yes" Then
hs.CAPIControlHandler(hs.CAPIGetSingleControlByUse(brewDevRef, HomeSeerAPI.ePairControlUse._On))
Return "Brewing coffee!"
Else
Return "Cancelling coffee brewing."
End If
End Function
Oppsett i Jon00 Alexa helper sine sider:
Primary trigger:
Response trigger #1:
Response trigger #2:
Response trigger #3:
Voilá!