this will take some programming, MM and integration skills… nothing simple