Added multiple services to be trigered from main API

This commit is contained in:
Nedim
2023-09-11 12:01:30 +02:00
parent f52d8d9a30
commit 67615d76dd
5 changed files with 67 additions and 0 deletions

22
main.go
View File

@@ -8,6 +8,10 @@ import (
"gitlab.com/pactual1/backend/config"
"gitlab.com/pactual1/backend/models"
"gitlab.com/pactual1/backend/routes"
"gitlab.com/pactual1/backend/services/contact"
"gitlab.com/pactual1/backend/services/erp"
"gitlab.com/pactual1/backend/services/messaging"
"gitlab.com/pactual1/backend/services/sensor"
"gitlab.com/pactual1/backend/shared"
"github.com/gin-gonic/gin"
@@ -56,6 +60,24 @@ func main() {
http.ListenAndServe(":" + port, mux)
}()
// Initialize channels
messagingChannel := make(chan string)
erpChannel := make(chan string)
sensorChannel := make(chan string)
contactChannel := make(chan string)
// Start services and pass the respective channels
go messaging.MessagingService(messagingChannel)
go erp.ERPService(erpChannel)
go sensor.SensorService(sensorChannel)
go contact.ContactService(contactChannel)
// Sending messages via channels
messagingChannel <- "Send an email"
erpChannel <- "Update ERP record"
sensorChannel <- "Trigger sensor"
contactChannel <- "Update contact info"
// Initialize Gin
r := gin.Default()
routes.InitRouter(r)

View File

@@ -0,0 +1,11 @@
package contact
import (
"fmt"
)
func ContactService(ch chan string) {
for msg := range ch {
fmt.Println("Contact Service: ", msg)
}
}

View File

@@ -0,0 +1,11 @@
package erp
import (
"fmt"
)
func ERPService(ch chan string) {
for msg := range ch {
fmt.Println("ERP Service: ", msg)
}
}

View File

@@ -0,0 +1,11 @@
package messaging
import (
"fmt"
)
func MessagingService(ch chan string) {
for msg := range ch {
fmt.Println("Messaging Service: ", msg)
}
}

View File

@@ -0,0 +1,12 @@
package sensor
import (
"fmt"
)
func SensorService(ch chan string) {
for msg := range ch {
fmt.Println("Sensor Service: ", msg)
}
}