Crossbar says 'no callee registered for procedure'

606 views Asked by At

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.
0

There are 0 answers