| 123456789101112131415161718192021222324252627282930313233343536373839404142434445 | 
							- package action
 
- import (
 
- 	"errors"
 
- 	"fmt"
 
- 	"strings"
 
- )
 
- func PlaybackPacu(filename string, count int, delay int, PaType string) (err error) {
 
- 	Para := fmt.Sprintf("count=%d,filename=%s,delay=%d,priority=%s", count, strings.Replace(filename, ".wav", "", -1), delay, PaType)
 
- 	Chan := ""
 
- 	switch PaType {
 
- 	case "STN":
 
- 		Chan = "Local/0503" //spa-rule
 
- 	case "SPC":
 
- 		Chan = "Local/0505" //spc-rule
 
- 	case "DCS":
 
- 		Chan = "Local/0504" //dc-rule
 
- 	case "CHK":
 
- 		Chan = "Local/0503" //paging pacu
 
- 	case "EMG":
 
- 		Chan = "Local/0502" //emg-rule
 
- 	}
 
- 	action := map[string]string{
 
- 		"Action":   "Originate",
 
- 		"Channel":  Chan,
 
- 		"Exten":    "000",
 
- 		"CallerID": PaType,
 
- 		"Context":  "broadcast-playfile",
 
- 		"Priority": "1",
 
- 		"Variable": Para,
 
- 	}
 
- 	res, _, err := AminInstance.Send(action)
 
- 	if err != nil {
 
- 		return err
 
- 	}
 
- 	if res["Response"] != "Success" {
 
- 		return errors.New(res["Message"])
 
- 	}
 
- 	return nil
 
- }
 
 
  |