| 123456789101112131415161718192021222324252627282930313233 |
- package agiServer
- import (
- "fmt"
- "os"
- "pbx-api-gin/internal/app/ami/action"
- "pbx-api-gin/pkg/lfshook"
- "github.com/CyCoreSystems/agi"
- )
- func StartAGI(serviceAddress, serviceAGIPort string) {
- server := fmt.Sprintf("%s:%s", serviceAddress, serviceAGIPort)
- err := agi.Listen(server, agiHandler)
- if err != nil {
- lfshook.NewLogger().Errorf("agi server listen error %+v", err)
- os.Exit(1)
- }
- }
- func agiHandler(a *agi.AGI) {
- defer a.Close()
- taskName, ok := a.Variables["agi_arg_1"]
- if !ok {
- lfshook.NewLogger().Errorln("Not found Action agi_arg_1", taskName)
- return
- }
- //time.Sleep(10 * time.Second)
- action.WaitTaskCreate(taskName)
- }
|