Skip to content

MariusSchiffer/go-baresip

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

go-baresip

Is a tiny wrapper around baresip

Basic Usage

func main() {

    gb, err := gobaresip.New(gobaresip.SetConfigPath("."))
    if err != nil {
        log.Println(err)
        return
    }

    eChan := gb.GetEventChan()
    rChan := gb.GetResponseChan()

    go func() {
        for {
            select {
            case e, ok := <-eChan:
                if !ok {
                    continue
                }
                log.Println(e)
            case r, ok := <-rChan:
                if !ok {
                    continue
                }
                log.Println(r)
            }
        }
    }()

    go func() {
        // Give baresip some time to init and register ua
        time.Sleep(1 * time.Second)

        if err := gb.CmdDial("012345"); err != nil {
            log.Println(err)
        }
    }()

    err = gb.Run()
    if err != nil {
        log.Println(err)
    }
    defer gb.Close()
}

About

Go baresip wrapper for automated SIP tests

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C 60.0%
  • Go 39.9%
  • Makefile 0.1%