As far as I know traci.simulationStep calls simulationStep on your first 
connection created via traci.start, you need to also call conn2.simulationStep. 
Instead of calling traci.simulationStep you can get the its connection of the 
first client via traci.getConnection, see e.g.
 
traci.start(sumoCmd, port=8813, label="sim1")
conn1 = traci.getConnection("sim1")
conn1.setOrder(1)
 
The following snippets should work:
 
---------------
Client 1:
---------------
 
sumoBinary = 
"C:\\Projekte\\Sumo_Eclipse\\Releases\\sumo-win64-1.1.0\\sumo-1.1.0\\bin\\sumo-gui"
sumoCmd = [sumoBinary, "-c", cfg]
 
traci.start(sumoCmd, port=8813, label="sim1")
conn1 = traci.getConnection("sim1")
conn1.setOrder(1)
 
step = 0
while step < 1000:
    conn1.simulationStep()
    step += 1
                
conn1.close()
 
---------------
Client 2:
---------------
traci.init(port=8813, label="sim2")
conn2 = traci.getConnection("sim2")
conn2.setOrder(2)
 
step = 0
while step < 1000:
    conn2.simulationStep()
    step += 1
 
conn2.close()
 
 
Von: [email protected] [mailto:[email protected]] Im 
Auftrag von [email protected]
Gesendet: Donnerstag, 20. Dezember 2018 15:37
An: [email protected]
Betreff: Re: [sumo-user] two clients, one SUMO connection (python - TraCI)
 
okey, still not working, here are my to client-snippets:
 
client1:
 
# default portPORT = 8813 client2 = Com() class runner:     port = 
getFreeSocketPort()    # if getFreeSocketPort returns None, initialize with 
default value    if not port:        port = PORT    sumoBinary = "sumo-gui.exe" 
    # starting sumo    traci.start(cmd=[sumoBinary, "-c", 
"pathToConfig\\SUMO\\config.sumo.cfg", "--num-clients", "2"], port=8813)    # 
establishing client order    traci.setOrder(1)
 
client2:
 
# default portPORT = 8813 class Com:     def traci_client2(self):         port 
= getFreeSocketPort()        # if getFreeSocketPort returns None, initialize 
with default value        if not port:            port = PORT         
traci.init(port=8813, label="sim2")        conn2 = traci.getConnection("sim2")  
      conn2.setOrder(2)         while traci.simulation.getMinExpectedNumber() > 
0:             traci.simulationStep()
so, as far as i understand, it stucks while it loads because sumo is waiting 
for client2?
 
Maybe you can see anything in my code.
 
Thanks and greetings
  
Gesendet: Donnerstag, 20. Dezember 2018 um 15:13 Uhr
Von: "Benedikt Schott" <[email protected]>
An: "'Sumo project User discussions'" <[email protected]>
Betreff: Re: [sumo-user] two clients, one SUMO connection (python - TraCI)
When the sumo gui has been started, it is waiting for the second client to 
connect. Note that you have to call setOrder for all clients and to call 
simulationStep for each client to proceed with the simulation
 
e.g. for the second client:
 
traci.init(port=xxxx, label="sim2")
conn2 = traci.getConnection("sim2")
conn2.setOrder(2)
 
step = 0
while step < 1000:
    conn2.simulationStep()
    step += 1
 
conn2.close()
 
Von: [email protected] [mailto:[email protected]] Im 
Auftrag von [email protected]
Gesendet: Donnerstag, 20. Dezember 2018 14:22
An: [email protected]
Betreff: Re: [sumo-user] two clients, one SUMO connection (python - TraCI)
 
thanks for the information Jakob!
 
So I implemented it, but when I start my runner script, it opens my sumo-gui as 
usually, but it's only displaying "starting server on port xxxx" and nothing 
happens, just loading. When I'm changing the --num-clients in the traci.start 
to "1" it starts normally.
 
Any ideas?
 
Greetings
  
Gesendet: Donnerstag, 20. Dezember 2018 um 11:31 Uhr
Von: "Jakob Erdmann" <[email protected]>
An: "Sumo project User discussions" <[email protected]>
Betreff: Re: [sumo-user] two clients, one SUMO connection (python - TraCI)
see 
http://sumo.dlr.de/wiki/TraCI/Interfacing_TraCI_from_Python#Controlling_the_same_simulation_from_multiple_clients
  
Am Do., 20. Dez. 2018 um 10:52 Uhr schrieb <[email protected]>:
Hello everyone,
 
so i'm new to SUMO and want to connect two different clients (both python 
scripts, Interface: TraCI) to the same SUMO connection. 
How can I do that exactly? I read about the simulationSteps from the post 
yesterday, but I can't manage to implement it.
 
Thanks a lot.
 
Greetings!
_______________________________________________
sumo-user mailing list
[email protected]
To change your delivery options, retrieve your password, or unsubscribe from 
this list, visit
https://www.eclipse.org/mailman/listinfo/sumo-user
_______________________________________________ sumo-user mailing list 
[email protected] To change your delivery options, retrieve your password, 
or unsubscribe from this list, visit 
https://www.eclipse.org/mailman/listinfo/sumo-user
_______________________________________________ sumo-user mailing list 
[email protected] To change your delivery options, retrieve your password, 
or unsubscribe from this list, visit 
https://www.eclipse.org/mailman/listinfo/sumo-user
_______________________________________________
sumo-user mailing list
[email protected]
To change your delivery options, retrieve your password, or unsubscribe from 
this list, visit
https://www.eclipse.org/mailman/listinfo/sumo-user

Reply via email to