github.com/optim-corp/cios-golang-sdk@v0.5.1/sdk/interfaces.go (about)

     1  package ciossdk
     2  
     3  import (
     4  	_nethttp "net/http"
     5  
     6  	"github.com/optim-corp/cios-golang-sdk/sdk/enum"
     7  
     8  	srvpubsub "github.com/optim-corp/cios-golang-sdk/sdk/service/pubsub"
     9  
    10  	"github.com/gorilla/websocket"
    11  	"github.com/optim-corp/cios-golang-sdk/cios"
    12  	ciosctx "github.com/optim-corp/cios-golang-sdk/ctx"
    13  	sdkmodel "github.com/optim-corp/cios-golang-sdk/model"
    14  )
    15  
    16  type (
    17  	PubSub interface {
    18  		GetChannels(ciosctx.RequestCtx, cios.ApiGetChannelsRequest) (cios.MultipleChannel, *_nethttp.Response, error)
    19  		GetChannelsAll(ciosctx.RequestCtx, cios.ApiGetChannelsRequest) ([]cios.Channel, *_nethttp.Response, error)
    20  		GetChannelsUnlimited(ciosctx.RequestCtx, cios.ApiGetChannelsRequest) ([]cios.Channel, *_nethttp.Response, error)
    21  		GetChannel(ciosctx.RequestCtx, string, *bool, *string) (cios.Channel, *_nethttp.Response, error)
    22  		GetChannelFirst(ciosctx.RequestCtx, cios.ApiGetChannelsRequest) (cios.Channel, *_nethttp.Response, error)
    23  		GetChannelsMapByID(ciosctx.RequestCtx, cios.ApiGetChannelsRequest) (map[string]cios.Channel, *_nethttp.Response, error)
    24  		GetChannelsMapByResourceOwnerID(ciosctx.RequestCtx, cios.ApiGetChannelsRequest) (map[string][]cios.Channel, *_nethttp.Response, error)
    25  		DeleteChannel(ciosctx.RequestCtx, string) (*_nethttp.Response, error)
    26  		GetOrCreateChannel(ciosctx.RequestCtx, cios.ApiGetChannelsRequest, cios.ChannelProposal) (cios.Channel, *_nethttp.Response, error)
    27  		CreateChannel(ciosctx.RequestCtx, cios.ChannelProposal) (cios.Channel, *_nethttp.Response, error)
    28  		UpdateChannel(ciosctx.RequestCtx, string, cios.ChannelUpdateProposal) (cios.MultipleChannel, *_nethttp.Response, error)
    29  		GetDataStoreChannels(ciosctx.RequestCtx, cios.ApiGetDataStoreChannelsRequest) (cios.MultipleDataStoreChannel, *_nethttp.Response, error)
    30  		GetDataStoreChannel(ciosctx.RequestCtx, string) (cios.DataStoreChannel, *_nethttp.Response, error)
    31  		GetObjects(ciosctx.RequestCtx, string, cios.ApiGetDataStoreObjectsRequest) (cios.MultipleDataStoreObject, *_nethttp.Response, error)
    32  		GetObjectsAll(ciosctx.RequestCtx, string, cios.ApiGetDataStoreObjectsRequest) ([]cios.DataStoreObject, *_nethttp.Response, error)
    33  		GetObjectsUnlimited(ciosctx.RequestCtx, string, cios.ApiGetDataStoreObjectsRequest) ([]cios.DataStoreObject, *_nethttp.Response, error)
    34  		GetObject(ciosctx.RequestCtx, string, string, *string) (interface{}, *_nethttp.Response, error)
    35  		GetObjectLatest(ciosctx.RequestCtx, string, *string) (interface{}, *_nethttp.Response, error)
    36  		MapObjectLatest(ciosctx.RequestCtx, string, *string, interface{}) (*_nethttp.Response, error)
    37  		GetMultiObjectLatest(ciosctx.RequestCtx, []string) (cios.MultipleDataStoreDataLatest, *_nethttp.Response, error)
    38  		GetMultiObjectLatestByChannels(ciosctx.RequestCtx, []cios.Channel) (cios.MultipleDataStoreDataLatest, *_nethttp.Response, error)
    39  		MapMultiObjectLatestPayload(ciosctx.RequestCtx, []string, interface{}) ([]cios.PackerFormatJsonHeader, *_nethttp.Response, error)
    40  		MapMultiObjectLatestPayloadByChannels(ciosctx.RequestCtx, []cios.Channel, interface{}) ([]cios.PackerFormatJsonHeader, *_nethttp.Response, error)
    41  		GetStream(ciosctx.RequestCtx, string, sdkmodel.ApiGetStreamRequest) ([]string, error)
    42  		GetStreamAll(ciosctx.RequestCtx, string, sdkmodel.ApiGetStreamRequest) ([]string, error)
    43  		GetStreamUnlimited(ciosctx.RequestCtx, string, sdkmodel.ApiGetStreamRequest) ([]string, error)
    44  		MapStreamAll(ciosctx.RequestCtx, string, sdkmodel.ApiGetStreamRequest, interface{}) error
    45  		MapStreamUnlimited(ciosctx.RequestCtx, string, sdkmodel.ApiGetStreamRequest, interface{}) error
    46  		GetJsonStreamUnlimited(ciosctx.RequestCtx, string, sdkmodel.ApiGetStreamRequest) ([]cios.PackerFormatJson, error)
    47  		GetStreamFirst(ciosctx.RequestCtx, string, sdkmodel.ApiGetStreamRequest) (string, error)
    48  		MapStreamFirst(ciosctx.RequestCtx, string, sdkmodel.ApiGetStreamRequest, interface{}) error
    49  		DeleteDataByChannel(ciosctx.RequestCtx, string) (*_nethttp.Response, error)
    50  		DeleteObject(ciosctx.RequestCtx, string, string) (*_nethttp.Response, error)
    51  		NewMessaging(string, enum.MessagingMode, enum.PackerFormat) *srvpubsub.CiosMessaging
    52  		PublishMessage(ciosctx.RequestCtx, string, interface{}, *string) (*_nethttp.Response, error)
    53  		PublishMessagePackerOnly(ciosctx.RequestCtx, string, interface{}) (*_nethttp.Response, error)
    54  		PublishMessageJSON(ciosctx.RequestCtx, string, cios.PackerFormatJson) (*_nethttp.Response, error)
    55  		// Deprecated: should not be used
    56  		ConnectWebSocket(string, chan bool, srvpubsub.ConnectWebSocketOptions) error
    57  		// Deprecated: should not be used
    58  		CreateMessagingURL(string, string, *string) string
    59  		// Deprecated: should not be used
    60  		CreateCIOSWebsocketConnection(string, string) (*websocket.Conn, error)
    61  		SetDebug(bool)
    62  		SetToken(string)
    63  	}
    64  	Account interface {
    65  		GetGroups(ciosctx.RequestCtx, cios.ApiGetGroupsRequest) (cios.MultipleGroup, *_nethttp.Response, error)
    66  		GetGroupsAll(ciosctx.RequestCtx, cios.ApiGetGroupsRequest) ([]cios.Group, *_nethttp.Response, error)
    67  		GetGroupsUnlimited(ciosctx.RequestCtx, cios.ApiGetGroupsRequest) ([]cios.Group, *_nethttp.Response, error)
    68  		GetGroup(ciosctx.RequestCtx, string, *string) (cios.Group, *_nethttp.Response, error)
    69  		GetGroupByResourceOwnerId(ciosctx.RequestCtx, string, *string) (cios.Group, *_nethttp.Response, error)
    70  		GetGroupMapByResourceOwner(ciosctx.RequestCtx, cios.ApiGetGroupsRequest, cios.ApiGetResourceOwnersRequest) (map[string]cios.Group, *_nethttp.Response, error)
    71  		DeleteGroup(ciosctx.RequestCtx, string) (*_nethttp.Response, error)
    72  		CreateGroup(ciosctx.RequestCtx, cios.GroupCreateRequest) (cios.Group, *_nethttp.Response, error)
    73  		UpdateGroup(ciosctx.RequestCtx, string, cios.GroupUpdateRequest) (cios.Group, *_nethttp.Response, error)
    74  		GetMe(ciosctx.RequestCtx) (cios.Me, *_nethttp.Response, error)
    75  		InviteGroup(ciosctx.RequestCtx, string, string) (cios.Member, *_nethttp.Response, error)
    76  		GetResourceOwners(ciosctx.RequestCtx, cios.ApiGetResourceOwnersRequest) (cios.MultipleResourceOwner, *_nethttp.Response, error)
    77  		GetResourceOwnersAll(ciosctx.RequestCtx, cios.ApiGetResourceOwnersRequest) ([]cios.ResourceOwner, *_nethttp.Response, error)
    78  		GetResourceOwnersUnlimited(ciosctx.RequestCtx, cios.ApiGetResourceOwnersRequest) ([]cios.ResourceOwner, *_nethttp.Response, error)
    79  		GetResourceOwner(ciosctx.RequestCtx, string) (cios.ResourceOwner, *_nethttp.Response, error)
    80  		GetResourceOwnerByGroupId(ciosctx.RequestCtx, string) (cios.ResourceOwner, *_nethttp.Response, error)
    81  		GetResourceOwnersMapByID(ciosctx.RequestCtx) (map[string]cios.ResourceOwner, *_nethttp.Response, error)
    82  		GetResourceOwnersMapByGroupID(ciosctx.RequestCtx) (map[string]cios.ResourceOwner, error)
    83  	}
    84  	Auth interface {
    85  		GetAccessTokenByRefreshToken() (sdkmodel.AccessToken, sdkmodel.Scope, sdkmodel.TokenType, sdkmodel.ExpiresIn, error)
    86  		GetAccessTokenOnClient() (sdkmodel.AccessToken, sdkmodel.Scope, sdkmodel.TokenType, sdkmodel.ExpiresIn, error)
    87  		GetAccessTokenOnDevice() (sdkmodel.AccessToken, sdkmodel.Scope, sdkmodel.TokenType, sdkmodel.ExpiresIn, error)
    88  
    89  		SetClientSecret(clientSecret string)
    90  		SetClientId(clientId string)
    91  		SetRef(ref string)
    92  		SetAssertion(assertion string)
    93  		SetDebug(debug bool)
    94  		SetScope(scope string)
    95  	}
    96  	Contract interface {
    97  		GetContracts(ciosctx.RequestCtx, cios.ApiGetContractsRequest) (cios.MultipleContract, *_nethttp.Response, error)
    98  		GetContractsAll(ciosctx.RequestCtx, cios.ApiGetContractsRequest) ([]cios.Contract, *_nethttp.Response, error)
    99  		GetContractsUnlimited(ciosctx.RequestCtx, cios.ApiGetContractsRequest) ([]cios.Contract, *_nethttp.Response, error)
   100  	}
   101  	DeviceAssetManagement interface {
   102  		GetModels(ciosctx.RequestCtx, cios.ApiGetDeviceModelsRequest) (cios.MultipleDeviceModel, *_nethttp.Response, error)
   103  		GetModelsAll(ciosctx.RequestCtx, cios.ApiGetDeviceModelsRequest) ([]cios.DeviceModel, *_nethttp.Response, error)
   104  		GetModelsUnlimited(ciosctx.RequestCtx, cios.ApiGetDeviceModelsRequest) ([]cios.DeviceModel, *_nethttp.Response, error)
   105  		GetModelsMapByID(ciosctx.RequestCtx, cios.ApiGetDeviceModelsRequest) (map[string]cios.DeviceModel, error)
   106  		GetModel(ciosctx.RequestCtx, string) (cios.DeviceModel, *_nethttp.Response, error)
   107  		CreateModel(ciosctx.RequestCtx, cios.DeviceModelRequest) (cios.DeviceModel, *_nethttp.Response, error)
   108  		DeleteModel(ciosctx.RequestCtx, string) (*_nethttp.Response, error)
   109  		GetEntities(ciosctx.RequestCtx, cios.ApiGetDeviceEntitiesRequest) (cios.MultipleDeviceModelEntity, *_nethttp.Response, error)
   110  		GetEntitiesAll(ciosctx.RequestCtx, cios.ApiGetDeviceEntitiesRequest) ([]cios.DeviceModelsEntity, *_nethttp.Response, error)
   111  		GetEntitiesUnlimited(ciosctx.RequestCtx, cios.ApiGetDeviceEntitiesRequest) ([]cios.DeviceModelsEntity, *_nethttp.Response, error)
   112  		GetEntitiesMapByID(ciosctx.RequestCtx, cios.ApiGetDeviceEntitiesRequest) (map[string]cios.DeviceModelsEntity, error)
   113  		GetEntity(ciosctx.RequestCtx, string) (cios.DeviceModelsEntity, *_nethttp.Response, error)
   114  		DeleteEntity(ciosctx.RequestCtx, string) (*_nethttp.Response, error)
   115  		CreateEntity(ciosctx.RequestCtx, string, cios.Inventory) (cios.DeviceModelsEntity, *_nethttp.Response, error)
   116  		GetLifecycles(ciosctx.RequestCtx, string, cios.ApiGetDeviceEntitiesLifecyclesRequest) (cios.MultipleLifeCycle, *_nethttp.Response, error)
   117  		GetLifecyclesAll(ciosctx.RequestCtx, string, cios.ApiGetDeviceEntitiesLifecyclesRequest) ([]cios.LifeCycle, *_nethttp.Response, error)
   118  		GetLifecyclesUnlimitedByEntities(ciosctx.RequestCtx, []cios.DeviceModelsEntity, cios.ApiGetDeviceEntitiesLifecyclesRequest) ([][]cios.LifeCycle, *_nethttp.Response, error)
   119  		GetLifecyclesUnlimited(ciosctx.RequestCtx, string, cios.ApiGetDeviceEntitiesLifecyclesRequest) ([]cios.LifeCycle, *_nethttp.Response, error)
   120  		CreateLifecycle(ciosctx.RequestCtx, string, cios.LifeCycleRequest) (cios.LifeCycle, *_nethttp.Response, error)
   121  		DeleteLifecycle(ciosctx.RequestCtx, string, string) (*_nethttp.Response, error)
   122  	}
   123  	DeviceManagement interface {
   124  		GetDevices(ciosctx.RequestCtx, cios.ApiGetDevicesRequest) (cios.MultipleDevice, *_nethttp.Response, error)
   125  		GetDevicesAll(ciosctx.RequestCtx, cios.ApiGetDevicesRequest) ([]cios.Device, *_nethttp.Response, error)
   126  		GetDevicesUnlimited(ciosctx.RequestCtx, cios.ApiGetDevicesRequest) ([]cios.Device, *_nethttp.Response, error)
   127  		GetDevice(ciosctx.RequestCtx, string, *string, *bool) (cios.Device, *_nethttp.Response, error)
   128  		GetDeviceInventory(ciosctx.RequestCtx, string) (map[string]interface{}, *_nethttp.Response, error)
   129  		DeleteDevice(ciosctx.RequestCtx, string) (*_nethttp.Response, error)
   130  		CreateDevice(ciosctx.RequestCtx, cios.DeviceInfo) (cios.Device, *_nethttp.Response, error)
   131  		UpdateDevice(ciosctx.RequestCtx, string, cios.DeviceUpdateRequest) (cios.Device, *_nethttp.Response, error)
   132  		GetMonitoringLatestList(ciosctx.RequestCtx, []string) ([]cios.DeviceMonitoring, *_nethttp.Response, error)
   133  		GetMonitoring(ciosctx.RequestCtx, string) (cios.DeviceMonitoring, *_nethttp.Response, error)
   134  		GetPolicies(ciosctx.RequestCtx, cios.ApiGetDevicePoliciesRequest) (cios.MultipleDevicePolicy, *_nethttp.Response, error)
   135  		GetPoliciesAll(ciosctx.RequestCtx, cios.ApiGetDevicePoliciesRequest) ([]cios.DevicePolicy, *_nethttp.Response, error)
   136  		GetPoliciesUnlimited(ciosctx.RequestCtx, cios.ApiGetDevicePoliciesRequest) ([]cios.DevicePolicy, *_nethttp.Response, error)
   137  		DeletePolicy(ciosctx.RequestCtx, string) (*_nethttp.Response, error)
   138  		CreatePolicy(ciosctx.RequestCtx, string) (cios.DevicePolicy, *_nethttp.Response, error)
   139  	}
   140  	FileStorage interface {
   141  		GetBuckets(ciosctx.RequestCtx, cios.ApiGetBucketsRequest) (cios.MultipleBucket, *_nethttp.Response, error)
   142  		GetBucketsAll(ciosctx.RequestCtx, cios.ApiGetBucketsRequest) ([]cios.Bucket, *_nethttp.Response, error)
   143  		GetBucketsUnlimited(ciosctx.RequestCtx, cios.ApiGetBucketsRequest) ([]cios.Bucket, *_nethttp.Response, error)
   144  		GetBucket(ciosctx.RequestCtx, string) (cios.Bucket, *_nethttp.Response, error)
   145  		GetBucketByResourceOwnerIDAndName(ciosctx.RequestCtx, string, string) (cios.Bucket, *_nethttp.Response, error)
   146  		GetOrCreateBucket(ciosctx.RequestCtx, string, string) (cios.Bucket, *_nethttp.Response, error)
   147  		CreateBucket(ciosctx.RequestCtx, string, string) (cios.Bucket, *_nethttp.Response, error)
   148  		DeleteBucket(ciosctx.RequestCtx, string) (*_nethttp.Response, error)
   149  		UpdateBucket(ciosctx.RequestCtx, string, string) (*_nethttp.Response, error)
   150  		DownloadFile(ciosctx.RequestCtx, string, string) ([]byte, *_nethttp.Response, error)
   151  		DownloadFileByKey(ciosctx.RequestCtx, string, string) ([]byte, *_nethttp.Response, error)
   152  		UploadFile(ciosctx.RequestCtx, string, []byte, cios.ApiUploadFileRequest) (*_nethttp.Response, error)
   153  		GetNodes(ciosctx.RequestCtx, string, cios.ApiGetNodesRequest) (cios.MultipleNode, *_nethttp.Response, error)
   154  		GetNodesAll(ciosctx.RequestCtx, string, cios.ApiGetNodesRequest) ([]cios.Node, *_nethttp.Response, error)
   155  		GetNodesUnlimited(ciosctx.RequestCtx, string, cios.ApiGetNodesRequest) ([]cios.Node, *_nethttp.Response, error)
   156  		GetNode(ciosctx.RequestCtx, string, string) (cios.Node, *_nethttp.Response, error)
   157  		CreateNode(ciosctx.RequestCtx, string, string, *string) (cios.Node, *_nethttp.Response, error)
   158  		CreateNodeOnNodeID(ciosctx.RequestCtx, string, cios.NodeRequest) (cios.Node, *_nethttp.Response, error)
   159  		DeleteNode(ciosctx.RequestCtx, string, string) (*_nethttp.Response, error)
   160  		CopyNode(ciosctx.RequestCtx, string, string, *string, *string) (cios.Node, *_nethttp.Response, error)
   161  		MoveNode(ciosctx.RequestCtx, string, string, *string, *string) (cios.Node, *_nethttp.Response, error)
   162  		RenameNode(ciosctx.RequestCtx, string, string, string) (cios.Node, *_nethttp.Response, error)
   163  	}
   164  	Geography interface {
   165  		GetPoints(ciosctx.RequestCtx, cios.ApiGetPointsRequest) (cios.MultiplePoint, *_nethttp.Response, error)
   166  		CreatePoint(ciosctx.RequestCtx, cios.PointRequest) (cios.Point, *_nethttp.Response, error)
   167  		DeletePoint(ciosctx.RequestCtx, string) (cios.Point, *_nethttp.Response, error)
   168  	}
   169  	VideoStreaming interface {
   170  		GetVideoInfos(ciosctx.RequestCtx, cios.ApiGetVideoStreamsListRequest) ([]cios.Video, *_nethttp.Response, error)
   171  		GetVideoInfo(ciosctx.RequestCtx, string) (cios.Video, *_nethttp.Response, error)
   172  		UpdateVideoInfo(ciosctx.RequestCtx, string, string, string) (cios.Video, *_nethttp.Response, error)
   173  		GetThumbnail(ciosctx.RequestCtx, string) ([]byte, *_nethttp.Response, error)
   174  		Play(ciosctx.RequestCtx, string) (cios.Room, *_nethttp.Response, error)
   175  		Stop(ciosctx.RequestCtx, string) (*_nethttp.Response, error)
   176  		SetToken(string)
   177  	}
   178  	License interface {
   179  		GetLicenses(ciosctx.RequestCtx, cios.ApiGetMyLicensesRequest) ([]cios.License, *_nethttp.Response, error)
   180  	}
   181  )