integrate with twisted-chat