What is Dolphin?
On this page you’ll learn:
-
API Compatibility.
-
The Duck Test.
-
How StoryServer is both an EccoPro-Client and EccoPro-Server.
-
How to configure StoryServer to be an EccoPro-Client or EccoPro-Server.
-
What is Dolphin.
How is the API made?
Copyright law allows interoperability of different systems, provided their implementations are totally different.
StoryServer implements both a client and server API that is compatible with EccoPro and EccoExt.
In other words, the developers had to implement, based on publicly available information, a server that reads/writes EccoPro API commands, along with all the fixes the community made in EccoExt. |
What is Dolphin?
Dolphin is an implementation of EccoPro’s DDE Server API ("DDE Server", "DDE Master") and EccoPro DDE Client API ("DDE Client", "DDE Slave").
This allows StoryServer to inter-operate with VB, AHK, C#, Python and applications such as MyPhoneExplorer, FreeMind.
StoryServer supports Lua natively and does not require DDE to be used.
Dolphin also includes an implementation of Auto-Assign Rules and Script API. |
EccoPro DDE Architecture
In the image below, this is the DDE Architecture without StoryServer present -
-
EccoPro DDE Server responds to client requests.
-
Slang’s EccoExt implements a Auto-Assign API and allows Auto-Assign Rules "SRules" to be processed.
-
Slang’s EccoExt implements a Lua Script API and allows Lua Scripts to be processed.
-
Without Slang’s EccoExt, Auto-Assign and Lua Scripts cannot be used with EccoPro.
-
EccoPro does not implement a client API as it would cause an infinite loop.
EccoPro DDE Architecture, with StoryServer DDE Server turned OFF.
-
StoryServer acts as a client to import data from EccoPro.
-
StoryServer implements a DDE server API, it is not functional as it is turned OFF.
-
StoryServer implements a SRule or Auto-Assigns Rules API.
-
StoryServer implements a Lua Script API.
EccoPro DDE Architecture, with StoryServer DDE Server turned ON.
-
StoryServer implements a DDE server API, and intercepts DDE requests meant for EccoPro, when DDE Server is turned ON.
-
StoryServer implements a DDE client, it is non-functional.
-
StoryServer implements a SRule or Auto-Assigns Rules API.
-
StoryServer implements a Lua Script API.
What happens when StoryServer DDE Server turned ON and DDE-Client is started?
-
When both StoryServer DDE-Server and DDE-Client is turned on, it turns to an infinite loop.
-
Thus, the DDE Server either ON or OFF.
-
When DDE Server is turned OFF, it turns into a DDE-Client.
What is Ecco32.exe doing in \StoryServer\ directory?
StoryServer’s unique architecture allows it to flip between acting as EccoPro DDE Server for other apps and as a DDE EccoPro client to import data from EccoPro.
This is StoryServer’s DDE Server. This .exe has been written from the ground up and allows StoryServer to communicate with third-party applications as an EccoPro DDE Server.
How do I enable or disable Dolphin?
-
Run the configuration wizard. Check or uncheck [x] Enable Dolphin (DDE Server).
How does it work?
External third-party applications are looking for certain detection before starting DDE inter-op with EccoPro.
Application | Comments |
---|---|
MyPhoneExplorer |
Requires ecco.exe to be running before DDE starts.Also detects Registry keys, EccoExt.ini files |
XTNDComments |
Requires 'MainEccoFrame' hidden class to be registered before DDE starts |
Python DDE |
Detects via DDE |