How to build an advanced bot