Metabots using metabots

Checking I understand this correctly!
It doesn't appear that a metabot can run another metabot…

Let me explain - I have a metabot I have called Date Functions and this metabot contains lots of individual logic functions concerning things you might want to do with dates; change format, add days, subtract days, get month name etc etc.

Say i have another metabot called Excel Functions that contains lots of functions concerning excel, getting data from lots of different spreadsheets for example. And say one of these pieces of logic need to apply some date logic to a passed in variable to locate a value.

It seems logical that i would run one of bits of logic in my Date Function metabot but I can't, I can only run logic within myself which would mean duplication of that date logic.

I dont want all metbots under one folder as it will quickly become a mess and be hard to find one that does what you want. I.e. I just want to see file functions to quickly check I have a reusable function to check a file exists.

Am I missing something here?

New to this and not been on training!


  • For anyone interested; Metabots cannot call on other metabots.

  • @Glenn010 said:
    For anyone interested; Metabots cannot call on other metabots.

    That's not strictly true Glenn.

    Granted, it’s a lot of “IF’s” but

    IF, both of your metabots are derived from DLL’s and…

    IF, when you originally created the .MBOT file from the DLL’s, you KEPT the DLL’s somewhere accessible, then…

    You could re-write part of the functionality you need (within the C# DLL source code for Metabot 1), so that it REFERENCES the DLL file from Metabot 2

    Then, the C# code from 1, can hook into functions provided by DLL 2

    This image shows the C# source code from one metabot, hooking into the DLL (and its functions) of a second C# based metabot.

    As I said, it’s a lot of IF’s, but if you’re thinking ahead, and you know you’re likely to need this kind of functionality, there’s no reason why you can’t build it into your C# DLL code.

    I’m conscious of the fact that I may not have explained this very well. If so, I’m more than happy to elaborate or answer any questions.


Sign In or Register to comment.