Chatrooms - Bots
DRAFT
Scope
To define the needs for an individual user to see the status of other users via the APIs up to parity with the capabilites in the Symphony Platform.
Collaborators
TBD
Working Examples
Listen to webhooks and send messages
Actions
- External system invokes HTTP post with relevant payload
- hubot bot account receives payload
- hubot bot account reacts with MessageML containing summary of payload, either to a chat room or direct message
See sample hubot script: https://github.com/symphonyoss/hubot-symphony#non-standard-messaging
REST endpoints
- /agent/v2/stream/${streamId}/message/create
- /pod/v2/user?email=${emailAddress}&local=true
- /pod/v1/im/create
Bot code logs in, handler code can message to a known room or search for a user given an identifier such as email address and create a direct message stream to that user
Listen and respond to simple commands
Actions
- User invites hubot bot account to chat room or initiates a stream with hubot bot account
- User types `hubot pug me`
- hubot bot account receives MessageML containing text `hubot pug me` and issues HTTP get to http://pugme.herokuapp.com/random
- hubot bot account responds with MessageML containing a URL to a picture of a pug
See sample hubot script : https://github.com/symphonyoss/hubot-symphony#non-standard-messaging
REST endpoints
- /agent/v1/datafeed/create
- /agent/v2/datafeed/${datafeedId}/read
- /pod/v2/user?uid=${userId}&local=true
- /agent/v2/stream/${streamId}/message/create
Bot code logs in, creates a datafeed and continuously polls it, checks all incoming messages and dispatches to handler code with user details if appropriate, handler code can respond to originating stream
Deliverable(s)
TBD
Timeline
TBD
Need help? Email help@finos.org
we'll get back to you.
Content on this page is licensed under the CC BY 4.0 license.
Code on this page is licensed under the Apache 2.0 license.