mirror of
https://github.com/mainflux/mainflux.git
synced 2025-04-27 13:48:49 +08:00

* MF-1425 - Rebase mainflux master to resolve conflicts MF-1425 Enhancement to supply an external UUID for Things and Channels. Resolve conflicts. Signed-off-by: Q.s <wangqs_eclipse@yahoo.com> * MF-1425 - Test cases changes for SDK MF-1425 Enhancement to supply an external UUID for Things and Channels. These are the new testcases added for - Things Service Testcases - SDK Things and Channel Testcases Signed-off-by: Anand Sivaram Palassery <aspnair@gmail.com> Signed-off-by: Q.s <wangqs_eclipse@yahoo.com> * MF-1425 - Fixing Testcases MF-1425 Enhancement to supply an external UUID for Things and Channels. Because of the previous commits, the testcases were getting failed because the way ID was modified. This change is to make sure that all testcases are revisited to get them fixed. Signed-off-by: Anand Sivaram Palassery <aspnair@gmail.com> Signed-off-by: Q.s <wangqs_eclipse@yahoo.com> * MF-1425 - Fixing review comments Fixing the review comments provided. Signed-off-by: Anand Sivaram Palassery <aspnair@gmail.com> Signed-off-by: Q.s <wangqs_eclipse@yahoo.com> * MF-1425 - Fixing more review comments Signed-off-by: Anand Sivaram Palassery <aspnair@gmail.com> Signed-off-by: Q.s <wangqs_eclipse@yahoo.com> * MF-1425 - Fixing conflicts MF-1425 Enhancement to supply an external UUID for Things and Channels. Fixing the conflicts between aspnair master, and the mainflux master. Signed-off-by: Q.s <wangqs_eclipse@yahoo.com> * MF-1425 Fix the comment and code format per review comments MF-1425 Enhancement to supply an external UUID for Things and Channels. 1. Remove un-valued comment for a private function 2. Format the code for better readibility Signed-off-by: Q.S. Wang <wangqs_eclipse@yahoo.com> * MF-1425 Enhancement to supply an external UUID for Things and Channels. Fix the format of the API document Signed-off-by: Q.S. Wang <wangqs_eclipse@yahoo.com> * MF-1425 Enhancement to supply an external UUID for Things and Channels. Rename the variable to make it readible. Signed-off-by: Q.s <wangqs_eclipse@yahoo.com> Co-authored-by: Anand Sivaram Palassery <aspnair@gmail.com> Co-authored-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com>
Mainflux Go SDK
Go SDK, a Go driver for Mainflux HTTP API.
Does both system administration (provisioning) and messaging.
Installation
Import "github.com/mainflux/mainflux/sdk/go"
in your Go package.
import "github.com/mainflux/mainflux/pkg/sdk/go"```
Then call SDK Go functions to interact with the system.
## API Reference
```go
FUNCTIONS
func NewMfxSDK(host, port string, tls bool) *MfxSDK
func (sdk *MfxSDK) Channel(id, token string) (things.Channel, error)
Channel - gets channel by ID
func (sdk *MfxSDK) Channels(token string) ([]things.Channel, error)
Channels - gets all channels
func (sdk *MfxSDK) Connect(struct{[]string, []string}, token string) error
Connect - connect things to channels
func (sdk *MfxSDK) CreateChannel(data, token string) (string, error)
CreateChannel - creates new channel and generates UUID
func (sdk *MfxSDK) CreateThing(data, token string) (string, error)
CreateThing - creates new thing and generates thing UUID
func (sdk *MfxSDK) CreateToken(user, pwd string) (string, error)
CreateToken - create user token
func (sdk *MfxSDK) CreateUser(user, pwd string) error
CreateUser - create user
func (sdk *MfxSDK) User(pwd string) (user, error)
User - gets user
func (sdk *MfxSDK) UpdateUser(user, pwd string) error
UpdateUser - update user
func (sdk *MfxSDK) UpdatePassword(user, pwd string) error
UpdatePassword - update user password
func (sdk *MfxSDK) DeleteChannel(id, token string) error
DeleteChannel - removes channel
func (sdk *MfxSDK) DeleteThing(id, token string) error
DeleteThing - removes thing
func (sdk *MfxSDK) DisconnectThing(thingID, chanID, token string) error
DisconnectThing - connect thing to a channel
func (sdk mfSDK) SendMessage(chanID, msg, token string) error
SendMessage - send message on Mainflux channel
func (sdk mfSDK) SetContentType(ct ContentType) error
SetContentType - set message content type. Available options are SenML
JSON, custom JSON and custom binary (octet-stream).
func (sdk mfSDK) Thing(id, token string) (Thing, error)
Thing - gets thing by ID
func (sdk mfSDK) Things(token string) ([]Thing, error)
Things - gets all things
func (sdk mfSDK) UpdateChannel(channel Channel, token string) error
UpdateChannel - update a channel
func (sdk mfSDK) UpdateThing(thing Thing, token string) error
UpdateThing - updates thing by ID
func (sdk mfSDK) Version() (string, error)
Version - server health check