Meshtastic-Android/app/src/main/java/com/geeksville/mesh/MeshService.kt

62 lines
1.9 KiB
Kotlin
Raw Normal View History

2020-01-22 21:46:41 -08:00
package com.geeksville.mesh
2020-01-22 21:25:31 -08:00
import android.app.Service
import android.content.Intent
import android.os.IBinder
2020-01-22 22:16:30 -08:00
import com.geeksville.android.Logging
2020-01-22 21:25:31 -08:00
2020-01-22 22:16:30 -08:00
class MeshService : Service(), Logging {
val prefix = "com.geeksville.mesh"
/*
see com.geeksville.com.geeeksville.mesh broadcast intents
// RECEIVED_OPAQUE for data received from other nodes
// NODE_CHANGE for new IDs appearing or disappearing
// CONNECTION_CHANGED for losing/gaining connection to the packet radio
*/
fun broadcastReceivedOpaque(senderId: String, payload: ByteArray) {
val intent = Intent("$prefix.RECEIVED_OPAQUE")
intent.putExtra("$prefix.Sender", senderId)
intent.putExtra("$prefix.Payload", payload)
sendBroadcast(intent)
}
fun broadcastNodeChange(nodeId: String, isOnline: Boolean) {
val intent = Intent("$prefix.NODE_CHANGE")
intent.putExtra("$prefix.Id", nodeId)
intent.putExtra("$prefix.Online", isOnline)
sendBroadcast(intent)
}
fun broadcastConnectionChanged(isConnected: Boolean) {
val intent = Intent("$prefix.CONNECTION_CHANGED")
intent.putExtra("$prefix.Connected", isConnected)
sendBroadcast(intent)
}
2020-01-22 21:25:31 -08:00
override fun onBind(intent: Intent): IBinder {
// Return the interface
return binder
}
private val binder = object : IMeshService.Stub() {
2020-01-22 22:16:30 -08:00
override fun setOwner(myId: String, longName: String, shortName: String) {
error("TODO setOwner $myId : $longName : $shortName")
2020-01-22 21:25:31 -08:00
}
2020-01-22 22:16:30 -08:00
override fun sendOpaque(destId: String, payload: ByteArray) {
error("TODO sendOpaque $destId <- ${payload.size}")
2020-01-22 21:25:31 -08:00
}
2020-01-22 22:16:30 -08:00
override fun getOnline(): Array<String> {
error("TODO getOnline")
return arrayOf("+16508675309")
2020-01-22 21:25:31 -08:00
}
override fun isConnected(): Boolean {
2020-01-22 22:16:30 -08:00
error("TODO isConnected")
return true
2020-01-22 21:25:31 -08:00
}
}
}