Guava.Channel (Guava v0.34.0)

Copy Markdown View Source

A supervised channel connecting an agent module to callers. Use it as a child spec in your own supervision tree:

children = [
  {Guava.Channel, agent: MyAgent, listen: {:phone, "+14155550123"}},
  {Guava.Channel, agent: Survey, campaign: "camp_abc"}
]

Options:

  • :agent — the Guava.Agent module (required)
  • one of:
    • listen: {:phone, number} | {:webrtc, code | nil} | {:sip, code}

    • campaign: campaign_code
    • outbound: {from_number, to_number, variables}
  • :client — a Guava.Client (defaults to Guava.Client.new!/0)
  • :name — optional supervisor name

Summary

Functions

Returns a specification to start this module under a supervisor.

Functions

child_spec(init_arg)

Returns a specification to start this module under a supervisor.

See Supervisor.

start_link(opts)