28 lines
735 B
Go
28 lines
735 B
Go
|
package dataparse
|
|||
|
|
|||
|
import (
|
|||
|
"device-ble/internal/interfaces"
|
|||
|
"device-ble/pkg/ble"
|
|||
|
"fmt"
|
|||
|
)
|
|||
|
|
|||
|
// PublishToMessageBus 发布数据到MessageBus。
|
|||
|
|
|||
|
// SendToBlE 异步传输到蓝牙发送器。
|
|||
|
func SendToBlE(controller interfaces.BLEController, data interface{}) error {
|
|||
|
if controller != nil {
|
|||
|
queueIface := controller.GetQueue()
|
|||
|
if queue, ok := queueIface.(interfaces.SerialQueueInterface); ok {
|
|||
|
if err := ble.SendJSONOverBLE(queue, data); err == nil {
|
|||
|
return nil
|
|||
|
} else {
|
|||
|
return fmt.Errorf("向BLE控制器发送数据失败")
|
|||
|
}
|
|||
|
} else {
|
|||
|
return fmt.Errorf("BLE控制器队列类型断言失败,无法发送数据")
|
|||
|
}
|
|||
|
} else {
|
|||
|
return fmt.Errorf("BLE控制器未初始化,无法发送数据")
|
|||
|
}
|
|||
|
}
|