From 62f643eb0e0286159acb91ca04d265392750dcc0 Mon Sep 17 00:00:00 2001 From: Parham Alvani Date: Thu, 6 May 2021 09:13:04 +0430 Subject: [PATCH] feat: Start writing the pakhshi client --- go.mod | 5 +++++ go.sum | 10 ++++++++++ pkg/client/client.go | 18 ++++++++++++++++++ 3 files changed, 33 insertions(+) create mode 100644 go.mod create mode 100644 go.sum create mode 100644 pkg/client/client.go diff --git a/go.mod b/go.mod new file mode 100644 index 0000000..f6024fc --- /dev/null +++ b/go.mod @@ -0,0 +1,5 @@ +module github.com/1995parham/pakhshi + +go 1.16 + +require github.com/eclipse/paho.mqtt.golang v1.3.4 // indirect diff --git a/go.sum b/go.sum new file mode 100644 index 0000000..1bae661 --- /dev/null +++ b/go.sum @@ -0,0 +1,10 @@ +github.com/eclipse/paho.mqtt.golang v1.3.4 h1:/sS2PA+PgomTO1bfJSDJncox+U7X5Boa3AfhEywYdgI= +github.com/eclipse/paho.mqtt.golang v1.3.4/go.mod h1:eTzb4gxwwyWpqBUHGQZ4ABAV7+Jgm1PklsYT/eo8Hcc= +github.com/gorilla/websocket v1.4.2 h1:+/TMaTYc4QFitKJxsQ7Yye35DkWvkdLcvGKqM+x0Ufc= +github.com/gorilla/websocket v1.4.2/go.mod h1:YR8l580nyteQvAITg2hZ9XVh4b55+EU/adAjf1fMHhE= +golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w= +golang.org/x/net v0.0.0-20200425230154-ff2c4b7c35a0 h1:Jcxah/M+oLZ/R4/z5RzfPzGbPXnVDPkEDtf2JnuxN+U= +golang.org/x/net v0.0.0-20200425230154-ff2c4b7c35a0/go.mod h1:qpuaurCH72eLCgpAm/N6yyVIVM9cpaDIP3A8BGJEC5A= +golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= +golang.org/x/sys v0.0.0-20200323222414-85ca7c5b95cd/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= diff --git a/pkg/client/client.go b/pkg/client/client.go new file mode 100644 index 0000000..4bbcb31 --- /dev/null +++ b/pkg/client/client.go @@ -0,0 +1,18 @@ +package client + +import ( + "log" + + mqtt "github.com/eclipse/paho.mqtt.golang" +) + +// NewClient creates a pakhshi client based on given paho options. +// it uses the servers array for finding out about the clusters and also use +// their host name to name them. +func NewClient(opts *mqtt.ClientOptions) mqtt.Client { + for _, server := range opts.Servers { + log.Println(server.Host) + } + + return nil +}