Skip to content
This repository was 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
Changes from 1 commit
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
Prev Previous commit
Add majority of Golang twiML examples
  • Loading branch information
stevennic-twilio committed Jun 18, 2023
commit b45f2ad5e26c60a8cb9bcd0448efd53cca3b9d60
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