Despite having two nodes connected to a crossbar router on my local network, they aren't seeing each other and the browser console is saying:
Browser console:
Potentially unhandled rejection [1] {"error":"wamp.error.no_such_procedure","args":["no callee registered for procedure <com.at.mcu.e6a003528063>"],"kwargs":{}} (WARNING: non-Error used)
Crossbar version:
Crossbar.io : 17.11.1 (Crossbar.io COMMUNITY)
Autobahn : 17.10.1 (with JSON, MessagePack, CBOR, UBJSON)
Twisted : 17.9.0-EPollReactor
LMDB : 0.93/lmdb-0.9.18
Python : 2.7.13/CPython
OS : Linux-4.4.91-ti-r133-armv7l-with-debian-9.2
Machine : armv7l
Logs from crossbar start - you can see the backend python script and browser have joined at the bottom:
# crossbar start
(cb) root@beaglebone:/home/debian# crossbar start
2017-12-29T03:24:30+0000 [Controller 14401] __ __ __ __ __ __ __ __
2017-12-29T03:24:30+0000 [Controller 14401] / `|__)/ \/__`/__`|__) /\ |__) |/ \
2017-12-29T03:24:30+0000 [Controller 14401] \__,| \\__/.__/.__/|__)/~~\| \. |\__/
2017-12-29T03:24:30+0000 [Controller 14401]
2017-12-29T03:24:30+0000 [Controller 14401] Version: Crossbar.io COMMUNITY 17.11.1
2017-12-29T03:24:30+0000 [Controller 14401] Public Key: 0cca8ca2a08252c53be3eb8a43d85976e89bf2a7ccfd813cda115d2436495fc8
2017-12-29T03:24:30+0000 [Controller 14401]
2017-12-29T03:24:30+0000 [Controller 14401] Node starting with personality "community" [crossbar.controller.node.Node]
2017-12-29T03:24:30+0000 [Controller 14401] Running from node directory "/home/debian/.crossbar"
2017-12-29T03:24:30+0000 [Controller 14401] Node configuration loaded from "/home/debian/.crossbar/config.json"
2017-12-29T03:24:30+0000 [Controller 14401] Controller process starting [CPython-EPollReactor] ..
2017-12-29T03:24:30+0000 [Controller 14401] No extra node router roles
2017-12-29T03:24:30+0000 [Controller 14401] RouterServiceSession ready [no on_ready configured]
2017-12-29T03:24:30+0000 [Controller 14401] Registered 20 procedures
2017-12-29T03:24:30+0000 [Controller 14401] Using default node shutdown triggers [u'shutdown_on_worker_exit']
2017-12-29T03:24:30+0000 [Controller 14401] Configuring node from local configuration ...
2017-12-29T03:24:30+0000 [Controller 14401] Starting 1 workers ...
2017-12-29T03:24:30+0000 [Controller 14401] Router worker "worker-001" starting ..
2017-12-29T03:24:38+0000 [Router 14407] Started Router worker "worker-001" on node "None" [crossbar.worker.router.RouterWorkerSession / CPython-EPollReactor]
2017-12-29T03:24:38+0000 [Router 14407] Router worker "worker-001" session 3343461634770564 initializing ..
2017-12-29T03:24:38+0000 [Router 14407] Registered 37 procedures
2017-12-29T03:24:38+0000 [Router 14407] Router worker "worker-001" session ready
2017-12-29T03:24:38+0000 [Controller 14401] Router worker "worker-001" process 14407 started
2017-12-29T03:24:38+0000 [Router 14407] RouterServiceSession ready [configured on_ready fired]
2017-12-29T03:24:38+0000 [Router 14407] Realm 'at-realm' started
2017-12-29T03:24:38+0000 [Controller 14401] Router "worker-001": realm 'realm-001' (named 'at-realm') started
2017-12-29T03:24:38+0000 [Router 14407] role role-001 on realm realm-001 started
2017-12-29T03:24:38+0000 [Controller 14401] Router "worker-001": role 'role-001' (named 'anonymous') started on realm 'realm-001'
2017-12-29T03:24:38+0000 [Router 14407] UniSocketServerFactory starting on 8080
2017-12-29T03:24:38+0000 [Controller 14401] Router "worker-001": transport 'transport-001' started
2017-12-29T03:24:38+0000 [Controller 14401] Local node configuration applied successfully!
2017-12-29T03:24:40+0000 [Router 14407] session "2793196082778339" joined realm "at-realm"
2017-12-29T03:24:41+0000 [Router 14407] session "5981437596467214" joined realm "at-realm"
I have:
- Confirmed both are trying to join the same URI:
com.at.mcu.e6a003528063
. - Found that identical browser and python code connect correctly when placed on another machine (a BeagleBone Black Wireless running a slightly different version of Debian). For this reason, I think it has something to do with crossbar's installation and/or configuration.
- Recreated crossbar from scratch in a new virtualenv on the working machine (it works) and the non-working machine (doesn't work).
- Confirmed that .crossbar/config.json is identical.