commit 02/09/2025
This commit is contained in:
33
src/Main.kt
33
src/Main.kt
@@ -13,9 +13,9 @@ import web.WebApp
|
||||
|
||||
|
||||
fun main() {
|
||||
if (Platform.isWindows()){
|
||||
if (Platform.isWindows()) {
|
||||
// supaya OSHI bisa mendapatkan CPU usage di Windows seperti di Task Manager
|
||||
GlobalConfig.set(GlobalConfig.OSHI_OS_WINDOWS_CPU_UTILITY,true)
|
||||
GlobalConfig.set(GlobalConfig.OSHI_OS_WINDOWS_CPU_UTILITY, true)
|
||||
}
|
||||
Logger.info("Application started" as Any)
|
||||
val audioPlayer = AudioPlayer(44100) // 44100 Hz sampling rate
|
||||
@@ -23,7 +23,7 @@ fun main() {
|
||||
val content = ContentCache()
|
||||
val db = MariaDB()
|
||||
CoroutineScope(Dispatchers.Default).launch {
|
||||
while (isActive){
|
||||
while (isActive) {
|
||||
delay(1000)
|
||||
val broadcastzones = db.GetBroadcastZones()
|
||||
// baca dulu queue paging, prioritas 1
|
||||
@@ -32,14 +32,17 @@ fun main() {
|
||||
if (it.BroadcastZones.isNotBlank()) {
|
||||
val zz = it.BroadcastZones.split(";")
|
||||
// cek apakah semua target broadcast zone dari queue paging ada di dalam database broadcast zones
|
||||
if (zz.all { z -> broadcastzones.any { bz -> bz.equals(z) } }){
|
||||
if (zz.all { z -> broadcastzones.any { bz -> bz.equals(z) } }) {
|
||||
// semua target broadcast zone valid, sekarang cek apakah semua target broadcast zone idle
|
||||
|
||||
} else {
|
||||
// ada broadcast zone yang tidak valid, delete from queue paging
|
||||
db.Delete_Queue_Paging_by_index(it.index)
|
||||
//TODO check log message yang benar
|
||||
db.Add_Log("AAS", "Cancelled paging message with index ${it.index} due to invalid broadcast zone")
|
||||
db.Add_Log(
|
||||
"AAS",
|
||||
"Cancelled paging message with index ${it.index} due to invalid broadcast zone"
|
||||
)
|
||||
}
|
||||
} else {
|
||||
// invalid broadcast zone, delete from queue paging
|
||||
@@ -51,16 +54,32 @@ fun main() {
|
||||
// baca kemudian queue table, prioritas 2
|
||||
db.Read_Queue_Table().forEach {
|
||||
if (it.BroadcastZones.isNotBlank()) {
|
||||
val zz = it.BroadcastZones.split(";")
|
||||
// cek apakah semua target broadcast zone dari queue table ada di dalam database broadcast zones
|
||||
if (zz.all { z -> broadcastzones.any { bz -> bz.equals(z) } }) {
|
||||
// semua target broadcast zone valid, sekarang cek apakah semua target broadcast zone idle
|
||||
|
||||
} else {
|
||||
// ada broadcast zone yang tidak valid, delete from queue table
|
||||
db.Delete_Queue_Table_by_index(it.index)
|
||||
//TODO check log message yang benar
|
||||
db.Add_Log(
|
||||
"AAS",
|
||||
"Cancelled table message with index ${it.index} due to invalid broadcast zone"
|
||||
)
|
||||
}
|
||||
} else {
|
||||
// invalid broadcast zone, delete from queue table
|
||||
db.Delete_Queue_Table_by_index(it.index)
|
||||
// TODO check log message yang benar
|
||||
db.Add_Log("AAS", "Cancelled table message with index ${it.index} due to empty broadcast zone")
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
val web = WebApp(3030,
|
||||
val web = WebApp(
|
||||
3030,
|
||||
listOf(
|
||||
Pair("admin", "password"),
|
||||
Pair("user", "password")
|
||||
@@ -69,6 +88,4 @@ fun main() {
|
||||
web.Start()
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user