I am researching Franca as IDL for automatic API generation. http://franca.github.io/franca/
In my current API, the observer pattern is widely used. Listener classes and callbacks are defined. I do not find a way to actually model that in Franca IDL.
Is it broadcasts the way to model them? If so, aren't the broadcasts supposed to model interaction between a server and a client?
Franca IDL is primarly just what IDL stands for. You can describe an interface that a service offers. The way how clients grant access to the service is, on the technical level, a matter of the actual code generator and framework that is build on top of the France IDL (e.g. CommonAPI).
So your code generator might generate code that makes use of the observer pattern - for example to propagate attribute changes from the service to the clients - but it is not part of the interface description as it should stay independent of the actual technology.
You can also have a look on Franca Deployment model (Franca User Guide Chapter 6) if the generator needs additional information.