插件的安装

下面是内置插件jessica的源码,代表了典型的插件安装

  1. package jessica
  2. import (
  3. . "github.com/langhuihui/monibuca/monica"
  4. "log"
  5. "net/http"
  6. )
  7. var config = new(ListenerConfig)
  8. func init() {
  9. InstallPlugin(&PluginConfig{
  10. Name: "Jessica",
  11. Type: PLUGIN_SUBSCRIBER,
  12. Config: config,
  13. Run: run,
  14. })
  15. }
  16. func run() {
  17. log.Printf("server Jessica start at %s", config.ListenAddr)
  18. log.Fatal(http.ListenAndServe(config.ListenAddr, http.HandlerFunc(WsHandler)))
  19. }

当主程序读取配置文件完成解析后,会调用各个插件的Run函数,上面代码中执行了一个http的端口监听