예제 #1
0
//CreateServer créé un nouveau serveur
func CreateServer() Server {
	var server Server
	var err error

	server.socket, err = socketio.NewServer(nil)
	if err != nil {
		logger.Fatal("Erreur lors de la création du serveur", err)
	}

	db.Init()

	if db.Db.Get(db.RoomBucket, constants.DefaultRoom) == nil {
		var room room.Room
		room.Name = constants.DefaultRoom
		db.Db.AddValue(db.RoomBucket, constants.DefaultRoom, &room)
	}

	server.createRouter()
	server.roomList.Init()

	server.socket.On("connection", server.onConnection)
	server.socket.On("error", func(so socketio.Socket, err error) {
		logger.Warning("Socket error", err)
	})

	return server
}
예제 #2
0
//connection à la BD
func (dbManager *DbManager) connection() {
	var err error
	dbManager.db, err = bolt.Open(DbFile, 0600, nil)
	if err != nil {
		logger.Fatal("Connexion BD - ", err)
	}
}
예제 #3
0
// Listen Permet au serveur d'écouter un port. Arrête tout si erreur levée. Le port doit être de la forme ":1200"
func (server *Server) Listen(port string) {
	err := http.ListenAndServe(port, nil)
	if err != nil {
		logger.Fatal("(*Server) ListenAndServe ", err)
	}
}
예제 #4
0
//disconnection déconnexion de la BD
func (dbManager *DbManager) disconnection() {
	err := dbManager.db.Close()
	if err != nil {
		logger.Fatal("Déconnexion BD - ", err)
	}
}