Skip to content
CoCo(Conversational Components) SDK for using components with Microsoft Bot Framework.
Python
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
coco_microsoft_bot_framework
LICENSE
MANIFEST.in
README.md
setup.py

README.md

A Toolkit to work with components in Microsoft Bot Framework

Installation (We recommend using a virtualenv):

pip install coco-microsoft-bot-framework 

Setup:

Setting Conversation State

in app.py, include the lines below.

from coco_microsoft_bot_framework import CoCoActivityHandler
from botbuilder.core import (
    BotFrameworkAdapterSettings,
    TurnContext,
    BotFrameworkAdapter,
    UserState,
    MemoryStorage,
    ConversationState,
)

MEMORY = MemoryStorage()
CONVERSATION_STATE = ConversationState(MEMORY)
# Create the Bot
BOT = MyBot(CONVERSATION_STATE)

Setting Activity Handler

in bot.py

Import CoCo custom Activity Handler, then use it to create your bot. At the on_message_activity method add the three lines as below, in order to manage CoCo context during the conversation.

from coco_microsoft_bot_framework import CoCoActivityHandler

class MyBot(CoCoActivityHandler):

    async def on_message_activity(self, turn_context: TurnContext):
        if self.is_component_active():
            await self.call_active_component(turn_context)
            return

Activate CoCo Component

Activate CoCo register component, which ID is: "register_vp3".

class MyBot(CoCoActivityHandler):

    async def on_message_activity(self, turn_context: TurnContext):
        if self.is_component_active():
            await self.call_active_component(turn_context)
            return
    
        if intent == "register":
            await self.activate_component(turn_context, "register_vp3")
        else:
            await turn_context.send_activity("I don't understand.")
You can’t perform that action at this time.