Creating A Chatbot

Hello. I am new here (as irrelevant as that sounds – I want to ask for patience on mistakes and ignorance).

I am wanting to make a chatbot for my work, and was curious how I would go about doing this. I am a programmer, proficient in PHP/SQL/Javascript. I make websites for businesses for their work orders, invoices, etc. I have over 50 clients now. So here was my idea:

  • Create a chat bot that I can interact with and get information about each client.
  • I was hoping that the chatbot could pull GIT repository, so they always have an up to date version of my codes. Each client has their own repository, so the chat bot should easily distinguish which code goes to which client.
  • I was hoping that the chat bot could know the the code that it interprets, and know the functionality that happens within that code. (I am thinking of similar to GIT CoPilot, if you’ve ever used that – it can “predict” code for you based on information you as it. For example put a comment in saying “loop through `x` and change it to `y`” kinda thing, terrible example, but it would suggest code. It’s not always correct, but that’s okay, I am able to go behind it and check it/make adjustments.
  • Our clients are currently on 3 different framework versions (the frameworks have been made from scratch that we have built, so the bot would not take from something like Laravel, it would get to know OUR frameworks.
  • I would then want to be able to ask things like: “[this company] wants to change their payment processor from Clover to Stripe. Have I done this anywhere else?”
    • And the chat bot could possibly return with “Yes, you did this on another v1 framework, [this company]. Here’s how you would do it: [and then list steps with code examples].”
    • If the chatbot runs into a “no you haven’t done this on another client” then it can get general programming knowledge or API information and explain sample codes from Stripe.
  • Or perhaps I could say “does [this client] have [this feature]”
  • Or I could say “The client wants to change the name of their status of work orders from “complete” to “job complete”, what files will this affect” – And the chat bot could return with information on where we are checking for “complete” statuses.

These are just rough examples. Because we have so many now, it is getting a little more difficult to keep track of everything that each one has. So we often have to go and hunt them down. And sometimes, we have clients who do not need things sometimes even for a year. A year later they ask for something, and we have to go remind ourselves of how their system works. All systems are 100% custom to the company that we build it for, there are no two the exact same.

It would be really awesome if we could start a conversation with the chat bot saying something like “I’m going to implement this change on this client, can you walk me through it”. And the chat bot possibly create steps (I have seen other chat bots do this as well), and we can do things like “well I have this, but I’m getting this error”, and the chat bot will say “okay, try this” or “oh, it looks like you have a typo – change [that] to [this]”.

I know this is a lot to take in. But does anyone know how I would even get started on this? I am very new to chatbots, while I’ve played with them, I’m getting very lost on their development. Please remember that my expertise is in PHP, and I’m fully aware that something like this will not be easy, or quick. But is there someone out there who can give me some knowledge to at least get me started? I do not intend to make this for monetary gain, only for personal business use.

submitted by /u/LostInEscape
[link] [comments]