Upgrade to Pro — share decks privately, control downloads, hide ads and more …

OpenChatOps: Programming Language Agnostic ChatOps

OpenChatOps: Programming Language Agnostic ChatOps

Today the community and plugin ecosystems for the major chat bot frameworks are somewhat divided by language. This presentation explores a possible approach for bringing them together with a common API and communications protocol.

Recording: https://www.youtu.be/watch?v=-UL_7IjyOdU

Jimmy Cuadra

October 08, 2015
Tweet

More Decks by Jimmy Cuadra

Other Decks in Technology

Transcript

  1. IRC

  2. IRC

  3. • CORBA • JSON-RPC • SOAP • XML-RPC • Thrift

    • DRb • WCF • Protocol Buffers • Avro • Transit • D-Bus • AMF • Finagle • Cap’n Proto • ASN.1 • FlatBuffers • EDN • Fressian
  4. syntax = "proto3"; package helloworld; // The greeter service definition.

    service Greeter { // Sends a greeting rpc SayHello (HelloRequest) returns (HelloReply) {} } // The request message containing the user's name. message HelloRequest { string name = 1; } // The response message containing the greetings message HelloReply { string message = 1; }
  5. // The RPC service that controls the chat bot. service

    Robot { // Instructs the bot to join a room. rpc Join (JoinRequest) returns (JoinResponse); // Listens to a stream of incoming events. rpc Listen (ListenRequest) returns (stream Event); // Instructs the bot to part from a room. rpc Part (PartRequest) returns (PartResponse); // Sends one or more messages to a user or room. rpc SendMessages (SendMessagesRequest) returns (SendMessagesResponse); }