Git Product home page Git Product logo

Comments (3)

keiffster avatar keiffster commented on June 19, 2024

Answers to each

  • Differentiate user vs system services (Wikipedia vs REST)?
    KS - What would be the purpose of the differentiation ?

  • Manage service "connection" status (during init or if service becomes available / unavailable later)
    KS - The service class should maintain its own connection status and provide appropriate retry options, plus default response if down.

  • Could the user query what services are "available" / connected?
    KS - Certainly possible, would need its own grammar and probably an extension to list the services in configuration.
    KS - In terms of available/connected, could extend the service interface with a ping() or health() method that could be called to get current status from a grammar

  • Common authorisation model for services?
    KS - Not sure as there is no common authorisation model. Some might use OAuth, others userid/password, others HTTP headers. However this may require a way to store better configuration information in the service definition - More work required here and I would be interested to see how your implementation pushes this forward

  • Common service name / description that can be included in the response when the user asks "What services are available"
    KS - Probably the same as ping()/health(), implement an info() method which returns a well defined information object

  • Common help response if the user asks "HELP Servicename"
    KS - I would push this into the grammar as thats the best place to store answers to questions. I would just create a servicename.aiml file with pattern HELP servicename

  • Should there just be one interface (ask_question) from the AIML side, or allow multiple so that there might be several AIML<>service interface points per "class"
    KS - Tough one as that would require a level of modification to the sraix tag implementation and some identification of the method to call.

from program-y.

seghcder avatar seghcder commented on June 19, 2024

User vs system services - I think I misunderstood the REST service as the REST client. Now I understand there are two REST oriented parts. One is the REST Client and another the Generic REST Service. Now makes sense.

By authorisation model, I meant more within ProgramY itself. At the moment Program Y assumes that if you can reach it, you can use it. In a SkypeForBusiness enterprise context, I need to check that the user connecting -

  • Is a known user and is allowed to use the bot
  • Is permitted to use all or only some services
  • Is a super-user who can ask questions like who is connected to the bot right now, service online/offline commands, send a message to all connected users, or even tell the bot to quit gracefully.

Will post another topic on this, but I wonder if this is more a "discussion" topic vs an issue topic? Not sure what the best forum in Github for these :-)

from program-y.

seghcder avatar seghcder commented on June 19, 2024

Rest all makes sense.

from program-y.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.