Skip to content
This repository has been archived by the owner on Aug 15, 2024. It is now read-only.

Go twiml examples #1033

Open
wants to merge 2 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
19 changes: 19 additions & 0 deletions twiml/message/message/message-1/message-1.1.x.go
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
package main

import (
"fmt"

"github.com/twilio/twilio-go/twiml"
)

func main() {
response := &twiml.MessagingMessage{}
response.Body = "Store Location: 123 Easy St."

twimlResult, err := twiml.Messages([]twiml.Element{response})
if err == nil {
fmt.Println(twimlResult)
} else {
fmt.Println(err)
}
}
26 changes: 26 additions & 0 deletions twiml/message/message/message-2/message-2.1.x.go
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
package main

import (
"fmt"

"github.com/twilio/twilio-go/twiml"
)

func main() {
response := &twiml.MessagingMessage{}

responseBody := &twiml.MessagingBody{}
responseBody.Message = "Store Location: 123 Easy St."

responseMedia := &twiml.MessagingMedia{}
responseMedia.Url = "https://demo.twilio.com/owl.png"

response.InnerElements = []twiml.Element{responseBody, responseMedia}

twimlResult, err := twiml.Messages([]twiml.Element{response})
if err == nil {
fmt.Println(twimlResult)
} else {
fmt.Println(err)
}
}
22 changes: 22 additions & 0 deletions twiml/message/message/message-3/message-3.1.x.go
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
package main

import (
"fmt"

"github.com/twilio/twilio-go/twiml"
)

func main() {
response := &twiml.MessagingMessage{}

response.Body = "Store Location: 123 Easy St."
response.Action = "/SmsHandler.php"
response.Method = "POST"

twimlResult, err := twiml.Messages([]twiml.Element{response})
if err == nil {
fmt.Println(twimlResult)
} else {
fmt.Println(err)
}
}
26 changes: 26 additions & 0 deletions twiml/message/message/message-4/message-4.1.x.go
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
package main

import (
"fmt"

"github.com/twilio/twilio-go/twiml"
)

func main() {
response := &twiml.MessagingMessage{}

responseBody := &twiml.MessagingBody{}
responseBody.Message = "Hello friend"

responseMedia := &twiml.MessagingMedia{}
responseMedia.Url = "https://demo.twilio.com/owl.png"

response.InnerElements = []twiml.Element{responseBody, responseMedia}

twimlResult, err := twiml.Messages([]twiml.Element{response})
if err == nil {
fmt.Println(twimlResult)
} else {
fmt.Println(err)
}
}
20 changes: 20 additions & 0 deletions twiml/message/redirect/redirect-1/redirect-1.1.x.go
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
package main

import (
"fmt"

"github.com/twilio/twilio-go/twiml"
)

func main() {
response := &twiml.MessagingRedirect{}

response.Url = "http://www.example.com/nextInstructions"

twimlResult, err := twiml.Messages([]twiml.Element{response})
if err == nil {
fmt.Println(twimlResult)
} else {
fmt.Println(err)
}
}
20 changes: 20 additions & 0 deletions twiml/message/redirect/redirect-2/redirect-2.1.x.go
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
package main

import (
"fmt"

"github.com/twilio/twilio-go/twiml"
)

func main() {
response := &twiml.MessagingRedirect{}

response.Url = "../nextInstructions"

twimlResult, err := twiml.Messages([]twiml.Element{response})
if err == nil {
fmt.Println(twimlResult)
} else {
fmt.Println(err)
}
}
26 changes: 26 additions & 0 deletions twiml/message/your-response/your-response-1/your-response-1.1.x.go
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
package main

import (
"fmt"

"github.com/twilio/twilio-go/twiml"
)

func main() {
message := &twiml.MessagingMessage{}

msgBody := &twiml.MessagingBody{}
msgBody.Message = "Hello World!"

message.InnerElements = []twiml.Element{msgBody}

redirect := &twiml.MessagingRedirect{}
redirect.Url = "https://demo.twilio.com/welcome/sms/"

twimlResult, err := twiml.Messages([]twiml.Element{message, redirect})
if err == nil {
fmt.Println(twimlResult)
} else {
fmt.Println(err)
}
}
22 changes: 22 additions & 0 deletions twiml/message/your-response/your-response-2/your-response-2.1.x.go
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
package main

import (
"fmt"

"github.com/twilio/twilio-go/twiml"
)

func main() {
message1 := &twiml.MessagingMessage{}
message1.Body = "This is message 1 of 2."

message2 := &twiml.MessagingMessage{}
message2.Body = "This is message 2 of 2."

twimlResult, err := twiml.Messages([]twiml.Element{message1, message2})
if err == nil {
fmt.Println(twimlResult)
} else {
fmt.Println(err)
}
}
19 changes: 19 additions & 0 deletions twiml/message/your-response/your-response-3/your-response-3.1.x.go
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
package main

import (
"fmt"

"github.com/twilio/twilio-go/twiml"
)

func main() {
msg := &twiml.MessagingMessage{}
msg.Body = "I'm hungry!"

twimlResult, err := twiml.Messages([]twiml.Element{msg})
if err == nil {
fmt.Println(twimlResult)
} else {
fmt.Println(err)
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
package main

import (
"fmt"

"github.com/twilio/twilio-go/twiml"
)

func main() {
dial := &twiml.VoiceDial{}
application := &twiml.VoiceApplication{}
applicationSid := &twiml.VoiceApplicationSid{}
applicationSid.Sid = "AP1234567890abcdef1234567890abcd"

application.InnerElements = []twiml.Element{applicationSid}
dial.InnerElements = []twiml.Element{application}

twimlResult, err := twiml.Voice([]twiml.Element{dial})
if err == nil {
fmt.Println(twimlResult)
} else {
fmt.Println(err)
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
package main

import (
"fmt"

"github.com/twilio/twilio-go/twiml"
)

func main() {
dial := &twiml.VoiceDial{}
application := &twiml.VoiceApplication{}
application.CopyParentTo = "true"

applicationSid := &twiml.VoiceApplicationSid{}
applicationSid.Sid = "AP1234567890abcdef1234567890abcd"

application.InnerElements = []twiml.Element{applicationSid}
dial.InnerElements = []twiml.Element{application}

twimlResult, err := twiml.Voice([]twiml.Element{dial})
if err == nil {
fmt.Println(twimlResult)
} else {
fmt.Println(err)
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
package main

import (
"fmt"

"github.com/twilio/twilio-go/twiml"
)

func main() {
dial := &twiml.VoiceDial{}
application := &twiml.VoiceApplication{}
application.CustomerId = "CustomerFriendlyName"

applicationSid := &twiml.VoiceApplicationSid{}
applicationSid.Sid = "AP1234567890abcdef1234567890abcd"

application.InnerElements = []twiml.Element{applicationSid}
dial.InnerElements = []twiml.Element{application}

twimlResult, err := twiml.Voice([]twiml.Element{dial})
if err == nil {
fmt.Println(twimlResult)
} else {
fmt.Println(err)
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
package main

import (
"fmt"

"github.com/twilio/twilio-go/twiml"
)

func main() {
dial := &twiml.VoiceDial{}
application := &twiml.VoiceApplication{}

applicationSid := &twiml.VoiceApplicationSid{}
applicationSid.Sid = "AP1234567890abcdef1234567890abcd"

parameter1 := &twiml.VoiceParameter{}
parameter1.Name = "AccountNumber"
parameter1.Value = "12345"

parameter2 := &twiml.VoiceParameter{
Name: "TicketNumber",
Value: "9876",
}

application.InnerElements = []twiml.Element{applicationSid, parameter1, parameter2}
dial.InnerElements = []twiml.Element{application}

twimlResult, err := twiml.Voice([]twiml.Element{dial})
if err == nil {
fmt.Println(twimlResult)
} else {
fmt.Println(err)
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
package main

import (
"fmt"

"github.com/twilio/twilio-go/twiml"
)

func main() {
say1 := &twiml.VoiceSay{
Message: "We're sorry. All of our agents are busy right now.",
}

say2 := &twiml.VoiceSay{
Message: "We will call you back as soon as possible.",
}

say3 := &twiml.VoiceSay{
Message: "Please stay on the line to be redirected to the main menu.",
}

hangup := &twiml.VoiceHangup{}
parameter := &twiml.VoiceParameter{}
parameter.Name = "payment_collected"
parameter.Value = "false"

hangup.InnerElements = []twiml.Element{parameter}

twimlResult, err := twiml.Voice([]twiml.Element{
say1,
say2,
say3,
hangup,
})
if err == nil {
fmt.Println(twimlResult)
} else {
fmt.Println(err)
}
}
24 changes: 24 additions & 0 deletions twiml/voice/application/hangup-parameter/hangup-parameter.1.x.go
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
package main

import (
"fmt"

"github.com/twilio/twilio-go/twiml"
)

func main() {
hangup := &twiml.VoiceHangup{}

parameter := &twiml.VoiceParameter{}
parameter.Name = "hangup_reason"
parameter.Value = "no agents available"

hangup.InnerElements = []twiml.Element{parameter}

twimlResult, err := twiml.Voice([]twiml.Element{hangup})
if err == nil {
fmt.Println(twimlResult)
} else {
fmt.Println(err)
}
}
Loading