ailistener-old

The central Server which transports webhook events from the Dialogflow bot to the local nodes
git clone git://archive.git.mtrnord.blog/OpenHomeAuto/ailistener-old.git
Log | Files | Refs | README | LICENSE

commit a8a4d936f9198e26b2a5bb015907bde7985126ee
parent 8c228854bef3ba176b9ebcfa06b7cd713f4707c9
Author: MTRNord <mtrnord1@gmail.com>
Date:   Sat,  2 Jun 2018 13:48:56 +0200

Use a Basic Card as Reponse if Artist or Title or Genre are present

Diffstat:
MwsListener/server.go | 60+++++++++++++++++++++++++++++++++++++++++++++++++++++-------
1 file changed, 53 insertions(+), 7 deletions(-)

diff --git a/wsListener/server.go b/wsListener/server.go @@ -59,9 +59,11 @@ func playMusicDispatch(dfr *df.Request, w http.ResponseWriter) *df.Fulfillment { Artist string `json:"music-artist"` Room string `json:"room"` Genre string `json:"MusikGenre"` + Title string `json:"title"` } var p params + var resp *df.Fulfillment // Retrieve the params of the request if err := dfr.GetParams(&p); err != nil { @@ -74,13 +76,57 @@ func playMusicDispatch(dfr *df.Request, w http.ResponseWriter) *df.Fulfillment { log.Printf("ResponseID: %s\n", dfr.ResponseID) log.Printf("PARAMS: %+v\n", p) - // Send back a fulfillment - dff := &df.Fulfillment{ - FulfillmentMessages: df.Messages{ - df.ForGoogle(df.SingleSimpleResponse("Musik wird gestartet!", "Musik wird gestartet!")), - {RichMessage: df.Text{Text: []string{"Musik wird gestartet!"}}}, - }, + if p.Artist != "" { + // Send back a fulfillment + resp = &df.Fulfillment{ + FulfillmentMessages: df.Messages{ + df.ForGoogle( + &df.BasicCard{ + Title: fmt.Sprintf("Musik von %s", p.Artist), + Subtitle: "Künstler", + FormattedText: "Musik wird gestartet...", + }, + ), + {RichMessage: df.Text{Text: []string{"Musik wird gestartet!"}}}, + }, + } + } else if p.Genre != "" { + // Send back a fulfillment + resp = &df.Fulfillment{ + FulfillmentMessages: df.Messages{ + df.ForGoogle( + &df.BasicCard{ + Title: fmt.Sprintf("%s", p.Genre), + Subtitle: "Genre", + FormattedText: "Musik wird gestartet...", + }, + ), + {RichMessage: df.Text{Text: []string{"Musik wird gestartet!"}}}, + }, + } + } else if p.Title != "" { + // Send back a fulfillment + resp = &df.Fulfillment{ + FulfillmentMessages: df.Messages{ + df.ForGoogle( + &df.BasicCard{ + Title: fmt.Sprintf("%s", p.Title), + Subtitle: "Song", + FormattedText: fmt.Sprintf("%s wird gestartet...", p.Title), + }, + ), + {RichMessage: df.Text{Text: []string{fmt.Sprintf("%s wird gestartet...", p.Title)}}}, + }, + } + } else { + // Send back a fulfillment + resp = &df.Fulfillment{ + FulfillmentMessages: df.Messages{ + df.ForGoogle(df.SingleSimpleResponse("Musik wird gestartet!", "Musik wird gestartet!")), + {RichMessage: df.Text{Text: []string{"Musik wird gestartet!"}}}, + }, + } } - return dff + return resp }